ページ 11

壁の側面を歩くには・・・

Posted: 2013年7月23日(火) 00:18
by icon01
Unityの質問をここでしても良いか尋ねたものですが。

結論から言うと、地球防衛軍のアリや蜘蛛ように、キャラがいろんなオブジェクトのいろんな面を走り回るプログラムを書きたいのです。
{クーラクエストというゲームをご存知でしたらそちらのほうが完成形のイメージに近いです}

で、重力の方向をオブジェクトの端に来た時に変更してみたりしても、滑り落ちてしまったり、あらぬ方向に飛んで行ったりでうまくいきません。

レイを何十本も飛ばして細かく判定する・・・みたいなことを書いているサイトがあった気がしましたが(リンク先はわかりません)、

どう考えても重くなるし、Unityなら楽できるんじゃね?みたいな淡い希望を抱いているのですが。

どうか、皆さんの意見をお聞かせください。

Re: 壁の側面を歩くには・・・

Posted: 2013年7月23日(火) 12:03
by softya(ソフト屋)
元からある重力を使わなければ良い気もします。
当たっている壁に引っ張られると言うコードを書いてみたらどうでしょうか?
※ unityに詳しくないので面倒ならごめんなさい。

Re: 壁の側面を歩くには・・・

Posted: 2013年7月23日(火) 15:18
by ISLe
重力方向にレイを飛ばして、交差する平面の角度を元に、重力を分解する必要があります。
Unityは使ったことがないですが、物理エンジン使って楽できそうな気がしなくもないですが。

いちおう壁に沿って動くというサンプルプログラムは、2Dのならウチのブログで公開してます。
元は3Dのプログラムから持ってきたコードなので2軸計算すれば3Dにも応用できます。
壁に沿って転がる玉: ISLeのビデオゲーム工房

Re: 壁の側面を歩くには・・・

Posted: 2013年7月23日(火) 23:24
by icon01
またまた返信が遅くなってしまいましたが、お二人とも回答ありがとうございます。

参考にさせていただきます。