■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
鬱だ氏のう DirectX (Part 3)
751
名前:
名前は開発中のものです。
:02/02/17 18:56 ID:???
>750
変わりにマンホールにハマったりするんだろ?
752
名前:
名前は開発中のものです。
:02/02/17 19:02 ID:???
たけしとか、ガチンコとか、カフッとか、この板のコテハンは最悪な奴ばかりだな(藁
753
名前:
名前は開発中のものです。
:02/02/17 20:06 ID:???
デバッグ版インストールするとMediaPlayer7.1で変な数字
が出るんですけど、これを消す方法ないですか?
754
名前:
名前は開発中のものです。
:02/02/17 21:32 ID:???
空想脳内プログラマたけし 次回に続く
755
名前:
名前は開発中のものです。
:02/02/17 22:17 ID:???
ところでカフッってなんなの?
756
名前:
名前は開発中のものです。
:02/02/17 22:33 ID:???
空想脳内プログラマたけし は終了しました
たけし先生の次回作にご期待ください
757
名前:
名前は開発中のものです。
:02/02/17 22:33 ID:l+Urts8Q
ねえD3Dの頂点フォーマットフラグの
D3DFVF_TEX0なんだけど、これの意味ってわかる?
ヘッダには
#define D3DFVF_TEX0 0x000
って定義されてるんだよね。
758
名前:
名前は開発中のものです。
:02/02/17 22:44 ID:???
リファレンス読め
759
名前:
名前は開発中のものです。
:02/02/17 22:46 ID:???
>>758
読めませんでした。市ね。
760
名前:
名前は開発中のものです。
:02/02/17 22:56 ID:???
>>751
彼はアーバンチャンピオンだからな
761
名前:
名前は開発中のものです。
:02/02/17 22:58 ID:???
>>759
期待する答えが返ってこないからって厨房的発言するなよ〜
D3DFVF_TEX0 〜 D3DFVF_TEX8
この頂点に対応するテクスチャ座標セットの番号。
これらのフラグに対応する数字は連続番号になっていない。
これでわからなかったらまた質問してよ。
762
名前:
名前は開発中のものです。
:02/02/17 23:01 ID:???
D3DFVF_TEX0 through D3DFVF_TEX8
Number of texture coordinate sets for this vertex.
The actual values for these flags are not sequential.
この場合、numberは「番号」じゃなくて「個数」だよな。
これだから日本語リファレンスは使い物にならない。
763
名前:
名前は開発中のものです。
:02/02/17 23:15 ID:???
>>760
アーバンチャンピオンといえば、植木鉢とパトカーは欠かせないだろ。
764
名前:
757
:02/02/17 23:26 ID:???
ちょっと試させてもらいました。
>>762
がいてよかったね。
765
名前:
名前は開発中のものです。
:02/02/17 23:29 ID:???
>>763
まずは彼の首を植木鉢で育ててみようと思う
766
名前:
名前は開発中のものです。
:02/02/17 23:39 ID:???
あー、完全に無視されてる・・・
デバッグ版インストールするとMediaPlayer7.1で変な数字
が出るんですけど、これを消す方法ないですか?
なんか昔どこかでこういう話題あったような気がして
探したんですけどみつかんないYO!助けて!
767
名前:
名前は開発中のものです。
:02/02/17 23:43 ID:???
>>765
こんな感じか?
, ---- 、
| /^^^^^i
C ゚ o゚ ヽ
| зノ
ト ---イ
[ ̄ ̄ ̄ ̄ ̄]
| ̄ ̄ ̄ ̄|
| |
|____|
768
名前:
名前は開発中のものです。
:02/02/17 23:44 ID:???
>>767
ワラタ
韓国で売り出そうよ
769
名前:
名前は開発中のものです。
:02/02/17 23:55 ID:yzu1d1E6
>>766
コントルールパネル内のDirectDrawタブの
Use Hardware Accelerationチェックボックスにチェックが入ってないとそうなる。
DirectX診断ツールでDirectDrawを見てみろ。
ハードウェアアクセラレーションが有効になっていないはずだ。
多分ビデオドライバとDirectX8.1の相性が悪いんだと思う。
770
名前:
名前は開発中のものです。
:02/02/17 23:56 ID:GaPb2C9e
>>741
>ひとつ疑問があるのですが、この中にはC++さえまともに扱えない厨房
>(おもにHSP厨、VB厨のように役に立たない屑)がまぎれているのではないかと思います。
>人をあおる部分だけ得意げに待ってましたとばかりに活躍するのです。
>まず、こういう人を弾劾するべきだとは思いませんか?
なぜ「C++をまともに扱えない人間」=「煽り人間」と決め付ける?
Direct XはVBやCだって使えるんだぞ?おい。
なぜゆえにC++をそこまで神聖化するのかがわかりませんぜ。
C++が現在絶大なシェアを誇っていることは事実だし、
すばらしい言語だと思う。(俺もC++使いだ)
でも、いつまでこの状態が続くかわからないでしょ?(COBOLERとか見ると・・・)
天狗になっちゃいけませんよ。
771
名前:
名前は開発中のものです。
:02/02/18 00:00 ID:???
>>769
ありがとうございます!
772
名前:
名前は開発中のものです。
:02/02/18 00:05 ID:???
>>770
たけしを相手にするな
773
名前:
名前は開発中のものです。
:02/02/18 00:59 ID:???
>>770
たけしが来たら
カエレ
一行レスでね。
774
名前:
名前は開発中のものです。
:02/02/18 03:14 ID:PO9xqH9t
16bitな環境でフェードアウトってどうやります?
静止画のピクセルを書き換えるならできるけど、
そうじゃない場合って無理ですかね?
775
名前:
名前は開発中のものです。
:02/02/18 03:15 ID:PO9xqH9t
ヴァカな書き込みだった。
スマソ
776
名前:
名前は開発中のものです。
:02/02/18 03:33 ID:nmM6IuIj
>>774
黒一色とか、白一色の画面を埋め尽くすポリゴンを半透明で描画
透明度を変えていくことによってフェード効果が可能
777
名前:
名前は開発中のものです。
:02/02/18 05:55 ID:sxumDJRl
RenderStateの設定は?
SRCとDESの両方キボンヌ
778
名前:
名前は開発中のものです。
:02/02/18 06:00 ID:???
>774
フルスクリーンならIDirectDrawGammaControlでも出来るYO。
779
名前:
名前は開発中のものです。
:02/02/18 06:23 ID:???
>>777
それくらい自分で考えれ
780
名前:
名前は開発中のものです。
:02/02/18 06:57 ID:sxumDJRl
srcがD3DBLEND_ONE
desがD3DBLEND_INVDESTALPHA
でどうよ?
781
名前:
名前は開発中のものです。
:02/02/18 09:35 ID:???
D3DBLEND_INVDESTALPHAはマズいだろうと言ってみたり。
マジレスするのもかったるいし、2chなんだからひねくれて考えよう。
16bitな環境っていうと68000あたりですか?
・・・いかん、DirectXスレだから68000関係ないか。
782
名前:
名前は開発中のものです。
:02/02/18 09:42 ID:???
16bitColorモードのことですよ。たぶん・・。
783
名前:
名前は開発中のものです。
:02/02/18 12:02 ID:???
しかし、僕がネタ振りをしたとたんスレの熱気が増したことも事実ですね。
それまでのこのスレは1日に平均5レスというひどいものでした。
784
名前:
たけし
◆svc5NIf.
:02/02/18 12:14 ID:RsmYLklq
>770
いやあ。。
こんなにも僕の登場を待ってくれてる人がいてくれるなんて嬉しいです。。。
>なぜ「C++をまともに扱えない人間」=「煽り人間」と決め付ける?
別スレの誰かと僕の発言を見ていただければわかりますです。。。
785
名前:
名前は開発中のものです。
:02/02/18 12:38 ID:???
>>781-782
ボケ&つっ込み( ゚∀゚)y─┛~~イイ
786
名前:
名前は開発中のものです。
:02/02/18 14:01 ID:???
たけしって正直キモイよな。
, ---- 、
| /^^^^^i
C ゚ o゚ ヽ
| зノ
ト ---イ
〈 ∵∴〈
〉∴∵ 〉
〈 ∴∵〈
〉∵∴ 〉
〈 ∵∴〈
〉∴∵ 〉
[ ̄ ̄ ̄ ̄ ̄]
| ̄ ̄ ̄ ̄|
| | (○) (゚∀゚)
,.,,. ,,... ,.. |____| ,,..,. ,,,.,... ヽ|〃,,... ,.. ヽ|〃,,,... ,,.,.
787
名前:
名前は開発中のものです。
:02/02/18 15:09 ID:???
粘着な上にキモイ。
最低だな。
788
名前:
名前は開発中のものです。
:02/02/18 19:42 ID:???
sage
789
名前:
名前は開発中のものです。
:02/02/19 06:11 ID:GGwl/uA+
すんません、DirectX8って結局ダメなのかな?
ちょいと前のスペックのマシンでまともに動くもの作りたいんだったら
DirectX7とか使わないとダメなんすかね?X8だとすげえ重いんだけど・・・
X8から勉強したせいで、以前がどんな程度かわからないんです。
以前からDirectXいじってた方、教えてください。
790
名前:
名前は開発中のものです。
:02/02/19 08:09 ID:???
>>789
Dx8.1入れれ
791
名前:
名前は開発中のものです。
:02/02/19 10:57 ID:VfE7MdoD
DirectX 8のSDKに入っているサンプルをVisual C++6で
ビルドして実行しようとすると
Could not load required media.
というメッセージが出て終了してしまいます。
原因と解決方法を教えてください。
動かないサンプルはsamples/multimedia/direct3d
の中にあるものです。
同じサンプルでもDirectDrawディレクトリに入っているものは
動きます。
使用OSはWin98です。
792
名前:
名前は開発中のものです。
:02/02/19 12:03 ID:???
BMPかXかtgaなどの必要なファイルが読み込めないから
終了するようですな。
793
名前:
789
:02/02/19 18:01 ID:2L7HlL7r
>>790
8.1はマトモなの?
こう、なんつーかX8ってX-BOXぐらいのスペックのハードじゃないとまともに動かない代物なんでしょうか?
なんか漠然となんですが、バージョンとハードのスペック関係ってどんな感じなんでしょう?
794
名前:
名前は開発中のものです。
:02/02/19 18:28 ID:BgeOYPI4
別にDirectXのバージョンが上がったからって
必要スペックが高くなるとは一概にはいえない。。
逆にパフォーマンスが改善されてる場合もある。
問題なのは互換性。
一度あったことなんだけど、
WinXP+DirectX8.1な環境だと
DirectX6で開発したゲームが
まともに動かなかったりした。
あとはテクスチャのUVがずれたり。
795
名前:
名前は開発中のものです。
:02/02/19 19:07 ID:???
>>794
大抵ビデオドライバ側のバグかテストが甘い気がする…。
漏れはW2K,nVIDIAリファレンスドライバ,DX8.1でDX7.0aのSDKサンプルの
D3DIMを動かすとリセットボタン押すしかないと言うハングしやがる(;´Д`)
796
名前:
たけし
◆svc5NIf.
:02/02/19 19:14 ID:+IwqdtmV
結論:DirectXは使うな
ということで終了です!
797
名前:
789
:02/02/19 19:23 ID:zq5fdi5p
いろいろありがと。俺がDQNなのか、イマイチDirectXの使い方が理解できてないような感じです。
知ってる人、是非教えてください。
1:テクスチャについて
テクスチャなんだけどさ、基本的にはVRAMの余った領域に確保してくれるんだよね?
で、それで足りない分はメインメモリに確保されるの?
で、基本的にテクスチャの切り替えは、VRAM内で収まってるテクスチャならほぼペナルティなしで
切り替えられるもんなの?
また、マルチパステクスチャってビデオカードによって速度差抜群?
古めのカードだったりするとマルチパスって致命的に遅いかな?
半端にライトマップとか使うぐらいだったらアルファブレンドで
うまいことやるほうが効率いい?
2:アルファブレンド
こいつも基本的には重いハズだよね?DirectX8だとカラーキー使えない、って話を聞いているんだけど、
アルファで抜くのってカラーキーより、ハード的には重いんではないでしょうか?
誰か教えてください。
798
名前:
名前は開発中のものです。
:02/02/19 20:28 ID:/O7amC8r
>>797
そんなことまでこだわって作ってると
頭ハゲるぞ。
799
名前:
名前は開発中のものです。
:02/02/19 20:32 ID:/O7amC8r
>>791
VC++のデバッカ上で実行させるときは、
基本的に、そういったリソースファイルは
プロジェクトのフォルダの中にないとダメなんだよ。
800
名前:
789
:02/02/19 20:49 ID:2L7HlL7r
>>798
え?そうなの?
なんかわからないけど洩れの作ってみたのが全然フレーム数出ないんです。
テクスチャ+ライトマップテクスチャの2パスをα付きで描画 × 2回(それぞれテクスチャは違う)
環境マップ × 1回(オブジェクト全体で1枚のテクスチャ)
以上をオブジェクトの面数(100ポリもない程度・・・)
あとは前面に640x480のα付きテクスチャ描画
こんな程度で60fpsがキツイのです・・・
面倒だからってフルカラーα付きテクスチャなのがいけないんスかねえ???
801
名前:
:02/02/19 21:00 ID:YZngPksN
>>800
チップ名とVRAM容量書け
802
名前:
:02/02/19 21:03 ID:YZngPksN
>>799
あれ?DirectX8(7?)からはレジストリにデータフォルダのパスが入ってるので
動いた気がしたけど…win98はダメなのか?
SDK自体コピーでHDDに置いただけじゃなくて、ちゃんとセットアップしたんだよね?
803
名前:
789
:02/02/19 21:34 ID:2L7HlL7r
>>801
ういっす。
RAGE128のAGP1xの32MBです。
804
名前:
89454
:02/02/19 21:37 ID:En55fFc3
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
| 1000点!!!! |
|_________|
∧∧ .||
(*゚ー゚) ||
.(ニニつ
.) .(O)
.(^ヽノ|.||
ヽ ヽ |
) .)|
/.イ .|
(,へ>へ>
韓国でも出るみたいだが……。
http://www.puchiwara.com/hacking/
おもしろければなんでもアリ!
805
名前:
:02/02/19 21:47 ID:YZngPksN
テクスチャのチェンジはVRAM上であってもカナーリ重たい処理だよ
マルチパスって2度書きするだけでしょ?
スピードは半減+αだからそら、遅いんでは?
rage128ってノート?3Dチップなんて呼べないほどお粗末じゃないっけ?
3dmark動くんだろうか…つか、GeForceと差がありすぎて対応するの不毛だ…
806
名前:
名前は開発中のものです。
:02/02/19 21:53 ID:???
>803
買い換えろ。
807
名前:
789
:02/02/19 22:10 ID:2L7HlL7r
>>805
AllInWonder128っす。rage128程度だと、一世代前の組み込みPCレベルぐらいかな?
性能的にはプレステ1以下ぐらいなんかな?
テクスチャチェンジってそんなに重いの?
キャッシュのフラッシュ、ポインタの設定ぐらいなもんかと思ってた。
つーことは、細かいブツ切りのテクスチャなんかは確実にまとめるべきだよね?
先の2パス処理でも、
パス1:ディフューズ用(?)のテクスチャをまとめる
パス2:ライトマップ、環境マップ等、付随するテクスチャをまとめる
のようにして、テクスチャを再設定するのを避けるようにすべき、ってことっすよね?
そうなると、許されてるテクスチャサイズの最大値ってのはカナーリ気にすべき、ってことでしょうか?
マルチパスって結局そういうことなんすか?DirectX8の説明見てると、
VRAMへのWRITEの前に全てのパスによる結果を計算
その結果をピクセルシェーダによって計算してWRITE
ってことだと思ってたんだけど、そんなハードは折れ知らんし、当然
ハードでサポートしてなければ2度書きするだけだよなあ。
当然、αもやっぱり重いよね?そうなるとデカイ2Dのヌキ処理なんかはαに頼らず
ステンシルなんかを使うべきなんでしょうか?
808
名前:
789
:02/02/19 22:13 ID:2L7HlL7r
>>806
そうすべきですかねえ。
しかし、世の中一般、普通の人だと組み込みPCとか買ってるよね?
そういったPCのレベルでもまともに動作してほしいとなるとどうすりゃいいでしょう?
なんか質問ばっかで本当ごめん。
809
名前:
:02/02/19 22:37 ID:YZngPksN
>VRAMへのWRITEの前に全てのパスによる結果を計算その結果をピクセルシェーダによって計算してWRITE
これは”シングルパス”マルチテクスチャでしょ
テクスチャは出来るだけ1枚にして、かつ同じテクスチャを使うオブジェクトを
まとめて描画。これDXの基本
αつきポリゴンビルボード(樹木とか)なんかの場合てすると、1枚描く毎にテクスチャチェンジが発生すると
カナーリ厳しいつか、実用にならないとか。ま、テクスチャまとめるかするらしいYO
810
名前:
789
:02/02/19 23:02 ID:2L7HlL7r
あ、間違ってた!「シングルパス」の「マルチテクスチャブレンド」でした。
どちらにせよSetTexture()は可能な限り減らす、ってのが前提なんですね。
そうなると、みなさんテクスチャ、どういうふうに扱ってます?
プレステだと256×256が20枚ぐらいだったっけ?(もう忘れた)使えたじゃないですか。
PCでは32MBのビデオカードなんかだと、一般的にはどれぐらいのテクスチャが使えるもんなのでしょうか?
あと、スプライトなんかもそうだけど、ビルボードなポリゴン、スプライトは
αを使うとなるとかなり負担っぽいんですねえ・・・
DirectX8だとスプライト=αブレンドテクスチャ、ってことで、2Dは絶望的に遅くなってしまうものですか?
811
名前:
789
:02/02/19 23:07 ID:2L7HlL7r
みなさん、特にID:YZngPksNさんありがとうございました。
今日は寝ちゃうんでまた明日からもいろいろお願いっス。
812
名前:
名前は開発中のものです。
:02/02/19 23:08 ID:???
αのZソート作ってみたが、
使用/不使用選択オプションで逃げるしかねーなと感じた。
CPUスペック +500M
813
名前:
名前は開発中のものです。
:02/02/19 23:54 ID:y9zZ/miQ
>>777
なんだかかわいそうなので言うわ。
半透明の場合は
src D3DBLEND_SRCALPHA
dest D3DBLEND_INVSRCALPHA
となります。
srcのa値を少しづつあげていけばフェードアウトの出来上がり。
ただ、これくらいは調べよう。
814
名前:
名前は開発中のものです。
:02/02/20 00:18 ID:???
>>813
あれはネタだろ
815
名前:
791
:02/02/20 05:48 ID:6S5GCnDA
SDKのサンプルをビルドするとき、
リソースをプロジェクトフォルダにいちいち
コピーしなければならないのは面倒ですね・・・そこで
・ビルドの際、リソースファイルの置いてあるディレクトリを指定することはできないんでしょうか?
サンプルのリソースはみなmssdk\temp\samples\multimedia\media にありますよね。
これをIncludeやlibのディレクトリ指定のような感じで指定できるとありがたいんですが。
・リソースを実行ファイルの中に含めてビルドすることは可能ですか?
今は1つのフォルダにexeとリソース(bmp等)があるのですが、これを1つにまとめたいんです。
>>799
ありがとうございます。
bmpファイルをプロジェクトフォルダに入れたら動きました。
816
名前:
名前は開発中のものです。
:02/02/20 12:30 ID:???
>>815
それサンプルプログラムに書いてあるよ。
関数名はわすれたけど。。
817
名前:
名前は開発中のものです。
:02/02/20 20:51 ID:???
>>799
>>815
プロジェクトの設定のデバッグタブに実行時のカレントディレクトリの設定があるよ。
818
名前:
:02/02/20 23:10 ID:wgwzWvK3
ねーGeforce3でデバッグ版のランタイム(リテイルモード指定でも)だと3Dmark正しく動かなかったりしない?
3dmark2001SEの追加シーンが画面フラッシュするよ
以前のドライバではドラゴンのシーンでフラッシュした
こまるよ〜
819
名前:
名前は開発中のものです。
:02/02/20 23:23 ID:Wn0nLZpE
助けてください。恐ろしい症状が発生しています。
デバイス名:SMART JOYPAD 3plus 2player
症状:コントローラを接続してないのにDIEDFL_ATTACHEDONLY(接続されているもののみ)
で列挙すると列挙されてしまう。
さらに、データを取得するとX軸とY軸の最大値(つまり右下)を返す。
デバイス名:SMART JOYPAD 3plus 2player
症状:フォースフィードバック(このデバイスは振動のみ)で一回振動させると
明示的にとめない限り振動しつづける。(設定で一秒後に停止とかやっても止まらない)
これ、かなり致命的なんですけど・・・
この症状が出るのは俺だけですか?
どうやって対処すれば良いのでしょう・・・
対処方法知ってる方がいたらお願いします。
820
名前:
名前は開発中のものです。
:02/02/20 23:41 ID:???
>>819
前に俺作ソフトでJOYPADが勝手に効いてしまうってのがあったんですが,それは
2Pにパッドを繋いでいないから起きてしまう819さんと同じ現象だった。これはデバ
イス側の問題なのでどうしようもないでしょう。
不具合として販売メーカーに文句言って見るとか。
自作ソフツにのドキュメントに「SMAPT JOYPAD3 の空きには必ずパッド繋げ!」と
書くか,1分間同じデータだったらオートでセンターにしてしまうとか。オートセンター
は逆に不具合にもなりえるので難しい所。もしくはソフト内でのキャリブレーションつ
ければ解決出来るかも。
「SMART JOYPAD3 を使ってはいけません。買い換えましょう」ってのが一番w
821
名前:
名前は開発中のものです。
:02/02/21 07:53 ID:???
>>815
▼゚Д。▼カフッ
822
名前:
名前は開発中のものです。
:02/02/21 08:01 ID:???
>>821
また カフ 厨が涌いて出たか…
823
名前:
名前は開発中のものです。
:02/02/21 08:07 ID:???
▼゚Д。▼カフッ▼゚Д。▼カフッ
824
名前:
名前は開発中のものです。
:02/02/21 09:43 ID:???
DirectXで欝になるバカは、なにやってもバカ。このスレのタイトル、変えろや。
825
名前:
名前は開発中のものです。
:02/02/21 14:07 ID:???
俺、SmartJoyPad3使ってるよ。そんな不都合があったのか。鬱(´д`;)
動かない環境を切り捨てれば、鬱だしのうにはならんな > DirectX
826
名前:
名前は開発中のものです。
:02/02/21 18:30 ID:???
繋がってるのがSMART JOYPAD3だというのをどうにかして検出できねーの?
ドライバとかで(確実じゃなくても)
827
名前:
819
:02/02/21 23:48 ID:H/6inmeh
>>826
出来るけど、それやっちゃうとSMART JOYPAD3が使えなくなる。
(ベンダ固有のIDとか、デバイス名とかでできるよね?)
なぜなら、正常にアタッチされている場合とされていない場合の区別がつかないので
SMART JOYPAD3を無視すると「正常な場合」に使えなくなる。
無視しないと「異常な場合」に使えなくなる。
しかも、SMART JOYPAD3は不具合が発生しにくい。
SMART JOYPAD3 plusは不具合が発生する可能性が高い。
両者のデバイス名はまったく同じ・・・
両者が区別できないので新たなバグの元になる可能性大
828
名前:
819
:02/02/21 23:50 ID:H/6inmeh
今日、サポートに電話してドライバの修正を要求しようとしたけど、
ず〜っと電話中だし・・・最悪。
829
名前:
名前は開発中のものです。
:02/02/22 12:07 ID:???
受話器を外してるんじゃない?
830
名前:
:02/02/22 12:33 ID:pvhATbrs
XBOXサイコー
831
名前:
名前は開発中のものです。
:02/02/22 12:39 ID:???
>>828
さっきいいともにでてたから忙しいんじゃねーの
832
名前:
名前は開発中のものです。
:02/02/22 16:23 ID:???
X-BOX=アメ車=ムダに大きい
NV2Aはパレットテクスチャに対応してるのでしょうか
833
名前:
名前は開発中のものです。
:02/02/22 16:45 ID:???
>>832
その「アメ車」ってのは、何年前のステレオタイプだ?
834
名前:
名前は開発中のものです。
:02/02/23 03:07 ID:???
アメ車っていうより、マッスルカーかも。
マッスルカーなんて言っても最近の若い者は知らんだろうが、オイルショック前に
アメリカで流行った馬力が全ての頃の車。
今、大排気量っていっても3000cc程度だが、マッスルカーはその倍以上。
835
名前:
名前は開発中のものです。
:02/02/23 17:32 ID:MLkhv75P
GT40とかでそ
836
名前:
名前は開発中のものです。
:02/02/23 17:35 ID:MLkhv75P
なんかこのスレ読んでたら、PS2見たいにテクスチャ張らないポリゴン
モデルで勝負するタイプのゲームにしたら、ここで出てる問題は氷解す
るんじゃないかと勘違いして、ゲームをつくってみたくなった今日この頃。
つうか、ゼノサーガに対抗できるソフトをつくりてー。
テクスチャなんかいらねー。
T&LとSSE使い倒して10000ポリゴン枚フレーム出してやる〜。
837
名前:
名前は開発中のものです。
:02/02/23 18:34 ID:???
60fpsで10000ポリゴンならテクスチャ貼っても出るような。
もう1桁上になるといっぱいいっぱいな感じだけど。
838
名前:
_
:02/02/24 00:32 ID:???
GF3なら1F300000ポリゴンは出たよ。
勿論、テクスチャ付きで。シェ−ダーでバンプもやってる。
839
名前:
名前は開発中のものです。
:02/02/24 01:21 ID:???
1F300000って何だ?
脳内略語を多用するシッタカ野郎は大抵使い物にならんな。
840
名前:
名前は開発中のものです。
:02/02/24 01:23 ID:???
>>839
300000ポリゴン / 1 frame の意味じゃないのか? ふつーそんな書き方
しないけど、読めなくもない。
841
名前:
名前は開発中のものです。
:02/02/24 02:02 ID:zsF8uQ0c
>>839
そうやって人を見下すような野郎は大抵使い物にならんな。
842
名前:
_
:02/02/24 03:19 ID:???
>>839
840の人が言ってるとうり、1フレームで描画したポリゴン数って意味です。
俺が使えるかどうかは、微妙かな?
まあ、1流だとは言えない。今回も、やれなかった事沢山あったし。
843
名前:
名前は開発中のものです。
:02/02/24 04:02 ID:???
他人との意思の疎通を考えた場合、より一般的な用語を使うのが当たり前。
それが出来ないアホとは仕事したくねぇ、という意味でなら同意。
>839
844
名前:
_
:02/02/24 04:15 ID:???
俺の事はもういいって。
じゃ、1Fを1Vに訂正、これなら一般的だろ?
845
名前:
名前は開発中のものです。
:02/02/24 05:25 ID:???
>844
オマエの事なんかもう誰も相手にしてないって。
消えろ。
846
名前:
名前は開発中のものです。
:02/02/24 20:48 ID:???
1F300000ポリゴンって523239424ポリゴンのことじゃないのか。
847
名前:
名前は開発中のものです。
:02/02/24 23:32 ID:TnBNktIN
ちょっとまて、1 frameって一体何秒のつもりだよ?
「リフレッシュレートが60Hzで一秒間に60 frame描画したとき」って意味か?
1 frame の時間は環境やソフトウェアによって大きく異なるぞ。
極論言うと1 frame 一秒とかも可能だろ(笑
とりあえず、そんな単位は意味が無いので作るな。
848
名前:
名前は開発中のものです。
:02/02/25 05:33 ID:???
ふーこれだから、DirectXヲタは(以下略)
849
名前:
名前は開発中のものです。
:02/02/25 05:42 ID:???
>>846
そのこころは?
マジでわからん
850
名前:
名前は開発中のものです。
:02/02/25 05:59 ID:???
16進数だろ
851
名前:
名前は開発中のものです。
:02/02/25 07:34 ID:???
>>850
なわけねーだろ!!
計算しようとしちゃったじゃねーかよ
852
名前:
名前は開発中のものです。
:02/02/25 08:47 ID:???
>>851
0x1F300000 は 523239424 ですが。
853
名前:
名前は開発中のものです。
:02/02/25 10:09 ID:???
>>852
なわけねーだろ!!
計算しようとしちゃったじゃねーかよ
854
名前:
名前は開発中のものです。
:02/02/25 10:09 ID:???
>>852
納得
855
名前:
名前は開発中のものです。
:02/02/25 12:24 ID:???
>>847
だな
856
名前:
名前は開発中のものです。
:02/02/25 13:25 ID:???
1 frame が何秒であろうと、triangles / frame という単位は
シーン自体の複雑さを表す指標として役割を果たす。
frame はそもそも無次元なので、時間の次元を持つ秒と
単純に比較している
>>847
の論理は意味を成さない。
857
名前:
名前は開発中のものです。
:02/02/25 13:38 ID:???
>frame はそもそも無次元なので
ごめん、折れには理解できないや。(藁
その上の2行も答えになってないし。
1frame(1/60秒)みたいに誤解されないように書けばいいこと。
858
名前:
名前は開発中のものです。
:02/02/25 21:16 ID:???
単位時間あたりにだせるポリゴン数の話じゃなかったのかよ?
859
名前:
名前は開発中のものです。
:02/02/25 21:41 ID:???
>>856
3D野郎によくいるヘリクツが得意な人ですか?
860
名前:
847
:02/02/25 23:20 ID:nuWG/p8d
>>856
>シーン自体の複雑さを表す指標
「ポリゴン数=複雑さ」っていつの時代の話だ?
>frame はそもそも無次元なので、時間の次元を持つ秒と単純に比較している
まず、frameはゲーム中における「単位時間」と考えることも出来る。
というか、俺はこれを前提として話したんだが・・・。
わかりやすいように簡単な例を提示します。
A:「マシン新しくしたよ。PIIIの1.0GHzのマシン買ったの」
B:「へぇ〜CPUの速度が速くなったね〜」
A:「Hzは速度の単位ではないよ。次元が別だよ」
B:「・・・」
861
名前:
名前は開発中のものです。
:02/02/26 00:58 ID:???
>>860
>frameはゲーム中における「単位時間」
時間に対してフレーム数が固定されてないと性能比較の話がなりたたない
今回は不適切
>わかりやすいように簡単な例を提示します。
なにがいいたのかわかりません
862
名前:
名前は開発中のものです。
:02/02/26 01:05 ID:???
単位とすれば可変な長さの1フレームよりも固定の長さ1秒の方が適切だと思うんだが、
なんで訳のわからない論争してんの?
863
名前:
名前は開発中のものです。
:02/02/26 01:23 ID:???
856の言うように、1フレームは時間次元の単位ではなく
単なる無次元の計数と考えたほうが明らかに合理的だよな。
>「ポリゴン数=複雑さ」っていつの時代の話だ?
複雑さを表す1つの指標であることには変わりないと思うが?
864
名前:
名前は開発中のものです。
:02/02/26 01:31 ID:???
フレームとvsyncを勘違いしてるんじゃないだろうな?
865
名前:
名前は開発中のものです。
:02/02/26 01:40 ID:???
>>847
=
>>860
わけ わか らん♪
∧_∧ ∧_∧ ∧_∧
( ・∀・) ( ・∀・) ( ・∀・)
⊂ ⊂ ) ( U つ ⊂__へ つ
< < < ) ) ) (_)|
(_(_) (__)_) 彡(__)
866
名前:
名前は開発中のものです。
:02/02/26 10:37 ID:???
>862
禿同。
てか、poly/secが一般的な単位なんだからそれ使えばいい話だと思うが。
867
名前:
名前は開発中のものです。
:02/02/26 11:16 ID:???
プログラマにとって重要なのはpoly/secとframe/sec(fps)
グラフィックデザイナにとって重要なのはpoly/frame
868
名前:
名前は開発中のものです。
:02/02/26 19:03 ID:???
気になってたんだがなんで鬱だ氏のうなんだ
869
名前:
名前は開発中のものです。
:02/02/26 19:35 ID:???
>>868
初代スレが鬱だ氏のうだったから
870
名前:
名前は開発中のものです。
:02/02/26 19:42 ID:???
DirectX5くらいの時はバグ酷かったしね。
環境で動かないなんて当たり前だったし。
871
名前:
名前は開発中のものです。
:02/02/27 03:40 ID:???
DirectX8.1って日本語ドキュメント出てるんですか?
M$のサイト見たけど、あがってないような・・・・・。
872
名前:
名前は開発中のものです。
:02/02/27 03:48 ID:???
8.1の日本語ドキュメントはいくら待っても出ません。
873
名前:
名前は開発中のものです。
:02/02/27 03:49 ID:???
chmをhtmlに分解してから翻訳ソフトにかけてchmに戻す。
これで日本語ドキュメントの完成。
874
名前:
名前は開発中のものです。
:02/02/27 04:04 ID:???
>871
糞ガイシュツ。
>>683-684
875
名前:
名前は開発中のものです。
:02/02/27 12:24 ID:???
どうしてDirectX AppWizardの生成するコードは
CMyD3DApplication クラス内で ID3DXMesh* を使ってるんだ?
CD3DMesh* じゃダメなのか?
CD3DMeshの使いどころが厨だからわからんチン。
876
名前:
名前は開発中のものです。
:02/02/28 09:32 ID:wFzdbIi3
同じ処理をフルスクリーンとウインドウで動かすと、
ウインドウモードのほうが速いんですけど、これって
普通なんですか?
(イメージ的にフルスクリーンの方が速いと思ってたんですけど)
877
名前:
名前は開発中のものです。
:02/02/28 10:08 ID:???
ウインドウモードではモニターのリフレッシュレートを無視して
描画するから速くなるかも。
878
名前:
名前は開発中のものです。
:02/02/28 11:39 ID:???
逆にいうとフルスクリーンでリフレッシュレートに依存するプログラム書いていると、一定以上FPSが上がらない。
それと、ビデオ周りがうんこだとフルスクリーンの方が遅い場合もある。
まあ今時のものなら考えられんけど
879
名前:
名前は開発中のものです。
:02/03/01 09:16 ID:SPjU9Ic9
Visual C++ 5.0 SP3とDirectX 8.1 SDKで
>D:\DXSDK\INCLUDE\d3dx8math.h(259) : error C2065: 'UINT_PTR' : 定義されていない識別子です。
とか怒られるんだけどなんなんやろね。
typedef UINT UINT_PTR;
とかやって強引に通してるけど。大人しく.NET買えってことですか。
それと、MSのサポート技術情報ページ、
なんか知らんうちにリニューアルされてますが、ちゃんと検索できます?
IE5.5SP2でもIE6でも本家の英語サイトでも駄目だぁ。
880
名前:
名前は開発中のものです。
:02/03/01 20:03 ID:???
>879
VC++6.0買えってこと。
どうせ.NETもいくつかSPあたるまで使い物にならないだろうし。
881
名前:
名前は開発中のものです。
:02/03/03 04:44 ID:???
>>879
最新のPlatform SDKを落としてみたら?
882
名前:
:02/03/07 16:15 ID:???
半透明ポリゴンのソートの実装サンプルってない?
MSとかNVidiaのはXフォーマット用のクラスで中みえないし
個人HPでもあんまり解説してないですよね〜
海外のエンジン集めたHPとかならあるんだろうけど、逆にありすぎてわからん
(質もわかりにくいし
頂点フォーマットが複数ある場合、頂点バッファではなく、
floatの配列に突っ込んで描画すんのかなぁ?
883
名前:
名前は開発中のものです。
:02/03/07 17:58 ID:???
>>879
俺も同じ現象が出てたよ。VC5 SP3。
>>881
氏 の通りにやって動かしたよ。
俺がちゃんとした解決策を知ったのはOpenGLで書く決心がついてからだった… タイミング悪すぎ。
884
名前:
_
:02/03/07 19:13 ID:???
>882
意味よくわからんのだが、普通にソートするだけじゃダメ?
885
名前:
:02/03/07 19:43 ID:???
うーん並び替えのアルゴリズムはQSORTや他のなんでもいいんだけど、
どーいうデーター構造&GPUを考えるとVRAMorSYSTEMメモリの使い分けとかどうすんのかなぁ、と
あと並び替えの基準とする座標って、三角形の3頂点のどれかでいいの?
それとも、重心とか別に求めた座標使わないと駄目?
886
名前:
名前は開発中のものです。
:02/03/07 20:20 ID:M+bebc/H
>>885
メッシュの重心じゃ駄目かに?
つーか普通半透明ポリゴンのソートって言えばメッシュ単位だろ?
流石にポリゴン1枚1枚でソートはしないと思うぞ。
結局ドロープリミテブに渡して描画して貰うんだから
意味ないじゃん。
887
名前:
:02/03/07 20:57 ID:???
まぁゲームだとメッシュ単位でいいんだけど、切り替え式でポリゴン単位も実装したいと思って〜
つか、人体とか入り組んだ形状だとメッシュ単位だとおかしくなるでしょ?
人体のパーツ(BONE)毎にソートすればいいけど、それでも接続部分でおかしくなりそう
間違ってる?
888
名前:
名前は開発中のものです。
:02/03/07 21:26 ID:???
半透明は使わないようにする。これが最強。
半透明以外の部分が極まってくると、半透明部分は屈折とかやりたくなるのよ。
そうすると入り組んだ形状がどうしようもなくて、結局半透明は使わないで
くださいという結論になる。窓ガラス以外の半透明禁止!
889
名前:
名前は開発中のものです。
:02/03/07 23:10 ID:mRevsoRy
>>888
の理由で窓ガラスを全部鏡にしたことあったりして。
そしたら全面鏡張りの部屋になたよ。
890
名前:
◆qZpyBXM2
:02/03/08 00:11 ID:???
891
名前:
名前は開発中のものです。
:02/03/08 23:49 ID:kqtc4bt/
FAQ っぽいのですが…
DirectDraw7 でフルスクリーンにした途端、指定したウィンドウの縦サイズが
画面高さ - (多分)タスクバーの高さ に固定されてしまいます。
画面の下側をクリックするとデスクトップのアイコン等がいじれてしまうのですが、どうしたらいいでしょうか?
892
名前:
名前は開発中のものです。
:02/03/08 23:52 ID:???
>>891
環境プリーズ
893
名前:
891
:02/03/09 00:04 ID:FSCavH5A
>>892
書き忘れました^^
Win2k sp2
VisualC++6.0
DirectX8.1
で、DirectDraw7 です。よろしくおえがいします。
894
名前:
名前は開発中のものです。
:02/03/09 00:11 ID:heeM/QyX
http://www.inkando.com/cgi-rankingplus/rankin.cgi?id=0511030508
895
名前:
891
:02/03/09 00:26 ID:FSCavH5A
なんとなくタイトルバーの高さな気もします。
SetDisplayMode をしないときは正常サイズなので
SetDisplayMode が何かをしているのだと思うのですが…。
変更するだけならまだしも、変更後、再変更不可能なのです。
どうしたらいいでしょうか?
896
名前:
名前は開発中のものです。
:02/03/09 00:59 ID:???
>>895
ビデオカードは?
とりあえずはビデオカードのドライバ入れなおしてみたら?
897
名前:
名前は開発中のものです。
:02/03/09 01:25 ID:???
>>895
ソース出せるなら、関係しそうな部分だけでも出してみ。
898
名前:
895
:02/03/09 11:50 ID:ixeDcFTn
ちょっと
>>891
で説明していた事は間違いだった事がわかりました。
SetCooperativeLevel で、ウィンドウの子ウィンドウを渡していたのですが、そのせいで、親ウィンドウのサイズが
親ウィンドウが画面サイズいっぱいになった時の子ウィンドウの大きさ
になっていたみたいです(タイトルバーとボーダーの分をタスクバーの高さと勘違いしていました)
で、結局、何がしたくて、困っている問題は何かなのですが
したいこと
ウィンドウのクライアント領域のサイズを画面サイズにして、
フルスクリーン時には画面の左上にクライアント領域の左上がくるように、
通常のウィンドウ時は普通のウィンドウとして扱いたい。
困っている事
協調レベルのセットと解像度変更をすると、ウィンドウのサイズ(非クライアント領域も含めたサイズ)
が、解像度と同じに設定されてしまって変更できない。
(マウスイベントを拾いたいので、フルスクリーン時に画面いっぱいのクライアント領域にすることが必須なのです)
>>896
Millenium G400 なのですが…。ドライバはおかしくなさそうです。
>>897
ちょっと質問の内容変更しましたが、やっぱりソース必要でしょうか?
これはなんとかなるでしょうか?よろしくお願いします。
899
名前:
名前は開発中のものです。
:02/03/09 15:02 ID:???
>>898
フルスクリーンモード時
親ウィンドウの非クライアント領域で発生したメッセージ捕まえて、子ウィンドウの
クライアント領域で発生したメッセージに変換する。
で良いんじゃないの? 非クライアント領域で発生したメッセージを、クライアント
領域へのメッセージに変換するのは、WM_NCHITTEST に対して HITCLIENT 返
せば OK。
900
名前:
898
:02/03/10 13:14 ID:0/yRfR5S
>>899
わ〜!望んでいた事ができそうです〜〜!!ありがとうございます〜〜!!
あと、 HITCLIENT ではなくて HTCLIENT ですよね?
あと、ウィンドウの左上とクライアント領域の左上の差をできるだけ実行時の
コストがかからないで取得する方法ってあるでしょうか?
901
名前:
900
:02/03/10 14:10 ID:0/yRfR5S
ちなみに私は安直なので↓のようなコードしか浮かばないのですが
もっといい方法はありますか?
POINT ptClient;
ptClient.x = 0;
ptClient.y = 0;
::ClientToScreen(hWnd, &ptClient);
RECT rcWindow;
::GetWindowRect(hWnd, &rcWindow);
x = LOWORD(lParam) + (ptClient.x - rcWindow.left);
y = HIWORD(lParam) + (ptClient.y - rcWindow.top);
902
名前:
名前は開発中のものです。
:02/03/10 15:04 ID:???
>>900
そこまでいくと DirectX の質問じゃないだろ。プログラム技術板の Win32 API スレ
で聞いたほうが良いぞ。
903
名前:
名前は開発中のものです。
:02/03/10 16:15 ID:???
DirectX8でウィンドウのサイズ変更時に勝手にウィンドウサイズに
合わせてスプライトが伸縮してしまうんですが、どうしたらいいんでしょうか?
904
名前:
名前は開発中のものです。
:02/03/10 16:38 ID:zRtP+ORA
バックバッファの転送のところをチェック
転送元の範囲を固定でなく、windowのリサイズにあわせてやればok
905
名前:
901
:02/03/11 00:18 ID:nAiYUbSf
>>902
たしかにそうですね。とりあえずうまく逝ってるのでこれで我慢します。
で新たに質問なのですが
Flipしようとすると DDERR_NOTFLIPPABLE が返ってきます。
フルスクリーンですし、サーフェイス作成時に
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount = 1;
と指定していて、ぶら下がってるサーフェイスもちゃんと取得できています。
Flipの引数は(NULL, DDFLIP_WAIT)でやっています。
ビデオボードは Millenium G400
DirectX8.1 で DirectDraw7 を使っています。
なぜなのかさっぱりわかりません、どういった理由が考えられるでしょう?
よろしくお願いします。
906
名前:
名前は開発中のものです。
:02/03/11 00:23 ID:sZq/vYAU
DirectX7でBltを使うときに
DDBLT_WAITを指定しているんですが、
Blt後のGetBltStatusがDDERR_WASSTILLDRAWINGを
返します。
なんで描画が終わるまで待っててくれないんでしょう。
907
名前:
905
:02/03/11 13:52 ID:iNy4rQum
すいません、どうしてもわかりません。何故 NOTFLIPPABLE になってしまうのでしょうか?
#include <windows.h>
#include <ddraw.h>
char szClassName[] = "Windblow-Window";
LPDIRECTDRAWSURFACE7 pSurfPrim = NULL;
LPDIRECTDRAWSURFACE7 pSurfBack = NULL;
LPDIRECTDRAW7 pDD7 = NULL;
LRESULT CALLBACK InitialWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam){
switch (msg){
case WM_CLOSE:
DestroyWindow(hWnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
}
return ::DefWindowProc(hWnd, msg, wParam, lParam);
}
int WinMain(HINSTANCE hInstance, HINSTANCE hPreInst, LPSTR lpszCmdLine, int nCmdShow){
HWND hWnd = NULL;
bool bFullScreen = true;
WNDCLASSEX wndClass;
ZeroMemory(&wndClass, sizeof(wndClass));
wndClass.cbSize = sizeof (wndClass);
wndClass.style = CS_HREDRAW | CS_VREDRAW;
wndClass.lpfnWndProc = InitialWndProc;
wndClass.cbClsExtra = 0;
wndClass.cbWndExtra = 0;
wndClass.hInstance = hInstance;
wndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wndClass.hIconSm = NULL;
wndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
wndClass.hbrBackground = (HBRUSH)GetStockObject(GRAY_BRUSH);
wndClass.lpszClassName = szClassName;
wndClass.lpszMenuName = NULL;
if (!::RegisterClassEx(&wndClass)) {
return 1;
}
DWORD windowStyle = WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX;
DWORD windowStyleEx = WS_EX_DLGMODALFRAME;
RECT rcClient;
::SetRect ( &rcClient, 0, 0, 640, 480);
::AdjustWindowRectEx ( &rcClient, windowStyle, FALSE, windowStyleEx);
続く
908
名前:
905
:02/03/11 13:53 ID:iNy4rQum
hWnd = ::CreateWindowEx(windowStyleEx, szClassName, "", windowStyle, CW_USEDEFAULT, CW_USEDEFAULT, rcClient.right - rcClient.left, rcClient.bottom - rcClient.top, NULL, NULL, hInstance, NULL);
if ( !hWnd) {
return 1;
}
HRESULT ret;
ret = DirectDrawCreateEx( NULL, (void**)&pDD7, IID_IDirectDraw7, NULL);
if ( ret != DD_OK) {
MessageBox(NULL, (LPCSTR)"DirectDraw 初期化に失敗しました", (LPCSTR)"エラー", MB_OK);
}
int ddsclFlags = bFullScreen ? (DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN):(DDSCL_NORMAL);
ret = pDD7->SetCooperativeLevel( hWnd, ddsclFlags);
if ( DD_OK != ret) {
MessageBox(NULL, (LPCSTR)"協調レベル設定に失敗しました", (LPCSTR)"エラー", MB_OK);
}
::ShowWindow( hWnd, SW_SHOW);
::UpdateWindow( hWnd);
if ( bFullScreen) {
if ( DD_OK != pDD7->SetDisplayMode ( 640, 480, 24, 0, 0)){
MessageBox(NULL, (LPCSTR)"解像度変更に失敗しました", (LPCSTR)"エラー", MB_OK);
}
DDSURFACEDESC2 ddsd;
ZeroMemory(&ddsd, sizeof(ddsd));
ddsd.dwSize = sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount = 1;
if (DD_OK != pDD7->CreateSurface( &ddsd, &pSurfPrim, NULL)) {
MessageBox(NULL, (LPCSTR)"プライマリサーフェイスの作成に失敗しました", (LPCSTR)"エラー", MB_OK);
exit(1);
}
DDSCAPS2 ddsCaps;
ZeroMemory(&ddsCaps, sizeof(ddsCaps));
ddsCaps.dwCaps = DDSCAPS_BACKBUFFER;
if (DD_OK != pSurfPrim->GetAttachedSurface(&ddsCaps, &pSurfPrim)) {
MessageBox(NULL, (LPCSTR)"バックサーフェイスの取得に失敗しました", (LPCSTR)"エラー", MB_OK);
exit(1);
}
}else{
続く
909
名前:
905
:02/03/11 13:54 ID:iNy4rQum
DDSURFACEDESC2 ddsd;
ZeroMemory(&ddsd, sizeof(ddsd));
ddsd.dwSize = sizeof(ddsd);
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
if ( DD_OK != pDD7->CreateSurface(&ddsd, &pSurfPrim, NULL)) {
MessageBox(NULL, (LPCSTR)"プライマリサーフェイスの作成に失敗しました", (LPCSTR)"エラー", MB_OK);
exit(1);
}
}
LPDIRECTDRAWSURFACE7 pChip;
DDSURFACEDESC2 ddsd2;
ZeroMemory(&ddsd2, sizeof(ddsd2));
ddsd2.dwSize = sizeof(ddsd2);
ddsd2.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddsd2.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddsd2.dwWidth = 32;
ddsd2.dwHeight = 32;
if (DD_OK != pDD7->CreateSurface( &ddsd2, &pChip, NULL)){
MessageBox(NULL, (LPCSTR)"オフスクリーンサーフェイスの作成に失敗しました", (LPCSTR)"エラー", MB_OK);
exit(1);
}
続く
910
名前:
905
:02/03/11 13:54 ID:iNy4rQum
switch ( pSurfPrim->Flip( NULL, DDFLIP_WAIT) ){
case DD_OK:
break;
case DDERR_GENERIC:
::SetWindowText(hWnd, "DDERR_GENERIC");
break;
case DDERR_INVALIDOBJECT:
::SetWindowText(hWnd, "DDERR_INVALIDOBJECT");
break;
case DDERR_INVALIDPARAMS:
::SetWindowText(hWnd, "DDERR_INVALIDPARAMS");
break;
case DDERR_NOFLIPHW:
::SetWindowText(hWnd, "DDERR_NOFLIPHW");
break;
case DDERR_NOTFLIPPABLE:
::SetWindowText(hWnd, "DDERR_NOTFLIPPABLE");
break;
case DDERR_SURFACEBUSY:
::SetWindowText(hWnd, "DDERR_SURFACEBUSY");
break;
case DDERR_SURFACELOST:
::SetWindowText(hWnd, "DDERR_SURFACELOST");
break;
case DDERR_UNSUPPORTED:
::SetWindowText(hWnd, "DDERR_UNSUPPORTED");
break;
case DDERR_WASSTILLDRAWING:
::SetWindowText(hWnd, "DDERR_WASSTILLDRAWING");
break;
default:
::SetWindowText(hWnd, "不明なエラー");
break;
}
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
以上です。いったいどこを間違えているのでしょう?
911
名前:
名前は開発中のものです。
:02/03/11 15:29 ID:???
>905
問題の個所くらい書け。
912
名前:
名前は開発中のものです。
:02/03/11 15:35 ID:MdXhYgnA
>906
WaitForVerticalBlank() を挟んでみたら?
で、便乗質問なんだけど、WaitForVerticalBlank()って描画ループの間に挟まないとダメみたいなんだけど、どうよ?
俺はDirectDrawの初期化の時なんかに一度だけ呼び出せば良いと思ってた。
913
名前:
名前は開発中のものです。
:02/03/11 15:55 ID:???
>905
まずSDKのサンプルでも同じか確認してくれ。
ビデオカード依存なら他の環境ではでなさそうだし。
914
名前:
名前は開発中のものです。
:02/03/11 15:58 ID:MdXhYgnA
>>913
どうやらループ毎に呼び出すのが正解らしい。
サンプルはDX7のヤツなんだが、WormHoleのやつしか使ってなかった。ただしメインループ内で使ってたな。
これは小言だが、***_FAITとかって信用できん。。これもビデオカード依存かも。
915
名前:
905
:02/03/11 16:14 ID:NNQaCTIn
鬱だ…。バックバッファの取得でプライマリバッファへのポインタ破壊してました。
お騒がせしました。ほんとにスレタイトル通りって感じです。
916
名前:
914
:02/03/11 17:12 ID:???
>>914
***_FAIT -> ***_WAIT
鬱だ死のう
917
名前:
906
:02/03/11 23:35 ID:s9ACuIQk
>>912
、
>>914
ありがとうございます。
プログラムとしてはGetBltStatusを見て描画が終わるまで
ループさせているので動作に問題はないのですが、
ちょっと気になったので質問してみました。
やっぱりこのフラグ信用できないんだ・・・。
918
名前:
名前は開発中のものです。
:02/03/12 21:32 ID:nri+3Ey/
ゲーム作ってる人はclassつかってるの?
それとも昔ながらの構造体+関数?
919
名前:
名前は開発中のものです。
:02/03/12 21:42 ID:???
>>918
モジュールの概念は知っとるけ?あと、externやstaticの使い方は?
つーか、classの使い方を覚えるよりも、コッチを先に覚えるべし。
920
名前:
名前は開発中のものです。
:02/03/12 22:08 ID:nri+3Ey/
>>919
うん、一応は。
Class化するかどうかは好みの問題?
921
名前:
名前は開発中のものです。
:02/03/12 23:55 ID:???
>>919
そんなことは聞いてません
922
名前:
:02/03/13 00:35 ID:XCyICkzD
windowsならクラス使うでしょ
コンソールとか、c++の動作がキモイ環境ならC Only
923
名前:
名前は開発中のものです。
:02/03/13 00:44 ID:cmWHcEPh
ゲーム製作者ならば
C++禁止、ランタイムのmalloc禁止は当然だろ。
市販ゲームでハード依存なんて問題外だからDirectX禁止。
924
名前:
名前は開発中のものです。
:02/03/13 00:46 ID:???
>>923
ネタは sage てな。
925
名前:
名前は開発中のものです。
:02/03/13 13:31 ID:???
>>923
C++ と malloc と DirectX が苦手なんですね。
926
名前:
名前は開発中のものです。
:02/03/13 16:55 ID:???
そのとおり。
なんとかしてください
927
名前:
名前は開発中のものです。
:02/03/13 17:08 ID:???
うふふふふ、DirectX 8.1 SDKの入った環境にPlatform SDKを入れて、
Platform SDKのDirectX 8.1 SDKプレビュー版をアンインストールしたら
DirectX 8.1 SDKがツールもサンプルも動かなくなって
インストールもアンインストールもできなくなってしまいました。
Windows Installer Clean Upも効かないでやんの。
結局、Win2kからクリーンインストールし直したぞよ。
みんなも気をつけてね。
928
名前:
名前は開発中のものです。
:02/03/13 18:24 ID:???
>>925
malloc にワラタ
つーかWindows自体ハード依存してるから全ての市販ゲームは禁止な罠
929
名前:
名前は開発中のものです。
:02/03/13 19:44 ID:dMh5H0pu
クラス使わないでCオンリーとか言ってるけど
実際は自分でクラスまがいな設計にしちまうんだろ?
930
名前:
名前は開発中のものです。
:02/03/13 21:14 ID:???
コンシューマーと PC を混同している方がいらっしゃいますね。
931
名前:
名前は開発中のものです。
:02/03/13 21:31 ID:???
C/C++ネタは別スレで頼む。ここは由緒あるDirectXスレだ。
932
名前:
名前は開発中のものです。
:02/03/13 21:44 ID:e1uF0puM
で、結局DirectXでのクラスの話はどうなのよ?
933
名前:
名前は開発中のものです。
:02/03/13 22:14 ID:???
コンシューマはハード依存しません(藁
934
名前:
名前は開発中のものです。
:02/03/13 22:34 ID:???
>つーかWindows自体ハード依存してるから全ての市販ゲームは禁止な罠
ハード依存の意味がわかってるのかと小一時間(略
935
名前:
名前は開発中のものです。
:02/03/13 22:46 ID:5XPBpgUY
DirectDraw での RECT の指定についてなのですが、
left=0, top=0, right=639, bottom=479
は 全部で639ピクセル x 679ピクセル ですか?
それとも 640ピクセル x 680ピクセル ですか?
936
名前:
名前は開発中のものです。
:02/03/13 22:57 ID:???
>935
冷静に読み直せ。どっちも違う。
937
名前:
名前は開発中のものです。
:02/03/13 23:05 ID:???
>935
ワラタ
938
名前:
名前は開発中のものです。
:02/03/13 23:14 ID:???
>>936
そのくらいわかって答えてやれよ
939
名前:
935
:02/03/13 23:51 ID:TK/wJ18X
恥ずかしい………。479? 480?
結局どっちなのでしょうか?
940
名前:
名前は開発中のものです。
:02/03/13 23:53 ID:???
>>939
479
941
名前:
名前は開発中のものです。
:02/03/13 23:55 ID:???
>935
DirectX7のドキュメントには書いているんだけどな。Bltの項目を読め!
つーか、そのくらいプログラム組んで比べれば分かるだろうよ?
942
名前:
935
:02/03/14 00:08 ID:oILUKkp9
>>940
ありがとうございます。
>>941
この扱い方って通常の RECT の扱い方と違いませんか?
実際試してみて、自分の中で結論は出ていたんですけど、
おっちょこちょいなので、やっぱりどこかでミスしてるのかなぁ?と
不安になったので人に聞いてみたかったんです。
とりあえずあっていたのでよかったです。ありがとうございます。
943
名前:
名前は開発中のものです。
:02/03/14 00:29 ID:???
>938
メール欄見れ。
944
名前:
名前は開発中のものです。
:02/03/14 00:37 ID:???
いや、その答えじゃなくて
945
名前:
名前は開発中のものです。
:02/03/15 12:49 ID:jZhmWUKm
どなたかDirectX7のヘルプファイルをいただけないでしょうか?
お願いします!
946
名前:
親切な人
:02/03/15 12:55 ID:???
ヤフーオークションで、凄い人気商品、発見!!!
「高性能ビデオスタビライザー」↓
http://user.auctions.yahoo.co.jp/jp/user/NEO_UURONNTYA
ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。
947
名前:
名前は開発中のものです。
:02/03/15 13:02 ID:???
インストールしようとすると互換性がナイとかPCに言われる
948
名前:
最新話題☆
:02/03/15 13:59 ID:A6GWIkAI
http://www.kokorode.com/000000/
949
名前:
名前は開発中のものです。
:02/03/15 14:21 ID:???
>945
春厨
>946
ジサクジエン
>947
白痴
>948
ブラクラ
950
名前:
名前は開発中のものです。
:02/03/15 14:59 ID:???
>>945-949
ジサクジエン
951
名前:
名前は開発中のものです。
:02/03/15 15:33 ID:???
>950
そして次スレよろ。
952
名前:
名前は開発中のものです。
:02/03/15 15:46 ID:88FAG1SZ
すみません
既に語られているかもしれませんが
お教えください。
MS.NETを目前とした現在、
Win32APIは今更勉強する価値のないものでしょうか
MS.NETではWin32とは異なったプログラミングを行う
と聞きました。調べれば十分わかるのかもしれませんが
よろしかったらお願いします、。
953
名前:
名前は開発中のものです。
:02/03/15 16:31 ID:???
ム板へどうぞ。
954
名前:
名前は開発中のものです。
:02/03/15 19:06 ID:???
おいおい、もう次スレの季節かよ。
俺たちこの1000カキコの間何やってたんだ?
955
名前:
名前は開発中のものです。
:02/03/15 19:47 ID:???
>>952
MS.NETつかわなければ問題ないやん。
956
名前:
名前は開発中のものです。
:02/03/15 20:35 ID:oaVmmDUZ
いや、ほんとに互換性がナイって言われるんですけど
957
名前:
名前は開発中のものです。
:02/03/15 21:06 ID:???
>>956
何をどうしようとして互換性がないと言われているの?
958
名前:
名前は開発中のものです。
:02/03/16 13:10 ID:tKG1AKPE
>>955
,957
いや、そんな低レベルな話じゃなくって
959
名前:
名前は開発中のものです。
:02/03/16 13:18 ID:???
>>952
.NETに移行するにしても、ある時期を境にスパっと切り替わるんじゃなくて、
何年もかけて徐々に移行すると思われ。
両方やらざるをえないでしょ。
960
名前:
名前は開発中のものです。
:02/03/16 13:54 ID:hFa2PiAN
インストールしようとすると互換性がナイって言われるんですけど、
です
961
名前:
名前は開発中のものです。
:02/03/16 14:44 ID:dCR4FV9T
便乗質問ですが、いまから COM の勉強する意味もありますか?
DirectX はこれからも COM ですか?
962
名前:
名前は開発中のものです。
:02/03/16 14:47 ID:iDfRnZYa
DirectXに代わるマルチメディアAPIが.NETに付くかってーと
ちょっと疑問。
DirectXは低レベルレイヤーだからこそ、あの性能と互換性が実現できる訳で
.NETのような高位のレイヤーで同じようなものを作るのは大変だと思う。
仮にMac用の.NETがリリースされたとして、フォースフィードバックなジョイスティックとか
同じようにサポート出来るのかってことだね。
で、結局は妥協案として.NETで動くDirectXを作るって形になると思う。
.NETのくせにWindows専用と本末転倒になりかねないけど。
現在Direct3Dとかって.NETで動かせるの?DXforVBなら動いたりする?
963
名前:
名前は開発中のものです。
:02/03/16 14:53 ID:???
>>962
貴殿、.NET SDKのサンプル見てみたか?
964
名前:
名前は開発中のものです。
:02/03/16 14:57 ID:iDfRnZYa
>>961
俺も過去そう思ってATLとかCOMとか勉強したけど
あんまり意味なかったような気がする・・。
結局COMってね、まずVBありきなシステムなのよ。
C++プログラマからみれば蛇足とも思えるシステムが
VB利用時の為にCOMとして定義して付け加えられてる。
C++でハイパフォーマンスなゲームってカテゴリには、
COMの出番はまったくないと言っていい。
965
名前:
名前は開発中のものです。
:02/03/16 15:02 ID:iDfRnZYa
>>963
DirectShowのサンプル一つで、DirectXの全てだとを語っていいの?
いや、俺はまだ全然未着手なので純粋な質問なのだが。
966
名前:
:02/03/16 15:05 ID:???
>>964
馬鹿ハケーン
DirectXがVersion上がっても互換性が保たれるのはCOMのおかげだろ
967
名前:
名前は開発中のものです。
:02/03/16 15:26 ID:???
>>964
> 結局COMってね、まずVBありきなシステムなのよ。
はつみみです。
968
名前:
名前は開発中のものです。
:02/03/16 16:22 ID:e3Kf3/j6
>>966
COMの再利用性ってのは
例えばIDirect3D8インターフェイスから
QueryInterfaceによってIDirect3D7インターフェイスを取得できる。
こういうことを言うのよ。
各バージョン専用のDLLがあって、各バージョン専用のライブラリファイルをリンクしなきゃならないんなら
別にCOMじゃなくても良い気がするけど。
969
名前:
名前は開発中のものです。
:02/03/16 16:41 ID:???
>>968
> COMの再利用性ってのは
それが違うと思うが。
インターフェースとデータを分離することで、ライブラリ側の内部構造を変えても
(たとえばメンバ変数を増やしても)外からは変更が見えない点が、拡張性には
重要。
> 別にCOMじゃなくても良い気がするけど。
C++ Only で構わないなら、まぁ、そうだよね。インターフェースの変換も、要は
C++ の dynamic_cast の言語非依存な仕組みだし。
ただ C++ で問題になるのは、バイナリ標準が確立していないこと、なんだよね。
970
名前:
名前は開発中のものです。
:02/03/16 16:44 ID:???
つか、DLL = COM じゃないんでしょ?
DLLにしとけば、内部変更できるわけだし
971
名前:
名前は開発中のものです。
:02/03/16 16:51 ID:???
>>970
> DLLにしとけば、内部変更できるわけだし
そうでもない。
一番ありがちなのは、C++ でクラスをエクスポートするときに、DLL のバージョンによって
インスタンスのサイズが異なる点。C++ だとプライベート変数を一つ増やしただけでインス
タンスのサイズが変わってしまうので、外部公開インターフェースが同じでも問題になりう
る。(この悪夢は DLL Hell として知られている)
もちろん素の C++ でもブリッジパターンを使って内部実装を隠蔽してしまえば、こういった
問題は避けられるんだが、そのあたりを強制して、名前の修飾規約や例外処理のバイナリ
標準を決めたものが COM。
(それ以外にもモニカやら何やら重要な概念はいくつかあるんだが、DirectX に限って
言えば、あまり関係ないから忘れて良い)
972
名前:
:02/03/16 16:55 ID:???
なるほど
973
名前:
名前は開発中のものです。
:02/03/16 17:44 ID:nuC9fmEM
>>969
>>968
の再利用性って言葉は誤っていたとは思うけど
>>968
の内容が否定されるのは納得がいかん。
COMってのは、貴方の言うようにCoClassをバージョンアップさせつつも
公開するインターフェイスの定義は変えずに、新たな定義を持ったインターフェイスを追加していく仕様だからこそ
互換性が保たれるんじゃん。
つまりDirectXが上記のような正当なCOMの使い方をしていれば、
>>968
のような
使い方が可能なはずだよ。
>インターフェースとデータを分離することで、ライブラリ側の内部構造を変えても
>(たとえばメンバ変数を増やしても)外からは変更が見えない点が、拡張性には
>重要。
DirectXでコレが実現出来ているなら、Direct3D5でも
SIMDサポートやHWTLサポートが可能になって良いはず。
974
名前:
名前は開発中のものです。
:02/03/16 17:48 ID:nuC9fmEM
まぁ、COMを使っていれば
>>971
で言われてるような
DLLのくだらない部分を意識する事が無くなるので
その点は良いかも。
975
名前:
名前は開発中のものです。
:02/03/16 18:13 ID:???
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。
意味ないじゃん…
百歩譲っても WHTL前提としないコードをWHTL使って動かしたってトラブルの元にしかならん
976
名前:
名前は開発中のものです。
:02/03/16 18:19 ID:???
>>973
> 公開するインターフェイスの定義は変えずに、新たな定義を持ったインターフェイスを
> 追加していく仕様
言いたい事は分からんでもないが、誤解を招きやすい書き方だよなぁ。慌てずに、良く整理
してから書き込んでくれ。
977
名前:
名前は開発中のものです。
:02/03/16 18:50 ID:nuC9fmEM
>>975-976
いや、つまんないツッコミはいいから
反論があるならそれを書き込んでくれ、負けず嫌い君達。w
978
名前:
名前は開発中のものです。
:02/03/16 18:58 ID:???
>>977
俺の書きたいことは 969, 971 で書いた。
それに対して反論が 973 で来てたわけだが、一部、日本語として意味不明
なので確認したわけ。で、どうなの?
979
名前:
名前は開発中のものです。
:02/03/16 18:59 ID:???
>>977
勝ち負けを競ってたのか。
Q 価値って何ですか?
A はつみみです。
980
名前:
名前は開発中のものです。
:02/03/16 19:02 ID:???
>>978
うわ、、お前と話す気失せました。
何?君は俺と罵り合いをしたい訳?
俺はそんなの不毛なんでイヤですわ、他の奴捜してください。
もうちょと大人になりなよ。w
981
名前:
名前は開発中のものです。
:02/03/16 19:04 ID:???
>>979
いやだからさ、「論」を書けよ「論」をさ。
君にそんなレス貰ってもしょうがないのよ。
982
名前:
名前は開発中のものです。
:02/03/16 19:12 ID:???
次スレは?
983
名前:
名前は開発中のものです。
:02/03/16 19:18 ID:???
>DirectXでコレが実現出来ているなら、Direct3D5でも
>SIMDサポートやHWTLサポートが可能になって良いはず。
だからさ〜 出来ないのとやらないのは別だろ…
DX5でサポートしてもいい筈 なんていいだす方が気狂ってるって
984
名前:
名前は開発中のものです。
:02/03/16 19:26 ID:???
>>983
お前さぁ、いい加減にしろよ。
COMのこともDirect3Dのことも全然知らねえのが
バレバレなの。
HWTLやSIMDならコンパネから許可/不許可を選ばせれば
ソフト的には何にも問題ないだろ。
985
名前:
名前は開発中のものです。
:02/03/16 19:29 ID:???
>>980
> 何?君は俺と罵り合いをしたい訳?
いいえ。
> CoClassをバージョンアップさせつつも公開するインターフェイスの定義は
> 変えずに、新たな定義を持ったインターフェイスを追加していく仕様
反論の核はここだと思うんだが、意味が分からんので真意を確認したわけ。
聞いた結果として「なるほど」と思うかもしれないし、お互いの齟齬がはっきり
して「ここを勘違いしてたわけね」となるかもしれないと期待したんだが、ま、
別に面倒なら説明しなくても良いよ。
別に2ちゃんねるの僻地で意思の疎通がうまくいなかくても、俺もキミも、
大して困らんし(w
986
名前:
名前は開発中のものです。
:02/03/16 19:30 ID:???
>>984
市販アプリケーションが、
このアプリケーションを動作させるときにはコントロールパネルから
HWTL を切ってください
とか書くわけ? しかもアプリケーションの発売時には、その設定は
ないわけで、初回出荷時のマニュアルにはかけないよね。
問題アリアリじゃん。
987
名前:
名前は開発中のものです。
:02/03/16 19:39 ID:???
>>985
君がサル並みの知能じゃなきゃ
そんなもん説明しなくてもわかるつ〜の。
もういいよ、やめやめ。
>>986
だからそんなもんアプリ側で関与する必要は無いの。
大体DXのコンパネには、明らかにゲームのパフォを落とす
チェックボックスが存在してるじゃねーか。
チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
988
名前:
名前は開発中のものです。
:02/03/16 19:45 ID:???
つーか、MSがなんて金かけて古いゲームを早く動く様にする必要があるんだ??
ゲームなんかすぐ陳腐化するし、60FPS超えても意味薄いだろ
おまえキーボード叩いてないで病院いった方がいいよ
989
名前:
名前は開発中のものです。
:02/03/16 19:51 ID:???
>>987
うーむ、俺はサル並みの知能なんだろうか。困ったね。
それはともかく次スレ立てておいてくれ。
990
名前:
http://www.2chan.net/img/img-box/img20020315234838.jpg
:02/03/16 19:53 ID:tIwYajuw
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
http://www.2chan.net/img/img-box/img20020315234838.jpg
へたれ絵描き氏ね
991
名前:
名前は開発中のものです。
:02/03/16 19:56 ID:???
>>987
> チェックを入れるとどうなるか、ユーザーはそれを理解し責任を持つ必要があるの。
一般ユーザに、そんな高度なことを期待できません…。
市販ソフトでマニュアルに記述がなくて、かつ標準環境で動かんような
ソフトを出すと、確実にサポートに苦情が来る。問い合わせじゃなくて。
992
名前:
名前は開発中のものです。
:02/03/16 19:58 ID:???
次スレ
鬱だ氏のう DirectX (Part 4)
http://game.2ch.net/test/read.cgi/gamedev/1016276254/
993
名前:
名前は開発中のものです。
:02/03/16 20:05 ID:???
要するにみんな知ったかぶりということで
994
名前:
名前は開発中のものです。
:02/03/16 20:11 ID:???
つーか本当にハッタリくんばっかりなんだな。
まさかここまでとは・・
正直失望しました。>ゲーム制作板
995
名前:
名前は開発中のものです。
:02/03/16 20:11 ID:???
とりあえず沈めるか。
996
名前:
名前は開発中のものです。
:02/03/16 20:13 ID:???
>>994
おそいな老い
997
名前:
名前は開発中のものです。
:02/03/16 20:15 ID:???
>>994
見切りつけるの遅すぎ(w
998
名前:
名前は開発中のものです。
:02/03/16 20:16 ID:???
まあそんなゲーム制作板がすきなんだけどな
999
名前:
名前は開発中のものです。
:02/03/16 20:21 ID:???
ユーザーを面白いと思わせるには、ハッタリも大事だよん
1000
名前:
名前は開発中のものです。
:02/03/16 20:21 ID:???
で、1000ゲット
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.