1 名前:デフォルトの名無しさん [2007/06/21(木) 00:03:46 ] ※回答する人も、質問する人も必ず読んでください これらに当てはまる人のための質問スレです。 1.C/C++は多少理解している。 2.最近DirectXを始めたばかり 3.SDKを見ても、Googleで検索しても、いまいち理解できない人 4.余計な雑談は不要ですよ 【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」「SDK見れ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する方 】 ・ どんな事で躓いているのか明確にしよう。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書こう。 ・ 回答して貰ったら、出来るだけお礼もしよう。
196 名前:デフォルトの名無しさん [2007/07/03(火) 22:37:32 ] D3DXMatrixTransformation2Dの引数の 3番目のFLOAT ScalingRotationにどんな値を入れれば正常に動くのかがわかりません。 MSDNにも載ってませんでした。 分かる方いらっしゃいますか?
197 名前:196 mailto:sage [2007/07/03(火) 22:44:01 ] すみません、言葉足らずでした。 スプライトの反転を実行したいのですが、スプライトの縮尺をいじると D3DXMatrixTransformation2Dの3番目の引数を変更しなければならないようで。 -1とかインクリさせてみたりしましたがイマイチ分かりません。 以上、お願いします。
198 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 00:02:40 ] ┌――――――――――――――――――――┐ |D3DXMatrixTransformation2D | └――――――――――――――――――――┘ ┌――――――┐ | Google 検索. | └――――――┘
199 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 01:54:45 ] >>196 そこには角度を指定できるけど、変な平行四辺形になるだけだから 使わなくていいわよ。
200 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 06:29:49 ] >>196 シアー変形させないなら、大人しく0.0を入れとけ。
201 名前:196 mailto:sage [2007/07/04(水) 21:41:02 ] >>199-200 回答ありがとうございます。 また何度か試してみましたが、無理でしたのでポリゴン使ってみます。 SpriteのDrawの引数が変わってからめんどくなりましたな。
202 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:31:52 ] DirectXのスプライト自体初心者向けのだからね。 1から教えるならスプライト描画なんて使わさせんが。
203 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 19:26:13 ] スプライトはゲーム用途で使うもんじゃねーな
204 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:24:26 ] 初心者用のDirectXの解説書がスプライトを使っているケースが多い。 別に意図的に使っているなら問題ないが、勉強するため本に沿ってやってるとスプライトから技術が進歩しなくなる。 DirectXを始める前に数学を学んで3Dの概念を理解してから、3D(ポリゴンの描画)→3D上での2Dの描画と進めるべきだよな。 本によってはゲームのアルゴリズムが載ってたりするけど、今ここで読者に伝えなきゃいけないのかと問いかけたい。
205 名前:デフォルトの名無しさん [2007/07/05(木) 21:32:10 ] 今まさにID3DXSprite使わないで2D描画しようとしてます。射影マトリックスを D3DXMatrixOrthoOffCenterLH(&m_proj, 0, vp.Width, vp.Height, 0, 0.0f, 1.0f); として今の所うまくいってますが、この関数の意味はあまり理解していません。 座標変換済み頂点を使うより楽な気がするんですが、デメリットありますか?
206 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:52:47 ] 2D描画ならTL頂点使えよ。 スクリーン座標を指定するだけ(あと頂点カラーとかUV値はご自由に)だから、わざわざ変換行列を使う必要ないし。
207 名前:やっくん [2007/07/05(木) 21:52:58 ] 学校の課題を家でしようと思ったのですが、DirectDrawの設定がうまくいきません!! ディレクトリの所で「c:\mssdk\include」「c:\mssdk\lib」をちゃんと入れたのに、なぜかDirectDrawSurfaceが使えないのです(泣) 誰でもいいので、アドバイスをくださいお願いします!!
208 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:59:25 ] >>207 開発環境とエラーコード
209 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:13:31 ] >>206 アニメーションする時は座標を直接書き換えorポリゴンを作り直しでしょうか?
210 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:15:54 ] UVでアニメーションじゃないの
211 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:37:29 ] >>210 ありがとうございました
212 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:43:00 ] >>207 そのフォルダに目的のものは入っているのか?
213 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:06:14 ] 合成なし SetRenderState(D3DRENDERSTATE_ALPHABLENDENABLE,integer(false)); 通常合成 SetRenderState(D3DRENDERSTATE_SRCBLEND,integer(D3DBLEND_SRCALPHA)); SetRenderState(D3DRENDERSTATE_DESTBLEND,integer(D3DBLEND_INVSRCALPHA)); 加算合成 SetRenderState(D3DRENDERSTATE_SRCBLEND,integer(D3DBLEND_ONE)); SetRenderState(D3DRENDERSTATE_DESTBLEND,integer(D3DBLEND_ONE)); 減算合成 SetRenderState(D3DRENDERSTATE_SRCBLEND,integer(D3DBLEND_ZERO)); SetRenderState(D3DRENDERSTATE_DESTBLEND,integer(D3DBLEND_INVSRCCOLOR)); 乗算合成 SetRenderState(D3DRENDERSTATE_SRCBLEND, integer(D3DBLEND_DESTCOLOR)); SetRenderState(D3DRENDERSTATE_DESTBLEND, integer(D3DBLEND_ZERO)); //モノクロでしか調べてませんが合成すると加算合成+減算合成の効果が SetRenderState(D3DRENDERSTATE_SRCBLEND,integer(D3DBLEND_INVDESTCOLOR)); SetRenderState(D3DRENDERSTATE_DESTBLEND,integer(D3DBLEND_ONE)); //反転 SetRenderState(D3DRENDERSTATE_SRCBLEND, integer(D3DBLEND_INVDESTCOLOR)); SetRenderState(D3DRENDERSTATE_DESTBLEND, integer(D3DBLEND_ZERO));
214 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:27:14 ] >>213 なんか変じゃね? それと実際使うには全部アルファでブレンド率調節できないと面倒じゃん
215 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:28:38 ] >>213 なんだよ・・・通常って・・・w 加重平均っていうんだ
216 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:51:13 ] 自作ライブラリのサンプルプログラムでしか使わないので 実用には興味がありません。
217 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:21:58 ] >>216 だったらなおさら加算ブレンドは客寄せになるからマスターしておけ
218 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 01:40:46 ] >>213 減算合成がおかしい。 減算は1パスではSRCBLENDとDESTBLENDだけでは設定不可能。 BLENDOPで減算合成が可能になる。 (BLENDOP無しだと3パスで可能)
219 名前:デフォルトの名無しさん [2007/07/06(金) 21:29:38 ] Microsoft Visual C++ 6.0を使っていて、エラーコードが error C2065: 'LPDIRECTDRAWSURFACE7' : 定義されていない識別子です。 で、ディレクトリのインクルードに「c:\mssdk\include」ライブラリに「c:\mssdk\lib」を入れたのですが、DirectDrawが使えません・・・・・・(泣) 初心者な質問ですいません。でも、どうしても課題を家でやりたくて、お願いします教えてください。
220 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:42:02 ] >>219 リストの一番上に入れた?
221 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:47:54 ] DirectX7かよw
222 名前:デフォルトの名無しさん [2007/07/06(金) 21:50:57 ] >>220 はい、入れました。学校では普通にできたんですけど、何度やってもエラーが出るばかりで・・・・・・(泣) 何かコンピューターに至らない所でもあるのでしょうか?
223 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:54:51 ] 一番上に入れても駄目なら分からんな。 一番下に入れるとVC6ではデフォのライブラリ(DX3かな?)が 先に検索にヒットしてしまうから、駄目だったりするが。
224 名前:デフォルトの名無しさん [2007/07/06(金) 21:56:53 ] >>223 お答えありがとうございます。 一つ質問なんですが、実はVC6は海賊版でそれは関係あるのでしょうか?
225 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:59:36 ] SDKが入っていなかったりして
226 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 22:05:09 ] >>224 そういう事をここで書くなよ・・・ ていうかVC++2005落としてくれば
227 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:44:36 ] 学生ってこんなのばっかりか。折角学生証があるならアカデミック版買えよ
228 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 04:00:54 ] >>224 とんでもねえカミングアウトだなオイ
229 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 06:24:24 ] >>224 師ね泥棒
230 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 07:26:10 ] >>224 DirectX7を無料でやりたかったら、Migwでも入れろ、ボケ。
231 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 13:12:55 ] >>224 とりあえず、通報はしといたから。
232 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 13:45:03 ] >>224 諸々の事情でVC6を使わざるを得ない、ってのなら理解できるが、 諸々の事情で海賊版、ってのはどう弁明したところで違法以外何者でもないぞ
233 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 18:25:15 ] DirectX Texture Tool でDDSファイルを作りたいのですがうまくいきません。 白黒のhoge_a.jpgを同ディレクトリに作ってhoge.jpgをオープンしてるのですが、 アルファチャンネルを読み込みません。 画像を変えても同じでした。 どこがおかしいのでしょうか?
234 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 19:51:48 ] 憶測ですまんが、JPEG形式が駄目なんじゃね。 PNGかBMPで試したらどだろ。
235 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 20:13:24 ] >>234 bmpでいけました、ありがとう。
236 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 03:25:42 ] Expressっていう無料版じゃだめなん?
237 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 12:43:20 ] アンカくらい付けれ
238 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 19:26:27 ] DirectShowの質問もここでいいですか?
239 名前:デフォルトの名無しさん mailto:sage [2007/07/09(月) 19:37:53 ] 悪くはないが、同じム版に専用スレがあって 詳しい住人が多いから、そっちの方がいい。 まあみんな似たようなスレ巡回してんだけどね
240 名前:デフォルトの名無しさん [2007/07/10(火) 17:22:09 ] 横170×縦250の テクスチャー読み込んで、スプライトで表示したら、 勝手に255×255にされたんだけど、これは仕様なのかな?
241 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 17:42:19 ] 仕様でつ 170*250→256*256
242 名前:デフォルトの名無しさん [2007/07/10(火) 18:43:12 ] DirectX8の時は自由なサイズ使えたんだけどなあ。 グラボとかによるのかな
243 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 19:53:59 ] DX8から今でもスプライトなんか使い続けるなよな。 なんで重くて汎用性の無いものを何年も使うのか分からん。
244 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 20:44:10 ] そもそもDirectXにスプライトなど無い。
245 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 20:51:00 ] あるにはあるけど着飾ったものだからね。 だから重いし汎用性も薄い。
246 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 21:10:37 ] だから無いって。
247 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 21:10:51 ] スプライトで十分な用途ならわざわざポリゴン使うより生産性高くていいじゃん
248 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 21:17:07 ] ポリゴンに最適化されてるGPUにそりゃないべ つうか板ポリの方が汎用性たかくね
249 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 21:18:43 ] 無いものをどうやって使うつもりなんだ?
250 名前:デフォルトの名無しさん [2007/07/10(火) 21:23:25 ] JPEGファイルで抜き色(透明にする色)を指定したいのですが、上手くできません。 現在、D3DXCreateTextureFromFileExを用いています。 BITMAPファイルなら上手くできるのですが・・・ どうしたらJPEGで抜き色を指定できますか?教えてください。
251 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 21:53:41 ] マスクを作るとか、jpgなら思い切ってddsにするとか
252 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 22:11:14 ] そういう用途にjpegは向いていない。 というわけで、jpegについて調べてみると勉強になると思う。 "jpeg ノイズ" とかで調べてみると情報が引っかかるだろう。
253 名前:デフォルトの名無しさん mailto:sage [2007/07/10(火) 23:25:46 ] でも別にしたい奴向けにできるようにしておいてもよさそうなもんだけどな てか、むしろjpegだけ弾くとか器用だよなw まあ、できるようにしておくとQ&Aで聞いてくる奴がいることを予想できるからあえて切ってるんだろうな まあ、jpegなんかマスクにしたら結果はあきらかだがな
254 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 00:04:50 ] >>250 テクスチャをロックして自分で該当部分のα値をセットすれば良いだけ。 悩む所など微塵もない。
255 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 00:09:30 ] SDKのテクスチャツールで頑張ってるとみた
256 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 06:17:12 ] このスレでスプライトっつったらD3DXのSpriteのことだべ。 誰も、厳密なスプライトアーキテクチャを指してなんてしゃべってないでしょ。
257 名前:デフォルトの名無しさん [2007/07/11(水) 09:30:50 ] D3DXのスプライト関数あるの知ってるくせに、自分の知識をひけらかしたいのか、したり顔で ____ / \ /\ キリッ . / (ー) (ー)\ / ⌒(__人__)⌒ \ <DirectXにスプライトはない! | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ /_ノ ヽ、_\ ミ ミ ミ o゚((●)) ((●))゚o ミ ミ ミ /⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\ /⌒)⌒)⌒) | / / / |r┬-| | (⌒)/ / / // だっておwwwwwwwwwwwwwwwww | :::::::::::(⌒) | | | / ゝ :::::::::::/ | ノ | | | \ / ) / ヽ / `ー'´ ヽ / / プログラマーってこういう空気読めない奴多いよなあ・・・
258 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 09:45:47 ] >>244 も>>257 も十分言いたい事は分かるから・・・ お互い空気読みつつ穏やかにいこうよぜ
259 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 09:47:13 ] 間投助詞ダブった、スマソ
260 名前:デフォルトの名無しさん [2007/07/11(水) 09:57:01 ] >>258 でも、マイクロソフト自らスプライトっていう表現使ってるのに、わざわざ 「スプライトじゃない!!」って言う奴は馬鹿じゃん しかも、質問に答えるわけでもなく聞いてもいない事を偉そうに言ってさ ま、俺もD3DXのスプライト機能は使ってないけど
261 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 10:37:04 ] そもそもID3DXSpriteをスプライトとか言っちゃうから、 スプライトとポリゴンを比較する>>247 みたいな馬鹿が出てくるんだよ。
262 名前:デフォルトの名無しさん [2007/07/11(水) 11:21:01 ] >>247 だって別に間違えた事言ってないでしょ スプライト関数用意されてて、それを使ってすぐ表示出来るんだから生産性は高いでしょ インフォメーション程度に2D表示するだけなら、スピードなんて遅くたっていいし。 2DゲーでID3DXSprite使うのはどうかと思うけど、ID3DXSpriteをスプライトと言うのは間違いではないよ 昔のゲーム機についてた所謂”スプライト”なんて、過去の遺物なんだから2Dとして表示する物を”スプライト”と言ってもなんの問題もないじゃん どうして、どーでもいい細かい事にこだわる奴が多いのかなあ・・・ こだわってるというよりは、知ってるくせに認めたくないと言うか・・
263 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 11:35:36 ] ポリゴンを使うID3DXSpriteとポリゴンを比較している時点で大間違いなんだよ。 そうやって間違いを認めずに繰り返すから、それを見た初心者が勘違いをして意味不明な質問をすることになる。
264 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 20:46:00 ] もしかするとID3DXSpriteの中身がDrawPrimitiveだということを 分かってない奴がいるのかもしれん。
265 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 22:47:09 ] D3DXってソース公開されてんの?
266 名前:デフォルトの名無しさん mailto:sage [2007/07/11(水) 22:59:01 ] ねえよ
267 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 02:58:17 ] ソースが公開されていなくてもPIX使えば必要な情報は十分わかるからなぁ。 頂点バッファ作成時の設定や更新頻度、DrawIndexedPrimitiveを呼ぶときのレンダーステート等。 「高レベル描画APIで十分ならわざわざプリミティブ描画APIを使うより生産性高くていいじゃん」 なら別に異論はないけど、元々スプライトってハードウェアのプリミティブ機能だっただけに、 「スプライトで十分な用途ならわざわざポリゴン使うより生産性高くていいじゃん」には違和感がある。 てか実際にDirect3DにはPoint Spriteって名のハードウェアスプライトが存在するし。 やっぱ誤解招きやすいと思うよ。
268 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 06:33:52 ] まあ、荒れるの承知で書くけど、PointSpriteはポリだぜ。 現在、ハードウェアスプライトを実装するメリットは無いし。 DirectXにはポリしかない。名前だけスプライト。 ただ、そんな事は100も承知で このスレでスプライト=DirectXの機能 or 自前の板ポリ の事なのは自明。 イチイチ「スプライトじゃない」とか言う意味は無い。
269 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 07:00:16 ] >>268 同意。 いちいちハードウェアスプライトの話をもってくる奴ウザスギ いくらなんでも空気読め無いにもほどがある
270 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 08:29:32 ] 間違っていることは明白なのに、素直に認められないのがプログラマのプライド。
271 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 12:58:13 ] >>268 >DirectXにはポリしかない。名前だけスプライト。 そういう意味で言ってるんじゃなくて、 「ポリゴンかスプライトか」という表現は、 プリミティブタイプにどっちを使うべきかみたいな議論でもありうるんだけど、 とにかく情報が欠落しまくりのネット上の議論だと 「スプライトってD3DXとプリミティブタイプのどっちのこと言ってる?」 と聞き直す羽目になることが多いという話。 ・点 + (ポイントスプライト) ・線分 ・三角形 のどれよ? と。まあ線分はありえんけど。 別に聞き直されるのがうざくなければD3DXのをスプライトと呼ぶのを止めはせんよ。 てか、ポイントスプライトって帯域圧縮効果はそこそこあると思うだけどな。 デモ用のパーティクルシステムとか結構ポイントスプライト使ってない? あれをハードウェアスプライトと呼びたくないなら別に構わんが。
272 名前:デフォルトの名無しさん [2007/07/12(木) 16:07:48 ] ここで 「DirectXのはスプライトじゃない」って言い張ってる馬鹿は、スプライトを狭義の意味で捉えてるだけなんだよね。 よーするに「ハードウェア機能としてのスプライトしかスプライト」しか認めないって言ってるだけ。 そもそも、スプライトって”表示画面のイメージパターン”っていう意味だから、DirectXでの表示もスプライトって言って構わない 古くさい考え方しか出来ない奴はファミコンとかX68000のゲームでも作ってろww
273 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 16:33:58 ] 誤解される表現をわざわざ意地になって使う奴って、何が楽しくてやってるんだろう?
274 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 16:37:51 ] いちいちスプライトという言葉に反応するやつは FM-TOWNSで「これはスプライトぢゃないっ!!!」とか言ってたやつだな
275 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 16:45:59 ] どうせ「スプライトっていうなー」言ってもみんな言うんだし、 ならD3DXのはスプライトでいいじゃんと思うんだけど、 >>268 のみたいに「ポイントスプライトはハードウェアスプライトじゃない」は違和感ある。 ドライバレベルで定義されてるんだしハードウェアでいいんじゃね? 何でそこだけやたら狭い定義を採用するんだと。
276 名前:デフォルトの名無しさん [2007/07/12(木) 16:48:34 ] >>273 だからさ・・・どう誤解するの? 今、ハードウェア機能のスプライト使っての開発なんてないだろ。板ポリかバッファにイメージデータの転送だろ。 2Dをスプライトって言って誰が困るのよ? くだらないこだわりしてる奴はただの老害
277 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 16:54:07 ] もう全部スプライトってことでいいよ。 DrawPrimitive使った板ポリ描画もスプライト。 BitBlt使った矩形転送もスプライト。 これで満足だろ?
278 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 17:08:46 ] >>275 そういやD3D10からポイントスプライト廃止だっけ。 まあGeometry Shaderでエミュレートできるからこその廃止とはいえ パフォーマンス大丈夫なんかいな。
279 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 17:17:00 ] アルファテストもシェーダで書けるからという理由でD3D10から廃止だしなぁ。 リセット感がすげえ。 【消えたもの】 ・固定機能頂点処理 ・アルファテスト ・ユーザークリッププレーン ・フォグ ・シェーダモードのGouraudとFlat ・D3DFILL_POINT ・TLVERTEX描画
280 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 17:29:56 ] >>277 背景と別レイヤーに見せかければソフトウエアスプライトと呼べるが、 単純に描画するだけではスプライトとは呼べない。 よって大間違い。
281 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 17:35:24 ] 初心者が関数とかインタフェイスをカタカナで書いて、 訳の分からない内容の質問をしているのを見かけるが、 結局こうやって勝手なカタカナ表記を使う奴がいるから真似をするんだろうな。 普通にインタフェイスの名前をそのまま書けばいいだけで、綴りに自信がなければ確認すれば済むのに。
282 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 17:54:33 ] >>280 あーBitBltでD3D9のStretchRectみたいなのを連想したんだな。 すまんね。 DirectDraw(+カラーキー)とかGDIのマスク描画みたいなのを想像してた。 当時もスプライト論争あったから。 GDIのBitBltでソフトウエアスプライトを実現する方法とか もはや古代技術になりつつあるけど。 でもこいつらも多分君の定義だとソフトウエアスプライトに入るはずなんで 広い心で入れてやってくれ。
283 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 19:40:36 ] おまえらスプライトの定義はよそでやれよ
284 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 20:36:16 ] 初心者が落とし穴にはまって騒いで本当うるさくて うざくてたまらないのがスプライトとカラーキーだ。
285 名前:デフォルトの名無しさん mailto:sage [2007/07/12(木) 20:45:14 ] カラーキーはDirectX以前の問題な気もするが。 いくら初心者スレでもC(C++)をある程度理解してたら途中に画像描画も通ってそうだけどな。
286 名前:デフォルトの名無しさん [2007/07/12(木) 21:52:30 ] 質問失礼します。 ビルド時に error C3861: 'D3DX_SKIP_DDS_MIP_LEVELS': 識別子が見つかりませんでした と言われ、ビルドが通りません。 D3DX_SKIP_DDS_MIP_LEVELS の定義場所が知りたいです。 分かる方いらっしゃいますでしょうか? XP SP2 VS2005 DirectX 2007 April です。 よろしくお願いします。
287 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 01:21:28 ] >>274 なつかしいw
288 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 01:41:06 ] 質問失礼します。 新たに社内用開発ツールを作成したく、 そのツールにて高速な2Dの描画(アニメーション)を行いたいのですが、 現在まで使用していたAPI関数では表示が追いつかない可能性がある為 新たに高速に描画を行える物を学びたいを思っております。 現行の開発環境がVS2005 ツールを配布したいPCは OS:XP(SP2) .NexFramework2.0インストール済み なのですが、DirectX10はVista専用 2D描画は9.0以降WindowsSDKに引っ越したとのこと どれを学ぶのが賢いのか分かりかねています。 できるなら容易に関連書籍が購入できるとありがたいのですが 学ぶのに何が好ましいかどなたか教えていただけませんでしょうか。 言語はB,C/C++ができますがWindows上にてのプログラム経験は浅い為、 勉強する覚悟はできています。 宜しくお願い致します。
289 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 02:05:00 ] 2Dのあぬめーひょんって具体的にどんなーん? 単純にスプライトを大量に表示する必要があるってんなら兎も角、 ピクセルをゴリゴリ弄るような処理ではDirect3Dはなんの力にもなれないよー。
290 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 02:48:35 ] 抜き色無しのアニメーションならGDIでも十分高速。
291 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 06:57:00 ] Direct3D ○:抜き色有・無描画、拡縮、回転、それらの同時掛け X:ピクセル単位の処理 その他 グラフィックボードによって動作が違うことがある(大抵は大丈夫、ただ客が馬鹿だと苦労する) 1ドットに対して正確に色をおかなきゃいけないときに拘ると最悪(できないわけじゃないだろうけど・・・) デバイスのロスト等描画以外でかなり手間がかかる、復旧方法を全部知っておかないと苦労する GDI ○:抜き色有・無描画、拡縮、回転、ピクセル単位の処理 X:抜き色有・無描画、拡縮、回転の同時掛け その他 Direct3Dと比べるとかなり遅い、環境による差が少ない、面倒が少ない
292 名前:286 mailto:sage [2007/07/13(金) 11:52:44 ] 解決しました。 SDK 2007 April の d3dx9tex.h に //----------------------------------------------------------------------------- // D3DX_SKIP_DDS_MIP_LEVELS is used to skip mip levels when loading a DDS file: //----------------------------------------------------------------------------- #define D3DX_SKIP_DDS_MIP_LEVELS_MASK 0x1F #define D3DX_SKIP_DDS_MIP_LEVELS_SHIFT 26 #define D3DX_SKIP_DDS_MIP_LEVELS(levels, filter) ((((levels) & D3DX_SKIP_DDS_MIP_LEVELS_MASK) << D3DX_SKIP_DDS_MIP_LEVELS_SHIFT) | ((filter) == D3DX_DEFAULT ? D3DX_FILTER_BOX : (filter))) と定義してありました。 よって、SDKバージョンの相違でした。
293 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 12:59:54 ] 質問失礼します。 よくXFileを使うくらいなら独自形式を使え、といった話になるのですが 独自形式に変換するためには何のファイルから変換するのが分かりやすいでしょうか? アニメーション情報もキーフレームでファイル内に含むことが出来るように したいのですがよい方法はありませんか?
294 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 13:06:12 ] 自分が使っているモデリングソフト用のプラグインを作るだけ。 余計な形式から変換する必用は微塵もない。
295 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 13:34:43 ] なるほど、ではMax用のプラグインを制作してみます。 ありがとうございました。
296 名前:デフォルトの名無しさん mailto:sage [2007/07/13(金) 23:42:23 ] Maxってフォーマット公開されてたっけ?