LoginSignup
2
0

More than 5 years have passed since last update.

Stereoscopic4D

遅くなってしまいましたが、サイエンスアゴラで発表した内容とほぼ同一のもの(有料アセット等を外したもの)をMITライセンスのもとで公開しました!

デモシーン

Stereoscopic4D/Assets/Stereoscopic4D/Demo/Scenesディレクトリにデモシーンが用意されています。Science AGORA 2016で発表したものを簡略化したシーンとなっています。

Screen Shot 2016-12-25 at 23.45.25.png

デモシーンでは、超立方体の表示と、ゲームパッドなどによる回転をテストすることができます。十字キーやキーボードのA・D・W・Sキーなどで通常の3次元での回転を行うことができ、Fire1ボタン(トリガーなど)を押下したまま回転をすると、W軸も変化する回転を行えます。

超立方体の座標やサイズについては、TesseractゲームオブジェクトのTransform 4Dコンポーネントの各パラメーターで設定可能です。

Oculus・Viveには対応済み(のはず……)のため、それぞれのHMDで見ることで4次元立体視を体験できるようになっています。4次元立体視の度合いは、Stereoscopic4dCameraゲームオブジェクトのSquint factorで調整可能です。値はデフォルトで1に設定されており、値を大きくするほどW軸による視差が強調されます。

基本的な構成

基本的な構成は本アドベントカレンダー7日目に紹介した通りとなっています。一般公開向けに、多少マイナーチェンジが行われています。

マイナーチェンジ内容

  • 4次元オブジェクトのファイル形式を、独自のtxt形式からjson形式に変更した。
    • 独自のパーサーなどは不要になったため削除
  • パラメーター名などを整理した。
  • Assetパッケージとして再利用しやすい形にまとめた。

Asset構成

  • Stereoscopic4D/Assets/Stereoscopic4D/Scripts
    • Camera4D.cs
      • カメラに4次元立体視のOn/Off機能を持たせるためのスクリプト。
    • HyperObject.cs
      • JSONファイルから4次元オブジェクトのメッシュを生成するためのスクリプト。
    • HyperObjectController.cs
      • 4次元描画を行うゲームオブジェクトのためのスクリプト。
    • Transform4D.cs
      • ゲームオブジェクトに4次元座標を持たせるためのスクリプト。
  • Stereoscopic4D/Assets/Stereoscopic4D/Shaders
    • 4次元描画のためのシェーダー

まとめ

今後も何か要望などがあれば随時取り込んでいきます。この年末年始のお休みに4次元世界に触れてみてください!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0