
2025.01.08 『カラダ探し』の二次創作ゲームを作りたい!
今週やったこと
プレイヤーのステート駆動システム整備(途中)
フレームだけ先に完成させて、あとはちょっとずつ育てる。ハッピーサンライズさんという方のチュートリアルガン見しつつ作った。
『赤い人』のステート駆動システム整備(途中)
ActionStateとEmoteStateの二種類のEnumを作って、Switch文に二つとものStateを使った。ActionStateが11種、EmoteStateが4種あるから、単純計算でcaseが44種。一部纏められるとは言えめんどくさすぎて、フレームづくりはChatGPTにお任せした。
キーリバインド機能の実装(途中)
内部的にはデフォルトのキーバインドを上書きする機能だけ作った。UI周りはまだ全く作ってない。
カラダの配置処理
多分自動で置けるようにはなった。けど何故か腰だけ置けないはずのところにおけるからなにがしか間違ってはいる。気が向いたら直す。
UIの設計変更
今まで画面毎にCanvas分けてたんだけど、遷移処理がめんどくさいのと複数のキャンバスから同じ画面呼び出したかったりしてきたので全部一つにまとめてCanvasGroupで管理することにした。
インタラクト可能なものを強調表示できるようになった
RayCastとMaterialPropertyBlockを使って、視線の先にあるオブジェクトを白く点滅させる仕組みができた。HoverBehaviourって名前でクラス化したので、インタラクトの設定用のスクリプトに継承すれば勝手に強調表示できる。
ドアにインタラクトして開けられるようになった
RayCastとInterfaceとeventシステムを使って、オブジェクトにインタラクトできる仕組みができた。まだドアしか実際のインタラクト処理作ってないからドアを開け閉めするしかできないけど、これからどんどんインタラクトできるものを増やしていきたい。
まとめ
すべてが途中。ただ、最低限の姿勢変更とインタラクトの概念が完成したからまぁ進んでるでしょう。今日のサムネは強調表示中のドア。