Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ゲーム開発研修(chapter3.課題ゲーム紹介編)【MIXI 23新卒技術研修】

ゲーム開発研修(chapter3.課題ゲーム紹介編)【MIXI 23新卒技術研修】

23新卒技術研修で実施したゲーム開発研修の講義資料(chapter3.課題ゲーム紹介編)です。
後ほど動画も公開します。

ハンズオン用リポジトリ:https://github.com/mixigroup/2023BeginnerTrainingUnityPublic
※この資料の範囲であるchapter3のコードは公開していないので、ハンズオンを実際に試していただくことはできません。

<< ゲーム開発研修資料一覧 >>
chapter0.ゲームUX編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter0-ux

chapter1.C#講座編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter1-csharp

chapter2.Unity基礎編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter2-unity

chapter3.課題ゲーム紹介編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter3-problem

chapter3.ハンズオン1編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter3-handson1

chapter4.ハンズオン2編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-chapter4-handson2

出題と解答編
https://speakerdeck.com/mixi_engineers/2023-game-development-training-problem-and-answer

資料の利用について
公開している資料は勉強会や企業の研修などで自由にご利用頂いて大丈夫ですが、以下の形での利用だけご遠慮ください。
・受講者から参加費や授業料などを集める形での利用(会場費や飲食費など勉強会運営に必要な実費を集めるのは問題ありません)
・出典を削除または改変しての利用

MIXI ENGINEERS

May 08, 2023
Tweet

More Decks by MIXI ENGINEERS

Other Decks in Technology

Transcript

  1. 【題材】 多人数アスレチック ゲーム開発 1) day 1 a) まずはプレイ会     〜シングル・マルチ〜

    b) ハンズオン(1) 2) day 2 a) ハンズオン(2) b) 自由選択開発 c) 発表
  2. SELECTABLE EXTRA MISSION 1. EXTRA課題続き a. 仲間の方を向く b. 他キャラへのガイド矢印 c.

    ピン表示 d. 監視ツール作成 2. オリジナル3Dフィールド作成ステージ追加 a. PackageManager.ProBuilder import b. チェックポイント通過型の綱渡アスレチックマップ c. 物理障害物避けアスレチックマップ d. 空間がすてきなマップ 3. キャラクター編集/作成/テクスチャ変更 a. 顔テクスチャを変えてカオス空間 b. キャラモデルを変更追加してオリジナルテーマに 4. UI a. 既存テロップをリメイクしてオリジナルテーマに b. オリジナルテロップ演出追加で表現やルールをユニークに
  3. 課題の目的 1. 3D空間の計算、スプライトやmodelの表示に関する知見と技術 2. 監視ツールにおいてEditor拡張ツール開発の知見 3. 監視のためのHack行為および情報の信憑性 1. EXTRA課題続き a.

    仲間の方を向く b. 他キャラへのガイド矢印 c. ピン表示 d. 監視ツール作成 2. オリジナル3Dフィールド作成ステージ追加 a. PackageManager.ProBuilder import b. チェックポイント通過型の綱渡アスレチ... c. 物理障害物避けアスレチックマップ d. 空間がすてきなマップ 3. キャラクター編集/作成/テクスチャ変更 a. 顔テクスチャを変えてカオス空間 b. キャラモデルを変更追加してオリジナル... 4. UI a. 既存テロップをリメイクしてオリジナル... b. オリジナルテロップ演出追加で表現やル... 1. レベルデザイン、model制作や利用に関する知見と技術 2. 新たなゲームルール、イメージ・モチーフの創造表現 1. テクスチャ、model制作や利用に関する知見と技術 2. 新たなイメージ・モチーフの創造表現 1. UI制作や利用に関する知見と技術 2. Animator/Mecanim、ステートマシンによる遷移の知見 3. 新たなイメージ・モチーフの創造表現
  4. ゴール:メンバーリストのボタンを押すと、キャラがその方向を向く 実装箇所 1. CharacterController.LookAtTargetPlayer() 2. MemberListScene.OnClickMemberButton() 実装方法ガイド 1. Quaternion.LookRotation で他キャラクターへの向きを取得

    ◦ transform.rotationに設定 2. OnClickMemberButton()からUpdateLookAtArrow()を呼び出す ◦ ゲーム画面右側のメンバー一覧ボタンに対応 1.仲間の方 を向く 1. EDXTRA MISSION 続き
  5. 2.他キャラへ のガイド矢印 ゴール:メンバーリストのボタンを押すと、キャラがその方向を向く 実装箇所 1. CharacterController.LookAtTargetPlayer() 2. MemberListScene.OnClickMemberButton() 3. GameSettings.ResourceDefine

    4. GameSystemManager.Start() 実装方法ガイド ★ 「1.仲間の方を向く」の続きから取り組んでください。 1. 3D矢印を自キャラ→ターゲットキャラの方向に向かせる 2. ボタンのコールバックで1の関数を呼び出す 3. 3D矢印Prefabをロードできるように設定 4. 3D矢印Prefabをロード & Instantiate()する 1. EDXTRA MISSION 続き
  6. ゴール:「P」キーを押したらマウスの位置にピンを表示する 実装箇所 1. HUDPingController.cs 2. GameSettings.cs 3. GameScene.cs 4. GameSystemManager.Action()

    実装方法ガイド 4. クリック位置を取得するには、Camera.ScreenPointToRay()で3D空間にレイを飛ば す a. キーを押したかチェックするには「Input.GetKeyDown()」でチェック b. Pキーは「KeyCode.P」に対応 3. ピン表示 1. EDXTRA MISSION 続き
  7. ゴール:プレイヤーが瞬間移動したことを検知して、 Editorウィンドウに表示 実装箇所 1. GameMonitoringWindow.cs 実装方法ガイド ★ プレイ中に「shift+i+4」「shift+i+5」で瞬間移動する機能があります ◦ この機能を使ったことを検知し、エディター上のウィンドウに表示

    1. Editor拡張コードを以下のパスに作成する。※必ずEditorフォルダ配下に置く edugames-athletic/Assets/AthreticPrj/Editor/GameMonitoringWindow.cs • 別紙「Unity 実装テクニック集」xii. エディタ拡張 を参考にウィンドウを作成 ◦ custom > GameMonitoringWindowで開く • 前フレームからの移動距離をUpdateで監視し、しきい値を超えたらラベルに表示 4.監視ツー ル作成 1. EDXTRA MISSION 続き
  8. Export+ボタン 保存 2. オリジナル3Dフィールド作成ステージ追加 1. Menu>Tools>ProBuilder Windowでメニューを表示 3.ProBuilderメニュー>New Shape 「+」から、

    Shape Toolウィンドウで作成する形状を選択して「Build」 4. 形状編集を終えたら ProBuilderメニュー>Export「+」から「Prefab」 形式で「Export」実行してファイル化 選択ツール 頂点/辺/面 New Shape+ ボタン Build 2. ProBuilderメニューの「...」からText Mode ProBuilder asset作成 保存手順 ※下記基本操作以外は検索して試しましょう
  9. • マルチモード対応にするには通信相手にも同じ変更 (ブランチ共有がよい)を適応すること プレイヤーキャラの確認方法 3. キャラクター編集 • [prefabの編集]シングルプレイ用Character  >> micobot •

    [prefabの編集]オブジェクトの編集 • [prefabの編集]マルチプレイ用Character  >> micobot_Photon • Assets/MixiSampleAsset/CharacterRobot/Ass et/robot/RobotHeadMat 2.mat • [Materialの編集]顔テクスチャー編集 既存の編集 新規作成 • ProBuilderPackage(※前項参照) での 作成&出力とComponent移植。
  10. 4. UI • [prefabの編集]インゲームUIのprefab • ui_ingameノードを選択しAnimation Controllerをダブルクリック • Animatorウィンドウ>Parameterタブからトグルスイッチを操作 (再生中)

    インゲームUIとテロップアニメーションを確認する方法 • ctrl + N (command + N)にて新規シーン作成 • テンプレート選択をEmptyに指定する • テンプレート選択をEmptyに指定する • ui_ingameをDrag&Drop • 「再生」 • bg をEnable(可視)にする