!Unity 入門 何度か目の入門.Linux版でチャレンジ. [マンガでわかる Unityゲーム開発入門|https://www.amazon.co.jp/gp/product/B0BKSPQBPQ]の写経+δ. 適度に達成感を感じられるゴール設定と,丁寧な説明がよかった. GameObject → UI → Legacy → Text で作ったテキストが表示されなくてドハマりしたけど, それは,Canvas の Render Mode を World Space にして解決. Screen Space の Overlay や Camera でも適切に設定した*つもり*だったんだけどなあ... とりあえず,最後まで一通りやってみて, クリアとかゲームオーバとか追加してみるなど,ちょこちょことした要素を追加してみるなど. しかし,これ,しばらくやらないと忘れそうだな. ざっとメモしておくと... * キャラクタを用意する ** 何か素材を用意する ** 素材をAssetsに追加する ** Assetsに追加したものをSceneに追加する. ** サイズとか変える ** Assets -> Create -> C# Script でスクリプト書く *** public 変数は,Add Component時に Inspector で設定できる ** Hierarchyでキャラクタのインスタンスを指定. ** InspectorのAdd Componentでスクリプトを指定 * ゲーム全体のロジックを用意する ** GameObject → Create Emptyで空のAssetを用意.GameManagerと名付ける ** Assets -> Create -> C# Script でスクリプト書く.GameManager.csとかにしとく ** GameManagerのインスタンスにGameManager.csのクラスをAdd Componentする * ゲーム起動後にインスタンスを生成したい ** HierarchyのインスタンスをAssetsにもっていてPrefab化する ** Hierarchyからインスタンスを削除する *** これでSceneからなくなる ** スクリプトで適切に生成する. *** public GameObject obj; とかって定義するとInspectorで紐付けできる *** Instance(obj, 場所,Quaternion.identity)で生成 *** 消すときはDestroy.生成したインスタンス側で消したければ Destroy(this,gameObject) でよい. * アニメーションが欲しい ** 複数画像を一度にScene上にインスタンス化する ** 三角アイコン(Animation Clip)をOpenしてタイムチャートを表示. ** AnimationEventを追加 ** 追加したAnimationEventの終了時のFunctionを設定 ** C#スクリプトでFunctionの実体を定義 * テキスト ** GameObject → UI → Legacy → Text ** すごく大きいオブジェクトがSceneに追加される ** CanvasのRender Mode を World Space にする * ビルド ** File -> Build Settings で Build ** ビルド先は新規にディレクトリ作成しておいた方がいい * WebGLではくとき ** Build Settings -> Player Settings... ** Player -> publishing Settings の Compression Format を Disabled にする * 音を追加したい ** 追加したいPrefabやGameObjectで Add Component で Auido → Audio Source ** Audio Sourceに音ファイルを指定 ** 起動時から流したくなければ,Play On Awake のチェックをはずす ** 音を再生したいところで this.GetComponent().Play(); とする. * GitHubでコード管理する ** リポジトリ作成時に .gitignore を Unity 用に作成しとくと便利 ** git init → git remote add origin git@github.com:ほげほげ → git pull origin main ** あとは add して commit して push ** cloneした側で,Sceneがない!!ってなったときは,File → Open Scene でファイルを開く *** Assets/Scenes/ほげ.unity 参考 * [Unity×音についてざっくりまとめ|https://qiita.com/lycoris102/items/5d5359b2015a8fdebaaa]