ページ 11

へにょりレーザー

Posted: 2015年2月28日(土) 19:34
by 夢幻ノ月夜
パソコンが取り上げられているのでタブレットからの投稿になります

へにょりレーザーの作り方を教えていただきたく質問しました

私の場合は「レーザーの描画」には成功していて、

レーザーの移動方法などは普通の弾に軌跡をつけただけにします。

今回教えてもらいたいのは、

レーザーの長さを決める方法です

予定としては、

幅、長さ、移送速度、移動角度、ステート、レーザーの見た目、などの引数で

制御できるようにしたいと思っています。(もちろん必要なら追加)

Re: へにょりレーザー

Posted: 2015年2月28日(土) 19:57
by Rittai_3D
言語が指定されていないので、C++で検索したところ、以下のサイトが見つかりました。
12.へにょりレーザー

Re: へにょりレーザー

Posted: 2015年2月28日(土) 20:03
by 夢幻ノ月夜
Cです

ベジェ曲線で動かすのは勘弁してください

自由度が足りません

Re: へにょりレーザー

Posted: 2015年2月28日(土) 20:07
by h2so5
ベジェ曲線で表現できないレーザー軌道ってどのようなものでしょうか?

Re: へにょりレーザー

Posted: 2015年2月28日(土) 20:18
by 夢幻ノ月夜
表現できないというより
私のしたいことができない
と言うのがが正しいのではないかと

Re: へにょりレーザー

Posted: 2015年2月28日(土) 20:27
by Rittai_3D
夢幻ノ月夜 さんが書きました:表現できないというより
私のしたいことができない
と言うのがが正しいのではないかと
どういったことをやりたいのでしょうか?

Re: へにょりレーザー

Posted: 2015年2月28日(土) 21:06
by 夢幻ノ月夜
先頭の動きを通常の弾と同じ方法で制御して、
通過点を保存して軌跡を描きたいです

Re: へにょりレーザー

Posted: 2015年3月01日(日) 15:30
by axis
最初に、自分初心者ですm(_ _)m

12.へにょりレーザーのリンクのサイトを見て考えたのですが
サイトの軌道リストtrailをフレームごとに通った座標を保存して行く形式に変えて、
描画で必要な角度は前回の座標から今回の座標のGetAngle(サイトで出てきた関数)で求める。
そうすれば普通の弾と同じ方法で先頭をコントロールできると思います。

長さは、サイトに載っているように軌跡リストの最大要素数を制限するか、
現在の長さを表す変数を持っておいて、軌跡が増えるたびに2点間の長さを求めて加算していき、
長過ぎたら最初に追加した方から消してその分の長さを減算するようにすれば少ない計算で済むと思います
Cでリストを使う上手い方法はわかりませんorz

Re: へにょりレーザー

Posted: 2015年3月02日(月) 10:40
by usao
やりたいことがいまいち伝わらないです.
(そもそも 「へにょりレーザー」 とかいうのは一般的に通じる単語なんでしょうかね?)

>通過点を保存して軌跡を描きたいです

ということなら,
・通過点を保存しておき
・その間をつなぐ線を描けばいい
のだと思いますが,何が問題になっているのでしょう?

#個人的には,ベジェよりも,制御点上を通るスプラインとかの方がやりやすいようにも感じます.

Re: へにょりレーザー

Posted: 2015年3月03日(火) 17:40
by 夢幻ノ月夜
Axisさんの方法を試してみます
みなさんありがとうございました