Colonies
by
ruccho
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Unity 1週間ゲームジャム 「密」 るっちょ (@ruccho_vector)
Slide 2
Slide 2 text
自己紹介(ざっくり) • 個人でゲーム開発をしてる学生です • ドット絵とか描いてます (↑「地下楼」デモ版配信中)
Slide 3
Slide 3 text
どんなゲーム?
Slide 4
Slide 4 text
どんなゲーム? • 「密集と分離を繰り返すシューティング」 • 総合16位、雰囲気7位、絵作り13位
Slide 5
Slide 5 text
開発スケジュール • 月曜日 基礎の絵作り、プレイヤーの基本動作 • 火曜日 射撃動作、タイトル決定、WebGLビルドテスト • 水曜日 AI作成開始、UI • 木曜日 分離アクション、オープニング • 金曜日 UI、アニメーション、チュートリアル、バグ潰し、最適化 • 土曜日 SE、リスポーン、勝敗 • 日曜日 BGM、バグ潰し、最適化、公開作業
Slide 6
Slide 6 text
プレイヤー基本動作の作成 AI作成、UI サウンド、最適化、バグ潰し ゲームの流れの完成 開発スケジュール(ざっくり) 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日 日曜日
Slide 7
Slide 7 text
何の話をしよう? • UIの話 • 絵作りの話 • オンラインでやりたい • 観察が楽しい • AIが強い • むずかしい • ボコボコにされた
Slide 8
Slide 8 text
何の話をしよう? • ゲームデザインの話 • どうやって作ってるの?的な話 • URP / Lights 2D について • UIについて • 最適化について • ふりかえり
Slide 9
Slide 9 text
ゲームデザインの話
Slide 10
Slide 10 text
ゲームの流れ 仲間を増やす 接敵する 競り負ける 勝利 独占する 敗北 全滅する
Slide 11
Slide 11 text
密集と分離 密集状態 分離状態 体力 多い 少ない 総攻撃力 弱い 強い 機動力 的がデカい 的が小さい
Slide 12
Slide 12 text
「観察」
Slide 13
Slide 13 text
「観察」というモチーフ • AIを実装したあと、AIだけで戦わせてみた • するとこれが結構面白い!! • 「シャーレの中の細菌を観察している」という設定 • 細菌に顔を付けたり動かしたりして実在感や愛着感を強調!
Slide 14
Slide 14 text
どうやって作ってるの?的な話
Slide 15
Slide 15 text
絵作りの話 主にLights 2D
Slide 16
Slide 16 text
Lights 2D is 何 • Universal Render Pipelineの機能 • スプライトに光の表現を加える • まだExperimental
Slide 17
Slide 17 text
Lights 2D なし
Slide 18
Slide 18 text
Lights 2D あり
Slide 19
Slide 19 text
Lights 2D かんたん絵づくり講座~
Slide 20
Slide 20 text
①Circleを置く
Slide 21
Slide 21 text
②ライトを置く
Slide 22
Slide 22 text
③影を付ける
Slide 23
Slide 23 text
④ダメ押しのポストプロセス
Slide 24
Slide 24 text
ゲーム内で使ったスプライト素材
Slide 25
Slide 25 text
まるとしかくでゲームは作れる(?)
Slide 26
Slide 26 text
余談:Lights 2D x WebGLの罠 URPテンプレートでプロジェクト作ると ここの設定がURP設定を上書きするの で注意…… (WebGLビルド後にLights 2Dが効か なくなって超焦った)
Slide 27
Slide 27 text
UIの話
Slide 28
Slide 28 text
No content
Slide 29
Slide 29 text
①とりあえずフェードする • 画面切り替えが一瞬だとなんとなくダサいのでフェードしたい • めんどい
Slide 30
Slide 30 text
②ボタンアニメーション • uGUI ImageのFilledでアニメーション • 線形補間(Mathf.Lerp)でAnimator要らずのイージング
Slide 31
Slide 31 text
勢力ゲージは? これ
Slide 32
Slide 32 text
勢力ゲージは? • これもImageのFilled • 同じサイズのImageを重ね、そ れぞれの色とFillAmountを調 整 • 座標計算が不要
Slide 33
Slide 33 text
AIの話
Slide 34
Slide 34 text
細菌のほとんどはAIで動く • ステージにいる105の細菌のうち、プレイヤーが動かすのはたった1 つ • あとは全部AI
Slide 35
Slide 35 text
AIのつくりかた? • ステートマシン? • Behavior Tree?
Slide 36
Slide 36 text
わからないのでコード手打ちしました
Slide 37
Slide 37 text
AIのつくりかた? ①画面内の敵を取得して ②体力、距離、サイズ、仲間の数などで重みづけ ③優先度の高い敵をターゲットに設定 ④追いかけて撃つ 上記に加え、状況に応じて密集・分離を行う
Slide 38
Slide 38 text
No content
Slide 39
Slide 39 text
AIのつくりかた? • 手打ちでAIを作ると変数の数 がヤバくなります
Slide 40
Slide 40 text
最適化の話
Slide 41
Slide 41 text
Lights 2Dは重い (スプライトやライトの数にもよる)
Slide 42
Slide 42 text
Lights 2Dは重い SetPass calls: 33 Lights 2Dなし Lights 2Dあり SetPass calls: 2055
Slide 43
Slide 43 text
画面外のスプライトにも パスが走ってるっぽい
Slide 44
Slide 44 text
Lights 2Dは重い SetPass calls: 33 Lights 2Dなし Lights 2Dあり SetPass calls: 2055 Lights 2Dあり (カリング有効) SetPass calls: 435
Slide 45
Slide 45 text
ちなみに (なぜか)CPU負荷も減る
Slide 46
Slide 46 text
開発を振り返って……
Slide 47
Slide 47 text
といきたいところですが 時間がなさそうなので
Slide 48
Slide 48 text
おしまいです ブログに細かいスケジュールとか書いておきました
Slide 49
Slide 49 text
No content