鬱だ氏のう DirectX (Part 7)
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
02/12/10 17:34ID:tkEwMMYm初心者用相談室では扱わないような少し高度な話題も受け持つ。
■ 過去スレ
Part 1 http://piza.2ch.net/tech/kako/966/966655286.html (プログラム板)
Part 2 http://pc3.2ch.net/test/read.cgi/tech/997101556/ (プログラム板)
Part 3 http://game.2ch.net/gamedev/kako/1005/10051/1005119775.html
Part 4 http://game.2ch.net/gamedev/kako/1016/10162/1016276254.html
Part 5 http://game.2ch.net/test/read.cgi/gamedev/1027351925/
Part 6 http://game.2ch.net/test/read.cgi/gamedev/1033920036/
0380名前は開発中のものです。
03/01/26 16:06ID:JLmSZuF5ここ俺のサイト、みんなきてね。
0381380
03/01/26 17:51ID:jBIKlZDp0382名前は開発中のものです。
03/01/26 18:21ID:2M/EyQst>>381
みえみえの荒らし依頼ウザイ
0383名前は開発中のものです。
03/01/26 19:23ID:GieoIa+/DirectXAudioで、外部音源を利用して音を出すプログラムを書きたいのですが、
ヘルプを見てもさっぱりわかりません。
サンプルプログラムを探してみたのですが、以前までのDirectMusicを使うやつなら
あったのですが、DirectXAudioのやつではありませんでした。
誰か方法を教えてもらえませんか?
0384名前は開発中のものです。
03/01/26 19:56ID:+6+ahdkDほい。
ttp://www.gamedev.net/reference/articles/article1689.asp
0385名前は開発中のものです。
03/01/26 21:38ID:KqxlbMFP自分でコンパイルしる!!
0386
03/01/26 21:58ID:tw6ZSSDOhttp://wossal.k-server.org/tw/
0387名前は開発中のものです。
03/01/27 01:11ID:eYMmnJAu( ̄ー ̄)
(つ つ
( ヽノ
し(_)
Now Thread Stoping. ...
大変見苦しいスレでありました.
スレストするまでお待ちください。。。ニヤリッ
0388名前は開発中のものです。
03/01/27 20:51ID:9Rd+1lq8これっぽちも盛り上がってないんですね、DirectX9
っていうか新機能何一つわかんねぇよ=□○_
皆さん分かるのかなぁ…すごいなぁ…
せめて線のジャギとって来ます λ.......
0389名前は開発中のものです。
03/01/27 21:15ID:GZAmEW26Direct3D(Graphics?)を勉強しているのだが、
どうも2D物を作ろうとすると、テクスチャサイズの変な制限を受けて汚くなったり、
カラーキーの代わりのアルファなんたらが意味不明だったり・・・
俺、どうしよう・・・このままDirect3Dで行っていいんだろうか・・・
0390名前は開発中のものです。
03/01/27 21:45ID:7Kx1LYrP絵描きさん?
0391名前は開発中のものです。
03/01/27 22:36ID:aqFEywQY無理せんでDirectDraw7のままでいいんでないの。
DirectX9環境だろうと使えるんだし。
0392名前は開発中のものです。
03/01/28 00:16ID:BuukEUTRアルファ使ったらカラーキーに戻りたくなくなると思うが・・・
いまどき画面とテクスチャは32bitで当たり前だろ
0393名前は開発中のものです。
03/01/28 00:51ID:qjGwDC4yい ま ど き
0394名前は開発中のものです。
03/01/28 00:59ID:KzZu9u6r2Dのパズルとかシューティングとか作って
物足りなかったら必然的にDirect3Dにいくし
挫折するならどっちでも同じことだし
ついでに言っておくと3Dでも2Dでも
上のほうでやることはそんなに変わらん
経験が薄いなら動かすまでに時間のかからない2Dから入るのは有効だと思う
あと、いまどきでも3Dのまともに動かない環境はごろごろしてる
0395名前は開発中のものです。
03/01/28 03:31ID:691HzMn80396名前は開発中のものです。
03/01/28 03:32ID:q9IBHpbo0397名前は開発中のものです。
03/01/28 03:38ID:Z3NbETAGIDワラタw
691Hz……
で、問題って?
参考にぜひ聞きたい。
(Windows9xでドライバが……とかそういう問題?)
0398395
03/01/28 03:42ID:691HzMn8のが結構あるから、Voodooのテクスチャサイズみたいになんか問題あるのかと。
よくかんがえたらDirectXとは直接関係ないかも。
やっぱ691Hzの頭ではこのスレにふさわしくないみたいです。
0399名前は開発中のものです。
03/01/28 04:46ID:lCCqqo2qMがもう2文字ほど左にずれてればよかったのにね。
むしろSoundBlaster互換推奨は良く見るけど……
もしかしたら何か問題あるかもしれないので知ってる人いたら情報提供キボン。
0400名前は開発中のものです。
03/01/28 05:43ID:SKJigKKaいまでもXpのSBLiveドライバとか糞だがな。
0401名前は開発中のものです。
03/01/28 08:44ID:93USF1I70402379
03/01/28 23:36ID:YFXNvO3Tまさかと思ってやったらちょっと修正するだけでコンパイルできました。
前バージョンファイルでもソースに互換性あるんですね。
どうも。
0403名前は開発中のものです。
03/01/29 00:17ID:2DSWNUEUボーンしこんでMayaで吐かせたヤツを8で読み込んだら強制終了してたけど、今度はちゃんと読み込まれる。
DirectX9 SDK おすすめだね。
0404名前は開発中のものです。
03/01/29 03:09ID:hhhZsEDJちょっと使ってみようかなぁ。
Maya持ってないけど。
0405名前は開発中のものです。
03/01/29 04:12ID:mBZAZkjzこれのアルファ合成は無理ぽ…?
0406名前は開発中のものです。
03/01/29 19:49ID:nWa8l28zプライマリーサーフェスと、ドライバが確保するキャッシュが引かれてますよね?
プライマリーサーフェスはあれとしても、
ドライバのキャッシュ量の方はどうやって取得しますか。
0407名前は開発中のものです。
03/01/29 19:59ID:CtmlCSOc640*480のBMPファイルをD3DXCreateTextureFromFileを使用して読み込み
GetLevelDescでBMPファイルの詳細を見ると幅1024、縦512になってしまいます。
どうすればサイズをそのままにして読み込む事ができるのですか?
0408名前は開発中のものです。
03/01/29 20:04ID:Ez8IxRfx2の階乗になってしまうのはハードウェアのせいだと思われ。
0409407
03/01/29 20:21ID:CtmlCSOcゲフォ買うしかないのかな…(´・ω・`)
0410名前は開発中のものです。
03/01/29 20:24ID:v5kvZ2f2テクスチャとして使用するので、どうしても2の階乗に固定されます。
スプライト用画像を512*512の画像に収まるようにしてみてはどうですか?
640*480で一枚の絵なら大きい領域で確保するしかないです。
0411名前は開発中のものです。
03/01/29 20:29ID:CtmlCSOcなるほど。分かりました(・∀・)
ありがとうございましたー。
0412405
03/01/29 20:32ID:mBZAZkjzDDCAPSとやらの仕様は知らないけど、そこまでわかってるなら
その値からプライマリの値を引けばいいと思うんだけどどうか。
640*480の16bitだとしたら600kbくらい。
>>407
こちらもD3DXSpriteの仕様は知らないがDirect3Dで作れるテクスチャサイズは
2の累乗じゃないとだめだったりする。そんなわけで読み込もうとすると
そのサイズを含むデバイスが作れるサイズに広げられてしまうとか
512*512とかのサイズに詰め込まれて、伸縮が発生する為に画像がぼやけてしまう。
解決策で一番安全なのは自動で256*256のサイズに分割するルーチンを組んでしまうこと。
0413名前は開発中のものです。
03/01/29 20:43ID:v5kvZ2f2確かフラグの指定でフィルタリングさせない方法があったと思いますよ。
D3DX_FILTER_NONEだったと思いますが。
0414405
03/01/29 22:27ID:mBZAZkjzそれで解決できない状況が無かったっけ?
と言っても俺が412みたいな分割ルーチン書いたのDirectX5か6ぐらいの
頃だから記憶があいまいなのよね…。今はそれで問題無いんだったらゴメソ。
で、DX9になってオフスクリーンサーフェス復活、しかもカラーキーとかアルファが
指定できるみたいだからこの辺の問題がサクっと解決して初心者にも
2DゲームでもDirectX9が良いよ、とか言えるようになったかなと思って
いろいろやってみた訳なんだけど、いまだにアルファどころかカラーキーすら
効かないありさまだったりする。UpdateSurfaceとStretchRect以外に転送方法あるのかな?
カラーキーの部分が黒で塗りつぶされるだけになってしまう。(環境はGF3デトネタ4019)
RenderStateもそれらしいのみつからないし。
やっぱりテクスチャに転送しない限りこの辺は有効にならないのかな。
0416406
03/01/29 22:42ID:nQW2MsuDもちろんプライマリーサーフェスのサイズを引けば良いのは分かります・・
問題は、ドライバが確保するキャッシュの方です。
トータルメモリ += サーフェスサイズ
と、計算してもドライバのキャッシュ分足りないのです・・
ドライバごとに確保するキャッシュサイズが違うので、
足りない分を勝手に足す訳にもいかないのです。
0417名前は開発中のものです。
03/01/29 22:44ID:nQW2MsuD0418406
03/01/29 22:48ID:nQW2MsuD良く見たら412は、サーフェスサイズを引いてと書いてあった・・
えっと、どちらにしてもドライバごとに確保するサイズが違うので
足りない分を足すだけではダメみたいです。
0419名前は開発中のものです。
03/01/29 23:05ID:v5kvZ2f2うーん……。結局アルファを使うにしろステンシルにしろ、
やっぱり基礎知識が要るので、初心者さんにならカラーキーでできるDX7を私なら薦めますよ。
>分割ルーチン書いたのDirectX5か6ぐらいの
なつかしいね。当時は必須っぽかた気も。Voodoo多かったしね(GLIDE本気にやらなくてよかった…)。
>UpdateSurfaceとStretchRect
これはアルファとかサポートしていないただの転送だと思いますよ。
DirectDrawのように使うためにあるメソッドではないと思いますが…
Spriteじゃだめなの?
結局アルファにしろステンシルにしろ
Direct3Dのラスタライザを通さなければ駄目です。
確かにD3DX9はまた…中途半端にサポートされてますが、
やはりDirectDrawユーザーに進められるものではないと思いますよ。
0420405
03/01/30 01:13ID:xdIz9k41最初ヘルプ眺めてて見つけた時はMSに紙が降臨したのかと思ったが…
ライブラリの8>9移行ついでにもうちょっと遊んでみよう。
0421名前は開発中のものです。
03/01/30 02:14ID:SuI7xxzp0422名前は開発中のものです。
03/01/30 02:17ID:L8+k5MArおお、期待。初心者がとりあえずDirectX始められるようなのがいいね。
0423名前は開発中のものです。
03/01/30 03:31ID:jEmNkGyn0424凄いサイト見つけました
03/01/30 04:51ID:fICqPKazhttp://home9.highway.ne.jp/cym10262/
0425名前は開発中のものです。
03/01/30 05:25ID:Lzu43Gsx0426名前は開発中のものです。
03/01/30 06:58ID:JQ9GRIy/一定の縦横比で固定するにはどうすればいいですか?
0427名前は開発中のものです。
03/01/30 07:04ID:zHVLpj9S★こんなサイト見つけました★
0428名前は開発中のものです。
03/01/30 08:47ID:VhhqZnNP0429名前は開発中のものです。
03/01/30 09:04ID:vxgq1fWo0430名前は開発中のものです。
03/01/30 09:06ID:To8yZeYF0431名前は開発中のものです。
03/01/30 09:16ID:IIdghGiyパースペクティブを勉強しなさい。
これは人に説明を聞くより自分で学んだ方がよいよ。
0432名前は開発中のものです。
03/01/30 11:11ID:wqDSiMFS/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
/ このスレは無様に . /
/ 終了いたしました /
/ ありがとうございました /
/ /
/ モララーより /
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
∧_∧ / /∧_∧
( ・∀・) / /(・∀・ )
( )つ ⊂( )
| | | | | |
(__)_) (_(__)
0433名前は開発中のものです。
03/01/30 20:15ID:VhhqZnNP0434421
03/01/31 01:20ID:1k5hi3pCスプライトつかった。カラーキーとアルファブレンドと回転拡大縮小だけできる。
初心者がとりあえずDirectXはじめられるようにはなっていると思う。
アプローダが腐っててアップできないけど。
0435名前は開発中のものです。
03/01/31 01:52ID:t8hxtjpP0436名前は開発中のものです。
03/01/31 02:10ID:4EXFic4+DirectX7の時代から今までずっとライブラリ作ってたのか?
お前見込みねーよ
0437名前は開発中のものです。
03/01/31 04:47ID:pEIXGlpQ( ´,_ゝ`) プッ
妬みですか?
0438名前は開発中のものです。
03/01/31 06:50ID:b7wblacq実感こもってるなぁ。自分の事?w
>カラーキー厨
って……。DX7で作りつづけている人もいるんじゃないの?
0439名前は開発中のものです。
03/01/31 08:55ID:V5x9gbA9中身のないデモばかり作って最新技術のみを追い求めるヤシよりはまし。
0440名前は開発中のものです。
03/01/31 09:07ID:PNxBsMdG0441名前は開発中のものです。
03/01/31 10:21ID:6VWpyBYm今まで2Dゲー作ってて不便感じなかったのかと。
アンチエイリアスかかった文字描画とか。
0442名前は開発中のものです。
03/01/31 10:45ID:XKk8Mtcgなぜこれが出てくるのかが疑問
0443名前は開発中のものです。
03/01/31 11:16ID:S5WfGp150444名前は開発中のものです。
03/01/31 11:34ID:6ynLwhZo0445名前は開発中のものです。
03/01/31 11:36ID:b7wblacqカラーキーでまずぶつかるところだからでしょ?
>>441
確かに一度無くなった概念といえばそうだしね。
というかアルファチャネルはいっぺん使うともう離れられなくなるわな。
0446名前は開発中のものです。
03/01/31 11:55ID:Oks/Mlfbカネを取ろうと思ったら、GDIで文字をべた書きで満足せずに
半透明を使った美しい処理を行うのはすでに常識じゃないの?
GDIで文字をべた書きでも右下に少しずらした場所に黒で文字を書いてから
正しい場所に白で文字を書くとほーら影付き文字、とか
そういう小技が出来ないわけじゃないけれど。
それより個人的に過去の遺物にしたいのはMMXを使った半透明処理。
確かに作ってて楽しいけど、DirectX の思想から考えると、
GPUにお任せする方向に移行していかなくちゃいけないんじゃ…?
どうなんだろ。
識者の意見を待つ。
0447名前は開発中のものです。
03/01/31 12:16ID:S5WfGp15いいかげん、GPUでやってくれっつー気もする。
クソ環境でも動かしたいのもわかるが、いつまでたってもユーザー環境が成長せん。
まあ、紙芝居にはもともと必要ないのか。
0448421
03/01/31 14:14ID:1k5hi3pCまぁ僕はライブラリにはしないでプロジェクトにソースコード・ヘッダ両方取り込んで使うんですが。
中には噴飯モノの処理をしているところもあるかもなので僕の今度のために教えてね!
0449名前は開発中のものです。
03/01/31 16:38ID:b7wblacqスプライトってやっぱ大量に描画してなんぼって気もするよね。
とりあえずできたという点は良し。
もっと使い勝手の良い環境が欲しい、という人のために
画像を統一管理して、そのDynamicDrawInfo?の中にpageってのを用意して、それで一意にアクセスできるようにするとかね。
スプライトにrx,ryはあまり使わないということであれば、シェーダーを使うと高速で且つ帯域も少なくやれるけど、
それはちょっと上級かな? 説明大変だし…。
>>446
昔はハードでできる事でも、対応してないかも、と言う理由で自前でやったりもしたけど、
今はもうそんな時代ではないよね。
ハードの進歩は早すぎる。いろいろなルーチンをハードが対応してくれるようになった。
ここまできたらあっさりと過去の知識は捨てて、次の時代に乗らなければならない。
それがこの業界に生きる者の辛いところだね。
過去の苦労が水の泡になっていくのは辛いよ。
でも世の中がそういう風に進んでいるからにはしょうがない。
PCユーザーに関して言えば、上と下の差が激しすぎる。
もう下は切り捨てて行かなければならないと私は思うよ。
海外メーカーはもうそのつもりなのに、日本人はやさしいのか、狡いのか…。
エロゲー業界にしてもどうなのかな? 私はわからないけど、そろそろ改革の時期でしょうか?
最近は3Dのエロゲも見かけるしね。若者をターゲットにするなら、今まで以上にゲーム性を考えることになるんでしょうね。
何、長文書いてんだオレ……やべぇ。さいなら。
0450名前は開発中のものです。
03/01/31 17:05ID:Rbm5bElj,、____| |____,、
〈 _________ ヽ,
| | | |
ヽ' 〈^ー―――^ 〉 |/
,、二二二二二_、
〈__ _ __〉
| | | |
/ / | | |\
___/ / | |___| ヽ
\__/ ヽ_____)
0451名前は開発中のものです。
03/01/31 21:13ID:2ZzIvraxアタリマエみたいだねえ。最近知った。
0452名前は開発中のものです。
03/02/01 00:07ID:PG2XqJ1Kというより、画像を一枚表示するのと、どこが違うのですか?
0453名前は開発中のものです。
03/02/01 01:14ID:cAF40l0Iその分自由度はかなり低いが。
0454名前は開発中のものです。
03/02/01 01:56ID:blncN5Wg頂点4つ用意する場合とほとんど速度が変わらなくなる罠。
0455名前は開発中のものです。
03/02/01 03:10ID:xwWC0Jem/  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ /
/ このスレは無様に . /
/ 終了いたしました /
/ ありがとうございました /
/ /
/ モララーより /
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/
∧_∧ / /∧_∧
( ・∀・) / /(・∀・ )
( )つ ⊂( )
| | | | | |
(__)_) (_(__)
0456名前は開発中のものです。
03/02/01 10:56ID:2fuADtqtと考えてええの?
0457名前は開発中のものです。
03/02/01 22:35ID:X2Cx4OAm0458名前は開発中のものです。
03/02/01 23:22ID:nA0Z1UvR0459406
03/02/02 01:22ID:8xiGQDVWDDCAPSで得られるトータルメモリにサーフェスサイズ分のデータ量を足して、
メガバイト単位に変換して、整数値に切り上げてやる事にしました・・
サーフェスサイズを足してやると、だいぶ値が近くなるのでどんな環境でも大丈夫と思うんだけど・・
それに、VRAMのトータル量なんて区切りの良い数値ばかりだし。
0460名前は開発中のものです。
03/02/02 06:45ID:s+peL14uそ れ は 病 気 で す
0461名前は開発中のものです。
03/02/02 13:29ID:Yh8sRLf00462名前は開発中のものです。
03/02/02 13:30ID:5CjL988Zありますよ
0463名前は開発中のものです。
03/02/02 13:49ID:Yh8sRLf0何処にありますか?
0464名前は開発中のものです。
03/02/02 14:48ID:G7p0fJLTそれくらい自分で探せ。
Googleで検索すりゃでてくる。
0465名前は開発中のものです。
03/02/02 15:04ID:5CjL988Zあなたの開発に使っているマシンの中にあります
0466名前は開発中のものです。
03/02/02 15:14ID:6i0/vwvm頂点バッファを使わなくてもとりあえず実装はできるので、使ってない
ですが、使うと便利なら切り替えてみます。
というか、そもそも頂点バッファってナンデスカ?
0467名前は開発中のものです。
03/02/02 15:25ID:s+peL14uVRAMに頂点データを置いたり、ストリームソースとか、まぁ色々使うけど、
D3Dを2D感覚で使用するつもりなら使わんでもいいだろう。
>>461
基本も知らずにスプライトか?
……まったく、D3DX無くせよMSさんよ……。こういう手合いが増えるだけだろ。
0468名前は開発中のものです。
03/02/02 15:40ID:y3lc9XV6この相当小さいっていうのは、具体的にどのくらいなのでしょうか。
やっぱりビデオカード依存だと思いますが…。
0469名前は開発中のものです。
03/02/02 17:16ID:fhT0wplm>頂点バッファって使うとどんないいことがあるのですか?
速くなる
Lockしまくったら逆に遅くなるが…
>というか、そもそも頂点バッファってナンデスカ?
頂点バッファを使わないときは頂点データは通常のメモリに
あるで描画のたびに全部(頂点サイズ×頂点数)送らなきゃいけない
頂点バッファを使うと先にVRAMに送ってるので
描画の時は場所(使用する頂点バッファ)を指定するだけなので
速いって感じ
まぁドキュメントなり解説サイトなり読んでちゃんと理解して使え
0470名前は開発中のものです。
03/02/02 17:21ID:xcAANMPX頂点バッファを使う利点は速度。頂点バッファをVRAMに作れば頂点データを
遅いAGPバスを通さなくて済むし、システムメモリに作ってもCPUとの排他
アクセスができるからDMA使って転送できる。(AGPバスってのは意外と遅い)
頂点バッファを動的に書き換える場合でも、DMAの終了を待たずに書き換える
ことができるから速い。(実際には新しいバッファを確保しているんだが)
>>468
ポイントスプライトは火花みたいなエフェクトくらいしか使い道ないから
面積はあまり気にしなくていいかと。
(火花でも1フレームで数千、数万の単位になるとさすがに厳しいが)
一般的なビルボードとして使うにはあまり向いてないよ。
0471名前は開発中のものです。
03/02/02 20:23ID:047/xv5q僕はD3DXUtilityのソースを流用してメッシュをアニメーションさせているのですが、これらを自分でやるってかなり難しくないですか?
0472名前は開発中のものです。
03/02/02 21:10ID:9DYxK8lo事例は沢山あるので、自分で調べて自分なりに実装してみれば、
理解が深まって、応用が利くようになるよ。
あ、ライブラリで済ますことを否定してるわけじゃないよん。
0473名前は開発中のものです。
03/02/02 22:38ID:dqWXQSHP(僕はゲ製やってません=初心者)
板違いスレスレでゴメソ。
WB3DEMOやったら、DirectXが使えないとかで(+д+)マズーでした。
どうやらnv3.dllが古い(?)とかなんとか。
製造元によって提供されている最新のものか確認してください
だそうですが・・
誰か教えてください!
0474名前は開発中のものです。
03/02/02 22:39ID:9DYxK8lo板違いと判っているなら来るなボケ。Windows板にでも逝け。
0475>>473
03/02/02 22:44ID:G3FgB81u0476名前は開発中のものです。
03/02/03 00:17ID:+YBIu/ItDirectX Extensions for Visual Studio .NETの項目そのものが出てこないんだが…
俺だけ?
シェーダ デバッガが使えなくてもたいして問題は無いんだが、何か損した気分。
0477名前は開発中のものです。
03/02/03 01:44ID:vHg9QqdBVS.NETいれてる?
ちなみにうちでもその項目は出てこない。VS6.0だからだと思うが。
0478名前は開発中のものです。
03/02/03 04:39ID:MPvK+jmeVS.NETいれてるけどウチも出なかった
■ このスレッドは過去ログ倉庫に格納されています