Windowsゲームプログラミング 質問スレ
at GAMEDEV
1:デフォルトの名無しさん
05/02/25 05:10:53
※回答する人も、質問する人も必ず読んでください
【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
「ググれ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。
【 質問する香具師 】
・ どんな事で躓いているのか明確にしる。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。
2:デフォルトの名無しさん
05/02/25 07:14:21
重複。>>1は氏ね。
スレリンク(tech板)
3:デフォルトの名無しさん
05/02/25 08:21:11
>>2
DirectXを使わず、猫みたいなWin32APIを中心に使ったものでは?
4:デフォルトの名無しさん
05/02/25 08:43:25
>>2
DirectXだけがゲームとは限らないぞ
5:デフォルトの名無しさん
05/02/25 09:09:21
Win32APIだけで作る理由がよく分からない。
それにWin32だけで作るならわざわざゲームのスレを立てなくても、
Win32のスレでやればいい。
6:デフォルトの名無しさん
05/02/25 09:13:15
スレ趣旨をどうこうは言わないが
【 質問する香具師 】
・謙虚であれ
これを加えてホスィね。マナーのmの字もわからん奴が多すぎる。
7:デフォルトの名無しさん
05/02/25 09:16:42
Win32のGDIだけでゲームを作ろうとするなら、当然2Dになるだろう。
しかもアルファブレンディングもアフィン変換も使わない、
ただビットマップを置いていくだけのゲームだ。
そんなゲームにわざわざスレが1つ必要なほど質問が来ると思うか?
8:デフォルトの名無しさん
05/02/25 09:52:35
ゲームと言えばDirectXと思うのも痛いが、
だからと言ってWin32APIを引き合いに出すのはもっと痛い。
更に言えばこんな単発スレを立てる>1は最も痛い。
9:デフォルトの名無しさん
05/02/25 09:57:47
Win32APIでアクションゲームを作る場合、どんなゲームループが理想ですか?
10:デフォルトの名無しさん
05/02/25 10:09:41
>Win32APIだけで作る
僕の場合はこれしか使えないからかな。
MFCは使わず、リソスクはBMPとバイナリを詰めるのみに使う。
>別にこのスレがある必要は無いのでは
質問:スレリンク(tech板)l50
研究:スレリンク(tech板)l50
ゲーム寄りの話:URLリンク(pc5.2ch.net)
となるかもしれないけど、同じ32onlierとしてはあって欲しいスレかな。
イベントトリブン回りをうまく書く技術とか、結構ネタはあると思う。
スレタイが総合スレとか研究スレとかだったら良かったかもしれないが。
>アルファブレンディング アフィン変換
共に無い知識で言うけど、前者はBitBlt系の最後の引数を変える事で、
後者はURLリンク(www.sm.rim.or.jp)で出来そうな気もする。
11:デフォルトの名無しさん
05/02/25 10:18:48
>>8
同じく。DirectXのゲームは、ちょっとしたゲームでも
かなりでかくなるみたいだから、その場合は使わないで欲しい気も。
>>9
ゲームループとは、メッセージループかメインループの部分の事?
12:デフォルトの名無しさん
05/02/25 10:31:05
ゲームループ の検索結果のうち 日本語のページ 約 1,630 件中 1 - 50 件目 (0.16 秒)
game-loop の検索結果 約 14,800 件中 1 - 50 件目 (0.45 秒)
説明しないといけないような用語か?ゲ製作と違って常識通じねーな
13:デフォルトの名無しさん
05/02/25 10:55:26
なるほど。メインループ==ゲームループなのか。
僕は、RPG、SRPGしか作った事が無いから、
それらはイベントトリブンで行けるので、それが分からなかった。
アクションもイベントトリブンで作ってみたい気もするけど、無理なのかな。
タイマーの精度がNT系では10ミリ秒だから、30FPSとかなら出来そうな気もする。
しかし、9x系は、55ミリ秒と荒すぎるから、ちょっと無理か。
14:デフォルトの名無しさん
05/02/25 13:25:01
> 僕は、RPG、SRPGしか作った事が無いから、
RPGつくれるやつがループと言われて何のことか分からないわけがない。
釣るならもっとうまくやれ。このスレ自体釣りスレだがな。
15:デフォルトの名無しさん
05/02/25 13:27:39
>>1
板違い
ゲーム製作技術@2ch掲示板
URLリンク(pc5.2ch.net)
16:デフォルトの名無しさん
05/02/26 02:36:11
敵機を追っていくミサイルはどのように実現したらよいのでしょうか?
17:デフォルトの名無しさん
05/02/26 07:27:50
>>16
板違い
ゲーム製作技術@2ch掲示板
URLリンク(pc5.2ch.net)
18:デフォルトの名無しさん
05/02/26 07:45:12
>>16
ミサイル座標: x,y
ミサイル移動速度 sx, sy
敵の位置: ex, ey
while(){
x += sx;
y += sy;
if( x < ex ) sx++;
if( x > ex ) sx--;
if( y < ey ) sy++;
if( y > ey ) sy--;
}
でよいかな?
19:デフォルトの名無しさん
05/02/26 07:48:55
>>16
URLリンク(hakuhin.hp.infoseek.co.jp)
ここにflashだが、あるので、参考にしてみたら
20:デフォルトの名無しさん
05/02/26 07:56:16
なぜゲーム製作技術があるのにそこでやらないんだ
21:デフォルトの名無しさん
05/02/26 09:07:20
バカな知ったかぶりが教えたがるから。
質問する方がバカなら、答える方もバカ。
22:デフォルトの名無しさん
05/02/26 09:33:35
将棋とか結構あるぜよ。
23:デフォルトの名無しさん
05/02/26 10:20:54
Win32APIとDirectXでは2Dの描画にどのくらい差が出る?
24:デフォルトの名無しさん
05/02/26 10:46:46
>>16
シューティングゲームアルゴリズムマニアックス
URLリンク(www.amazon.co.jp)
25:デフォルトの名無しさん
05/02/26 13:58:05
>>23
矩形コピーなら同等程度なことが多い
26:デフォルトの名無しさん
05/02/27 04:24:03
>>23
最近のマシンなら大して変わらないが、昔のマシンならだいぶ違い。
DirectDrawがあった時代のね
27:デフォルトの名無しさん
05/02/27 12:14:42
メインループには Sleep(1) を入れようキャンペーン実施中。
28:デフォルトの名無しさん
05/02/27 12:15:41
>>27
キモ
29:デフォルトの名無しさん
05/02/27 12:20:45
>>16
敵に向かって移動させる。
命中精度を落としたい場合は慣性をつける。
ミサイルらしさを表現するには舵角を制限し操舵を一定時間ごとにする。
画面に残り続けないように時間制限で自爆するか舵を失うようにする。
軌道修正するときに噴射を描画しそれに対してやや遅れて反応させると
ミサイルの重量感を表現できる。
初速は遅いほうがらしさがでる。
30:デフォルトの名無しさん
05/02/27 14:34:25
>>27
どうして?
31:デフォルトの名無しさん
05/02/27 15:10:38
>>27
高精度タイマー使うのはダメなの?
スレッド以上にコールバックは嫌われてる&ちょっとばかし環境依存だけど。
32:nana
05/02/27 18:22:34
みんな、かなり知識深いね〜。
スーファミのドラクエはWindowsで作るには
どうすればできるの?
ていうか、できる?
33:デフォルトの名無しさん
05/02/27 18:27:33
>どうすればできるの?
プログラムを組めばできる。
>ていうか、できる?
できる。
34:デフォルトの名無しさん
05/02/27 18:29:28
板違いだつってんだろうがキチガイ共
35:nana
05/02/27 18:31:08
できるんだ〜。
ドラクエ作成者はどんな言語を使用したの?
36:デフォルトの名無しさん
05/02/27 18:34:41
>>35
氏ね、板違いだつってんだろうが。
37:デフォルトの名無しさん
05/02/27 18:35:24
>>35
アセンブラ
38:デフォルトの名無しさん
05/02/27 18:38:49
>>32
スーファミのプログラム
スレリンク(gamedev板)
39:デフォルトの名無しさん
05/02/27 18:39:24
>>36
削除依頼も出せない奴は黙ってろバカ
40:誘導
05/02/27 18:40:19
削除依頼済
スレリンク(saku板:41番)
ゲーム製作関連の話題はゲ製作板へ。
URLリンク(pc5.2ch.net)
-------------------------------- 終了 ----------------------------------
41:デフォルトの名無しさん
05/02/27 18:41:12
>>39
出してきてやったぞ。
おまえはさっさと氏ねや、この知的障害。
42:デフォルトの名無しさん
05/02/27 18:42:10
>>41
やればできるじゃないかバカ野郎
43:〜お知らせ〜
05/02/27 18:42:25
以後このスレッドが削除されるまで
精神異常者(>>39)のリハビリスレッドとなります
44:名前は開発中のものです。
05/02/28 03:20:21 6aNJ7Ffe
移転age
45:名前は開発中のものです。
05/03/04 23:53:44 UowmhfF3
age
46:名前は開発中のものです。
05/06/02 18:58:54 luVH093G
ヨロシクお願いします
★使用OS Windows2000
★使用ブラウザ名Internet Explorer 6 sp1
★接続形態(ADSL)とルーターの無
★ADSLなどのブロバイダー(YahooBB)
ダイレクト9がダウンロードできなくって困ってます
今は8.1使用なんですがインストの途中で
デジタル署名が見つからないのでと出て作業が終了されてしまいます
マイクロソフトのサイトで正規のOSWindows2000と確認されてるのに・・
デジタル署名と言うのも習得したのに何故なんでしょうか?
分かる方、回答よろしくおねがいします。
47:名前は開発中のものです。
05/06/02 21:09:10 8ttuLsTK
>>46
それだけじゃ、わからん。
もっと エラーメッセージ等きっちりださんと分かるもんもわからん。
ただ、エラーメッセージ中に個人情報がまぎれてるかも知れんので、そこは自己判断で・・・。
あと、Googleはやってみた?
いろいろと、出てくるみたいだが、
URLリンク(search.goo.ne.jp)
48:名前は開発中のものです。
05/06/03 14:55:40 Jn9G6+tH
DirectX 9.0 SDK のことなら……
No, do not validate Windows at this time, but take me to the download.
の方をマークすれば validation せずにダウンロードできないか?
49:名前は開発中のものです。
05/06/07 13:57:22 rSFC/KVV
Shade、Lightwave、Metasequoiaで作ったものでも同じプログラム内で動かせるのでしょうか?データの種類は?知ってる人がいたら教えてください。
50:名前は開発中のものです。
05/06/07 15:41:04 x6z/pbp5
あー、移転されちゃったのね。
なんか話がかみ合わないと思ったら。
51:名前は開発中のものです。
05/06/08 06:24:28 lU6Bxpf7
>>49
原則可能。てか、ふつうにXファイルにして使う。
それ以外は自分は面倒だし、勉強不足もあってわからん。
あと、Shadeや、Lightwaveと Metasequoiaはちょいっと別もんだったきもするが。
Metasequoiaはモーション作れたっけ?
52:名前は開発中のものです。
05/06/08 11:16:52 rKqac8c9
>>51
〜陸海空Ponline〜壊滅度7% 被害報告スレ
スレリンク(net板)l50
53:名前は開発中のものです。
05/07/07 03:33:32 bNRoN1JS
現在Windows用のゲームを作り始めようと考えているのですが、どの解像度で作製しようかと迷っています。
今まではずっと640 * 480で作っていたのですが、XBOX360は 1280 * 720 が一般的なようですよね?
Windowsのゲームも将来この解像度のゲームが一般的になるのでしょうか?
もしなるとしたら、大体あと何年先のことになるのでしょうか?
詳しい方いらっしゃいましたら教えて下さい。お願いいたします。
54:名前は開発中のものです。
05/07/07 05:25:46 rf7zwdBd
1280*720て普通のテレビに表示できるものなの?
55:名前は開発中のものです。
05/07/07 06:14:44 d8TBNYHG
今のテレビの普通って?
56:名前は開発中のものです。
05/07/07 12:05:10 DS4yE746
この板ってさびれているよね
57:名前は開発中のものです。
05/07/07 12:38:12 Yrnt3I8Q
もうしばらくすると夏厨が湧いてくるのでご安心を
58:名前は開発中のものです。
05/07/09 13:45:20 4rHDGg8j
先月パソコンとFOMAを買っていろいろ遊んでいます。
とりあえず、パソコンでドラクエみたいなゲーム作りたいんですが、どうすれば良いんでしょうか?
>>57
夏厨って何ですか?
59:名前は開発中のものです。
05/07/09 20:33:09 wh2hK35n
1.RPGツクール辺り買ってきてお手軽に済ませる
2.プログラミング関連の本を読み漁る
60:名前は開発中のものです。
05/08/03 19:16:24 k34xmgD5
win32APIを皆さんはどう読んでいますか?
自分は「ウィンサンジュウニエーピーアイ」
と思って読んでるんですけど
間違ってますかね?
61:名前は開発中のものです。
05/08/03 19:19:14 yu5Ac1eo
ウィンサンニーエーピーアイと読んでる。
そんなことより Perl をなんて読むのか気になる。パール?
62:名前は開発中のものです。
05/08/03 19:25:21 XO0280TG
>>60
私も同じ。合ってるんじゃない?
URLリンク(e-words.jp)
URLリンク(e-words.jp)
>>61
そうだよ。
URLリンク(e-words.jp)
63:60
05/08/03 21:27:08 k34xmgD5
答えてくれてありがとう。
地味に気になってたんで。
64:名前は開発中のものです。
05/08/08 22:46:38 QpcWzPU+
VC++6でリソースの画像をBitBltすると
画面更新のときにちょっとチラつくYO!
これをなくすにはDXSDK使って、バックバッファに書き込んでおいて
垂直同期?リフレッシュレート?に合わせて表示させるってやるしかないんですよね?
65:名前は開発中のものです。
05/08/09 01:17:23 dpTvC2TM
>>64
バックバッファはCreateCompatibleBitmap()でもmalloc()でも作れるから、
そこへ全部書き込み終わってからスクリーンに出力するといい。
垂直同期が取れてない場合のがたつき・ティアリングと、描画のちらつきとは別問題。
とはいえ最初からDirectX使うのも悪くないと思うけどね。
66:名前は開発中のものです。
05/08/14 23:15:22 Sa7iSD/h
ビットマップブラシを使おうと思うと
どうしても1つ1つのビットマップが小さくなってしまうのですが、
64×48を10個と640×48を1個では
仮想デバイスに描写しておく時、同じ容量と見なされるんですか?
67:名前は開発中のものです。
05/08/15 17:31:05 limOG/LR
>>66
確か初心者スレにも同じ質問をしてた人だよね?なぜか答えにくいです。
「仮想デバイス」の意味がわかりませんが、DDBなら正確な容量は実装依存です。
おそらく64x48を10個の方が管理領域が多少増えるくらいでしょう。
ハンドルも多く消費するのでWindows9x系では気をつけないといけません。
ところで640x48のような大きなサイズの画像をブラシとして使うのは個人的に賛成できません。
もしダイアログ等の背景として使うなら、とりあえず近い色のSolidBrushを割り当てておいて、
WM_PAINTをフックして背景を描画するのがいいと思います。
68:名前は開発中のものです。
05/08/23 08:00:50 Zx5JPWRx
api千成に
69:補給屋 ◆ZA3g9myNTI
05/08/30 08:22:06 kNT1vLRG
DirectDrawを使ってゲームを作っている者ですが、
BitBlt, BltFastなど同じインターフェイスを使う場合
HALに限った場合、DirectDrawやDirectDrawSurfaceの
バージョンによって描画速度が異なる場合があるのでしょうか?
70:名前は開発中のものです。
05/09/01 01:04:59 hJW3acz9
スレ違いかもしれませぬが
閉鎖されたhotates coreってサイトのサンプルソース持ってる方いませんか?
Internet Archiveでサイトは閲覧できるんですがサンプルソース群は保存されてない
みたいで。。
71:名前は開発中のものです。
05/09/15 09:39:44 HPeeZY8R
C言語を勉強したいと思っているのですがコンパイラは何を使えばいいのでしょうか?
MicrosoftのVisual C++ .NET Standard Version 2003(アカデミックパック)を考えているのですが
他に「これが最高峰だ!」というものがありましたら教えてください。
72:名前は開発中のものです。
05/09/15 09:45:57 /UZ/Fwd5
Visual Studio .net theSpoke Premium 2003のほうがお得だよ
73:名前は開発中のものです。
05/09/15 09:52:52 HPeeZY8R
アマゾンでの評価は素晴らしいですね。
価格も気に入ったのでこれにして見ます。
ありがとうございました。
しかし中学生の生徒手帳でもokなのかな?
74:名前は開発中のものです。
05/09/15 12:03:21 /UZ/Fwd5
スレ違いに気付かずレスしてたのに今気付いたorz
ム板で聞いたほうがいいぞ
以下チラシの(ry
買う前にIDEとコンパイラと言語の違いを理解してからの方がいいぞ。
フリーのコンパイラだってあるんだしな。
75:名前は開発中のものです。
05/09/15 12:23:47 HPeeZY8R
>>74
スレ違いでしたか。申し訳ありません。
IDE?コンパイラ?まだまだわからない事だらけなので勉強すべき事がたくさんありそうです。
とりあえずありがとうございました。
76:名前は開発中のものです。
05/09/24 11:16:54 rPMcfhBj
77: 名前は開発中のものです。
05/09/25 11:41:32 xglj2kjx
質問です、windows visualC++でも
ゲームは作れますか?
78:名前は開発中のものです。
05/09/25 11:49:01 MAHhSOYd
作れますよ。
79:名前は開発中のものです。
05/09/26 15:21:34 oc2wOxdW
>visualC++でも・・・
いつのまにか俺もオッサンになってたのか
80:名前は開発中のものです。
05/09/26 17:05:28 YPfHiHsl
>>79
大丈夫w
81:名前は開発中のものです。
05/09/28 13:52:31 rzNtxtAi
Microsoft Visual C++.NETを使ってゲームプログラミングを覚えたいのですが、
お勧めの本を教えていただけないでしょうか
82:名前は開発中のものです。
05/09/28 15:48:33 rzNtxtAi
すいません、専用スレを見つけたのでそっちで聞きます
83:名前は開発中のものです。
05/09/28 19:52:30 xL4sHIyu
>>82
笑
84:名前は開発中のものです。
05/10/15 00:39:14 iTtrbiPs
一応保守
85:名前は開発中のものです。
05/10/28 15:59:11 MzhCeYHU
何気に良スレ化
86:名前は開発中のものです。
05/11/16 15:23:34 DPSiO9dj
ちょっと質問
↑の方でSleep(1)キャンペーンとかいってるけど、
入れるとしたらSleep(0)の間違いじゃないの?
87:名前は開発中のものです。
05/11/16 17:57:54 4PzPG7+V
Sleep(0)って効果あるん?
入れないのと変わんない気がするんだが。
88:名前は開発中のものです。
05/11/16 18:17:04 fJZ6wsh+
URLリンク(www.microsoft.com)
89:名前は開発中のものです。
05/11/16 18:21:58 4PzPG7+V
m(__)m
90:名前は開発中のものです。
05/11/26 11:57:08 LWVyUlms
n(__)n
91:名前は開発中のものです。
05/11/26 12:29:23 42AtecVh
|(_)|
92:名前は開発中のものです。
05/11/26 14:34:23 aQE9abVY
||
93:名前は開発中のものです。
05/11/26 14:53:50 A5F0hyVg
>>89-92
ワラタ
94:名前は開発中のものです。
05/12/01 20:51:38 /rA1ZDgK
ようやく質問できそうな板を発見しました
D3DX9でメッシュを表示してるんですがメッシュ全体の座標移動で引っかかってます
現在はループ内でメッシュの一つ一つの頂点データに行列を掛け合わせて
座標移動させてます。もっと効率のいい方法はないのでしょうか?
メッシュ自体を座標移動させる関数とかがあるはずだと思って探しては居るのですが。
わかる方がいましたら、ヒントだけでもいいのでお願いしますm(_ _)m
95:名前は開発中のものです。
05/12/01 21:32:25 cei8bs2s
本当に頂点情報を動かしたい場合、あるいはシェーダを使う場合は、その方法しかないよ。
まぁでも普通、固定機能においてメッシュ単位で移動する時は、ローカル座標行列を指定する。
device->SetTransform( D3DTS_WORLD, &local_matrix );
こんな感じで設定後、DrawPrimitive(DrawSubset?)すると。
こっちのが良いかもね
スレリンク(gamedev板)
96:名前は開発中のものです。
05/12/01 21:34:58 WP5eL4DZ
変換行列をSetTransformに渡して
メッシュの頂点情報をDrawPrimitive系に渡してやれば
D3Dが勝手に変換してくれるよ。
97:96
05/12/01 21:36:24 WP5eL4DZ
何よ! 割り込まないでよ!
98:名前は開発中のものです。
05/12/01 22:00:20 cei8bs2s
あーら、いらしたの
ごめん遊ばせ、オホホホホ
99:94
05/12/01 22:43:49 /rA1ZDgK
>>95
>>96
ありがとうございましたm(_ _)m
解決の糸口になりました。これでやっと先に進めそうです。
100:名前は開発中のものです。
05/12/07 14:13:03 hfK79TvX
人生初の100取っておこ。
101:名前は開発中のものです。
05/12/11 00:57:46 tpuxQZPJ
みなさん、ゲームを作る時・公開する時に、
素材データはどう扱っているのでしょうか。
可能なら自力のソースコードで
暗号化+ファイルパッキングをしたいのですが、
既にライブラリとかあるなら、
そこで労力を取られても本末転倒なので
先人の知恵をお借りしようかとも思っています。
102:名前は開発中のものです。
05/12/11 02:29:58 mkpzTkl3
リソースに含むだけで、特に何もしていないな。
103:名前は開発中のものです。
05/12/11 06:40:35 Ad4hxLcO
>>101
私もリソースに入れるのが大半だな。
素材自体に重点があるゲーム(AVGやノベル系シナリオ系等)以外の場合なら
特に考慮しないでデータフォルダにそのまま置いてある。
104:名前は開発中のものです。
05/12/11 12:49:45 NkBX4KCs
ファイル毎に適当にXOR数回掛けて
ひとつのファイルにパックしてる。
これだけでも多分わざわざ見るやつはいないかと。
105:名前は開発中のものです。
05/12/12 19:29:03 FwPrGwWp
Cmagazine今月号の、ゲームのシクミっていう連載に
ファイルパックと暗号化の作例が載ってるので
読んでみるのもいいかも。
106:名前は開発中のものです。
05/12/13 09:31:15 ++9Kv20o
お約束だが・・作者乙。
トルネコみたいなゲームで使いたい、
オートセーブのデータを暗号化 ∧ 見られない位置に
置くのも載っててくれるとうれしい。
107:名前は開発中のものです。
05/12/13 21:31:03 1C5377qW
暗号化というかチェックサムをつければ
データの改竄は現実的な範囲では食い止められると思うけどね
逆汗されないと見破れない程度のアルゴリズムはすぐ思いつくだろ
置く場所に関してはレジストリかシステムフォルダの下かのどっちかだから
セーブデータの待避に対抗する手段はないと思われ
どうしても防ぎたいなら、ネトゲにしてしまうしかないと思う
108:名前は開発中のものです。
05/12/13 22:12:44 jZasn0nx
圧縮展開ライブラリを使えば手っ取り早く暗号化+ファイルパックの
目的が果たせるんでないかしら。
有名どころでzlib、日本語DOCがいいなら開発環境は限られるが
GCASDK、7zアーカイバの作者もソースを公開してた気が。
もしDelphiならQDAアーカイバと展開用unitの組み合わせが手軽。
109:名前は開発中のものです。
05/12/13 22:24:17 vxNV3LFc
3Dのアクションゲームで壁をこする方法教えて下さい。
ソースが無いと分かりません。説明だけじゃわけわかめ
110:名前は開発中のものです。
05/12/13 22:26:09 JMd0636h
>>109
つ[ quake ]
111:名前は開発中のものです。
05/12/14 00:50:16 sKyCiHBP
>>109
壁をこするという簡潔な表現方法、なかなか良いね。
壁とあたり判定取れてるんなら、簡単にできると思うが。
それでも分からないならソース見てもわからんような。
112:名前は開発中のものです。
05/12/14 01:16:48 NSqoAe+Z
>>109
C++でいいよね?
// 壁と移動ルートの交点を移動終了地点にする。
pos = wall * route;
113:名前は開発中のものです。
06/01/04 01:17:42 NIycc+Ju
上げとく。
114:名前は開発中のものです。
06/01/30 00:40:02 iUmoOh++
質問があります。
やや抽象的な話になるのですが、現在構築中のゲームで、
ゲームマネージャがシーンスタックを保持しシーン管理を行っています。
この場合ゲームマネージャーの下にシーンがあるということで、
シーン間でデータのやり取りを直接行えなかったので、
シーンの基本クラスで構造体セット用関数を定義し、ゲームマネージャに構造体を持たせ、
Pushの際にシーンクラスに渡すことにしました。
ここまでは良かったのですが、
シーン1で構造体にアクセス後シーン2をPush、
シーン2で構造体にアクセス後シーン2をPop、
そしてシーン1でさらに構造体にアクセスしたところ、アクセス違反といわれてしまいました。
抽象的な内容で申し訳ないのですが、どなたか解決法分かる方ご指南お願いします。
また、他の方法でもシーン間でデータのやり取りが出来ればよいのですが…。
115:名前は開発中のものです。
06/01/30 00:49:46 0+/J0o5P
デバッグすりゃいいだろ
116:名前は開発中のものです。
06/01/30 00:53:19 iUmoOh++
すみません自己解決しました。
シーン2をPopしてシーン1に戻る際に再度構造体を渡したらアクセス違反になりませんでした。
117:名前は開発中のものです。
06/01/30 00:56:00 pjpza3/7
>>114
普通に考えれば、シーン2を開放するときに
ついでにManager下の構造体を解体してるんだな。
ポインタで渡してデストラクタでdeleteとかしてないか?
auto_ptrでポインタを渡してないか?
118:117
06/01/30 00:56:14 pjpza3/7
遅かった。
119:名前は開発中のものです。
06/01/30 03:57:21 Atby9j+G
グローバルな構造体にしちゃえばいいんじゃない?
身も蓋もないけど。
わざわざpushするよりは軽いと思うし
120:名前は開発中のものです。
06/02/14 16:25:09 M5abSfrW
ちょっとスレの主旨とは外れちゃうかもですが質問です。
それなりに動くゲームを作って公開しました。
開発環境はXPSP2 DirectX9.0 Dec 2005です。
XPSP2でDirectXをインストールできた人は動くのですが、
Win95, 98, ME では動かないとの報告がありました。
なぜ動かないのでしょうか?
121:名前は開発中のものです。
06/02/14 18:01:32 DFRR3HSf
エスパー先生、出番ですよ。
122:名前は開発中のものです。
06/02/14 18:13:08 WgJRobF9
こんなもんにエスパーなんぞ必要ないだろ
>>120
DirectX End-User Runtimes (December 2005) が入っていないからだと思われる
入れさせろ
それでも動かないやつが居たらそいつはWindows95だから切り捨てろ
切り捨てても動かない場合は本当にエスパー能力が必要になる
URLリンク(www.microsoft.com)
123:名前は開発中のものです。
06/02/14 18:37:49 M5abSfrW
>>122
解答ありがとです。注意書きとして書いておきます。
124:120
06/02/16 13:35:40 JZYUO6ta
120です。色んな方に動作報告してもらったところ、
XPでDirectXをインストールしても動かなかった。という人もいます。
DirectX9.0で使わないほうが良い機能とかもあるんでしょうかね…。
125:名前は開発中のものです。
06/02/16 14:16:56 OJdygtYA
ビデオカードの性能不足
126:名前は開発中のものです。
06/02/16 14:19:12 kUFXVRZi
どこでエラーが出てるか、デバッグ情報を出力するように作れボケ
127:120
06/02/16 14:49:05 JZYUO6ta
>>125
やっぱそれなのかな…。
>>126
なるほど。。がんばってみます。
128:名前は開発中のものです。
06/02/28 18:34:54 2E5C8cja
スイマセン。ちょっとスレ違いですが、
Windowsのスタートから入るゲーム を完全削除してしまいました。
再ダウンロードできるところってありませんか?
129:名前は開発中のものです。
06/02/28 19:34:22 RZk53d9r
ヒント:自作。
130:名前は開発中のものです。
06/02/28 19:34:30 lKhFLKj6
はい次の方どうぞ
131:名前は開発中のものです。
06/03/01 04:48:20 Qh8/g14t
ジオングに載せるOSは何がいいですか?
132:名前は開発中のものです。
06/03/01 07:22:24 2CSbAmuS
>>131
モビル スーツ
M S - D O S
133:名前は開発中のものです。
06/03/01 15:11:52 obYVjdQw
ジュディ・オング
134:名前は開発中のものです。
06/03/02 19:24:40 zrMtMgtV
MS-DOM
135:名前は開発中のものです。
06/03/02 20:18:08 sGwDioJG
半年ロムれ
ってどういうことですか?
136:名前は開発中のものです。
06/03/02 20:18:40 SXOxc2oC
>>135
半年ロムれ
137:名前は開発中のものです。
06/03/02 20:44:17 sGwDioJG
本当におしえてください。
138:名前は開発中のものです。
06/03/02 20:47:08 te28OqJo
つ【 Wikipedia項目リンク 】
139:名前は開発中のものです。
06/03/05 14:34:44 nQJaZOHc
>>138
やっぱり素直に教えてくれる人はいいや。
マジありがとう
140:名前は開発中のものです。
06/03/09 19:25:52 whrsy4Bh
>>128
WindowsのCD-ROMにはいってるだろ
141:名前は開発中のものです。
06/03/10 21:39:00 eHf1wg1N
画像を回転させたいんでググったら
x’=x×cosΘ−y×sinΘ
y’=x×sinΘ+y×cosΘ
コレがでてきたんで
tex[0].x = 120;
tex[0].y = 240;
tex2[0].x = kai[0].x * cos(90) - kai[0].y * sin(90);
tex2[0].y = kai[0].x * sin(90) + kai[0].y * cos(90);
って書いたんだけどうまくいかないんです。
tex[0]は画像貼り付けた四角のポリゴン?の頂点の内のひとつです。
142:名前は開発中のものです。
06/03/10 21:43:55 eHf1wg1N
すみません間違いました
tex2[0].x = tex[0].x * cos(90) - tex[0].y * sin(90);
tex2[0].y = tex[0].x * sin(90) + tex[0].y * cos(90);
こうでした
143:名前は開発中のものです。
06/03/10 21:59:05 nz4PdL/y
sin, cosの引数はラジアン単位だよ
144:名前は開発中のものです。
06/03/10 22:11:06 eHf1wg1N
#defineRAD (3.14159f/180.0f)
int s;
s = 90 * RAD;
tex2[0].x = tex[0].x * cos(s) - tex[0].y * sin(s);
tex2[0].y = tex[0].x * sin(s) + tex[0].y * cos(s);
こうしてみましたがやっぱり失敗・・・どっか他の所なのかなぁ
145:名前は開発中のものです。
06/03/10 22:37:02 6klj+UjH
マルチでしかも馬鹿野郎。
146:名前は開発中のものです。
06/03/10 22:37:35 KuO++RFw
>>144
回転方向はあってるのか?
147:名前は開発中のものです。
06/03/10 22:41:47 6klj+UjH
数学のライブラリが古いんじゃないのか?
148:名前は開発中のものです。
06/03/10 23:39:23 ujXqsDrh
tex2が画面にどう表示されてるのかスクリーンショット貼ってみ
指さして笑ってやるから
149:名前は開発中のものです。
06/03/11 00:02:43 eHf1wg1N
変数sをfloatで宣言したら解決しました・・・
レスくれた人ありがとうございました、そしてスマンでした。
150:名前は開発中のものです。
06/03/11 03:45:49 tpqkJHMP
ああ、intじゃだめだわw、見逃してしまった俺としたことがorz
151:名前は開発中のものです。
06/03/11 22:38:01 dYMZfRdK
俺も両方のスレを見て、且つintを見逃してた
間抜けにもほどがある
ところで
int s = 90 * (3.14159f/180.0f);
これはwarning吐いて欲しいよな、警告レベルが低いんだろうか
152:名前は開発中のものです。
06/03/12 09:55:55 d+dzhoZl
gcc(C)は出ない。
g++(C++)は警告出た。C++は型チェックが厳しくなっていると聞いたが、
そのせいかどうかは知らないけど。
> foo.c:9: warning: converting to `int' from `float'
153:名前は開発中のものです。
06/03/12 11:13:20 Gf5zzXTK
VC++だとコマンドプロンプトのデフォルト(/W1)だと警告でないけど、
IDEのデフォルト(/W3)だと警告でるよ。
cでもc++でも一緒。
154:名前は開発中のものです。
06/03/14 11:03:46 jyzgIWu2
たとえばRectangleとBitmapをもった基底クラスから派生した
WallやBallやBlockのクラスがありました。
これらのインスタンスはStageクラスのなかに
List<Wall> Walls, List<Ball> Balls, List<Block> Blocks
ってな感じで管理します。
画面の表示はRanderというクラスの担当で、
WM_PAINTでRander.Draw()が駆動されるって寸法です。
問題なのはRanderが如何にしてStage内のアイテム共が持った
RectangleとBitmapを所得したいのです。
155:名前は開発中のものです。
06/03/14 13:42:57 xNBzpZ29
ふーん
156:名前は開発中のものです。
06/03/14 16:28:54 JuUQgie3
本焼くしますたって幹事か。
157:名前は開発中のものです。
06/03/14 21:06:30 WZQXg5CU
>>154
俺もあと100万円くらい所得したいよ。
158:名前は開発中のものです。
06/03/14 22:24:34 pCKLkrwr
>>154
mapで関連付けて保持保持
159:名前は開発中のものです。
06/03/15 00:11:28 FzaoSDmy
>>154
ちんちんが痒いまで読んだ
160:名前は開発中のものです。
06/03/15 01:56:39 HwMqitkL
別に翻訳だっていいじゃまいか。
>>154
StageからRenderへ、インタンスのリストをconstで渡すとか、そんなんじゃないかね。
データの処理は、そのデータを持つクラスにやらせるのが一番だとは思うけどね。
Stage render(){ foreach Wall->Draw(); } という感じで。
Rectangle取得用のgetterとか使って、醜くやるくらいならね。
161:名前は開発中のものです。
06/04/11 05:57:17 yYG/QWh3
LoadImage()で読み込んだビットマップを
マスク透過してスプライト表示させようとしているのですが、
ペイントで吐き出したモノクロビットマップ(マスク画像)がなぜか正常に読み込めません。
そのため、現在同じくペイントで16色ビットマップとして吐き出したものを使っていますが、
何か理由があるのでしょうか?
162:名前は開発中のものです。
06/04/11 08:53:49 GgpuwVbL
へー、そんなこともあるんね。
いつも256色とか使ってたから知らなかった。
深く考えずに16色でいいんじゃね?
163:161
06/04/11 16:53:13 yYG/QWh3
なぜだろう、違うプロジェクトではモノクロビットマップでもマスク透過できてたw
原因はどこにあるのやら…とりあえず分かるまでは16色でいくか♪
164:名前は開発中のものです。
06/04/22 23:17:59 CmARROaO
「ボーノー!」ってやってたら指が突き刺さってしまいました。どうすればいいですか?
165:名前は開発中のものです。
06/04/23 07:00:29 UH9rbrG7
「ゾーノー!」ってやってみると治ると思います。
166:名前は開発中のものです。
06/05/12 19:10:08 VPhv1R83
レスのない>>165の為にage
167:名前は開発中のものです。
06/05/12 19:30:41 S90NNkQy
人、それを晒しageと呼ぶ
168:165
06/05/13 00:01:36 EjRz/daj
ありがとんw
169:名前は開発中のものです。
06/05/18 04:47:55 CkzGQmgk
透過表示する時にスピードを得るためには、
元の画像(透過部分を白か黒にした物)
のメモリはLoadImageで確保し、
マスク画像(透過部分が元の画像と逆)は
CreateBitmap(sizeX, sizeY, 1, 1, NULL);
で確保するのがいいみたい。
LoadImageの方は確保だけでなく表示も行われるが、
表示の内容は無視して、必要な内容に書き換える。
CreateCompatibleBitmapも使ってみたり、
元とマスクの作り方を逆にしたりしてみたが、
スピードが遅くなるだけでなく、
色がおかしくなる場合もあった。
170:名前は開発中のものです。
06/05/18 22:34:24 Erp668KR
使い方が間違ってる気がする。
171:名前は開発中のものです。
06/05/19 05:28:26 C0KPcZMG
そうかもしれんが疲れ果ててしまった。
当分はこれで行くつもり。
色が変わってしまうのは、
マスク画像をLoadImageのメモリに作った場合。
マスクを画像元に、(透過部分を白か黒にした物)
元の画像を作っていたから、マスク画像が不正な事で
元の画像の色が変わってしまった模様。
スピードの遅いのは、マップのスクロール時とか表示量が多い時。
もちろん、必要部分のみを新たに表示する方法を使っている。
これは、GetDC(NULL)でのCreateCompatibleBitmapだと遅かった。
CreateBitmapでパラメータを合わせれば、同じスピードが出せるかも。
172:名前は開発中のものです。
06/05/19 05:31:03 C0KPcZMG
修正。
元の画像が()に書いてある、透過部分を白か黒にした物。
マスク画像は、透過部分をその反対の色にした物。
173:名前は開発中のものです。
06/05/21 00:28:18 jLxwcM9S
マスクか、なつかしいなー。
DirectX使う前にやってた。win95出る前かな?
もう、10数年もたつのか・・・
174:名前は開発中のものです。
06/05/21 00:28:56 jLxwcM9S
まあ、よく考えたら今のαもある意味マスクだけどな・・・
175:名前は開発中のものです。
06/05/21 18:47:14 7IQM+URD
256色以外の環境で色透過する意味あんのかね?
αでいいじゃん。
176:名前は開発中のものです。
06/05/21 20:48:47 0ORi4Dni
>>175
169や171の文脈で考えた場合どうやるの?
LOADIMAGEで読んだBITMAPをDIBにするの?
177:名前は開発中のものです。
06/05/21 21:22:35 7IQM+URD
>>175
?意味がよくわかんね。
もしかしてやり方聞いてんのかね。
>>169はマスクとか言ってるくらいだからDirectXじゃなくて自前だよな?
LoadImageはDDBだから、俺の場合はBMPの読み込み関数別に作るけど。
んでDIBでαブレンドして転送するね。
どうせ2値でマスク持ってても伸張しないと使えないから
合成部分が変わるだけで別に難しくないと思うが?
ざっとみたけど、色がおかしくなるのはDDBとDIBがよくわかって無いんじゃないか?
178:名前は開発中のものです。
06/05/21 23:20:22 xse5f7xt
>>176
DDBのまま。
LoadImage、CreateBitmapで作った
DDBはゲーム終了時まで保持しておく。
>>175>>177
自分もよく分からん。
DIBでDDBの方法と同じように
ラスタオペレーション透過って事?
DIBで透過する場合は、ビットマップを加工したいときとか、
一度に何色も透過したい時に、ピクセル列を直に調べながら、
その透過したい色だけ出力しないというやり方。
179:名前は開発中のものです。
06/05/22 01:25:20 95RnP40u
>>178
176です、DDBのままの処理は解るし
上の方(161あたり)でゴチャ付いているのはマスクデータを読み込んだビットマップから生成
しないでペイントから読み込んだりしてるから奇麗にモノクロになってないだけだと思うから
もう少しプログラムしてれば出来るようになるだろうし気にならない。
α値の方は今でも解らない、GDI系のAPIで使えるものってStretchDIBits?
確かに自作DIBクラスでも使ってるけど161のようなアプローチではやらないなぁ
LOADIMAGEは速いし、DDBで簡単に処理できる状況にあるのに何故DIBかやっぱ解らんわ
180:175
06/05/22 02:46:30 invPdzO+
>>175と>>177俺な。
>>176のアンカ間違い。
>>179 アンタ、161じゃないのか?
まぁいい、同一人物としよう。
>>175で俺が言いたいことは、、、おう
間違えてるわ。
256以外の環境で2値のマスクデータ使って抜く必要あるんかね?
どうせ半透明とか使うしジャギ消し考えたらαでいいじゃん。と。
次にDIBの件か。
別にDDBでもいいさね。ただ俺はめんどくさがり屋なんで
内部で32ビット処理して転送してるだけ。
そして色がおかしくなる件か。
DIBとDDBの形式あわせて無いんじゃないかと思って書いたんだが
原因がペイントだとわかったなら、別にもういいよ。
下の二つを蛇足だ。俺が聞きたいのは一番上。
16ビットや32ビットでマスクデータ使って抜く必要あるんか?
てこと。純粋に知りたいわけよ。
181:169, 171, 178, (165w)
06/05/22 05:54:13 bceEWeEQ
>>179
予め半マスク画像とマスク画像を作っておくやり方か。
色が白であると思いきや、ちゃんと0xffffffになってないとかかも。
>>180
256色以外でも透過するのは、
透過するもんだと思っていたから。
そんな深い意味はない。
普通にFSMさん所のキャラチップとか。
色がおかしくなるのは、自分は179氏では無いから
両方に別の理由があり、ちょっとややこしくなってしまった。
自分の方は、そのDIB、DDBがなんたらの部分だと思う。
182:名前は開発中のものです。
06/05/23 21:58:09 caidKQZy
>>180
スマン179だが161は知らんヤツだ、勘違いさせたな。
因みに俺は透過ごときで苦労したことはない
183:名前は開発中のものです。
06/05/31 00:34:28 i/nY/xFd
>>180
内部で32ビット処理して転送してるだけ。
どうやるんです?
184:名前は開発中のものです。
06/05/31 13:18:54 PVRo+RDd
1.DIBセクションを作って裏画面とする
2.画像用にABGRの32ビットをピクセル分だけメモリ確保しそこに読む
3.A成分を使って2から1へ演算しながら転送
4.1を表画面にBitBlt
185:名前は開発中のものです。
06/06/01 02:29:30 LAwPdhU4
>>184
その 3. の部分はどのように実装したらよいでしょうか
以前テストプログラムで
( ( ((color & 0xff00ff)*alpha & 0xff00ff00) | ((color & 0x00ff00)*alpha & 0x00ff0000) )>>8)
こんな感じの処理を2つ書いて合算していましたがすごく効率悪そうです
186:名前は開発中のものです。
06/06/01 03:17:12 V9P/ukur
MMX使ってたけど、上のようなコードでも
無茶しない限り十分実用になってた。
32*32のキャラ100体ぐらいで60FPSは出てたね。
それで足りないならDirect3D使うしかないね。
187:名前は開発中のものです。
06/06/02 00:46:38 ZyZMhlVJ
>>186=175だと思ってコメントするが
>16ビットや32ビットでマスクデータ使って抜く必要あるんか?
てこと。純粋に知りたいわけよ。
未だにこの質問したい??
ここまでの183や185を見れば解るだろう(皆やんわり突っ込んでんだよネ)
君の方法はウゼエし面倒だから「すっきりラスターオペ」したい
もっと言ってしまうとキミは若くて学び始めた頃にはGDI使いまわす時代が終わってた。
だから知りませんでしたってことだろうと薄々感じてるんだよ。
180の質問を撤回すれば丸く収まる。
188:名前は開発中のものです。
06/06/02 02:50:52 pe1xp10E
はぁ?
最初から
君の方法はウゼエし面倒だから「すっきりラスターオペ」したい
と言えよ。こっちは自前の話してんのに。
だいたい >>176 >>183 と >>185 は俺に質問したから答えただけだろが。
>未だにこの質問したい??
>だから知りませんでしたってことだろうと薄々感じてるんだよ。
感じてんなら俺が納得するように教えればいいじゃん。なんでわざわざ質問するんだよ。
もともと、アルファだけじゃなぜダメなのか聞いてるのはこっちなのに。
はっきりこうだから、マスクが必要だって教えろよ。
それで済む話だろうが。お前キメェ。
>>187 >180の質問を撤回すれば丸く収まる。
質問スレでなんでここまで言われにゃいかんのだ。
途中で納得するような答え持ってこないで
質問に質問で返しておいてこの言い草か。マジデキメェ。
189:名前は開発中のものです。
06/06/13 03:36:21 kYV6i71Y
( '・ー・`)
190:名前は開発中のものです。
06/06/18 10:46:11 pBYbu/U2
すまん。
ちょっと質問させてくれ。
いまアクションゲーム作ってるんだが、
グラフィック領域をどの程度まで使っていいのかがちょっと不安。
よくVRAM32Mとか書いてあるけど
あれは256X256dot1枚(深度8bit)=64KBと考えて、
1MのVRAMならそれが128枚分載ると思っていいの?
それともアルファを載せたら領域半分になるとか?
また他のソフトの常駐も一応考えるべきだと思うんだが
どの程度VRAMの空きを作っておくべきだろうか?
また現在のグラフィックボードは何Mくらいが標準と考えていいのだろうか?
とりあえず、作る方はなんとかなってるんだが
世間の動向とハード周りの常識がわからないもので、
悪いんけどだれか教えてくだされ。
191:名前は開発中のものです。
06/06/18 11:45:42 Jubw01vM
>>190
VRAMに保持されるのはテクスチャだけじゃないよ。
VRAMがどのように使われるかはドライバ次第なんで
ぶっちゃけPGからはほとんど予測できない。
一応消費量は取得できるからそういうソフと使ってみたり
自分で組んでみるなりやってみ。
192:190
06/06/18 12:11:04 pBYbu/U2
>>191
即レスサンクスです。
そうかあ。
こっちで計算してミッチリ詰め込んだらあかんのか。
重ねて申し訳ないんだけど
VRAM消費量の取得方法を教えて頂けませんか?
193:名前は開発中のものです。
06/06/18 14:03:15 ElWGc4Pa
>>192
DirectX使えばVRAMの使用料とか空きがわかるはず
194:名前は開発中のものです。
06/06/18 14:10:17 Jubw01vM
DirectX9だと使用可能なテクスチャ メモリの推定値しかわからんかも。
195:190
06/06/18 14:30:50 pBYbu/U2
確かになんか不安定というか妙なところで消費されてるぽいなあ。
今、普通の同人アクションゲーだとVRAM32Mとか要求してもいいかな?
昔のゲームって要求するスペック、8Mとか16Mだったと思うんだが。
196:名前は開発中のものです。
06/06/18 16:03:19 qq6KWnYE
BitBltか・・・何もかも懐かしい・・・
197:名前は開発中のものです。
06/06/18 20:00:27 ca306MDz
今ならVRAM64MBは普通に要求しても良い気がする。
むしろ128MBでも良いんじゃないかな。
198:名前は開発中のものです。
06/06/18 20:22:51 RClJ2qcr
内容によると思うが
32MB要求してマリオのパクリものとかだったらなんだかなぁ。
ノートPCも視野に入れるとせいぜい8MBぐらいじゃないの。
199:名前は開発中のものです。
06/06/18 21:06:16 ElWGc4Pa
>>198
死んでくれ orz
200:名前は開発中のものです。
06/06/18 21:09:30 ca306MDz
ノートでも今は128MBとか普通にない?
数年前でも32MBは普通にあったよ
少なくとも8MBなんてのは古すぎて論外でしょ。
そんなんじゃCPUとかもヘボいだろうし
201:名前は開発中のものです。
06/06/18 21:21:01 +TAyDrR9
8MBのノートで、今時ゲームしようってのがずうずうしい。
202:名前は開発中のものです。
06/06/18 21:24:29 YI1O1grK
オンボードでも8Mでもテストしてくれる分には全然おk〜!
えぶりばでぃ・かもん・てぅぎゃざーだぜぇ!!!
でも、動かないものは動かないから、
三点リーダーつけて報告されてもスルーだからな…
203:名前は開発中のものです。
06/06/18 21:45:28 RClJ2qcr
うちのノートもそうだけど、PenIII世代だと8MB普通だと思うが・・・。
というが寧ろ多い方。4MBもザラだし。
2Dのゲームぐらいは出来てほしい。
さすがにこれで3Dゲームやろうとは思わないがね。
204:190
06/06/19 20:40:53 /xQO+gJI
なんか色々意見どうもです。
思い切って32Mとか64Mとか(笑)要求することにしちゃいます。
やっぱりアニメーションパターンとか多いほうがいいと思うんで。
CPU速度も1Gとか1.5Gとか要求していいよね?
205:名前は開発中のものです。
06/06/19 21:58:11 y6jN8Acn
>>204
個人の2Dゲー製作で同時に32M使うほどのパターン用意できるなんて尊敬するよ
プリレンダとか使うなら平気でいきそうだけど
画面解像度はどれくらいにするのか聞いていい?
CPUは、VRAMに64M要求するならバランス的にありだと思う
206:名前は開発中のものです。
06/06/19 22:05:02 sQesAY19
必要1GHz
推奨1.5GHz
ぐらいならありじゃないかな
207:190
06/06/20 01:10:00 J9IIGM39
>>205
640*480でやってます。
プリレンダで2Dはあまりメリットを感じないので全部ドット絵で。
208:名前は開発中のものです。
06/06/20 20:45:50 wGNZFSvi
洋ゲー遊んでいる俺からすっと、よくそんなんで、ゲーム遊べんなーとか思えてくる
209:名前は開発中のものです。
06/06/20 21:12:06 U53Og5Sj
洞窟物語はサクサク動きますが、何か。
210:sage
06/06/24 03:03:15 m69O2sj/
すみません、質問なんですが
DirectXのD3DXIntersect関数を使い
当たったメッシュの頂点座標を取得したいのですが
色々触って見ても変な座標しか取れません
変な所があれば教えていただけないでしょうか
//レイを取得
D3DXIntersect(pThing->pMesh,&vecStart,&vecDirection,&boHit,&index,NULL,NULL, pfDistance,&pAllHits,NULL);
// 三角形の頂点バッファを取得する
if( pAllHits != NULL )
{
pHit = (LPD3DXINTERSECTINFO)pAllHits->GetBufferPointer();
index = pHit[0].FaceIndex;
pAllHits->Release();
}
D3DXVECTOR3 vertex[3];
DWORD fvf = pMesh->GetFVF();
DWORD versize = D3DXGetFVFVertexSize(fvf);
PBYTE pvertexBuffer;
pMesh->LockVertexBuffer(D3DLOCK_READONLY,(LPVOID*)&pvertexBuffer);
pvertexBuffer += versize*(index - 1);
for( DWORD i=0; i<3; i++)
{
vertex[i] = *(D3DXVECTOR3*)pvertexBuffer;
pvertexBuffer += versize;
}
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4154日前に更新/218 KB
担当:undef