セーラーソン振り返り

905
-1

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
905
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
1
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

セーラーソン振り返り

  1. 1. セーラーソン12年12月7日金曜日
  2. 2. 技術的な内容 • キャラクターの操作 • モデルデータ • キャラクターのアニメーション • カメラ操作 • ステージの制御 • マネジメント12年12月7日金曜日
  3. 3. キャラクター操作12年12月7日金曜日
  4. 4. カメラ 固定12年12月7日金曜日
  5. 5. 横アングル ジャンプ 植木等12年12月7日金曜日
  6. 6. 正面アングル 横移動 水たまり等12年12月7日金曜日
  7. 7. 自動で視点移動 起伏のあるステージ 前視点 横視点 後視点 横視点12年12月7日金曜日
  8. 8. ゲームルール • 障害物に当たるとタイムが遅れる • 一定時間以内にゴールできれば完走12年12月7日金曜日
  9. 9. さぁ実装!12年12月7日金曜日
  10. 10. あ、でも まずは横固定ね。 千里の道も一歩からっ ていうじゃない12年12月7日金曜日
  11. 11. 横アングル視点固定 つまりこういうこと ジャンプ 植木等12年12月7日金曜日
  12. 12. Assets->Import Package->Character Controller それと、もともとあるスクリプ トで楽しちゃおっと 3rd Person Controller12年12月7日金曜日
  13. 13. 3rd Person Contollerを配置し てみたとこ、このモデルを置き換 えればいいはず? コレ12年12月7日金曜日
  14. 14. が、問題が12年12月7日金曜日
  15. 15. • カメラのスクリプトがついてるけど、 おもったような動きではないので要改 造 • モデルの座標系が違うのでそのままで は当たり判定等の座標がズレる • 余計なアニメーションが多い12年12月7日金曜日
  16. 16. 面倒なんで、スクリプトとコントローラーのコン ポーネントだけ使わせいてもらいましょう! あでも、どう貼るかはもとのやつを参考にするん だけどね Character Controller Third Person Controller(Script)12年12月7日金曜日
  17. 17. でも、でも 楽をさせてもらうはずだったけど、、 けっこう手こずりました。 実現可能なレベルの操作系はどこまでもってくの とか、Unityの使い方とか色々と、、12年12月7日金曜日
  18. 18. 気づいた事 ThirdPersonControler付属のモデルと、 インポートしようとしてるモデルの座標系 が違うのでそのままではだめだった。 fbxのインポート時の設定でScale Factor を調整して合わせて、ベースの位置を腰か ら足元に変更した。12年12月7日金曜日
  19. 19. モデルデータ12年12月7日金曜日
  20. 20. うちらのチームの唯一の希望は このアニメーション付きのモデルをデザイナーさ ん作っていてくれたことなんだよね! だからこれを使えばなんとかなるって! 思っていたところもあったんだ、、12年12月7日金曜日
  21. 21. これが、ほんとによく出来てる! アニメーションも素晴らしい! これでほぼ完成したも同然じゃーーん! てね12年12月7日金曜日
  22. 22. しかし、これ セーラー服とは程遠いし 第7感で埋めるにしてもねぇ、 1から作るのは大変だしなぁ うーーーんんん12年12月7日金曜日
  23. 23. デザイナーさんより 自由に使ってもよいという お墨付きのモデル クラウディアがあるよ? という情報を頂く12年12月7日金曜日
  24. 24. いいね! それでいこう! 決定! セーラー服は、この際いいか、、12年12月7日金曜日
  25. 25. というわけで これのアニメーション部分を 再利用して アニメーション付きのクラウディアの FBXを作成することに成功! デザイナーさんががんばって SoftImageで再設定してくれま した。12年12月7日金曜日
  26. 26. というわけで、 アニメーションの設定12年12月7日金曜日
  27. 27. 通常状態 ジャンプ 走る コケる12年12月7日金曜日
  28. 28. エディタ上でプチプチ 一個ずつ設定する12年12月7日金曜日
  29. 29. イベント処理 Space または クリック でジャンプ 障害物にぶつかるとコケる この辺はCharactorController が勝手にやってくれるのてで助 かりました。12年12月7日金曜日
  30. 30. TherdPersonControllerより抜粋 宣言: var Animation : Animation; 初期化: _animation = GetComponent(Animation); 処理: if(_characterState == CharacterState.Jumping) { if(!jumpingReachedApex) { _animation[jumpPoseAnimation.name].speed = jumpAnimationSpeed; _animation[jumpPoseAnimation.name].wrapMode = WrapMode.ClampForever; _animation.CrossFade(jumpPoseAnimation.name); } else { _animation[jumpPoseAnimation.name].speed = -landAnimationSpeed; _animation[jumpPoseAnimation.name].wrapMode = WrapMode.ClampForever; _animation.CrossFade(jumpPoseAnimation.name); } } 外部からキャラクタに加速度をつけると勝 手に動いてくれた12年12月7日金曜日
  31. 31. カメラ制御12年12月7日金曜日
  32. 32. か、カメラは 横からの視点固定12年12月7日金曜日
  33. 33. ステージの制御12年12月7日金曜日
  34. 34. 全部ポリゴンでステージつく っちゃえば、そりゃ楽ですよ! でも、少ない時間と手数でいか にそれっぽくみせるか、、 てのが難しいーー12年12月7日金曜日
  35. 35. 案1 固定ルート フィールド 背景 カメラ12年12月7日金曜日
  36. 36. 案1の利点欠点 • 起伏のあるコースを自在に作れる • 直感的で分かりやすい • 背景の画像の準備が大変 • コースの作成もけっこう手間がかかる • 正面や後方のアングルに対応できない12年12月7日金曜日
  37. 37. 案2 円錐 背景 フィールド カメラ12年12月7日金曜日
  38. 38. 案2の利点欠点 • 正面や背面のアングルが使える • 起伏のあるコースを自在に作れる • スピード感のあるコースを作れない • コースの作成もけっこう手間がかかる • 作るとなると大掛かりになりそう12年12月7日金曜日
  39. 39. 案3 素晴らしき妥協案 背景 フィールド 障害物 カメラ12年12月7日金曜日
  40. 40. 妥協案の利点欠点 • すぐキャラを動かせれる • 最低限のデモができる • 段階を踏んで最終的なものにしていける • 僕らの大事ななにか・・・12年12月7日金曜日
  41. 41. 背景の操作 テクスチャー Plane12年12月7日金曜日
  42. 42. 背景のScript 時間で1を割って余りを新しい テクスチャーの座標位置にする // Update is called once per frame void Update () { if(!isPause){ offset.x = Mathf.Clamp01((offset.x + Time.deltaTime)%1.0f); } gameObject.renderer.material.SetTextureOffset("_MainTex", offset); }12年12月7日金曜日
  43. 43. 地面の操作 固定 毎フレーム移動する12年12月7日金曜日
  44. 44. 地面のScript void Update () { AutoScroll(); ボタンを押したときの if(Input.GetKeyDown(KeyCode.UpArrow)) { ジャンプ処理 JumpAction(); } } void JumpAction() { gameObject.rigidbody.AddForce(new Vector3(0, -jumpPower, 0), ForceMode.Impulse); } 地面のスクロール処理 void AutoScroll() { gameObject.transform.position += scrollSpeed; }12年12月7日金曜日
  45. 45. 気づいた事 あれ? ずっと時間一杯つかってScriptを書いてい たような気がするけど、 たったこんだけ? じつは、あんまりScriptでやることって少 ないんじゃないのかなって思った12年12月7日金曜日
  46. 46. マネジメント12年12月7日金曜日
  47. 47. ファイルの受け渡しってUSBだ とけっこう手間。 ファイル共有とコメントをもっ て簡単に交換出来ないかなぁ? 実は序盤ネットの設定でバタバタして 使えない時間があったので、あとから 接続できた人にどうやって渡すのか? っていうので困ってました12年12月7日金曜日
  48. 48. ChatWork http://www.chatwork.com/ja/ 利点 Facebookがあればすぐできる。 使ってない人がいて焦ったけど。 欠点 使い方に戸惑った。癖あり ファイルのアップロード上限があ った12年12月7日金曜日
  49. 49. あと、ソースコードの管理はど うしよっかなぁー GoogleCodeってGitとSvnが使 えるようだけど?12年12月7日金曜日
  50. 50. Gitを使った 利点 使い慣れている? ひとそれぞれかも 欠点 Unityで管理で必要なファイルとそ うでないファイルがわかってなく て、余計てこずった。 チューターの方に感謝!12年12月7日金曜日
  51. 51. でも、結局、 パッケージにしてファイルで 渡したり Scriptだけわたして貼っても らったりしてました。12年12月7日金曜日
  52. 52. 反省点12年12月7日金曜日
  53. 53. • ゲーム仕様が明確でなかった ◦ 仕様決めに時間がとられる ◦ ゲームとしての面白さがわからない ◦ 必要なデザインリソースがわからない ◦ 力をいれる部分と手を抜く部分がわから ない • 人の適材適所が難しかった (特にデザイナー)12年12月7日金曜日

×