[過去ログ] ゲームプログラミング相談室【Part5】 (970レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(1): 02/11/04 20:41 ID:a1Mhmm8N(1) AAS
ゲームプログラミング全般の質問スレッド。
扱う話題のダイナミックレンジはやや広め。包容力高め。
他の初心者質問スレとの棲み分けを探りつつ
これからもマターリと活用しておくれ。
■前スレ
【Part4】2chスレ:gamedev
省6
2(1): 02/11/04 20:42 ID:??? AAS
■関連スレ
○【初心者歓迎】スレを立てる前にココで質問を【その3】
2chスレ:gamedev
○物凄い勢いで誰かが質問に答えるスレ@ゲ製板 4つめ
(※第3スレ後半〜第4スレ前半は一時的な紛争地域)
2chスレ:gamedev
○鬱だ氏のう DirectX (DirectXに関する話題)
省1
3(2): [age] 02/11/04 20:49 ID:??? AAS
age
4(1): あぼーん [あぼーん] あぼーん AAS
あぼーん
5(1): 02/11/04 22:41 ID:??? AAS
乙彼〜
6: 02/11/06 00:04 ID:??? AAS
乙
7: 02/11/06 00:20 ID:Hy1yMbKx(1) AAS
age
8(6): 02/11/06 20:50 ID:mrrgYg+p(1) AAS
某 MIPS 系のマシンで STL コンテナを使おうとすると、リンク時に "relocation
truncated"と怒られる。どうも template がらみでできる weak object の配置に
失敗してるみたいだけど、解決策知ってる人います?
(確かに MIPS だとグローバルポインタ相対でアクセスするから、配置する箇所に
よってはグローバル変数といえどアクセスできなくなるよな。ld に喰わせるスクリ
プトファイル書けばいいのか?)
9(1): [age] 02/11/07 01:44 ID:??? AAS
>>8
ふつう -G0
ってコンパイラ何使ってるかくらい書けヨ!
10(1): エックサー 02/11/07 19:03 ID:O6dqrNtE(1) AAS
DirectX8使ってるんですけど、メッシュの頂点の、ディスプレイ上での座標を知るにはどうしたらいいんですか?
11: 8 02/11/07 21:47 ID:??? AAS
>>9
Thanks
> ってコンパイラ何使ってるかくらい書けヨ!
確かに。想像の通り gcc です。
12(7): 02/11/08 13:56 ID:mLnGgDjl(1) AAS
わたしも 3D座標をスクリーン座標に変換する方法が知りたいです。
座標xyzをwで割るらしいのですが、xyzwの求め方がわかりません。
xyzはただの3D座標なのでしょうか? それとも何かの行列を
掛けたりしているのでしょうか?
wはどこからでてくるのでしょうか?
すみませんが 教えていただけませんか?
13(1): 02/11/08 14:34 ID:??? AAS
ビューと射影行列を掛けるだけ
DirectD3なりのレンダリングエンジンを使うにしても
描画前に行列をセットしていると思うが何が分からないのか分からん
14(1): 8 02/11/08 21:31 ID:??? AAS
STL の件だけど、要するに __malloc_alloc_oom_handler などの static 変数
が .sdata セクションに配置されるのが問題なんだね。
教えてもらった -G0 を使って「全部 .data セクションに置く」方法に加えて、
問題になってる変数に個別に __attribute__((section(".data"))) 指定する
方法でも動きました。
しかし、何で __malloc_alloc_oom_handler などのクラステンプレート中で
定義された static 変数に限って .sdata に配置できないのかは謎です。
省1
15(2): 02/11/08 21:41 ID:??? AAS
>>12
オブジェクトのローカル座標に、ローカル・ワールド変換行列、ワールド・ビュー
変換行列、ビュー・スクリーン変換行列(a.k.a 射影行列) と順にかけて、出てき
た座標を w で割れば良い。
行列だけど、DirectX 使ってるなら SetTransform() に
D3DTS_WORLD
D3DTS_VIEW
省5
16(1): 02/11/09 00:02 ID:??? AAS
>>14
gccって、vtblを.dataに吐いてたりしない?
17: 02/11/09 01:09 ID:0QThSDoj(1) AAS
>>15
そーゆー奴ってさワールドからローカルへの変換ができねぇってことだろ?
動いてる物体にのれないのはもちろんのこと
スキニングも理解してできてねぇだろ?
逆行列はしっかり理解してから次のステップへいってもらいたいね。
俺も会社入るまえそうだっただけに応援したいね。
ローカルに直せるってだけでかなりできることが増えるね。
省2
18(1): 8 02/11/09 01:16 ID:??? AAS
>>16
vtbl が配置されるセクションと、クラステンプレートの static 変数が配置される
セクションが違うと、何か問題がある? あと、今回の件に関しては STL のコン
テナが利用する allocator の話なんで、仮想関数は出てこないはず。
そもそも .sdata, .sbss に関しては、こういうことだと理解してるんだが、勘違い
があったら指摘して下さいな。
1. EE-core (っつーか MIPS) は 32bit 固定長命令を採用しており、アドレス
省13
19: 8 02/11/09 01:19 ID:??? AAS
>>18 の続き
そういうわけで gp がらみで問題になるのは
1. .sdata, .sbss が溢れるほど大量に static データを定義した場合
2. 翻訳単位によって、閾値が異なる場合。たとえば同一のグローバル変数を
参照するプログラムの片方を -G0 でコンパイル、他方を -G8 でコンパイル
とか。
3. $gp を書き換える場合。特に位置独立なコードを使うシェアードライブラリの
省4
20(1): 12 02/11/09 01:55 ID:s6gdDMqC(1/5) AAS
>>15
ビュー行列 と 射影行列を掛けたものと、 3D座標を 掛けたの
ですが、でた xyzwで
x/w
y/w
z/w
をやってみたのですよ。
省4
21(1): 02/11/09 01:58 ID:??? AAS
>>20
なんか微妙に日本語が変な気が。ありがちなのは行列をかける順番を
間違えてるとかだが。
> しかし、 値が1.0を超えているにもかかわらずスクリーンの端
> にまで、 ラインが(この時二つの座標を線で結んでいました。)
意味が良く分からん。
22: 12 02/11/09 02:14 ID:s6gdDMqC(2/5) AAS
>>21
すばやいレスありがとうございます。
2点をラインで描画しました。
ビュー行列 matView
射影行列 matProj
調べたい座標 Vec
計算後の値 v4
省14
23(2): 02/11/09 03:22 ID:gww9xFnI(1) AAS
ビューポートは考慮したーのーかーなーあーあーあーあ?
上下前次1-新書関写板覧索設栞歴
あと 947 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.014s