2015年07月22日

[Unity 5] テレポート移動のテスト [DK2]

酔わないようにテレポート移動しようの続きです。小さいキューブを動かすのも微妙でしたので、SDユニティちゃんに走ってもらうことにしました。キーボード入力でSDユニティちゃんに付けたカメラの位置にテレポート移動します。ステージはDecrepit Dungeonアセットを使用させていただいています。

手順メモ

1. GameObject→Cameraの追加:TagをMainCameraに(Main Cameraがなければ), Field of View:30, Clipping Planes: Near 0.01
2. GameObject→Light→Directional lightを追加(Directional lightがなければ)
3. Standard Assets→Characters→ThirdPersonCharacter→Prefabs→ThirdPersonController.prefabをDrag&Drop
4. Assets→Import Package→Custom PackageでSD_unitychan.unitypackageをインポート
5. ThirdPersonControllerにUnityChan→SD_unitychan→Prefabs→SD_unityChan_humanoid.prefabをDrag&Drop
6. EthanBodyとEthanGlassesを削除
7. ThirdPersonControllerのInspectorのAnimationのAvatarをSD_unitychan_humanoidAvaterに変更

実行してキーボードでSD_unitychanが動くことを確認

8. ThirdPersonControllerにCameraを追加:UnitychanCameraに名前変更
9. Assetsのどこかで右クリック→Create→Render Textureを追加:UnitychanRenderTextureに名前変更, 512x256に変更
10. UnitychanCameraのTarget TextureにUnitychanRenderTextureをDrag&Drop
11. Main CameraにGameObject→3D Object→Planeを追加
 Planeの位置(0.5, -0.5, 1.2), 角度(90, 180, 0), スケール(0.1, 0.1, 0.05), 各種Shadows: Off, Mesh Collider無効, ShaderはToon/Basicなど法線の影響を受けにくいものに変更
12. 追加したPlaneにUnitychanRenderTextureをDrag&Drop

実行してキーボードでSD_unitychanを動かして、SD_unitychan視点の映像がPlaneに映っていることを確認

unity_dk2_003.png

13. GameObject→CreateEmptyを追加:TargetPointに名前変更
14. Assetsのどこかで右クリック→Create→C# Scriptでスクリプトを作成:PlayerScriptに名前変更→Main CameraにDrag&Drop、中身は下記([1]の改変)
PlayerScript.cs
15. TargetPointをMain CameraのPlayerScriptのTargetにDrag&Drop

実行してキーボードでSD_unitychanがメインカメラの向きに移動することと、QとEでUnitychanCameraの上下向きが変わることを確認

16. GameObject→CreateEmptyを追加:Dummyに名前変更、Main Cameraの親にする
17. Assetsのどこかで右クリック→Create→C# Scriptでスクリプトを作成:TeleportScriptに名前変更→Main CameraにDrag&Drop、中身は下記
TeleportScript.cs
実行してTキーでUnitychanCameraの位置にテレポート移動することを確認

実行結果

Planeの背面が映りこんで赤になっちゃいますね。背面は描画しない設定にはなってないんですかね。
感想:
・キーボード入力で自発的にテレポートするためかカメラを急に切り替えても特に違和感はなかった
・右下のビルボードは視野全体からみると小さいのでそこでカメラが動いても(ずっと注視しなければ)あまり酔わない
・マウスでグイーンと視点回転などはないので酔いにくいはず
・自分で歩かないので没入感はあまりないかも

なおUnity 5は使い始めて10日程度なのでスクリプトの書き方とか色々間違っているかもしれません。
ユニティちゃんライセンス

このコンテンツは、『ユニティちゃんライセンス』で提供されています


[1] 040 カメラの向きに合わせてGameObjectを移動させる
posted by シンドラー at 06:44 | Comment(0) | TrackBack(0) | Unity 5 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/422781072
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック