【ゲームエンジン】Unityなんでも質問スレpart10at GAMEDEV【ゲームエンジン】Unityなんでも質問スレpart10 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト319:名前は開発中のものです。 23/05/20 11:46:33.52 YRmdPJjZ.net >>317 自己解決ありがとう 320:名前は開発中のものです。 23/05/20 12:42:17.11 YRmdPJjZ.net ステートマシンってswitch caseみたいなものだと思うけど、if分岐とは何が違うんでしょうか? 321:名前は開発中のものです。 23/05/20 13:19:36.78 haP0wd4+.net >>320 本式で作ると全くの別次元、ステートでclass間を行き来するから class化の最大の利点のカプセル化と隠蔽が効く そうでないものは唯のまがい物でバグの温床にしかならないから if文やswitch文と大差ない 322:名前は開発中のものです。 23/05/20 14:03:11.93 YRmdPJjZ.net >>321 enumで作ってますが、このステート1つ1つがクラスなんですか? 323:名前は開発中のものです。 23/05/20 14:47:52.39 haP0wd4+.net そうなるかな デザインパターンのステートパターンを使う。 例えばIStateインターフェイスを定義して、idleState、moveState、jumpState を派生させたらメソッドの中身を書く 例えばJump中に横移動させたくないならメソッドの中身に横移動する処理自体なかったら ステートを変えてclassが変わると横に移動しなくなる。if文やswitch文だとフラグによるから 自分が意識してない想定外のフラグの立ち方が計算式的に成立してしまうとそれがバグになる。 そういう可能性が完全になくなる。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch