トップページgamedev
299コメント89KB

触手の動きのアルゴリズム教えてください

■ このスレッドは過去ログ倉庫に格納されています
0001とっつぁん02/05/15 03:44ID:???
沙羅曼陀の1面やグラディウスIIの2面にでてくるようなスラッとした動きの触手、
グラディウスIIIの植物面にでてくるのや沙羅曼陀の1面ボスのゴーレムの手みたいに
時機を追いかけているうちに自ら絡まってこんがらかるような動きの触手の
アルゴリズムというか計算方法を教えてください。
0002名前は開発中のものです。02/05/15 03:48ID:???
http://game.2ch.net/test/read.cgi/gamedev/1021401883/
双子の兄弟スレ
0003名前は開発中のものです。02/05/15 05:01ID:???
>>1
 いや、別にこんがらがるように設計したわけじゃないと思うぞ。単に親細胞上を動く子細胞の角度を限定したから1方向に回されると絡まるだけで。

 三角関数でキャラを円運動させれれば、触手の実装は簡単です。親の運動値を子に渡せばいいだけですから。ちなみに移動速度が速くて角度制限無しの触手を作ると、自機の方向に突っ張った触手が出来あがります。
0004名前は開発中のものです。02/05/15 05:31ID:???
なんでここで質問せんのだ?
http://game.2ch.net/test/read.cgi/gamedev/1005040025/l50
0005名前は開発中のものです。02/05/15 06:18ID:???
>>1 IKで検索
0006名前は開発中のものです。02/05/15 08:32ID:???
>>5
そんな高度なことはやっていない罠
0007名前は開発中のものです。02/05/15 22:44ID:NnWbsCpI
>>3
ロジックってこんな感じになるの?

触手の一番先端の細胞が自機の方移動します。
その動きを元に、各親へ移動情報を伝えていきます。
一番上の親にきたところで問題発生。遠すぎてその位置へは
移動できないらしい。とりあえず最大限のところまで移動。
今度はその情報を子に伝えていきます。
これで先端細胞の最終位置が決まりました!
0008名前は開発中のものです。02/05/15 22:53ID:???
グラディウスの触手の細胞は重なりあうのがOKだけど、
重なりあわないようにすると(例えば真珠のネックレス)
結構難しくない?
0009名前は開発中のものです。02/05/15 22:58ID:???
全オブジェクト間で重なりチェックして
重なってたら距離が離れる方向に補正してやればいいんじゃネーノ?
0010とっつぁん02/05/15 23:45ID:???
わかったようなわからないような・・・馬鹿でごめんなさい。

自分の座標 X Y
触手の各オブジェクトの座標 SX(i) SY (i)
触手オブジェクトの数 i
iは仮に10個だとして10個目が付け根で位置固定として自分を追いかけてくるような
サンプルプログラムきぼん。N88BASICで。
0011名前は開発中のものです。02/05/16 00:11ID:???
自分で考えろ。N88BASICで。
0012名前は開発中のものです。02/05/16 02:14ID:???
>>1
ふーん。ナルホド。
今、適当に考えてみた(だけ)では、
ホーミングミサイルの、迂回しながら追尾
&親子リンク
&各ノードの座標値(親からの相対座標)を、触手のノードサイズでクランプ
でいけないかな?いけるような気がする。(多分)
0013名前は開発中のものです。02/05/16 20:29ID:???
>>9
いいんじゃネーノ?ってずいぶん軽く言うね。(ワラ
全オブジェチェックは当然だけど、1パスじゃ無理な状態もあるね。
0014名前は開発中のものです。02/05/16 21:18ID:???
>>13
たぶん、
とりあえずで基本的な考え方を軽〜く書いただけだろう。
自分で実装するなら真面目に考えるけどなー。
0015名前は開発中のものです。02/05/17 00:46ID:???
>>1
それは自分で考えたほうがいいよ。
出来た時には「俺ってすげぇ」とか思う(錯覚)よ。
俺が学校でVB習ったときに、
グラディウスのオプションやレーザーの動きを自分で考えてみたんだけど、
出来たときはそう思った。

どうでもいいけど、
グラのオプションの動きとツインビーの分身の動きの違いは、
プログラム上では、何かの命令文を上のほうに書くか、
下のほうに書くかの違いだけだった。
0016ヒント02/05/17 09:50ID:???
双方向リストにすると触手をいくらでも追加できて良いよ。
0017名前は開発中のものです。02/05/18 00:29ID:???
>15
ハァ? レバーを入っているときだけ循環バッファに書き込むか、
レバーが入っていなくても書き込むかの違いだけだろ?
0018名前は開発中のものです。02/05/18 07:12ID:jMqxBjRg
単純な循環バッファ(って言うのか?)だけで処理する分身なんて
この板みてる奴なら誰でも作れると思われ。
>>15にはぜひ自分で考えた触手の動きを発表してもらいたいものだ。
いやオプやレーザーでも可。きっと微笑ましいものに違いない。

それはそうとグラのオプはコンシューマー機用のは単純な循環バッファ処理のようだが
アケ版はシリーズすべて異なる妙なアルゴリズムなんだよね。
以前別板のスレでずいぶん議論が盛り上がっていた。
0019名前は開発中のものです。02/05/18 08:26ID:???
グラディウスのオプションって何種類か無かったっけ?
感性で引っ張られる奴とか、親機をトレースするのとか、くるくる回るのとか
0020名前は開発中のものです。02/05/18 08:33ID:???
>>17, >>18
まぁまぁ落ち着いて。
>俺が学校でVB習ったときに、
この文章見た時点でレベルなんて想像できるでしょうに。
0021名前は開発中のものです。02/05/18 14:32ID:???
学校で教わる前にできてろよ。そんなもん。
つーかVB教えるような学校通うな。
つーかプログラミング学校で習うな。
0022名前は開発中のものです。02/05/18 14:38ID:???
>>18
> それはそうとグラのオプはコンシューマー機用のは単純な循環バッファ処理のようだが
> アケ版はシリーズすべて異なる妙なアルゴリズムなんだよね。
> 以前別板のスレでずいぶん議論が盛り上がっていた。

後から追加された追尾型以外のは別として、
グラII以降は普通のルーチンになったように記憶しているんだけど…。
詳細希望。できればそのスレも。
0023名前は開発中のものです。02/05/18 17:18ID:nLBOy5nA
いくつか節をもうけてフックの法則を適用
3dにも使えるし動きもリアルだと思います。
0024名前は開発中のものです。02/05/18 17:47ID:???
流石にサラマンダとライフフォースのオプションの動きは全く同じだろうな。
0025名前は開発中のものです。02/05/18 21:16ID:???
触手とオプションじゃ全然ロジック違うよね。
0026名前は開発中のものです。02/05/18 21:54ID:pBCFD8TQ
サラマンダの微妙にギクシャクしたオプションの動き方に萌え
0027名前は開発中のものです。 02/05/18 21:54ID:???
無理矢理こじつけるなら
オプションは単方向にデータが流れるだけだが
触手は双方向にデータが流れる(というかフィードバック)
ぐらいかな。

だめだ、全然違うなw
0028名前は開発中のものです。02/05/18 22:29ID:???
節足動物をシミュレートする
0029名前は開発中のものです。02/05/18 22:30ID:???
どうせなら軟体動物のシミュレートよろしく
0030名前は開発中のものです。02/05/18 22:34ID:???
>>27
別に無理してこじつけなくても両者に共通する部分は多いと思う。
ただ、どちらも種類が多すぎるから、全然かぶらないのもあるけど。

オプションの場合、自機の軌跡をそっくりたどるけど
それを触手に見せたいときは、触手の付け根と内挿すれば良い。
後は先端をそれっぽく動かせば、昔、何処かで見たような触手になる。
たこの足や、鞭のように根っこに意思がある(?)ものは根っこの方から
新しい座標を使用するようにし、
先端に頭がついていて、根っこが固定されている謎の生物のように
先端に意思があるものは、先端の方から新しい座標を使用するようにする。

これは座標を伝達させる例だけど、相対角度を伝達させる例もある。
紐のようなルーチンを使用することもある。
他にも微妙に違うのや、合わせ技や、全然違うものもある。

上記の例は、最初の以外は、確かにグラディウスのオプションとは
関係ない動きをするが、これらのアルゴリズムを使ったオプションが
あっても何ら不思議ではない。
むしろ、そう言う変わった動きをするオプションを使うゲームが
流行った時期もあった(代表はアイレム等)。
0031名前は開発中のものです。02/05/18 22:57ID:???
だからって単発質問スレを認めるわけにはいかんだろ!?
削除依頼出して、適当なスレで続きを議論してくれよ
それとも、触手の話題だけで1000レス行くとでも思ってる?

普段は単発質問スレの教えてクンがいると荒らしてしまうのに、
ちょっとでも知ってる事があると知ったかぶって議論したくなるのは
キミたちの悪いところだぞ。仮面紳士めが!。
■ このスレッドは過去ログ倉庫に格納されています