DirectX総合スレ (Part2)
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
04/09/22 23:30:32ID:anobjZYP基礎的な質問+高度な質問も簡潔かつ簡単に答えることをモットーにして頂き
このスレの回転を早めて常にアクティブなスレにしたいと思っております。
このスレに質問等を書かれる方はまず最初に自分でしっかりと調べたのちに聞かれることをお願いします。
質問に対する答えも簡潔に出来る限りわかりやすくお願い致します。
テンプレは >>2以降で
0069名前は開発中のものです。
04/10/02 14:21:35ID:kghZkJk+いや、塗りの計測はそれじゃ駄目なんだよ。(俺経験)
俺のプログラムでも単に描画される物体を小さくしただけでは速度に違いはでない。
でもちゃんとしたゲーム画面になると圧倒的に塗りの方が重くなる。
だから、重くなるところが違うと思うんだよね。
単に一度の塗りでZバッファに素直に描画される物体じゃ重くならないと思うんだよね。(予想だけど)
二回目の塗りが存在するかどうかで速度が違うと思うんだよね。
で、実際のゲームだと3回目4回目なんてのが余裕であるからどんどん重くなってくと思うんだよね。
そういうはかり方をしないと駄目だと思うんだけど。
塗りだし。
0070名前は開発中のものです。
04/10/02 14:32:19ID:W9zE2lsgまあ描画以外の処理や、画面クリアの処理に比べて、まだ、
塗りつぶしの影響が、少ない範囲に収まってたんじゃないかな?
どんなゲーム作るかや、どんなコード書くかは人によって違うけど、
ゲームが完成に近づくにつれ、影響が見えてくると思われ。
0071名前は開発中のものです。
04/10/02 14:41:06ID:GmFT9ijkだからそういう測り方云々じゃなくて、自分で作っているプログラムの話をしているのに、
何故全然別の方法を持ち出して文句を言ってくるのか。
しかもちゃんとしたゲームなんて曖昧な定義ので、思う思うって、
思うじゃなくて、自分で自分なりの条件で測ればいいだろう。
何度も言うが自分の使用している範囲内では、全く影響が出なかっただけ。
なぜ自分で作ったものでは、実際にこういう影響が出たという言い方が出来ず、
思うとかいう想像だけの言い方になるんだろう?
0072名前は開発中のものです。
04/10/02 14:42:44ID:kghZkJk+問題はαと2度塗りを考慮してるかどうかだけなんだが。
007366
04/10/02 15:07:25ID:6KqlFYO1∧_∧ ∧_∧ ∧_∧
(-@∀@) (-@∀@) (-@∀@)
⊂朝⊂ ) ( つ朝つ ⊂_へ朝 つ
く く く ) ) ) (_)/
(_(_) (__)_) 彡(_)
0074名前は開発中のものです。
04/10/02 15:46:56ID:mntHwQIk0075名前は開発中のものです。
04/10/02 16:02:38ID:UyWl8e7h0076名前は開発中のものです。
04/10/02 16:14:16ID:qcfwtjoA0077名前は開発中のものです。
04/10/02 16:28:36ID:K6Fxfyjf見たい、何てゲームよ
0078名前は開発中のものです。
04/10/02 17:40:13ID:bhmkR8G80079名前は開発中のものです。
04/10/02 18:47:28ID:PPEbOAU3あとオナニーが多い奴
0080名前は開発中のものです。
04/10/02 22:14:04ID:W9zE2lsgDOUBLE-S.T.E.A.LってXBOXのゲームだった
ttp://www.daionet.gr.jp/~masa/column/2002-09-22.html
0081名前は開発中のものです。
04/10/03 09:36:24ID:n12YQbLvプログラム追加したり、演出を派手にしていくうちに
どんどんFPSが落ちてきて、終いにゃコマ送りみたく
なっちまって悲しくなるな。
0082名前は開発中のものです。
04/10/03 09:42:15ID:E0OI59Rz悲しい時〜 (悲しい時〜)
最初は快適だったのに 作っていく内に
重くなって コマ送りになった時〜
悲しい時〜 (悲しい時〜)
最初は快適だったのに 作っていく内に
重くなって 動かなくなった時〜
0083名前は開発中のものです。
04/10/03 12:19:28ID:p8+59llkDirectX9を使用して2Dゲームを作っているんだが、DirectDrawの
サーフェス周りが7と9で変更されたんか?
Bltのなかにアルファブレンド関係が増えてるし、IDirectDrawSurface7じゃなく
IDirectDrawSurfaceになってる。
これってアルファブレンドが2Dで出来るようになったって事?
それだったらとてもありがたいんだが・・・・
この辺の情報を知ってる人、マジで教えてください。
0084名前は開発中のものです。
04/10/03 12:31:28ID:ENu5Wheg0085名前は開発中のものです。
04/10/03 13:05:03ID:E0OI59RzSprite使うか
ポリゴンに貼り付けるか
しないといけないらしい。
008683
04/10/03 13:14:16ID:p8+59llkレスありがトン。
いや、クライアントの意向でノーパソでも動かんといけんのよ。
で、3Dは全部捨ててくれと・・・
アルファブレンドをアセンブラで作って直接メモリ書き直ししてるけど、
やっぱり遅いし。DirectX9のヘルプみてるとBltにアルファ関係が追加
されてたから誰か使ってみたとか、情報を知ってるかと思ってカキコした
しだい。
D3DXCreateTextureFromFileEx使いたいんだが、こいつは256ピクセルの
倍数の正方形でメモリ使ってくれるから馬鹿ほどメモリ使ってくれるし・・・
ということで引き続き情報をください
008785
04/10/03 13:21:43ID:E0OI59Rzスマンわからん・・・orz
0088名前は開発中のものです。
04/10/03 13:39:31ID:goUHWgnFBltでアルファブレンド可能かどうかはDDCAPS調べればわかる
008983
04/10/03 14:10:55ID:V9xbK4hhイヤ、可能になってる。
でもLPDIRECTDRAWSURFACE7からLPDIRECTDRAWSURFACEになってる
だからかわったのかなぁと・・・
009083
04/10/03 14:13:43ID:V9xbK4hhいますべてを見直してLPDIRECTDRAWSURFACEでCreateSurfaceをすると
エラーになってしまう orz
もちろん、DirectDrawCreateExもIdirectDraw7ではなくIdirectDrawで
作成してます。
0091名前は開発中のものです。
04/10/03 14:23:53ID:MAk8fWp6別に7で作っても9上で動くと思うが?
9にしか無い機能が必要なのか?
0092名前は開発中のものです。
04/10/03 14:55:07ID:LV1LyR630094名前は開発中のものです。
04/10/03 15:22:20ID:Bvb6Q7++実装されている可能性がとても高いと言うか、殆ど間違いないので、
ノートパソコンでは動かないのでは?
0095名前は開発中のものです。
04/10/03 15:32:52ID:1NQr4HuE同感。>>92みたいに、割り切るならとことん割り切るべき。GDI+でもいいし
009683
04/10/03 15:54:30ID:V9xbK4hhやっぱそうかなぁ。クライアントがキャラをクロスフェードで!って・・・
そのくせ3D使うな!だから。。
メモリ直接アクセスのアセンブラを高速化するしかないか。。
ありがとうございました。
でも引き続きいい情報があれば教えてください
0097名前は開発中のものです。
04/10/03 15:57:44ID:1NQr4HuEエロゲーやる人がクロスフェードなんて求めそうには思えないが
今更アルファブレンドの高速化なんて実のない努力やめようぜ
0098名前は開発中のものです。
04/10/03 18:33:10ID:J+ulw6170099名前は開発中のものです。
04/10/03 19:31:38ID:gn7+412+客に出すプログラムを組むという時点で終わっている気がするが。
0100名前は開発中のものです。
04/10/03 19:32:14ID:kGHyfdaEこれ見て
0101名前は開発中のものです。
04/10/03 19:46:28ID:goUHWgnF悲しいかなエログラマは大半がこの程度のレベル。
010283
04/10/03 19:52:43ID:V9xbK4hhそういわれると身もフタもないが・・・
コンシューマの人間なんでPCあんまりわかんないのよ
何とか自作アルファブレンドロジックが32msec処理で
ストレスなしに使えるところまでもってこれたんでこれで
行くことにしますわ
0103名前は開発中のものです。
04/10/03 20:33:15ID:YuWeV3dx俺も消費者だよ
0104名前は開発中のものです。
04/10/03 20:56:06ID:/YDqJMMg0105名前は開発中のものです。
04/10/03 21:06:53ID:Dyx3/WTx0106名前は開発中のものです。
04/10/03 21:32:23ID:4V97zk6L何か、特別なソフトとかいるんでしょうか。
マイクロソフトの、C++?というソフトでしょうか?
あと、やるとしたらどんな専門知識が、いるんでしょうか。
初心者ですが、よろしくお願いします。
0107名前は開発中のものです。
04/10/03 21:37:33ID:kGHyfdaE0108名前は開発中のものです。
04/10/03 21:40:44ID:/YDqJMMgつまり、COMを扱える言語またはそれに類するi/fが用意されている環境であれば
使用できる。
0109名前は開発中のものです。
04/10/03 21:43:46ID:YaD7v2a+やっぱ>>107と同じく、本を買うのが確実だと思う。
SDKとサンプルプログラムの入った、付録CDとかついてるし。
あとは、コンパイラに何を用意できるかの金銭問題だな。
0110名前は開発中のものです。
04/10/03 22:05:42ID:AiFGmZy+0111名前は開発中のものです。
04/10/03 22:18:52ID:gn7+412+使われている数は圧倒的なので、本人の意志無関係でエログラマーの称号授与。
0112名前は開発中のものです。
04/10/03 23:17:39ID:IMKALZnB>コンシューマの人間なんでPCあんまりわかんないのよ
いつのコンシューマですか?
最近のコンシューマは3Dと切っても切れない関係で、
3D関係の情報をチェックしてると最新のDirectXやグラボのことなんかもよく見かけるから、
その言い訳は結構見苦しいので、本当だとしてもヤメレ
011383
04/10/04 00:18:41ID:mmTPot1Lえと、私が教えてほしいと言ったことはDirectX9に含まれている
DirextDrawとDirextX7のDirectDrawでDirectX9ではアルファ
ブレンドが制御できるようになったみたいだが、このあたりを経験
された人がいればアドバイスをいただきたいということなんですが。
言い訳に聞こえたらしょうがないけどさ。
0114名前は開発中のものです。
04/10/04 00:42:52ID:s77QHxA6>>113
DirectX8以降より
DirectDrawとDirect3Dは統合されDirectGraphicsになってます。
DirectX9のDirectDrawっては
どんな物だと思っているのか詳しく説明して欲しい。
0115名前は開発中のものです。
04/10/04 00:46:02ID:rxXTG6avなってない。大嘘書くな。
0116名前は開発中のものです。
04/10/04 00:47:45ID:annB/eyHだとしたら細かすぎか…
0117名前は開発中のものです。
04/10/04 01:00:56ID:ky53/sSK今、DirectX9のヘルプ見てみたが、そのIDirectDraw関係はDirectShowカテゴリの
マルチメディアストリーミングインターフェイスに記述されてる。
見てみれ。
ちなみにDirectDrawExはないよ。
(このIDirectDraw、バージョン的になんにあたるんだ?)
0118名前は開発中のものです。
04/10/04 01:42:18ID:OM8sW/UXノートでもここ1〜2年のなら3Dがまともに動くグラフィックチップが載ってるぞ?
その顧客がいう「ノートのスペック」の下限がわからない限りなんともいえんなあ。
0119名前は開発中のものです。
04/10/04 13:05:11ID:5C7eEtLc0120名前は開発中のものです。
04/10/04 14:00:51ID:nbPvQsS1有名なエロゲエンジンはことごとく画像演算にDirectX使ってないらしいね……。
0121名前は開発中のものです。
04/10/04 14:11:06ID:r/uVIviHグラボに依存しない方向なんだろうな
高度な機能を使うと見た目が飛躍的によくなるがユーザを選んでしまうからなぁ
あと、最近のイパーン人はデスクトップよりノートを選ぶ人も少なくないんだけど
ノートで3D対応機種ってなっていても実際はDirectX7程度のものもあるからなぁ
もちろんまともなグラフィックチップ載っているものもあるんだが
0122名前は開発中のものです。
04/10/04 16:16:26ID:C1CICipjトランスフォーム済頂点で2Dやるくらいなら普通にこなすんじゃね?
チップセット内蔵のグラフィックとかも意外と性能高いっすよ。
一昔以上前のノーパソチップだとリファレンスラスタライザでしか
動かなかったりするチップも多いですが...
0123名前は開発中のものです。
04/10/04 17:41:08ID:r/uVIviHいや初心者質問スレでもあったけどRADEON IGP345Mとか機能不十分のようだから、
「最近の」でも全てがとは言えないと思う
0124名前は開発中のものです。
04/10/04 17:44:34ID:0nRK6gjdエフェクト系の画像処理なら、何が入っているかわからないGPU依存
のハード機能使うより、自力でほぼ問題ない性能を発揮するCPU用の
コード書いた方が確実だからね。高速なメインメモリにDIB用フレー
ムバッファを取ってそこで演算した方が、処理速度の「最低線(最悪
の環境での処理速度)」を引き上げられる。
0125名前は開発中のものです。
04/10/04 17:48:14ID:YRi3PMHCDX7世代の3Dゲームなら問題なく動くだろう。
0126名前は開発中のものです。
04/10/04 17:52:16ID:YRi3PMHC無限遠のZ値を求める計算はどうなるの?
z_far / ( z_far - z_near )であってます?
0127名前は開発中のものです。
04/10/04 21:29:21ID:bl0Of2m3無限って言うくらいだからどこまでもあるんだろ
0128名前は開発中のものです。
04/10/04 21:49:25ID:a4FuiOHFhttp://pc5.2ch.net/test/read.cgi/gamedev/1094627404/13n
↑の参照先BBSの内容だが、どういうゲームで「どう快適でない」のか
全く触れていないので、要するに主観情報のみであり評価不能。
RadeonIGP345Mとほぼ同程度の3D性能を持つビデオチップは
MobilityRadeonやRADEON無印とかVE。DirectX7世代。
(IGP345MはUMAなのでその点がどう影響するかは知らない)
これでだいたいの性能は想像できるでしょう。
俺はMobilityRadeon+Pentium-M(1.1GHz)使ってるので参考までに書くと
3DMark2001は大体1800前後。
Quake3やUnreal Tournament世代のゲームは標準設定で快適に遊べる。
FFはカクカク。おそらく例のyahoo掲示板の感想書いた人はこの手のMMORPGを
プレイしたのではないかと想像する。
0129名前は開発中のものです。
04/10/04 21:49:27ID:5WdV+IREそこが無限遠だよ
0130名前は開発中のものです。
04/10/04 21:54:20ID:kL12U+paView空間上の視錘台を透視変換行列で変換すると
台形が直方体になるじゃない?
これのZ値の計算式は以下のようになる。
z' = z_view * z_far / ( z_far - z_near ) - z_near * z_far / ( z_far - z_near )
w' = z_view
z_viewproj = z' / w'
このz_viewを∞として、上の式に代入して因数分解すると以下のようになる。
z_viewproj = z_far / ( z_far - z_near )
これで正しいと思ったんだけど、ある資料では以下のようになっていて?みたいな。
うろ覚えではOpenGLとDirect3Dでは透視変換行列が違っていたような・・そのせい?
z_viewproj = ( z_far + z_near ) / ( z_far - z_near )
0131名前は開発中のものです。
04/10/04 22:23:53ID:7FGX5rbU0132名前は開発中のものです。
04/10/05 11:12:25ID:0jVYnly+いま一つ、利用目的がわからないんだけど、
これつかうと、何かのエフェクトが軽く作れるとか
面白い表現ができるとかすんの?
0133名前は開発中のものです。
04/10/05 11:29:14ID:C0CUDKhb今までのシェーダープログラムは、
float4 shaderMain( vertexIn vertex );
マルチエレメントテクスチャを使うと
struct fragmentOut
{
float4 data0;
float4 data1
float data2;
};
fragmentOut shaderMain( vertexIn vertex );
0134名前は開発中のものです。
04/10/07 23:11:19ID:hAPlnSnz0135名前は開発中のものです。
04/10/08 00:59:53ID:XSYDeohyこれ単に初代DirectDrawのインターフェイスそのままな気がするんだが。
83がこれのことを言っているのなら、そのアルファ機能は机上の空論でしかない。
しこしこアセンブラなりMMXなりで高速化してください。
0136名前は開発中のものです。
04/10/08 01:49:53ID:16IKlQptアルファ機能使うのに、アルファサーフェス作るかアルファ込みサーフェス作って転送毎に
アルファ値書き込む必要あるから、自前でつくったほうがいいんでないかと思った。
0137名前は開発中のものです。
04/10/09 03:08:46ID:/YCQZy36増えてないしDirectX9にDirectDrawなんてものはない。
一度公開されたインターフェースが同じ名前のまま機能が変わることもない。
DirectX9をインストールしていても、GameSDK〜DirectX8は使える。
君が新しいと思っているDirectDrawは太古の物だ。
0138名前は開発中のものです。
04/10/09 10:03:14ID:5XbefvOQEnglish
0139名前は開発中のものです。
04/10/11 00:21:39ID:yBosNnnpDirectXに使うテクスチャでアルファ値が入ってる画像を
フォトショップで開いて、直接各ピクセルのアルファ値って見れるのでしょうか?見れる場合、教えてもらえないでしょうか?
すいません。
0140名前は開発中のものです。
04/10/11 02:05:24ID:0GOi0Ldx割れ厨になっちゃうんだろうね。
0141名前は開発中のものです。
04/10/11 10:13:54ID:aLIRFHaPAdobeに電話して聞きなよ
0142名前は開発中のものです。
04/10/11 10:30:59ID:e+nbPJpi0143名前は開発中のものです。
04/10/11 16:44:56ID:fodZGKKIXfileを読み込み、ライティングを施してみたんですが、
テクスチャを貼っていないオブジェクトにはきちんとライトが反映されてるようなんですが、
テクスチャが貼られたオブジェクトにはライトが適用されなくて困ってます。
考えられる原因としてはどんな事があるでしょうか。
教えてください。お願いします。
0144143
04/10/11 16:49:16ID:fodZGKKI普通にDXで用意されてる
D3DLIGHT9のポイントライトとかスポットライト等です。
0145名前は開発中のものです。
04/10/11 16:55:31ID:J7gvAGdn法線は設定してあるか?
0146名前は開発中のものです。
04/10/11 17:18:51ID:1ZelzsvN>テクスチャを貼っていないオブジェクトにはきちんとライトが反映されてるようなんですが、
って書いてるんだが。
0147名前は開発中のものです。
04/10/11 17:24:14ID:1ZelzsvNとりあえずこれは確認しろ。
device.TextureState[0].ColorArgument1 = TextureArgument.TextureColor;
device.TextureState[0].ColorArgument2 = TextureArgument.Diffuse;
device.TextureState[0].ColorOperation = TextureOperation.Modulate;
0148名前は開発中のものです。
04/10/11 17:25:22ID:dsSryuB7その状態で何を答えろと?
0149名前は開発中のものです。
04/10/11 17:25:54ID:J7gvAGdnテクスチャを張ってあるオブジェクトと、張ってないオブジェクトは別物だろ?
テクスチャを張ってあるオブジェクトに、法線が設定されているかと聞いているのだが。
0150143
04/10/11 17:37:38ID:fodZGKKILightWaveのXfileエクスポーターを使ってるんですが、
その設定の問題だったようです。
「Replace surface color with texture」
のチェックをはずしたら上手くいった模様です。
0151名前は開発中のものです。
04/10/11 17:38:06ID:kosdyhsw0152名前は開発中のものです。
04/10/11 19:31:18ID:InZx0EkU0153名前は開発中のものです。
04/10/11 19:33:47ID:bx7zsKhl0154名前は開発中のものです。
04/10/11 19:39:30ID:Ad7T3sc50155名前は開発中のものです。
04/10/11 19:53:42ID:jqTCTr000156名前は開発中のものです。
04/10/11 21:04:30ID:pWZ8/i0yモーション付Xファイルは読み込めば、そのまま上手く動作しますか?
他に3dsMax以外でモーション付Xファイルを出力するツールてありますかね?
0157名前は開発中のものです。
04/10/11 22:05:42ID:gNEg0f9yまともにモーション付きX-Fileを出力できないです。
全てのボーンにウェイトマップをきっちり割り当てて
use weight map onlyを指定するといくらかまともに出力されるかも。
漏れは自作のコンバーター使ってます。
X-File出力できるツール(コンバーター)は
有名どころだとPolyTransとか?使ったことないですけど。
0158名前は開発中のものです。
04/10/11 23:45:03ID:pWZ8/i0y0159名前は開発中のものです。
04/10/12 03:07:17ID:GAKZ2Qt10160名前は開発中のものです。
04/10/14 00:01:52ID:2TDHP0D60161名前は開発中のものです。
04/10/18 02:01:54ID:g5wSND4n0162名前は開発中のものです。
04/10/20 18:13:21ID:zP6xl/RK用意してそこに色の情報を書き込みたいのですがLockなどを使うと思うのですが
よくわかりません。
空テクスチャに対してはどういったことをすれば色を書き込めるのでしょうか。
分かる方おりましたら教えていただけますか。
0163名前は開発中のものです。
04/10/20 18:20:16ID:bd6yug97t-potとかを参考に。
0164名前は開発中のものです。
04/10/20 18:36:36ID:+ZxZVXCe資料が豊富なほうがイイかな、とも思ってるんですが。
0165名前は開発中のものです。
04/10/20 18:41:41ID:bd6yug97英語版ヘルプとかでもC#の記述が多いし
0166名前は開発中のものです。
04/10/20 19:09:42ID:/mBmRgO3Cマガジンも日経ソフトウェアもC#の記事しかやらない。
ネタっぽく書くとこんな感じ。
C#>>>C++>>>(超えられない壁)>>>HSP>LGP>>>VB>>>(あの夏の思い出)>>>Delphi
0167名前は開発中のものです。
04/10/20 19:28:36ID://ogvlzz(あの夏の思い出)はもう少し↑だろ
0168名前は開発中のものです。
04/10/20 22:54:32ID:6K7KSXLzるんですがどうしてもスピードに問題があって10フレーム未満しかでないん
ですが何か改善策ありますでしょうか。
現在は毎回ロック・色書き込み・アンロックを繰り返してテクスチャを
書き換えてそれをポリゴンにはっつけてます。
■ このスレッドは過去ログ倉庫に格納されています