1人でゲームが作れるように修行します。2 (487レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
240: SGGK ◆6pZCoAtaxk [sage] 2011/05/09(月) 23:53:46.13 ID:7TJ8pACL(1) AAS
>>234
234(2): 名前は開発中のものです。 [sage] 2011/05/08(日) 23:55:10.30 ID:45vHEn5A(1/2) AAS
move += f;
x += move;
物理は基本的にこれ
力fで加速(減速)して、現在地xから速度move分だけ動く
>>233ならf=move/2とか、そんな感じで
>>239
239(1): 名前は開発中のものです。 [sage] 2011/05/09(月) 03:54:43.87 ID:FkwWv0YK(2/2) AAS
>>233
物理的には、
・重力
・跳ね返りによるロス…地面やゴールポストとのバウンドの際、運動エネルギーの一部が消失
・ころがり摩擦抵抗…ボールが着地しているときのみ
・空気抵抗…ボールの高度に関わらず場の空気の流れ(風)との速度差に応じて加速
風が無い環境なら、極端な例だと紙風船を思い切り投げたときのようになります。
・ボールのスピン…減速要因ではありませんが空気抵抗による曲げ加速の一種
   空気抵抗に配慮するなら合わせて検討してみてください。
などが考えられます。

ちなみに摩擦によるボールの減速については、ボールの速度ベクトル(の水平成分)に対して
1より小さい数(0.995とか)を毎フレームごとに掛けるという簡易な方法でも、それらしく見えると思います。
多くのアドバイス、ありがとうございます。全部活用していきます。

>>234>>235
235(1): 名前は開発中のものです。 [sage] 2011/05/08(日) 23:58:57.92 ID:45vHEn5A(2/2) AAS
すまん訂正、-moveにしないとダメだなw
f=-move/2
-moveを使うと常に移動方向と逆向きに力がかかる
>>236>>237
なんとなく分かってきました。
昨日考えていた時は、等加速度αのt秒後の位置xの式が物理の本にあったとして、
これをゲームに応用するには、移動を始めた初期位置と初期速度に対してframetime後、2*frametime後、3*frametime後、…n*frametime後の位置を計算しなくてはと思い悩んでいたけど、
毎フレーム単位毎に常にその時の数値が初期値であると考えてframetime後の数値を計算するならば、公式がそのまま使えそうな感じ。
アドバイスのと同じ内容ですけど、たぶん、
frametime後の位置=現在位置+(現在速度 x frametime)+ ((加速度xframetime)x frametime/2 )
(注:加速度は実際の動きを見ながらマイナスの小さい値を設定)
を毎ループ繰り返していけば出来そうな予感。
>>238
前のプログラムが矩形当たり判定で他に判定方法を知らなかったのが理由ですが、
矩形だと斜め45度からボールに近づくと水平に近づくより有利になってしまうし、
円(球)形方式ならその問題もなくて良さそうなのでこれに挑戦してみます。
>>239
今回のプログラムでは、
・重力、・跳ね返りによるロス、・ころがり摩擦抵抗までを簡易な方法で実装していきたいと思ってます。
いずれは、スピンも表現できるようにして、レベルが上がると2回曲がるシュートが出せるようになる等やってみたいです!
299: SGGK ◆6pZCoAtaxk [sage] 2011/07/10(日) 22:33:55.13 ID:fCX0gGeR(1) AAS
昨日の書き込みで間違いがあった。

縦回転は、注視点位置ベクトル(x、0、z)から
カメラ位置ベクトルのY成分を0にした (略)

が正解。自分のプログラムは垂直方向がY方向になってるのが理由。

メタセコイア風に画面内のフィールドを動かせるようになったような感じがする。
直接これをゲームに使う事はないかもしれないけど、いろいろ動かして、カメラの位置を検討するのに使えそう。
>>279
279(1): SGGK ◆6pZCoAtaxk [sage] 2011/06/22(水) 00:06:09.17 ID:TfzO15yA(1) AAS
>>274
既に色々な要素が画面に出てて進んでそうな感じ。期待してます!
>>278
UPお待ちしてます。自分もUPできるように頑張ります!
>>276
自分はDirectXが理解出来なくてDXライブラリで頑張ってます。
回転検出は出来てるようで、昨日はGetMouseWheelRotVol()とSetupCamera_Perspective()を使い、視錐台の視野角を変更して拡大縮小するやり方を試みて悩んでました。(ホイール止めても限界まで拡大してしまう)
もう少し考えて無理な場合、カメラを移動する方法で頑張ってみます。ありがとうございます!
でやった拡大方法だと、カメラの座標が変わらずに拡大縮小してしまうので、>>276
276(2): 名前は開発中のものです。 [sage] 2011/06/21(火) 05:07:11.26 ID:MHP6wZYB(2/3) AAS
>>272
マウスホイールの回転検出はできてる?
方法はいろいろあるけど、たとえばWM_MOUSEWHEELメッセージを処理する方法があるよ。

3Dゲームでパースペクティブビューを使用しているのであれば、
フィールドを拡大縮小するのではなく、カメラの座標を注視点に接近または離脱させればいい。
なお、その際には視点-注視点間の距離を一定値で増減するのではなく、一定率で乗算、除算してやると良い。
(カメラ位置をE、注視点をFとしたとき、E'= F+(E-F)*k or E'=F+(E-F)/k。 kは1.0前後の定数)
氏の方法に変更。

次からはボールの動きに挑戦。179氏の>>297
297(3): 179 ◆SLG//siTD6 [sage] 2011/07/08(金) 00:03:46.32 ID:eIT69sd4(1) AAS
1、原点(0,0,0)でカメラの向き(角度X,角度Y,0)の回転行列を作る
2、1のマトリックスから カメラから原点までの距離(0,0, - 距離)をトランスフォーム
3、マウスでのミドルボタン平行移動は(移動量X ,移動量 Y , 移動量Z(0))で1のマトリックスからトランスフォーム
4、2と3を足す
5、カメラに各要素をセット(4のposition、角度X,角度Y,0)

3、の 移動量Zの部分はメタセコアではズーム代わりになってると思う。
多分メタセコアのはこんな感じだと思(・x・`)
色々違ってたらゴメンナサイ、と・・・。
も意識して作業の予定。
315: SGGK ◆6pZCoAtaxk [sage] 2011/09/13(火) 22:23:15.13 ID:UyS152Ji(1) AAS
>>314
314(1): 名前は開発中のものです。 [sage] 2011/09/13(火) 19:12:35.87 ID:nrv6ZrDs(1) AAS
その残り3つ、急に段差がきつくなってると思う。
無理に進めずに、今までのところをきっちり固めてから進むべきじゃないかな。
書き込みありがとうございます。
AIについては何も勉強してない状態なので、ボール持ってる選手に他の選手が
近づいていくだけで、これがAIという事にしようと考えていましたが、これだけでは物足りないかもしれません。
もう少しAIっぽくしようとすると確かにきついです。
昨日は、崩して作り直すのは難しいと言ったけど、無理せず、部分的でもいいので
ソースを見直して、AIも少し調べてみようと思います。

現時点では、直したばかりのボール移動部分をさらに見直すつもり。
今の段階でも、選手が停止した状態ではボールが蹴れないとか、
ボールがマウス方向に飛ばないとか、クリックしてもすぐに蹴れないなどの不具合が出ているので、
ここはもう一度作り直した方がよさそうな気がした。
480: 底辺リーマン ◆h2TYnqW5/M [] 2019/04/23(火) 17:46:29.13 ID:r4lU/Sqh(2/2) AAS
修行中
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.024s