【Unity】ゲームの作り方 #011 砂のテクスチャの描き方【お塩】


はじめに

歩いた時に足元から出る、砂のエフェクトを作りたいのです。

皆さんは砂のテクスチャを描く時はどうしてますか?

自分ならフォトショップで描くかなぁ。

けど私物のMacBook Proにはフォトショップが入ってませんので、別の方法を考えましょう。

以前にヨーグルトで血を作りましたので、今回もその手法でいきましょう。

今回は、お塩です。

マット板が電灯でテカらないように、電気を消してiPhoneのナイトモードで撮影しました。

つぶつぶが良い感じですね。ビーチの砂を塩から作るのは理にかなっていると言えます。

あとはMacBook ProのAffinity Designerで、その画像をマスクにして抜くだけ。

それをパーティクルに貼れば、ほらこの通り!

歩くと足元から砂が出るようになりました。

砂エフェクトだけ出しても砂に見えないので、地面にも適当に砂マテリアル(仮)を追加しました。

そしたらこないだ行ったインドのゴアみたいな風景になってしまいました!

イイヨイイヨー。

しかしこの砂エフェクトを出すだけの事に、とても苦労したので以下に書き記します。

Get Velocity

歩くと出るエフェクトといえば、実は既にゾンビに転化した後は血のエフェクトが地面に垂れています。

あれは死んだら出す様にしてあるだけで、出っぱなしです。要調整案件で仮の仮の実装です。

というか、偶然の産物です。

本格的に歩いたら出る様にするには、自キャラの速度を求めて、動いてるかどうか判定する必要があります。

なのでGet Velocityを使いました。Velocityが0.5か、それ以上だとエフェクトを出すようにしました。

そしたら足元からエフェクトが出ました!

これで話はおしまいの様ですが、エフェクトが出るようになった途端、Raycastがぶっ壊れました。

Raycast

Raycastとは、茹でる前のそうめんみたいな細い棒なんです。

それを自キャラから発射して、ゾンビに接触するかどうかで至近距離にゾンビがいることを判定していました。

黄緑色の細い棒がRaycastです。

で、そのRaycastが砂エフェクトが出る様になったとたん、真下に落ちていくようになったのです。

ゲーム開発って、コレを実装したらアレがぶっ壊れるみたいなののオンパレードだよな。

もうココで二日くらい悩みました。

RaycastとGet Velocityは相性が悪いのかな?と思い、それらを使わない別の方法なども検討しました。

しかしRaycastが真下に落ちるって、「重力かよ!」と自分にツッコミを入れた時にヒラメキました。

Get Velocityを使うには、自キャラがRigidbodyでないと駄目だったのです。

なのでRigidbodyを追加して、設定の「Use Gravity」のチェックを外した所、Raycastが落ちなくなりました。

本当にRaycastは重力で落ちてたんだ。。。

ホンマに何が何やらわかりませんわ。

しかし、こんな事に気づくようになった俺って日々進化してるなと思います。

なんでこんな事が理解できるカラダになったんだ。

鍼が効いてるのかな?

もうここまで来たら、意地でも完成させてやるからな。

待ってろよ! App Store!

作成中のグラフィックは @oknaka のインスタで晒しています。

作成中の動画は @oknaka のYouTubeで晒しています。

作成中のBGMは @tigeronbeat のインスタで晒しています。

フォローよろしくお願いします。

error: Content is protected !!