Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Colonies
Search
ruccho
May 16, 2020
Technology
0
640
Colonies
unity1week online共有会 #1
ruccho
May 16, 2020
Tweet
Share
More Decks by ruccho
See All by ruccho
WebAssemblyインタプリタを書く ~Component Modelを添えて~
ruccho
1
950
URP の 2D Renderer と たわむれる
ruccho
0
10
タイルマップ拡張のススメ / Recommendation of Unity Tilemap Gotanda.unity #14
ruccho
0
3.5k
Other Decks in Technology
See All in Technology
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
630
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
3
790
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
150
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
710
AWSで推進するデータマネジメント
kawanago
0
750
Kubernetes における cgroup driver のしくみ: runwasi の bugfix より
z63d
2
110
AI時代にPdMとPMMはどう連携すべきか / PdM–PMM-collaboration-in-AI-era
rakus_dev
0
240
絶対に失敗できないキャンペーンページの高速かつ安全な開発、WINTICKET × microCMS の開発事例
microcms
0
360
実践データベース設計 ①データベース設計概論
recruitengineers
PRO
4
1.9k
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
2
490
実践アプリケーション設計 ③ドメイン駆動設計
recruitengineers
PRO
13
4k
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
810
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to train your dragon (web standard)
notwaldorf
96
6.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
A better future with KSS
kneath
239
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building Adaptive Systems
keathley
43
2.7k
Bash Introduction
62gerente
614
210k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Facilitating Awesome Meetings
lara
55
6.5k
Transcript
Unity 1週間ゲームジャム 「密」 るっちょ (@ruccho_vector)
自己紹介(ざっくり) • 個人でゲーム開発をしてる学生です • ドット絵とか描いてます (↑「地下楼」デモ版配信中)
どんなゲーム?
どんなゲーム? • 「密集と分離を繰り返すシューティング」 • 総合16位、雰囲気7位、絵作り13位
開発スケジュール • 月曜日 基礎の絵作り、プレイヤーの基本動作 • 火曜日 射撃動作、タイトル決定、WebGLビルドテスト • 水曜日 AI作成開始、UI
• 木曜日 分離アクション、オープニング • 金曜日 UI、アニメーション、チュートリアル、バグ潰し、最適化 • 土曜日 SE、リスポーン、勝敗 • 日曜日 BGM、バグ潰し、最適化、公開作業
プレイヤー基本動作の作成 AI作成、UI サウンド、最適化、バグ潰し ゲームの流れの完成 開発スケジュール(ざっくり) 月曜日 火曜日 水曜日 木曜日 金曜日
土曜日 日曜日
何の話をしよう? • UIの話 • 絵作りの話 • オンラインでやりたい • 観察が楽しい •
AIが強い • むずかしい • ボコボコにされた
何の話をしよう? • ゲームデザインの話 • どうやって作ってるの?的な話 • URP / Lights 2D
について • UIについて • 最適化について • ふりかえり
ゲームデザインの話
ゲームの流れ 仲間を増やす 接敵する 競り負ける 勝利 独占する 敗北 全滅する
密集と分離 密集状態 分離状態 体力 多い 少ない 総攻撃力 弱い 強い 機動力
的がデカい 的が小さい
「観察」
「観察」というモチーフ • AIを実装したあと、AIだけで戦わせてみた • するとこれが結構面白い!! • 「シャーレの中の細菌を観察している」という設定 • 細菌に顔を付けたり動かしたりして実在感や愛着感を強調!
どうやって作ってるの?的な話
絵作りの話 主にLights 2D
Lights 2D is 何 • Universal Render Pipelineの機能 • スプライトに光の表現を加える
• まだExperimental
Lights 2D なし
Lights 2D あり
Lights 2D かんたん絵づくり講座~
①Circleを置く
②ライトを置く
③影を付ける
④ダメ押しのポストプロセス
ゲーム内で使ったスプライト素材
まるとしかくでゲームは作れる(?)
余談:Lights 2D x WebGLの罠 URPテンプレートでプロジェクト作ると ここの設定がURP設定を上書きするの で注意…… (WebGLビルド後にLights 2Dが効か なくなって超焦った)
UIの話
None
①とりあえずフェードする • 画面切り替えが一瞬だとなんとなくダサいのでフェードしたい • めんどい
②ボタンアニメーション • uGUI ImageのFilledでアニメーション • 線形補間(Mathf.Lerp)でAnimator要らずのイージング
勢力ゲージは? これ
勢力ゲージは? • これもImageのFilled • 同じサイズのImageを重ね、そ れぞれの色とFillAmountを調 整 • 座標計算が不要
AIの話
細菌のほとんどはAIで動く • ステージにいる105の細菌のうち、プレイヤーが動かすのはたった1 つ • あとは全部AI
AIのつくりかた? • ステートマシン? • Behavior Tree?
わからないのでコード手打ちしました
AIのつくりかた? ①画面内の敵を取得して ②体力、距離、サイズ、仲間の数などで重みづけ ③優先度の高い敵をターゲットに設定 ④追いかけて撃つ 上記に加え、状況に応じて密集・分離を行う
None
AIのつくりかた? • 手打ちでAIを作ると変数の数 がヤバくなります
最適化の話
Lights 2Dは重い (スプライトやライトの数にもよる)
Lights 2Dは重い SetPass calls: 33 Lights 2Dなし Lights 2Dあり SetPass
calls: 2055
画面外のスプライトにも パスが走ってるっぽい
Lights 2Dは重い SetPass calls: 33 Lights 2Dなし Lights 2Dあり SetPass
calls: 2055 Lights 2Dあり (カリング有効) SetPass calls: 435
ちなみに (なぜか)CPU負荷も減る
開発を振り返って……
といきたいところですが 時間がなさそうなので
おしまいです ブログに細かいスケジュールとか書いておきました
None