1人でゲームが作れるように修行します。2 (487レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
214: SGGK ◆6pZCoAtaxk [sage] 2011/04/15(金) 23:10:40.56 ID:2Uog82ch(1) AAS
>>210210(1): SGGK ◆6pZCoAtaxk [sage] 2011/04/13(水) 05:32:57.65 ID:c5UQB0E3(1) AAS
>>209
使ってみてくれてありがとうございます。
体力ゲージについては今度実装するときには修正してみます。
説明JPGについては今見直してみると説明というよりは説明図だけのような作りになってるので
また似た事をやるときがあればもう少し改善しようと思います。
関数はDXライブラリのものを使っていると注意書きしておけば良かったと今反省。
ユニットリストがマウスドラッグ出来るようになってるとか?
もしかして他者製ライブラリを使わないAPIいろいろ使うWINDOWSプログラミングで組んでると想像。
>208の「2D座標系でやったのと同じ事が3D座標系でも出来るようにしたい」に向けてちょっと復習。
2Dでやってたプログラムソースは、時間、当たり判定、状態遷移の3つ(まだ他にもあるかもしれない)がソースのあちこちで絡み合いワケがわからなくなってきていたので見やすくしたい。
とりあえず、選手関係のソース見て、どんな位置関係にオブジェクトがあればお互いデータやりとり出来てるとか、関数使わないとアドレス渡せないのかとか、
そういったコピペでやり過ごしてきた部分を見直してみた。
なんとなくこういうのはノート&手書きの方が頭に入りそうな感じがしたので今回はエクセル使わないでノートに手書きでやってみた。
ほんの少しだけ頭の中が整理されたような気がしたので、まず画面に試合経過時間を表示できるようにしたい。
時間は条件分岐に使うので、時間表示を優先したのが理由。
の試合経過時間は未だ実装出来ず。
結構難しいかもしれない。
298: SGGK ◆6pZCoAtaxk [sage] 2011/07/09(土) 00:04:38.56 ID:HknH7n3m(1) AAS
>>297297(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・`)
色々違ってたらゴメンナサイ、と・・・。
ありがとうございます。昨年末頃3Dの本を途中まで読んでて、
それに載っていた座標変換のことを忘れてました。
なのですぐにこれをコードに落とすのはまだ難しいけど、
プログラムのどこかでまた座標変換が必要になる頃には出来るように本を読み直してみます。
座標変換でやる場合、移動量Zを変えた時に注視点をどう変えるとズームになるかがまだ自信ないけど、
本読み直す時に解決出来ればと思ってます。
今日は、マウスの右ボタンドラッグ移動量から画面で回転させたい角度を計算するとこまで出来た。
あとは横回転はY軸に対して行い、縦回転は、注視点位置ベクトル(x、y、0)から
カメラ位置ベクトルのZ成分を0にしたベクトルをマイナスして出来たベクトルを90度回転してできたベクトルに対して
回転すればいけるかもしれないというあやしい方法を考えてました。(汗
340: SGGK ◆6pZCoAtaxk [sage] 2012/02/01(水) 22:32:47.56 ID:3gp/rYmv(1) AAS
>>338338(1): SGGK ◆6pZCoAtaxk [sage] 2012/01/30(月) 23:23:48.35 ID:9k8tvKVu(1/2) AAS
次は>>116を参考にした処理がプログラム内に散らばっているので、これも整理しようと思う。
昨日と違い面倒なところがあるので時間かかるかもしれない。
昨日のはひとつのクラス内での話なので、一部分の処理を関数として書き直したい場合、
そのクラス内のメンバ関数として定義して使えば動くけど、
今回やろうとしているのは、処理がいろいろなクラスで使われているので、
今考えられるやり方としては、その処理を行う関数をメンバ関数にもつ新しいクラスを作って、
その新しいクラスのオブジェクトを>>116の処理を使っているいろいろなクラス内で定義する。
あとはその新しいクラスのオブジェクト経由?で>>116の処理を行うメンバ関数を呼び出せばなんとかできるのではと期待。
で言った関数を作成。
プログラムの一か所を試しにこの関数で置き換えたところ動いた。
他のところの置き換えはその都度やることにして、>>336336(1): SGGK ◆6pZCoAtaxk [sage] 2012/01/21(土) 01:10:41.85 ID:GhL59l/a(2/2) AAS
>>65のキー割り当てと異なってくるかもしれないけど、
マウスカーソルに向かって歩く Zキー押し続ける
マウスカーソルに向かって走る Xキー押し続ける
選手の進行方向固定 Shiftキー押し続ける
ドリブル(選手はボールに向かって移動し、ボールに近づくと
ボールをマウスカーソルに向かって蹴る。
これを繰り返す) Dキーを押し続ける
ロングパス ドリブル中にマウス左クリック
これだと、選手の進行方向を固定して進行方向以外に向けて
ノールックっぽくロングパスを出そうとすると、
Z、Dを押しながらマウスを操作しなければならず、操作性が良くないような気がしてきた…。
深夜になってしまった。(汗;
に戻る。
342(1): SGGK ◆6pZCoAtaxk [sage] 2012/02/06(月) 23:22:29.56 ID:fDWM60Br(1) AAS
上の文の下から2行目のは「staticでprivateだから」の間違いのような気がしてきたけど自信なし。
今は作業を続ける前にボール関係のクラスをプリントアウトして
寝る時にこれを見ながらプログラムの中身を思い出そうとしている最中。
何故、そんな事してるかというと単純に中身を忘れたので思い出す必要があるというのと、
現在マウス左クリックでボールを蹴りだせるようにしている箇所を関数として
ボールのクラスに移して残しておきたいと思ったから。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s