Reading 3DPlatformTutorial
3DPlatformTutorialを読み中。読みつつメモ
- このチュートリアルはHierarchyPaneとかProjectPaneとかGameObjectとかUnityの基本用語がある程度分かっている人向け
- 作りかけの3Dゲームを本チュートリアルの進行とともに作っていく感じ。それでキャラクターアニメーションとかエフェクトとかの説明を一緒にする感じ。
- まずLapz(プレイヤーキャラ)のGameObject化
- NearCamera(GameObject)にSpringFollowCamera(Script)をアタッチ
- TargetにPlayer(Lepz)をセット。名前どおりPlayerとカメラをバネで繋いだ感じのFollowカメラ
- そのままではLapzは何も出来ないのでスクリプトなどのComponentを追加していく
- ThirdPersonController(Script)の追加
- ThirdPersonPlayerAnimation(Script)の追加
- Animation(モーション)の再生管理。Animationリストを持つ(InspectorのAnimation>Animations)
- AnimationBlendingもやってるらしい
- LepzのJet-Packを実装する
- Jet-PackとはLepzの背中についてるジェット噴射装置。落下中の速度を緩めることが出来るらしい(実装後は)
- まずパーティクルエフェクトでジェット噴射のエフェクトを作る
- JetというEmptyGameObjectを作る
- PlayerGameObjectのtorso階層直下にJetを移動する
- EllipsoidParticleEmitterの追加
- ParticleAnimatorの追加
- WorldParticleColliderの追加
- ParticleRendererの追加
- EllipsoidParticleEmitterのパラメータを調整する(SimulationWorldspace?のチェックは外す)
- Min/MaxEnergyはパーティクルの生存時間
- Min/MaxEmissionは一定時間に出るパーティクルの量
- ParticleAnimatorのパラメータを調整する
- パーティクルの生成〜死亡までのパーティクル色を定義する(ここでは白〜赤〜黒みたいにしている)
- ParticleRendererのパラメータ調整
- Particles>Sources>Materials>fire addをJetに追加
- パーティクルにあわせてPointLightをつける
- PointLight(GameObject)を生成する。Jet Lightにリネーム
- 座標を2つのジェット噴射口の真ん中辺に移動する
- すでに作ったJet(GameObject)をPrefabにする
- ProjectPaneのPlayerフォルダにJetPrefabを作成。JetGameObjectをここにDrag&Drop
- JetGameObjectは消す
- PrefabからJet RとJet LをつくってPlayerのTorsoに配置。Jet Lightも同じところに配置
- これでパーティクルアニメーションは完成。あとはLepzのジャンプ中のみこれを再生させることが必要
- Script>Player>JetPackParticleControllerをPlayer(GameObject)に追加
- これでPlayerがJumpボタンを押したときに、左右のJet(ParticleSystem)とJetLight(PointLight)を連動して起動させる
以上29ページまで。
あと4分の3以上…orz。ThridParsonCharacterControllerとかのScriptの中身は以前ブラックボックス。