thaseponのチラシ裏

気が向いた時や詰まっていたバグなどを解決した時に書いたりしてます。twitter : twitter.com/thasepon1023

ずっとゲームやってました

どうもお久しぶりです、はせぽんです。

新社会人の準備をしたりゲームをしてたらこんな時期になってました。時の流れが速すぎる…

本題

早速ですが今回やったことはこれです。
youtu.be

ちょっと音がガバっているところがあるのですがまぁ…
これ何をやっているかというと足の裏に小さなコリジョンをつけまして~
f:id:thasepon:20180401161259p:plain

このコリジョンが何かに接触した際に自動で音が鳴るって感じになってます。
一応この接触した際にベクトルの速度を測っているのでWwiseのRTPCとかにそのまま適応することも出来る状態です。

ではこの設定をどこでやっているのかというと

<SoundList>
 <Header>
  <Title>Test Data</Title>
  <Subtitle>Soundinfo Test</Subtitle>
  <Date>2018/3/28</Date>
 </Header>
<SoundData>
 <Foot ID ="0">
  <Sand>
   <ID>0</ID>
   <SoundName>SandFoot</SoundName>
   <Material>Sand</Material>
  </Sand>
  <Grass>
   <ID>1</ID>
   <SoundName>GrassFoot</SoundName>
   <Material>Grass</Material>
  </Grass>
 </Foot>
</SoundData>
</SoundList>

こんな感じで管理しています、いろいろ拡張できないと困るのでこういう風にしました。
ただこれ手打ちなのでそのうちこれを作るためのツールをまた準備しないとなぁって思ってたり

まぁそれはいつか別の機会にやるとして、今回の中で大事なのはSoundNameとMaterialの部分です

SoundNameについて

SoundNameは言わずもがな使用する音声ファイルの名前です、同一じゃないとダメです。
インスペクタ内にAudioClipのリストがありそこに使用音声を入れる事で初めて動作します。
ただ、どのclipを使用するかを内部で選別しているので同名でないとダメという状態になってます。
f:id:thasepon:20180401161509p:plain
(こんな感じです)

Materialについて
これはゲーム内のオブジェクトについているマテリアルの名前です。
その音声がどのマテリアルに触れたときその音がなるというのを判断する部分になってます。
今回ですと茶色が土、緑が草ということでマテリアルを設定しているのでこの音が鳴ります。
この属性はいくつもつけることが出来るようにもなってます。
なので鉄の床やコンクリートでも簡単に設定できるかなぁって思います。

その他
ここでは足音で使用してますが武器が何かに当たった時や物を投げつけたときなどにも利用できて、今回は使用してませんがベクトル数値を使用することによってどの程度の強さで物を投げたかの状態毎にいろいろ出来ると思います。

終わりに
これをこのまま強化しつつ色々なことをやっていこうと思っています。
特にCEDEC2017ではいくつもやってみたいことがあったのでそれを実装してみたいなぁとか、後外部ツール作らないとなぁとか色々あります。
社会人になり時間がどの程度とれるかもわからないので何とも言えないのですがこれからも更新できるといいな('ω')とか考えたり考えなかったり。

最後になりますが、ここまで読んでくださった皆さんありがとうござました!