■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

鬱だ氏のう DirectX (Part 4)
251 名前:名前は開発中のものです。 :02/04/22 22:42 ID:???
>だから一連の処理の頭に「処理の目的、簡単な流れ」を書けばそれで十分だと思います。
そんなのソース見れば解るじゃん。
コメントなんかイラネーよ。

逆にそれで判らなければ、ソースとしてまずいです。(ワラ

252 名前:名前は開発中のものです。 :02/04/22 22:56 ID:???
そんな無理して噛みつかんでも・・・

253 名前:名前は開発中のものです。 :02/04/22 22:59 ID:???
質問した奴がタコだったってことで。
次逝こう。

254 名前:名前は開発中のものです。 :02/04/23 00:16 ID:???
豊田芳彰って何者?

255 名前:転がる :02/04/23 00:59 ID:kCdUFZP2
BBXでレスつかずでした・・・皆さんお願いします

http://isweb8.infoseek.co.jp/computer/bbx/cgi-bin/bbx.cgi?log=24&vew=249

256 名前:名前は開発中のものです。 :02/04/23 01:16 ID:???
>>255
環境書いてないから適当に答えるけど、マスクの画像用意してANDを取ってからORすればいいんじゃないの?

257 名前:名前は開発中のものです。 :02/04/23 02:17 ID:???
ここはBBX補完スレですか?

258 名前:名前は開発中のものです。 :02/04/23 02:20 ID:???
>>254
googleで検索しますた。
http://www.google.com/search?num=50&lr=lang_ja&q=豊田芳彰

↓キリストの父親に興味があるらしいな(・∀・)ニヤニヤ
http://www.ntv.co.jp/FERC/request/req0708.html

259 名前:名前は開発中のものです。 :02/04/23 12:07 ID:???
はいはい、ヲチはここで終了。

260 名前:名前は開発中のものです。 :02/04/23 15:47 ID:???
>>259本人必死だな(藁)
(・∀・)ニヤニヤ

261 名前:名前は開発中のものです。 :02/04/23 16:28 ID:???
低脳な煽りほど効果ある、とか言うんだろうなぁ。低脳は。

262 名前:名前は開発中のものです。 :02/04/23 17:48 ID:???
とにかく、この由緒ある名スレを荒らすんじゃない。
やるならせめて他のスレでやれ。

263 名前:名無しさん :02/04/23 18:16 ID:???
マリアは処女で身篭った(本人談)から父親が居るわけがない。
芳彰って天才たけどボケも面白い。

264 名前:名前は開発中のものです。 :02/04/23 20:01 ID:???
赤ちゃんはコウノトリは運んでくるんですよってか?(藁

265 名前:名前は開発中のものです。 :02/04/23 21:15 ID:???
>>256
どうやればいいんでしょうか?今までポリゴンにテクスチャ貼り付ける事しかやった事がないもんで・・・
ちなみに環境はDirectX8.1です

266 名前:名前は開発中のものです。 :02/04/24 00:18 ID:sJ/Mtu..
age

267 名前:名前は開発中のものです。 :02/04/24 00:35 ID:???
>>265
ここにソース書くのか?

268 名前:名前は開発中のものです。 :02/04/24 07:30 ID:???
>>265
はいお願いします。全ソースじゃなくても、ポイントだけ押さえて頂ければ後は何とかしますので

269 名前:名前は開発中のものです。 :02/04/24 07:31 ID:sJ/Mtu..
間違い
>>268

270 名前:名前は開発中のものです。 :02/04/24 16:17 ID:???
てゆーかまず>>265がどうやってるか書けYo。
どうせやり方を書いたって僕の使っている方法とは違うのでとか言い出すんだろ。

大体>>256で答えが出てんじゃねーか。

271 名前:265 :02/04/24 17:38 ID:ukW4/.uI
うっせー、ヴォケ。
素直に教えを請うてるんだから教えろよ、禿。
いいから速く教えろ

272 名前:名前は開発中のものです。 :02/04/24 17:46 ID:???
>>271
まっ煽りなんだろうが、答えは出ている品(藁

273 名前:名前は開発中のものです。 :02/04/24 18:22 ID:???
>>272
むしろ騙りじゃない?まぁ>>268の物言いも何だか居丈高だけど…。

とりあえずそのレベルなら、D3DXCreateTextureFromFileExAで読み込むとき、
カラーキーを設定して、そのレーダーの回りの部分とやらを抜いて
おけばいいんじゃない。テクスチャをロックしてα値書き込んだりは慣れてから。

というか、ぷよ〜ん氏のサイト閉じちゃったんだね(´・ω・`)ガクーリ
なんかあったのかな…。

274 名前:名前は開発中のものです。 :02/04/24 18:29 ID:???
>>273
レーダー上のアイコンがはみ出るってことだろうね

ステンシルバッファ使えばとか言ってみるテスト

275 名前:名前は開発中のものです。 :02/04/24 19:11 ID:???
>>274
うぉ、サンクスかなり読み間違えてた。
というわけですまない、273は無視してくれ。

276 名前:名前は開発中のものです。 :02/04/24 20:40 ID:???
普通は敵は1ドットにするか、アイコンにするなら枠からはみ出るようにするかな。
あとは、外枠を描画してはみ出た部分を隠すってのが常套手段。

255の要望通りの動作にするならステンシルやDestαを使うのが素直な実装方法だけど、
どっちも環境が限定されるので注意。NV系では16bitカラーでは使用不能。
一番汎用的な方法は、α成分に円を描いたマスク用のテクスチャを併用するか、円形の
ポリゴンに敵のアイコンテクスチャを張り付ける方法かな?前者はマスクのテクスチャ
座標を上手く計算する必要があって、後者は1テクスチャにアイコン1つにしないと駄目。

あとは、円の中心からの距離をαに入れてαテストで抜くとか、レーダーをテクスチャに
描画するとか色々やり方はあるな。あ、一番初歩的なのを忘れてた。Lockして描画。

277 名前:名前は開発中のものです。 :02/04/24 20:59 ID:sJ/Mtu..
271は騙りです。

>>270
>てゆーかまず>>265がどうやってるか書けYo。
素直にxyzwの頂点を4つ用意して、SetTextureでテクスチャを指定してDrawPrimitiveUPです。
まずレーダーのディスプレイになる円状の物をテクスチャを描いてから、その上にアイコンを同じように描画してます。
>どうせやり方を書いたって僕の使っている方法とは違うのでとか言い出すんだろ。
いやあ、そんな事は言いませんからよろしくお願いします。
>大体>>256で答えが出てんじゃねーか。
そのテクスチャに対してANDとかORする方法が分らないのです。

>>274
ステンシルバッファは、対応しているハードが少なくないですか?
GeForce2MXあたりをターゲットにしているのですが、GeForce2MXでステンシルバッファのサンプルが動かなかったので心配です。

278 名前:名前は開発中のものです。 :02/04/24 21:04 ID:???
レンダリングステートでなんとかできないか?

279 名前:名前は開発中のものです。 :02/04/24 21:12 ID:sJ/Mtu..
>>276
色々候補を挙げていただいてありがとうございます。
>α成分に円を描いたマスク用のテクスチャを併用するか
レーダーの円状のテクスチャのエッジに、元画像のα値を使ってアンチエイリアス
を利かせたいと思っていますので、この方法で行きたいと思います。
これは、マスク用の画像のα値の一部を、アイコンのテクスチャのα値にLockして書き込んでやればいいのでしょうか?
もっと速いやり方がありますでしょうか?

280 名前:名前は開発中のものです。 :02/04/25 00:38 ID:llT4pS1c
>>279
単純にD3DXCreateTextureFromFileExの最後から4番目の引数に透明色指定するだけじゃ駄目なの?
例えばD3DCOLOR_ARGB(255, 0, 0, 0)とか

281 名前:276 :02/04/25 03:13 ID:???
>>277
NVIDIAのチップならだいぶ前からステンシルバッファをサポートしてるよ。
ただし32bitカラー限定。

>>276
マルチテクスチャでステージ0にアイコン、ステージ1に円形マスクを指定して
色をステージ0のテクスチャ、αをステージ1のテクスチャから取得するように
するだけ。
αマスクの方のテクスチャ座標はTexGen使うと簡単だけど、トランスフォーム
済み頂点使うなら自分で設定しないと駄目だね。

282 名前:名前は開発中のものです。 :02/04/25 20:10 ID:L3yRfTHs
>>281
レスありがとうございます。
>マルチテクスチャでステージ0にアイコン、ステージ1に円形マスクを指定して
また質問なのですが、アイコンが元々持っているα値も一緒に使用する事は出来ないのでしょうか?
レーダーとアイコン両方のテクスチャのα値の積を使用したいのです・・・
こうなるとLockするしかないでしょうか

283 名前:名前は開発中のものです。 :02/04/25 20:19 ID:???
>>282
実際にやってみたのか?
そのものズバリな回答が欲しいのなら、ソース上げれば誰かが追加してくれる。

284 名前:名前は開発中のものです。 :02/04/25 21:34 ID:???
>>282
>レーダーとアイコン両方のテクスチャのα値の積を使用したいのです・・・
そのまんまの設定があるけど、ちゃんとヘルプ読んでる?

285 名前:名前は開発中のものです。 :02/04/25 22:01 ID:???
>>282
BBXざっと見たけど、一度ヘルプをざっと眺めておいた方が良いと思うYo!

286 名前:282 :02/04/25 22:31 ID:???
みなさんのおっしゃる通り、ヘルプをよく読んでみたいと思います。
変な文章が多いし、今まではちょっと読んで分らなかったらスグ投げ出していたので・・・
それでも分らなかった場合は、また質問させてください。みなさんありがとうございました。

287 名前:名前は開発中のものです。 :02/04/26 02:01 ID:???
I/O別冊のDirectX8についてるsafuli2.xっていうファイルなんですけど、
これを自分で読み込んだときと、DirectX8のサンプルで読み込んだときで、質感が変わってしまいます…。
サンプルとの違いを調べてみたんですが、多分、
FVFを強制変更して、法線ベクトルを計算しているとこが違うと思うんです。
なんでこんなことしてるのでしょう?
XFileのデータをそのまま表示するほうが元のデータに忠実に表現できるような…
と思うのは間違いなのでしょうか。

(しかもこの部分のコード入れても俺のは綺麗にならなかったLOL)

288 名前:287 :02/04/26 02:21 ID:???
今、DirectX付属のSkinnedMeshサンプルで読み込ませたら、
やはり同様に質感が変わって見えました…。
…XFileのほうが例外的なファイルであるという結論にしてしまおうか(爆

でもやっぱりスッキリしないなぁ。

289 名前:名前は開発中のものです。 :02/04/27 12:00 ID:Nzn80/ZM
>>287
ライトのプロパティとかレンダーステートは同じなんか?
法線ベクトルは、元のXファイルにデータとして付加されていない場合
頂点情報から生成しているだけだと思った。

290 名前:287 :02/04/27 17:13 ID:???
>>289
今レス書いてて気づいたんだけど、
自動法線正規化のレンダーステートに完全に惑わされてました。
法線を計算するんじゃなくて、法線を正規化するだけなんでした。
あー、もう俺ってバカ…。
参考になるレスをどうもありがとうございました。

291 名前:名前は開発中のものです。 :02/04/28 20:16 ID:JfpcGEt2
メタセコイアで作ったテクスチャつきのメッシュを、サンプルのOptimizedMeshで表示させてみると、
陰影が滑らかに付かない個所が出てきてしまいます。
単純な円柱を表示させてみても、他のところは滑らかに陰影がついているのに、
特定の個所だけは急に暗くなったりします。
これってメタセコイアの出力するxファイルがまずいんでしょうか?

292 名前:名前は開発中のものです。 :02/04/28 20:18 ID:???
メタセコのスムージングの角度設定 だな
設定角度以上はわざと滑らかに繋がないでエッジを出せるようになってるんだよ

293 名前:287 :02/04/28 21:23 ID:???
>>291
 メタセコで立方体を製作
→オブジェクトのスムージング角度を89.5に設定
→見た目を確認
→オブジェクトのスムージング角度を90.5に設定
→見た目を確認
→ウマー

294 名前:名前は開発中のものです。 :02/04/29 03:12 ID:???
>>292>>293
なるほど。ライティングの問題かと思ってたYO!サンクス!

295 名前:名前は開発中のものです。 :02/04/29 20:52 ID:yRZDCEAY
 DirectX7 のBlt命令を使って、
転送元画像から転送先画像への転送を、
32x32(または16x16)のパターン画像でくりぬいて転送することは可能でしょうか?
またはαブレンドのように、
自前で転送処理を書く必要があるのでしょうか?

296 名前:名前は開発中のものです。 :02/04/29 20:53 ID:???
可能。つか、SourceRECTで指定するだけじゃん

297 名前:295 :02/04/29 21:05 ID:???
>>296
 説明不足ですみません。
たとえば、src(0,0)-(99,99)を、dest(50,50)へ転送するために、
16x16(or32x32)のパターンを使って、
フェードインっぽい処理をしたいと思っています。

298 名前:名前は開発中のものです。 :02/04/29 21:08 ID:???
>>297
>>296

299 名前:名前は開発中のものです。 :02/04/29 21:08 ID:???
たぶん可能だけど今一伝わらない。
画像なんかを解説してくれれば一発なんだが

300 名前:名前は開発中のものです。 :02/04/29 21:09 ID:???
>画像なんかを
画像なんかで

301 名前:295 :02/04/29 21:14 ID:???
>299
まだ設計してる最中なのでソースは書いてないのですが、
とりあえず下のような感じの処理です。
(即興なので、バグってたらすみません)(^^;

BYTE *pbyInp;  // 引数・入力バッファ
BYTE *pbyOut;  // 引数・出力バッファ
BYTE *pbyPattern;// 引数・転写パターン

*pbyOut = *pByInp & *pbyPattern
    | *pbyOut & ( ~*pbyPattern );

302 名前:295 :02/04/29 21:16 ID:???
(301)書いた後でみてみたら、この処理は、
1pixel=1bitとして考えたときの処理になってます。
24bitで考えるとヘンになるので念のため・・(^^;

303 名前:名前は開発中のものです。 :02/04/29 21:23 ID:???
>>295
カラーキーを使って先にマスク画像を重ねて、その後転送すれば一発じゃん。

304 名前:295 :02/04/29 21:35 ID:???
>303
 確かにその手を使えば1発なのですが、
その方法だとユーザ側にカラーキーを固定してもらう必要があります。
汎用スクリプトエンジンの中に組み込みたいので、
できればカラーキーも自由にしたいのです。
(現状では、画像単位で自由に出来るように設計しています。)

 あと、αなどの都合でシステムメモリサーフェスを利用するとすれば、
あまりBltそのものの回数を増やしたくないというのも・・・(^^;
(転送面積÷パターン面積分の転送が必要なので。)

305 名前:名前は開発中のものです。 :02/04/29 22:14 ID:???
>>304
ノベルツールだろうか、、、
現状と仕様と制限を詳しくキボンヌ

306 名前:295 :02/04/29 23:49 ID:???
>>305
 当方、同人サークルをやっておりまして、
今まで2作ほど、DirectX3でゲームを作ったのですが、
その流れで考えている2Dのライブラリです。
前作のものもスクリプトでノベル程度のものは作れたのですが、
次はプログラムとしてはデザインパターン重視で仕様追加を行いやすく、
仕様追加として画面効果を幾つか増やそうと思っています。
 基本的には自サークルで使おうと思っているのですが、
知り合いのサークルさんでも使ってもらうような話になっているので、
出来る限り、プログラム側の一方的な制限を設けないようにしたいと思いました。

 ・・ただ、[304]からレスが増えない所をみると無理なのかな・・(^^;
個人的には、"DDBLTFX::lpDDSPattern"というのが気になっているのですが。
(解説書には"タイルパターンとして使用するサーフェスのポインタ"とだけ。)

307 名前:295 :02/04/29 23:59 ID:???
 大まかには、セル画管理ライブラリです。
ライブラリに、"画像読み込み"と"テキスト画像化"を指示した上で、
ライブラリ内のZバッファを管理できるクラスに対して、
どのサーフェス(番号)のどの範囲を、指定Zオーダ(番号)で登録すれば、
その結果を画面に表示するようなものです。
 登録済みのセルに対して、移動(目的地・速度)などのオペレーションが指定できて、
2度目以降の描画は変更セル範囲のみ・・っと、これは常識ですね。(^^;

 このライブラリの関数をさらにパックした簡単なスクリプト言語を作って、
スクリプトで動きを実現出来るようにしたものが前作までの仕様です。

 各画像は、BMPファイルから暗号化を兼ねて圧縮していまして、
その圧縮時にカラーキーを指定することが出来るようにしていましたので、
CG1枚に対して1つのカラーキーが持てるようになっていました。
(>>303さんの手法が素直に使えない理由なんですが・・)

308 名前:名前は開発中のものです。 :02/04/30 00:25 ID:???
>>307
カラーキーが使えないのなら、LOCKして抜けば?

309 名前:名前は開発中のものです。 :02/04/30 00:27 ID:???
いちまいちわかってないけど、特定のパターン(渦巻きとか)でフェードインとかしたいって事?
そら、MMXでゴリゴリ書くパターンですな

または、3dビデオカードなら、
パターンをテクスチャ(ラップテクスチャモード←貼る面積よりテクスチャが小さい場合、テクスチャ模様を繰り返し適用する)
にして重ねれば出切る

310 名前:295 :02/04/30 00:39 ID:???
>>308

 αブレンド(=Lockで抜く)処理の部分に対して、
スペック的に付いてこないマシンで描画する時に、逃げ道として
パターンによるフェードアウトをしたいと思っています。

>>309

 まず、渦巻きなどのPixelの位置まで移動する処理は考えてないです。
(初歩がわからない内にその先へ進むと後々大変なので・・)
ただ単純な『Bltでマスクパターンの指定が出来ないかな・・』というものです。
(実処理は>>301のような感じです。)

 あと、Direct3D や、DirectX8 使用となると、
必須スペックが上がってしまうので、同人レベルでは所詮・・(^^;

311 名前:名前は開発中のものです。 :02/04/30 01:16 ID:???
>310
そんなのGDIで十分じゃん。
DirectDraw使うにしても、本買えばそういう基本的なことは載ってる。

312 名前:295 :02/04/30 01:28 ID:???
>311
 それを画面更新あたり300枚以上のセル画に対して処理すると考えると、
GDIでは処理落ちしてしまいますので、
出来る限りDirectDrawのAPIで改善できないかと考えています。

 DirectDrawの本についても、単純なBlt使用法なら、
大抵の本に載っていますが、すこし特殊?な方法になると、
私の購入した本には載っていません。
もし、よろしければ、事象が掲載されている本を教えて頂けると嬉しいです。
(当方、DirectX3の時には、『翔泳社 DirectDrawプログラミング』が、
 メインの参照本となりました。)(ISBN4-88135-450-7)
 本業がフリープログラマのため、(クレジットカードが作れないため)
米国の本は直接購入出来ないですが、
普通に注文・購入できるものであれば、是非買いたいと思います。

313 名前:名前は開発中のものです。 :02/04/30 01:50 ID:oS/CyFd2
他のスレで誰も教えてくれませんでした。
すこし前のレスにメタセコの話があったので期待。

ライトウェブのXファイルを吐き出すプラグインの質問(ディストームのHPで落とせる奴)
ボーンの情報が、吐き出されていません。親子関係の動きは正常に吐き出されています。
DirectX8でやってます。ライトウェブは、6.5Bです。
何方か、分かる方いませんか?

314 名前:名前は開発中のものです。 :02/04/30 01:58 ID:???
>>313
プラグインって内部の情報公開してた?
多分ディストームに問い合わせないと駄目じゃない?

315 名前:名前は開発中のものです。 :02/04/30 02:00 ID:???
>>312
っていうか、セルを描画し終わったサーフェスに対してGDIでもDirectDrawでも描画すれば?

>それを画面更新あたり300枚以上のセル画に対して処理すると考えると、 GDIでは処理落ちしてしまいますので、

>スペック的に付いてこないマシンで描画する時に、逃げ道として パターンによるフェードアウトをしたいと思っています。
から考えると、どうしたってハードウェアが駄目なら同じだと思うが。

本当にフリープログラマなの?

316 名前:名前は開発中のものです。 :02/04/30 02:16 ID:???
そもそも、DirectDraw使う事が間違ってると思う。
DIBSectionで十分だし、そっちの方が向いてるかと。
あとは、NxLibとかのライブラリを利用するとか。

317 名前:295 :02/04/30 02:32 ID:???
>315
 全体のフェードアウトの実装を目的とするならば、
(同じような機構で実現できるのなら)それが、個々のセルでも実現できると。
それで、元々の質問が、DirectDrawAPIで実装可能か?
(→ハードウエア側で実現できる可能性を持たせることができるか?)
というものなので、途中で話が曲がってるような気が。
っで、本当にフリープログラマです・・が、実用ソフトの。(^^;
(・・なので、DirectDrawに関しては素人と同レベルです)
>>316
 今回、質問させて頂いた件は、考えているライブラリの
一部の処理なので、DIBSection使用で考えると、
別の部分で色々な壁にあたってしまいます。
ほかの(オープンソース)ライブラリを利用することも
考えてはいるのですが、今はパターンの問題だけなので、
(結果が分かれば簡単に実装できるはずと思って)
元々のソースを再利用していく考えです。

318 名前:名前は開発中のものです。 :02/04/30 02:42 ID:???
>>317
サイズ次第とは言え300枚以上のセル画に対してマスク処理を行うという設計自体が無理があると思うが

319 名前:295 :02/04/30 02:54 ID:???
>>318
 もちろん、全部マスク処理を行うわけではなく、
転写方法クラスで、セルの転写情報を持ちます。
実際に使用する段階では、そのほとんどが通常の転写(Blt)を
利用すると思いますし、幾つかのセルの集合体のセルを定義して、
そのセルをプライマリにマスク描画する事で、
重たくなる処理の回数自体を減らすことは出来ると思います。

320 名前:名前は開発中のものです。 :02/04/30 10:58 ID:???
>>313
割れXマソ発見

321 名前:名前は開発中のものです。 :02/04/30 12:45 ID:???
DirectX9まだ?(゚ε゚)

322 名前:名前は開発中のものです。 :02/04/30 13:21 ID:???
>>321
正直あまり来て欲しくないヘタレは、オレだけだろうか…

323 名前:名前は開発中のものです。 :02/04/30 13:39 ID:???
>>322
安心しろ、ここにもいる。
やっとWizardが吐くコードを理解したのに…

324 名前:名前は開発中のものです。 :02/04/30 13:58 ID:???
大幅に変わるの?

325 名前:名前は開発中のものです。 :02/04/30 15:45 ID:fNd92hNg
7から8に変わったときは正直面倒くせーって思ってたけど、
今となっては7には戻りたくないな、、

326 名前:名前は開発中のものです。 :02/04/30 16:10 ID:a3cFuDTc
D3DXの拡張はガンガンやって欲しいな。

327 名前:名前は開発中のものです。 :02/04/30 16:54 ID:???
拡張より洗練を!
とかぃぅ

328 名前:名前は開発中のものです。 :02/04/30 20:38 ID:???
d3dfile.cpp で定義されてる CD3DFile と CD3DMesh ってどう違うの?
どちらもファイルからXファイル読めるみたいだけど…

329 名前:名前は開発中のものです。 :02/04/30 23:53 ID:ZnWxoeAg
>>325
漏れはDirect X8が出る直前にDirect X7使ってゲーム開発はじめたよ
Direct X8でいろいろと便利になった(不便になった床もあるらしいけど)って聞いて
ちょっと悲しくなったりしたよ
今からDirect X8つかい始めるとX7の時の二の舞になるので、
Direct X9出てから開発はじめようと思うんだけど、
なかなかでなくて困ってる・・・いつ頃出るの?夏だっけ?

330 名前:名前は開発中のものです。 :02/05/01 00:53 ID:???
まだβも出てないよ>DirectX9
βが出てから半年以上はかかるから、安心してDirectX8を使いなさい。
DirectX7以下と8で大きく変わってるから、8でシェーダーで遊んでおくのがいいかも。

331 名前:名前は開発中のものです。 :02/05/01 02:02 ID:???
今から7をやってみようというのは無謀ですか

332 名前:名前は開発中のものです。 :02/05/01 02:18 ID:???
>>331
勉強にはなるだろうけど、開発効率は悪い。

333 名前:sage :02/05/01 03:41 ID:7caWKSiI
Win32 Console Application でDirectXを使うにはどうしたらいいんでしょ?
引数のHINSTANCEに何を入れればいいのか分からない・・・。

334 名前:名前は開発中のものです。 :02/05/01 04:49 ID:ko02TnFs
>>333
検索しれ。
http://www.geocities.co.jp/Playtown-Spade/4804/console.htm
インスタンスハンドルは::GetWindowLongで取得できる

335 名前:なあ :02/05/01 07:56 ID:???
(^^;
↑この顔文字はやめようぜ。

336 名前:名前は開発中のものです。 :02/05/01 08:21 ID:???
::GetModuleHandle(NULL)

337 名前:名前は開発中のものです。 :02/05/01 14:16 ID:???
>>335
ごめんなさい(^^;

338 名前:名前は開発中のものです。 :02/05/01 14:34 ID:???
わーい(^^;

339 名前:336 :02/05/01 17:40 ID:???
>>334
軽く読んでみたけど、イベントドリブンが性に合わないってのは、
適当なメッセージループの説明を読んでしまったからなんだろうなぁ。
WindowsプログラムだってMS-DOSの時と何ら変わりなく組めるのにな…。
と愚痴ってみるテスト。

340 名前:名前は開発中のものです。 :02/05/01 22:03 ID:???
イベントドリブンはOOみたいなもんで、受け入れられるかどうかが問題だね。
馴れてしまえばなんでもないことなのに。
それか、メッセージポンプをメインループに組み込めばコンソールアプリケーション
にする必要もないのに。キー入力のついでにPeekMessageすればいい。

341 名前:名前は開発中のものです。 :02/05/01 22:46 ID:???
>>340
そしてメッセージポンプをメインループに入れてソースを見渡すと、
アプリのアイドル処理とはゲームのメイン処理だった、ってことになるんだよな。

342 名前:名前は開発中のものです。 :02/05/02 00:39 ID:???
(^^;
(T_T)
(^^)/

343 名前:335 :02/05/02 06:16 ID:???
DirectX9のベータがまもなく出るらしいage(^^;

344 名前:名前は開発中のものです。 :02/05/02 10:15 ID:???
DirectX9のβが出たら、誰かインストールする?
インストールしたとして、普通にアンインストールできるのかな?

345 名前:名前は開発中のものです。 :02/05/02 10:17 ID:YqVtkjO.
>344
.NETでひどい目に合った立場から言わせてもらえば、
DriveImageでバックアップ取ってから入れるのが吉。

346 名前:名前は開発中のものです。 :02/05/02 10:22 ID:???
そりゃもちろん、パーティッション新たに切って入れるよ。
OSとVC++と・・全部いれるの大変だなあ。

347 名前:名前は開発中のものです。 :02/05/02 12:27 ID:S25ejeZM
ふふふ、DirectX 9が出たらDirectX 8.1ユーザがまた嘆き悲しむのかね。
APIを容赦なく刷新してくれるのは嬉しいけどね。
DirectX 3あたりのがずっと生き残ってたらと思うと寒気がする。

348 名前:名前は開発中のものです。 :02/05/02 12:36 ID:???
つか、素人なら、開発の長期化にそなえて影響受けないようにクラス設計しとけ
DX抽象クラスから派生でDX9クラス作れ

349 名前:名前は開発中のものです。 :02/05/02 13:41 ID:LSedsLX2
Direct3Dは、8からはしばらく変わらんだろ。
忘れがちだが、バージョンアップで大規模な改変が行われたのは
7→8のときだけだよ。

350 名前:名前は開発中のものです。 :02/05/02 14:25 ID:???
DirectX10までは予定が発表されてるしね。
PSとVSの統合って文法が同じになるだけかな?
PSでも成分の入れ換えができるようになるならめちゃくちゃ嬉しい。

351 名前:名前は開発中のものです。 :02/05/02 14:46 ID:???
しかし、メーカーはXBOXのGPUをターゲットにしないかな
結局、新機能はほとんど普及しない罠

352 名前:名前は開発中のものです。 :02/05/02 15:12 ID:???
結局デモプログラムぐらいしかピクセルシェーダ−も使えんのはつまらんよなあ・・・

353 名前:名前は開発中のものです。 :02/05/02 16:33 ID:???
>>349
カナーリ安心したよ

354 名前:名前は開発中のものです。 :02/05/02 17:23 ID:7aVH7DDk
対象をXboxに絞るんなら
PS/VSとも、作り上げることの出来る
シェーダールーチンって限られてこないか?
結局どこも自前レンダーステート(又はNVLink)
みたくなってるんだろうなあ。

355 名前:アゲ :02/05/03 05:24 ID:???
DirectXでゲーム作ってるんだけど起動して1分くらいでパソがごおおおおおおおおおおおおおおおおおおおおおおおお
って轟音を上げるんだが処理が重いのかな?普通?
あまりパソゲーやらないんでよく分からん。ちなみにペンチ700MHz。

356 名前:名前は開発中のものです。 :02/05/03 06:22 ID:???
おれはゲームやると何分かしたら
轟音上げるけど。
環境は同じくらい。

357 名前:名前は開発中のものです。 :02/05/03 08:43 ID:???
おれはゲームしなくても常に轟音。

358 名前:名前は開発中のものです。 :02/05/03 11:19 ID:???
CPUファンの回転数が上がってるとかでなくて?

359 名前:名前は開発中のものです。 :02/05/03 11:27 ID:wKrDTHAc
一つのトライアングルでuv値を0〜10とすると
0〜1に比べて物凄く遅くなりますが
どういった理屈でこうなるのでしょうか???

地形の表示で,遠くのポリゴンを何個かまとめて表示させているのですが,
これのおかげであまり速くなりません...

360 名前:名前は開発中のものです。 :02/05/03 11:30 ID:wKrDTHAc
>>355
ファンにほこりが溜まっているのではないですか?
私は轟音がして一ヶ月くらい放っておいたら電源が壊れました

361 名前:アゲ :02/05/03 14:36 ID:???
>>357
やばくないか?それ
まぁ漏れが前使ってたデスクトップはプレステ2よりうるさかったけどね。
>>360
ノートだから開けられんです。トーシロなんで・・・。

つーか同時に描画できるサーフェス(キャラクター)て何個くらいまですかね?
当然環境によって変わるんだろーけど・・ ちなみに漏れのVRAMは8M。

362 名前:名前は開発中のものです。 :02/05/03 20:27 ID:???
>>361
DirectDrawかDirect3Dかで違うし(w

363 名前:名前は開発中のものです。 :02/05/03 21:50 ID:???
>>359
テクスチャのキャッシュミス?

364 名前:アゲ :02/05/03 21:51 ID:???
>>362
Drawナリヨ;_;

365 名前:名前は開発中のものです。 :02/05/03 23:10 ID:ZQ0w8Z/2
>>364
キャラクターってどのくらいの大きさやねん!
スプライトが何枚表示できるかはVRAM関係ないぞ。
(もしかして、別のスプライトか?)

366 名前:名前は開発中のものです。 :02/05/04 00:15 ID:???
>>365
ビデオメモリに入りきらず、システムメモリになると遅くなるからでは?

367 名前:名前は開発中のものです。 :02/05/04 01:11 ID:???
>>364
WinGを使いましょう

368 名前:アゲ :02/05/04 02:57 ID:???
>>364
よく知らんがそれって古い技術なのでわ?
つーか厨房でも使えるの?

369 名前:名前は開発中のものです。 :02/05/04 02:59 ID:???
>>368
2Dでチョット前のPCもターゲットにするならDirectDrawで充分

370 名前:アゲ :02/05/04 03:05 ID:???
>>368
それを聞いて安心したぜ。
てか左右反転で転送することってできますか?
も〜〜ダイレクトXのヘルプは全部英語でサパーリです(´д`;

371 名前:名前は開発中のものです。 :02/05/04 05:02 ID:???
>>370
それってbltで?rectで?どっちにしてもできるけど
WinGBitBltがお勧め

372 名前:名前は開発中のものです。 :02/05/04 07:48 ID:???
>ダイレクトXのヘルプは全部英語で
ネタ?

373 名前:名前は開発中のものです。 :02/05/04 08:35 ID:???
WinGってDIBSectionになってるんだけよな?
なぜ今ごろ?
Windows3.1用のゲームでも作る気なのかな?

374 名前:名前は開発中のものです。 :02/05/04 08:59 ID:???
WinGマニアは帰れ。

鬱だ氏のう WinG
http://game.2ch.net/test/read.cgi/gamedev/1020152759/l50

375 名前:名前は開発中のものです。 :02/05/04 10:58 ID:???
>>374
こ、これほど「鬱だ氏のう」の文字が、似合うスレもないな…。

376 名前:名前は開発中のものです。 :02/05/04 11:27 ID:LhfxDlgg
表示は全てgifをつかうようなアプリケーションなら、
GDIだけで作れるんでしょうか?

377 名前:名前は開発中のものです。 :02/05/04 12:42 ID:???
別にGIFとかBMPだとか関係ない。
要は速く描画したい時とか、標準のAPIでできない事をする時にライブラリ使うの。
解ったら早速WinG使いなさい。

378 名前:名前は開発中のものです。 :02/05/04 12:43 ID:???
ついでにPCMで和音使いたい時はWaveMIXを使う事。これ最強。

379 名前:名前は開発中のものです。 :02/05/04 12:45 ID:???
>>373 374 375
君たちも、聴きたい事や言いたい事があったら是非書き込みおながいします
http://game.2ch.net/test/read.cgi/gamedev/1020152759/l50

380 名前:名前は開発中のものです。 :02/05/04 14:15 ID:???
>>377-379
連書きウゼェよ。
失せろ。

381 名前:名前は開発中のものです。 :02/05/04 14:22 ID:???
こっちこそ真のWinGスレだな

382 名前:アゲ :02/05/04 17:36 ID:???
>>371
DirectDrawでできるってこと?それともそのWinGを使えってことですかい?
だが簡単に引数のオプションで指定したりしてできるわけじゃないんデショ?
てかWinGって評判悪いの?(付加疑問文)

383 名前:名前は開発中のものです。 :02/05/04 19:13 ID:???
どっちでも簡単にできるが
大評判のWinGつかっとけ。

384 名前:名前は開発中のものです。 :02/05/04 20:23 ID:???
2DはWinG。最強。

385 名前:名前は開発中のものです。 :02/05/04 20:29 ID:???
ガンダムの一種ですか?

386 名前:名前は開発中のものです。 :02/05/04 20:34 ID:DoQwTAVw
彡    ビュウウウ…
          彡
  彡
        .∧ ∧    このスレ寒いなオイ・・・。
       ヾ(,,゚Д゚),)                   
        人つゝ 人,,                   
      Yノ人 ノ ノノゞ⌒〜ゞ              
    .  ノ /ミ|\、    ノノ ( 彡           
     `⌒  .U~U`ヾ    丿 

387 名前:名前は開発中のものです。 :02/05/05 02:23 ID:???
WinGさえあれば、モテモテになれそうな気がしてきたよ…。

388 名前:名前は開発中のものです。 :02/05/05 05:34 ID:???
>>385
ある意味正解。

389 名前:名前は開発中のものです。 :02/05/05 21:51 ID:GK7msIf2
ノベル系のゲームで、キャラを喋らせたいのですが、音声データって普通は
なにを使うものなのでしょうか?
http://www.nengollo.com/ngtxt/ponkan/yukie.html
このページを見ると、
「サンプルVoiceはmpeg(32kHz,64kbps)です。
製品では、44kHz,16bit WAVです」
と書いてありますが、WAVEを使うのが一般的?

390 名前:名前は開発中のものです。 :02/05/05 21:53 ID:GK7msIf2
age

391 名前:名前は開発中のものです。 :02/05/05 21:57 ID:GK7msIf2
http://game.2ch.net/test/read.cgi/gamedev/1016276254/l50
↑こっちの389の書き込みが表示されない。
なぜ?

392 名前:名前は開発中のものです。 :02/05/05 21:57 ID:???
>>389
CD-DA

393 名前:名前は開発中のものです。 :02/05/05 21:57 ID:???
>>389
ってこのスレで聞く質問か?

394 名前:名前は開発中のものです。 :02/05/05 23:44 ID:HZ/kacKY
DirectSound3Dで川のせせらぎの音のような不定形のものを表現するとき
川がある位置にところどころ音源を置くやりかたでいいんでしょうか。
音源が物凄い勢いで増えてしまうような気がして不安です。

395 名前:名前は開発中のものです。 :02/05/06 02:08 ID:???
>>393
川のせせらぎって水がはねてるところから聞こえるよね?
川全体から聞こえているわけではないのよ。

396 名前:名前は開発中のものです。 :02/05/06 11:00 ID:???
DirectX8にて2Dシューティング作っているんだが
2D格ゲーの超必殺技を使う時に光るような効果は
3Dで表現するにはどんな感じでやればいいんでしょうか?
どなたかヒントでもいいので教えていただけると嬉しいです。

397 名前:名前は開発中のものです。 :02/05/06 11:03 ID:???
目コピできない人は
ゲームプログラマの才能ないよ

398 名前:名前は開発中のものです。 :02/05/06 12:02 ID:???
3D格ゲーの超必殺技を参考にすればいいじゃん

399 名前:名前は開発中のものです。 :02/05/06 17:51 ID:JfFPQD72
モデラーに、よくメタセコの名前がでてきますが、
これで出力したXファイルって、読み込ませても表示されないんですが、
どうすればできますか?
なんか8には対応してないとも聞いたのですが、、、

400 名前:名前は開発中のものです。 :02/05/06 18:49 ID:???
2Dシューティングを作っていて2D各ゲー参考に…って言うときに
どうして3D云々が必要になるの?

401 名前:名前は開発中のものです。 :02/05/06 19:44 ID:???
>>396
エフェクト用の画像を用意して、半透明処理使って描画。
というか、これ以外にやりようがない気がするが…(w

フラッシュってことなら、画像と加算して描画しる!

402 名前:名前は開発中のものです。 :02/05/06 19:45 ID:???
効果だけ3Dにしたいんでしょ
エフェクトだけ3D使ってるのって結構あるじゃん

403 名前:名前は開発中のものです。 :02/05/06 19:45 ID:VKx4oYY2
>>400
3Dエフェクトを使って絵を用意せずにきれいなのをやりたいと
思ったからです。

404 名前:名前は開発中のものです。 :02/05/06 20:27 ID:FxlgJW6E
ポイントスプライトでパーティクル

405 名前:名前は開発中のものです。 :02/05/06 21:36 ID:???
>>403
それ、「2D格ゲーの超必殺技を使う時に光るような効果」には
ならないと思われ。
だって、あれは画像使ってるんだし…。

406 名前:名前は開発中のものです。 :02/05/06 21:52 ID:???
>399
普通にできます

407 名前:名前は開発中のものです。 :02/05/06 23:52 ID:iMlkcTys
DirectX8のフルスクリーンモードでメニューやダイアログを表示させる方法はありますか?
7以前はFlipToGDISurface(だっけ?)でできたようなんですが…。

408 名前:名前は開発中のものです。 :02/05/07 00:21 ID:beSQZnQE
>>407
俺の場合、640x480で!D3DSWAPEFFECT_FLIPで
表示されるダイアログに重なるように事前にマウスカーソルを
置いておくようにするとダイアログが表示可能だ。w
まあ精進しろ。

409 名前:名前は開発中のものです。 :02/05/07 07:57 ID:GYsO3cnI
今までDrawPrimitiveUPで描画していたのをDrawPrimitiveに変えたら、
FPS落ちてもた。
HT&L対応してないビデオカードだとそうなるのだろうか、、、、

410 名前:名前は開発中のものです。 :02/05/07 10:07 ID:???
VertexBufferのフラグを適切に指定しないと遅くなるよ。
NVIDIA曰く、適切に指定すれば常にDrawPrimitiveの方が速いそうだ。

411 名前:名前は開発中のものです。 :02/05/07 11:13 ID:???
その適切を解り易く解説している所知りませんか?
セットアップしたらもう変更も参照もしねーよって時は
WRITEONLYとPOOL_DEFAULTでいいのかぁぁ?よくわかんない

412 名前:名前は開発中のものです。 :02/05/07 11:19 ID:Aw7Dnvr2
>適切に指定すれば常にDrawPrimitiveの方が速い
それってHT&L対応していないチップででもですかね・・・

413 名前:名前は開発中のものです。 :02/05/07 11:20 ID:H21ddL0Q
IDirect3DDevice8::CreateVertexBufferで
D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY

414 名前:名前は開発中のものです。 :02/05/07 11:55 ID:Aw7Dnvr2
D3DUSAGE_DYNAMICフラグを指定したら、CreateVertexBufferの時点で
何故か落ちてしまうのですがビデオカード関係あるんですかねぇ、、、
D3DUSAGE_WRITEONLYは大丈夫でしたが、、、

415 名前:名前は開発中のものです。 :02/05/07 12:08 ID:H21ddL0Q
>>414
ヘルプにD3DUSAGE_DYNAMICは
D3DPOOL_MANAGEDでは使用できないと
書いてあるな。

416 名前:名前は開発中のものです。 :02/05/07 12:15 ID:Aw7Dnvr2
>>416
その通りでした。どうもお騒がせしますた。
しかし、D3DUSAGE_DYNAMIC指定してもFPSかわらんです、、、
やっぱTNT2が悪いのか???

417 名前:名前は開発中のものです。 :02/05/07 13:29 ID:???
Direct3Dばかりのスレで質問するのも恐縮ですがDirectPlay関係で質問があります。

DPN_MSGID_RECEIVEだと、別スレッドで処理させるためのような戻値のDPNSUCCESS_PENDINGがありますが、
それ以外のメッセージではとても別スレッドで処理させるものとは思えないんです。
特にDPN_MSGID_INDICATE_CONNECTはイベントを作って同期を取れ、っていってるくらいの仕様で…。
これらについてはメッセージを受け取ったスレッドで処理してしまうのが良いのでしょうか?
そうするとスレッド間の同期がまたややこしくなりそうな気がするのですが…。

418 名前:名前は開発中のものです。 :02/05/07 14:14 ID:???
>>412
GeForceだってソフトウェア頂点処理は使えるし、常にって言うくらいだから
T&L無しのビデオカードでもそうなんじゃない?

でも、T&L無しの場合は速くなったとしても誤差の範囲だと思うよ。
T&L使う場合は、VertexBufferを作る場所なんかでも大きく変わるし、Lockの
仕方でもかなり変わるんだけど。

パフォーマンス関係の資料はNVのとこにいっぱいあるから見てみるといいかと。
頂点は32バイトの倍数のサイズが一番効率いいとかいう資料もあるよ。
(Indexedでなければ単純に小さいほど良さそうな気がする)

419 名前:396 :02/05/07 16:29 ID:djkdk0uQ
>>401
>>404
ご意見ありがとうございます。
>>402
よくあるんですか?
もし3Dエフェクトについて少しでも書いてあるページをご存知でしたら
お教え願います。

420 名前:名前は開発中のものです。 :02/05/08 15:36 ID:???
>>419
アーケードゲームだとGGX、カプエス2とか、どう見ても3D使ってるね。
PCゲーだと、英雄伝説4とかが使ってたぞ。
エフェクトならレンダリングステートの設定とか変えるだけでも結構変わる。
わかったらOpenGL使いなさい

421 名前:名前は開発中のものです。 :02/05/08 15:45 ID:???
>>420
オチにちょっとワラタ

422 名前:名前は開発中のものです。 :02/05/09 04:04 ID:???
見なくてもNAOMIという時点でポリゴンなのは当然かと>GGX、カプエス

423 名前:名前は開発中のものです。 :02/05/09 18:17 ID:OK3DVRvU
SDKに入っているサンプルXファイルで、Tiger.xはきちんと表示できるのですが、
car.xだと真っ白に表示されてしまいます。

DrawSubset()を使っているのですが。

424 名前:名前は開発中のものです。 :02/05/09 18:42 ID:69MmpqZc
>>423
後学の為に、Xファイルの中身は見るようにした方がいい。
Tiger.xは単一のメッシュでテクスチャで色付けされている。
一方car.xは複数のメッシュに分割されており
おのおの違うマテリアルを設定することで色分けをしている。
D3DXLoadMeshFromXでXファイルをロードした際
マテリアルの配列を取得しているはず。
DrawSubset()で使う前に
それに合わせたマテリアルを設定しなければ
単色で表示されてしまう。

425 名前:名前は開発中のものです。 :02/05/09 19:42 ID:OK3DVRvU
>>424
即レスありがとうございます。
SDKのサンプル(EnhancedMesh.cpp)見るとパッチ(?)数分、
D3DRS_PATCHSEGMENTSをセットしているみたいですね。
Xファイルの中身も解析してみようと思います。

426 名前:名前は開発中のものです。 :02/05/09 20:01 ID:3FuHlBew
>>425
それはNパッチの用の定数で
今回の件には関係ないと思われ。

427 名前:名前は開発中のものです。 :02/05/11 10:53 ID:bZs7B3mQ
DirectX 9が3DLabsとMatroxを復活させる
http://www.watch.impress.co.jp/pc/docs/2002/0510/kaigai01.htm
興味深かったので、ageついでに。

428 名前:名前は開発中のものです。 :02/05/11 13:18 ID:???
おおう、こんな記事が…
ハードウェアが一新されるってことは、ソフトウェアのほうにも影響出てくるの?
DirectX9で書いたプログラムはDirectX8以前にしか対応してないハードで動かないとか。

429 名前:名前は開発中のものです。 :02/05/11 13:33 ID:???
GeForce4はソフトウェアエミュレーションで動作します
くらいのもんじゃないか?

430 名前:名前は開発中のものです。 :02/05/11 15:18 ID:Z2/0mNSI
いやあマジ全然わかんね。
Tessellatorって何?
へたにレガシーパイプラインに熟知している分だけ
思考の切替に苦労する奴続出しそう。

431 名前:名前は開発中のものです。 :02/05/11 17:07 ID:???
へたにレガシーパイプラインに熟知している分だけ

432 名前:名前は開発中のものです。 :02/05/11 17:47 ID:???
Borland C++でDirextDraw失敗しまくり・・
鬱だ氏のう

433 名前:名前は開発中のものです。 :02/05/11 17:48 ID:???
曲面をポリゴンで近似して、その頂点座標を算出する装置のことかなあ。
曲面は方程式でもN-Patchでも構わんと思うけど、そういう感じで。

434 名前:名前は開発中のものです。 :02/05/11 19:50 ID:c8jMVapM
>>433
>DirectX 8では、Vertex ShaderとPixel Shaderの間で処理していたクリップなどもなくなる。
>概念は存在するのだが、その機能はTessellatorの段階に入る
Tessellatorは従来のクリッピングの代替になるって書いてあるぞ。
VertexShaderを通して初めて、ワールド座標系での頂点の位置が生成されるのに
その前フューズでクリッピングなんか出来るんか?

435 名前:名前は開発中のものです。 :02/05/11 20:04 ID:c8jMVapM
「Tessellator(平面分割ユニット)」とも書いてあるんで、
折れが想像するに、ワールド空間をXYZで区切り小さな正方形の空間に分割して
ポリゴンオブジェクトもそれぞれの空間に属するよう分割するってやつじゃないのか。
PowerVRの3次元版みたいな。
そうすりゃクリッピングも出来るし、Z軸に対し前列の方から処理をすれば
陰面消去もかなり省ける。半透明もいける。
だけど>>434が問題なんだよなあ。
実はトランスフォームはGPUでは行わないとか?

436 名前:名前は開発中のものです。 :02/05/11 20:12 ID:???
後藤たんにだまされるな。

437 名前:名前は開発中のものです。 :02/05/11 20:18 ID:???
>>434
漏れもそこは納得できなかった。おそらく後藤たんの勘違いだろう。
Tessellatorが担うのは高次元サーフェスやディスプレイスメントマッピングだと思われ。

438 名前:名前は開発中のものです。 :02/05/11 21:39 ID:???
従来どおりの頂点単位のクリッピンク「も」やります。
ってことは?

439 名前:名前は開発中のものです。 :02/05/12 01:30 ID:Xo7NVnZk
うちのDirectX8のヘルプには、レンダリングパイプラインの頂点シェーダーの
前にTessellatorあるけどなぁ。

それと、DirectX10でシェーダーを統合するとは言ってるけど、文法を同じに
するだけで一緒に処理するわけじゃないと思うんだが。一緒に処理するような
次元のものじゃないし。
ただ、文法が同じになれば頂点シェーダーとピクセルシェーダーで同じ回路を
共有なんてこともできるようになるかも?ビットマップからジオメトリを形成
するような処理が最近の流行だから、頂点シェーダーでもテクセル補間みたい
なのは必要になるし、同じ回路を使いまわせそうな気もする。

440 名前:名前は開発中のものです。 :02/05/12 05:43 ID:???
TessellatorはDX8からある。後藤たんが知らなかっただけ。

441 名前:名前は開発中のものです。 :02/05/12 10:22 ID:???
>>439
>ビットマップからジオメトリを形成するような処理が最近の流行だから、
>頂点シェーダーでもテクセル補間みたいなのは必要になるし、
それこそ、まさにDX9のディスプレイスメントマッピングだな。
テセレーションのLOD制御もかなり自由度が高いらしいぞ。
それにしても、後藤たんの妄想記事は何とかならないのか・・・。

442 名前:名前は開発中のものです。 :02/05/12 20:15 ID:JIgZ5ftk
DirectX8のD3DXSPRITE::Drawを使ってスプライトを描画した上に
ポリゴンを描画したいんですが、どうしてもポリゴンの方がしたに
なってしまいます。何かうまい方法はないでしょうか?

443 名前:442 :02/05/12 20:27 ID:???
解決しました。
SetRenderState(D3DRS_ZENABLE,D3DZB_FALSE)
を最初に実行しておけばいいだけでした。

444 名前:名前は開発中のものです。 :02/05/14 14:39 ID:???
後藤たん、推測は外れるし事実は誤認してるし…
知ったかですか?アホですか?

445 名前:名前は開発中のものです。 :02/05/14 21:33 ID:gp9yAFEg
 

446 名前:名前は開発中のものです。 :02/05/16 22:20 ID:???
IDirect3DSurface8間でのイメージの転送って
CopyRectsしかありませんか?

447 名前:名前は開発中のものです。 :02/05/17 15:38 ID:xxARlwQE
C++/C では、Microsoft® Direct3D® サーフェスにイメージをコピーする場合に、次のメソッドも使用できる。

D3DXLoadSurfaceFromFileA
D3DXLoadSurfaceFromFileInMemory
D3DXLoadSurfaceFromFileW
D3DXLoadSurfaceFromMemory
D3DXLoadSurfaceFromResourceA
D3DXLoadSurfaceFromResourceW
D3DXLoadSurfaceFromSurface
IDirect3DDevice8::CopyRects

448 名前:名前は開発中のものです。 :02/05/18 22:03 ID:nLBOy5nA
なに?DDrawってもう用済みなの?D3DのIMってどこいっちゃったの?

449 名前:名前は開発中のものです。 :02/05/18 22:06 ID:???
ぜんぶD3D IMになっちゃった。

450 名前:名前は開発中のものです。 :02/05/18 22:07 ID:???
>>447
それも結局内部でCopyRects呼び出してるだけだね

451 名前:名前は開発中のものです。 :02/05/18 22:08 ID:???
>>449
ぜんぜんIMじゃないけど

452 名前:名前は開発中のものです。 :02/05/18 23:09 ID:vV3OwEEg
>>449
RMがDx7で廃止
IMがDx8で廃止(名前が消えただけ?)
DrawもDx8で廃止

453 名前:名前は開発中のものです。 :02/05/18 23:31 ID:v4jBUbb2
>>450
何故解る?

454 名前:名前は開発中のものです。 :02/05/18 23:32 ID:???
RMが無くなったからIMと言い分ける必要が無くなっただけで、中身は
IMそのものだよ。

455 名前:名前は開発中のものです。 :02/05/18 23:35 ID:???
>>453
D3DXの関数はすべてD3DDevのラッパーだから

456 名前:名前は開発中のものです。 :02/05/19 02:30 ID:xPxMqsdA
D3Dのリソースマネージャクラスを作っているのですが、
ロスト時に再ロードする仕組みで悩んでいます。

1 ロードしたリソースを保存しておいて、そこから復元
2 ロードする手順を保存しておいて、再生

1はメモリを食いすぎるし、プログラムで動的に作成したリソースの復元が不可能
2はリソース管理クラス自体がファイル読み込みなどの機能を備えなければならず、
巨大なクラスになってしまう上に、暗号化ファイルなどのサポートも
管理クラスで行わなければならず、アプリケーションごとに修正を加えなければ
ならなくなってしまう。

何かいい妥協点か、第3の方法とか無いでしょうか?
それとも、ここを汎用化しようと言う考え自体間違っているのでしょうか?

457 名前:名前は開発中のものです。 :02/05/19 03:29 ID:???
2の方法でいいと思うよ。いまどうやってロードしてるわけ?
外部の関数呼べばいいじゃん なにもリソースクラス内に読み込みのコード書く必要ないじゃん

規模にも寄るけど、アマチュアレベルなら別にメモリに保存でいいと思うよ。
VRAMに入るくらいだから数Mでしょ

458 名前:名前は開発中のものです。 :02/05/19 03:47 ID:???
>>457
2だとリソースマネージャがローダなりファイルクラスを知らなければならないでしょ?
ファイルクラスのような低レベルのクラスまで含むとなると、
一種のフレームワークを形成することになってしまい、クラスの独立性が保てなくなる。

ローダを実装するにしても、すべてのリソース取得はマネージャを通すので、
結局マネージャ専用ローダとなり、マネージャに機能を実装するのと変わらなくなる。

って、ローダのフレームワークを提供すればいいのか・・・
クラス図書いて検討してみます、ありがとでした。

459 名前:457 :02/05/19 04:20 ID:???
むしろ、ファイル管理もリソースクラスでやらせるように作るけどな

クラスの独立性ったって低レベルなモノほど切り離せないでのでは?
ロードクラスの基底クラスを作って抽象化すればいいんちゃうん?

460 名前:名前は開発中のものです。 :02/05/19 04:25 ID:???
>>459
それがそうもいかないんですよ。
GDI/OpenGL/DirectXクラスをインプリメントしてるんですが、
DirectXのロストってのが特殊すぎてどうしようもないんです。

グラフィックスサブシステム周りを大きくしていくと、
他の箇所に影響が出まくりなんで、困っちゃうんです。

461 名前:名前は開発中のものです。 :02/05/19 04:37 ID:???
>>460
DirectXのバージョンは?

462 名前:名前は開発中のものです。 :02/05/19 04:39 ID:???
8.1です。

463 名前:457 :02/05/19 04:40 ID:???
俺も、GL&DX対応させてるよ。コチラも基底クラスを作って
Core->Resotre(pMesh)
グラフィックエンジン毎に専用のリストア関数書けばいいんじゃないの?
MeshやTextureクラスにはファイル名とか、頂点バッファのポインタいれてさ〜

リソースクラスに、現在使ってるエンジンのポインタを持たせて
for(全部だゴルァ)
core->Restore(*)
とかしてる

464 名前:名前は開発中のものです。 :02/05/19 06:04 ID:???
>>456
俺は2の方法だよ。
つーかGDIまでサポートするよう作ってるなら
Direct3Dは自動リソース管理にして
ロストそのものを無くした方がよくない?

465 名前:名前は開発中のものです。 :02/05/19 06:08 ID:???
DXのロスト回避ってどこまで信用できるようになったの?
毎回、手が入れられてるよね

466 名前:名前は開発中のものです。 :02/05/19 06:25 ID:???
>>464
こんな便利な機能があったんですね。
鬱だ・・・・
逝ってきます

467 名前:名前は開発中のものです。 :02/05/19 06:28 ID:???
>>465
VRAMに格納出来て、画面モードの変更などにより
消失する可能性があるVバッファやテクスチャなどのリソースは
全てIDirect3DResource8から継承されてるんだけど、
こいつは作成時にD3DPOOL_MANAGEDフラグを設定してやれば
D3Dが勝手にメインメモリにコピーを作ってくれて
消失した場合自動でリロードしてくれる。
よって論理上だがロストは皆無にすることが出来るようになった。
プリロードや優先レベルの設定も出来るのでパフォーマンスの問題も
殆ど無いと思う。やっぱ問題は精神衛生上的なものか。w

468 名前:名前は開発中のものです。 :02/05/19 10:27 ID:???
DirectX8のヘルプ流し読みしてみたんだけど、
テクスチャのサイズが2^nで無ければならないと言う記述が見あたらないんだけど、
もしかしてこの制限なくなったの?

469 名前:名前は開発中のものです。 :02/05/19 10:47 ID:???
カード依存だけど、とっくに無くなってるよ
ただしパフォーマンス的には2^nが有利

470 名前:名前は開発中のものです。 :02/05/19 13:00 ID:???
2^n以外ではミップマップが使えないよ。
スクリーン等倍のフルシーンエフェクトやスプライト専用だね。
あと、テクスチャ圧縮も使えないみたい。

471 名前:名前は開発中のものです。 :02/05/19 13:11 ID:???
やべー趣味でやってるから、ミップマップなんて対応した事ないよ
あれって自動でやってくれんの?
つーか どーいう判定でテクスチャサイズ選ぶか基準かヘルプ書いてある?あんまみたことないんだけど

472 名前:名前は開発中のものです。 :02/05/19 13:18 ID:???
mipmapってテクスチャのLODのこと?

473 名前:名前は開発中のものです。 :02/05/19 14:41 ID:???
>>471
>どーいう判定でテクスチャサイズ選ぶか基準かヘルプ書いてある?
日本語が意味不明

474 名前:名前は開発中のものです。 :02/05/19 14:46 ID:???
カメラ〜オブジェクト間の距離でサイズ設定すんでしょ?
例えばどの位距離が開くと1段サイズ落すとか そーいうのはどういう条件なのかな と

475 名前:名前は開発中のものです。 :02/05/19 15:26 ID:???
>>470
ヘルプには正方形じゃなくても良いって書いてあるよ。

476 名前:名前は開発中のものです。 :02/05/19 15:33 ID:???
誰も正方形の話なんかしてない

477 名前:名前は開発中のものです。 :02/05/19 15:59 ID:???
>>476
ゴメンゴメン勘違いしてた。w

478 名前:名前は開発中のものです。 :02/05/20 01:15 ID:???
>>474
それはDirectXは関係ない。ビデオチップ側の処理。
チップによって結果が変わるよ。

479 名前:名前は開発中のものです。 :02/05/21 02:00 ID:???
どうも
c:\DXSDK\INCLUDE\d3dx8math.h(259) : error C2065: 'UINT_PTR' : 定義されていない識別子です。
c:\DXSDK\INCLUDE\d3dx8math.h(259) : error C2146: 構文エラー : ')' が、識別子 'p' の前に必要です。
c:\DXSDK\INCLUDE\d3dx8math.h(271) : error C2146: 構文エラー : ')' が、識別子 'p' の前に必要です。
cl.exe の実行エラー

480 名前:名前は開発中のものです。 :02/05/21 02:01 ID:YNgZ7oAU
↑エラーが出てコンパイルできなくて困っています。
どうすればいいんでしょうか?

481 名前:名前は開発中のものです。 :02/05/21 02:12 ID:???
エラー通りだろ。
先にCの勉強しろ。

482 名前:名前は開発中のものです。 :02/05/21 02:28 ID:???
新しいPlatform SDKを入れろ

483 名前:名前は開発中のものです。 :02/05/21 04:50 ID:???
>>481
言ってることはもっともだが、あまり門前払いしすぎるのも
この板の発展にとって良くないと思う。

>>480
UINT_PTRっていう型をコンパイラに知らせてないのが原因。
手っ取り早く言うと、必要なヘッダファイルが includeされていない。

typedef unsigned __int64 UINT_PTR, *PUINT_PTR;
この1行を、自分のソースの適当な場所に追加してみろ。

俺の記憶違いかもしれんが、BorlandのコンパイラからDirectXを使おう
としたとき、このエラーが出たような気がする。

484 名前:名前は開発中のものです。 :02/05/21 07:16 ID:???
>>471
>どーいう判定でテクスチャサイズ選ぶか基準かヘルプ書いてある?
>>474
>カメラ〜オブジェクト間の距離でサイズ設定すんでしょ?
>例えばどの位距離が開くと1段サイズ落すとか そーいうのはどういう条件なのかな と

SDKのヘルプ [Enumerated Types]→[D3DTEXTUREFILTERTYPE] に少し書いてある。

DeviceCapsを調べた上で

アプリケーション側で用意したMIPMAP用画像データを
テクスチャサーフェスに転送、あとは例えば
SetTextureStageState( ステージ番号, D3DTSS_MAGFILTER, D3DTEXF_LINEAR );
SetTextureStageState( ステージ番号, D3DTSS_MINFILTER, D3DTEXF_LINEAR );
SetTextureStageState( ステージ番号, D3DTSS_MIPFILTER, D3DTEXF_LINEAR );
のように糞真面目に設定すれば、おおむね同じ出力は得られる。
リファレンスラスタライザの出力と若干違いが出るだろうが
これはハードウェアレンダラの怠慢なので仕方が無い。

でも、MIPMAPを自動生成にまかせたりフィルタ設定をデフォルトのままにすれば
ビデオカードのドライバ設定が適用される。当然、環境によっては出力がだいぶ
変わるだろうが、それはアプリケーション側の怠慢なのだから改善可能。(の場合が多い)

485 名前:名前は開発中のものです。 :02/05/21 07:21 ID:???
テクスチャとかサーフェースのダーティって何?
マニュアルに用語解説もなくサッパリなんだけど

486 名前:名前は開発中のものです。 :02/05/21 07:22 ID:???
>>483
typedef unsigned __int64 UINT_PTR, *PUINT_PTR;
これは64bitの環境のみ
32bitのwindowsだとUINTです

487 名前:名前は開発中のものです。 :02/05/21 07:59 ID:???
>>485
Dirty = みだらな、下品な
つまりはそういうことだ!!

488 名前:名前は開発中のものです。 :02/05/21 08:03 ID:???
>>487
そんなこと言われても意味が分かりません。
ダーティ領域を追加すると淫らなテクスチャが出来上がるんですか?

489 名前:名前は開発中のものです。 :02/05/21 08:16 ID:7XvRBffw
>>483
どうもありがとうございます。助かりました VC++5とDirectX8の組み合わせだとServicePack3
も必要だったみたいです

490 名前:名前は開発中のものです。 :02/05/21 08:26 ID:???
ダーティって普通は データーの改変が行われた状態の事だな
ワープロなんかでSAVE後、編集で内容が変わった状態

491 名前:名前は開発中のものです。 :02/05/21 08:33 ID:???
素直にmodifiedって言えよー

492 名前:名前は開発中のものです。 :02/05/21 08:39 ID:???
>>491同意

493 名前:名前は開発中のものです。 :02/05/21 08:46 ID:???
DirectX8ラッパー作るのものすごく鬱だ
DirectX自体がよくできているので、基本的にメソッドをそのまま通すことになり、
ラッパーを作ること自体が無意味に思えてならないよ

494 名前:名前は開発中のものです。 :02/05/21 08:54 ID:???
そのまま通すような、シンプルな構造だからでしょ

オブジェクトの描画順とか、コントロールするにはラップ必須

495 名前:名前は開発中のものです。 :02/05/21 08:59 ID:???
いんや、描画順の制御はまた別のレイヤーで行うので、
DirectXはそれ自体で独立したモノとして作ってるので。
DX8自体は単なるラスタライザとして使う設計なんだけどね。

496 名前:名前は開発中のものです。 :02/05/21 13:37 ID:???
<ヽ`∀´>・・・。

497 名前:名前は開発中のものです。 :02/05/22 06:04 ID:???
Direct3DとOpenGL両対応にするとか、
DirectX9になったときの違いを吸収しやすくするとか
じゃないと意味ないということか

498 名前:名前は開発中のものです。 :02/05/22 23:31 ID:???
質問、当方DirectX7でプログラムしてるのですが、
絵の透過処理ってどうすればいいのでしょうか?

499 名前:名前は開発中のものです。 :02/05/23 00:11 ID:???
>>498
カラーキー使えばいいんじゃないの

500 名前:498 :02/05/23 00:14 ID:???
>>499
絵の半透明処理と言った方がよかったかな?
転送時に転送先サーファイスにANDしながら転送するには
どうしたらいいのかと・・・


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.