1 :
デフォルトの名無しさん :
2001/08/06(月) 21:39
3 :
デフォルトの名無しさん :2001/08/06(月) 23:07
DirectX2なんてあったっけ?
>>4 本当はこのスレが「鬱だ氏のうDirectX」なのです。
前スレは実は「鬱だ死のうGameSDK」のはずでしたが、本当に死んでいる名前なので
便宜的にシフトされています。
6 :
デフォルトの名無しさん :2001/08/07(火) 06:46
◎___ . // / . // ソ / // ラ ./ // ネ / // / ./ // ヨ / ∧空∧/___/ _______ {´ ◎ `}<ソラネーヨ! ,ィィ,ィィ\):::::::::( しししし(_つ:::::::::ヽ //ソラネーヨ/ ヽ__ノ::::::::::::::|二手 ∧空∧//___/ (;;;;;;;;;;;;;;;;;;;) {´ ◎ `}<ショラネーヨ // >>__ E::: ::::::::::l) <◎:::> <::::◎ノ <=> <=>
7 :
デフォルトの名無しさん :2001/08/07(火) 10:29
「鬱だ氏のうDirectX8」の方がよかったのでは(藁
まぁ IDirectDraw2 があるっつーことで勘弁してください
>>4 あったってー。すでに忘れて去られてるものなのね。
10 :
デフォルトの無名しさん :2001/08/07(火) 17:17
ゲーム以外でDirectX使いますか?
ゲーム以外ならOpenGLのほうがいいかも風来のシレン。
サブー
DirectX2ってあったっけ? WinG?
しまった外出君(´д`;)
駄目スレの予感
16 :
デフォルトの名無しさん :2001/08/07(火) 23:46
◎___
. // /
. // ソ /
// ラ ./
// ネ /
// / ./
// ヨ /
∧空∧/___/
_______ {´ ◎ `}<
>>15 ソラネーヨ!
,ィィ,ィィ\):::::::::(
しししし(_つ:::::::::ヽ //ソラネーヨ/
ヽ__ノ::::::::::::::|二手 ∧空∧//___/
(;;;;;;;;;;;;;;;;;;;) {´ ◎ `}<ショラネーヨ
// >>__ E::: ::::::::::l)
<◎:::> <::::◎ノ <=> <=>
アングバンドの方が面白い>11
なんかネタないっすかー?
>>19 初心者用FAQぐらいしかないんじゃない?
あったら誰か書くはずだ(オレモナー)。
良いスレだけに燻ってるのが悲しいね。
結局、ゲーム以外では使わないのか?
しかし面白いほどネタがないときに立てたな。
23 :
デフォルトの名無しさん :2001/08/08(水) 15:51
なんか面白いHPとかってない? なんだかんだで、清水とかBio系が活躍してた頃と比べると下火じゃない? 俺のブックマークは死んでるのが増えた。相互リンクしてないような 活発な団体はいないんだろうか? 結局DXさわっても、データー作成に難儀してゲーム作れないんだよねぇ Masaさん(GLだけど)とかは、裏で何やってるか不明だし、反射とかブラーとかそんな話 ばかりでちょっと系統が違うし
24 :
デフォルトの名無しさん :2001/08/08(水) 15:54
x fellows conference の参加者みても、あまり新しいメンツっていないし 既に就職して制限の多い人が多そう
そういや、vectorとかにDirectXを使うためのライブラリが たくさんあるんだが、あーいうのってどうよ?
26 :
デフォルトの名無しさん :2001/08/08(水) 21:12
ソースるように呼びかけよう。
激しくワラ・・・えるかボケェ
下火というか、現実が見えてきただけって気も。 下手に夢を語ると2chで叩かれるので 誰もうかつなことは口にしなくなった(藁 2chの弊害。
31 :
デフォルトの名無しさん :2001/08/08(水) 23:17
34 :
デフォルトの名無しさん :2001/08/09(木) 06:44
◎___
. // /
. // ソ /
// ラ ./
// ネ /
// / ./
// ヨ /
∧空∧/___/
_______ {´ ◎ `}<
>>32 ソラネーヨ!
,ィィ,ィィ\):::::::::(
しししし(_つ:::::::::ヽ //ソラネーヨ/
ヽ__ノ::::::::::::::|二手 ∧空∧//___/
(;;;;;;;;;;;;;;;;;;;) {´ ◎ `}<ショラネーヨ
// >>__ E::: ::::::::::l)
<◎:::> <::::◎ノ <=> <=>
毎回透明あぼ〜んで瞬殺してますのでよろしく。
36 :
デフォルトの名無しさん :2001/08/09(木) 19:55
ゲームがなくてラッパーばっかりってどうよ。
ゲームはいくらでもあるじゃん。 にしても、なかなかエンジンかかりまへんな、このスレ。
ラッパガリヤ萌え〜
>>36 ラッパ多いね。
ケド、他人のラッパ使う人は少ないね。
人の事は言えんケド。
40 :
39 :2001/08/10(金) 00:14
ウチにとっては他人の作ったラッパより、自作ラッパのが扱いやすいんよ。 ケド、ヘルプやサンプルを作るのが面倒なんで公開する気になれへんの。 ンなモン作るよりも、ゲームを完成させる事の方が先決なんで。
ゲームを完成させることの方が先決なのは誰でもわかってるが 完成させられないのが現実。 だからライブラリとデモでお茶を濁す。
42 :
デフォルトの名無しさん :2001/08/10(金) 02:35
自分も暇を見つけては、ライブラリ整備してるけど いつまで経ってもゲーム本編を作れる目途が立たない。 つーか無理だわ。
結局、他人のソースだとデバッグやりずらいし、 小回りきかないから自分で作る方が安心
結局みんな同じ事考えてるにDirectX 100
45 :
デフォルトの名無しさん :2001/08/10(金) 13:48
漏れは他人のラッパは、見て勉強、って使い方してます。 そういう意味で(ちと古いが)ELやDirect3Zはオープンで非常に勉強になった。 もっとオープンなラッパが増えないかなぁとよく思ったものだ。 が、人のコードほぱくって(藁)さも自分が組んだ見たいな顔する奴がいたりするので、そうもいかないようだが・・・。
いるいる、ネタ元明かさないやつね。
SDKに入ってるヘルパ関数やクラスの類はどない? どれくらいつこてる?
48 :
1 :2001/08/10(金) 18:42
ネタ無しの悲惨な
>>1 デス
ラッパは Direct3Z を元にいじったのを使ってたけど、
DirectX 8 になっていろいろ書き直さなきゃとおもいつつ
やってないや。
最近は DirectShow 関係の仕事が多いんだけど、このスレで
出せるようなネタあるかなぁ。
このスレ終了。
sageてんのに、どうして荒らしが来るんだ?
51 :
デフォルトの名無しさん :2001/08/13(月) 20:33
DirectInputはじめました。なんかよいサイト無いですか? やっぱ「マニュアル読めゴルァ」ですか?
52 :
デフォルトの名無しさん :2001/08/13(月) 23:28
53 :
モンキー :2001/08/13(月) 23:35
サンプルをまんま組み込んだDLL組んでからそれ使ってスプライトで2D表示させようとしてるんだが、遅くてかなわん。なんでだろ。 100回ぐらいならまだいいが225回ぐらい同じような描画繰り返しただけで速度がガクンと落ちる。
54 :
51 :2001/08/14(火) 02:26
>>52 他力すぎました。スマソ。
>>53 どんな環境で、どのくらいのサイズのスプライトを225個表示してんの?
53じゃないけど、敵をX ファイルで作ったインベーダーゲームで50の敵を描くと遅くなるよ‥‥。 敵を倒していくとFPS が 100/n (n は自然数) で段階的に変化してく。 つまり、17->20->25->33->50->100。 仕方ないから、一度敵をサーフェスにレンダリングしてそれをスプライトとして使ってるけど何とかならんかな?
56 :
:2001/08/14(火) 04:11
オオバカ警報が鳴りましたが?
57 :
デフォルトの名無しさん :2001/08/14(火) 04:48
>>57 直リンしまくってるけど何なの?
自分の?
59 :
デフォルトの名無しさん :2001/08/14(火) 05:21
>>53 ,
>>55 ・方法その一
リフレッシュレートを減らし、
代わりに物体の移動量を増やす。
・方法その二
描画個数を減らす。
・方法その三
PCを買い換える。
62 :
55 :2001/08/15(水) 00:56
・GeForce2 + Win2k (セレロン 733) ・GeForce3 + WinME (P3 1.2G) ・RivaTNT + Win98 (K6-2 400) ・Voodoo + Win2k (Pen2 533)
63 :
:2001/08/15(水) 01:07
つーか 使い方間違ってるとしか思えない Xファイルの表示ルーチンは何使ってるんだ?
64 :
55 :2001/08/15(水) 12:37
CD3DFile::Render を使ってます。
ソレ、母校…(学科違うけど)
>>57 どこかで見たようなIPだと思ったら…(藁
66 :
:2001/08/16(木) 01:37
renderなら間違い様が無いかも? 何がおかしいんだろう。Xファイルのコンバートが腐ってて 激重い 状態とか?
・実はソフトレンダラー ・T&Lアクセラレーションあっても使わない ・点光源、スポットライト盛り沢山 ・テクスチャがデカ過ぎ。 ・オブジェクトの表示面積がデカ過ぎ ・画面解像度デカ過ぎ ・オブジェクトのソートが変 ・シングルパスマルチテクスチャ盛り沢山 ・ゾンビスレッド盛り沢山 ・メモリリーク盛り沢山 ・メッセージポンプが糞詰まり ・VisualC Learing Edition ・
68 :
デフォルトの名無しさん :2001/08/16(木) 11:02
単にポリゴン数・頂点数の問題では?
適当に数千、万ポリゴンのオブジェクト動かしてるとか
70 :
デフォルトの名無しさん :2001/08/16(木) 14:23
DirectXインターフェースの、一つのオブジェクトの各メソッドは、 異なるスレッドから同時に呼び出したりして大丈夫なように 設計されていますか?
まにゅある見れ
>>67 > VisualC Learing Edition
アハハ〜(涙
行列の計算は最適化のあるなしで、かなり速度に影響する
74 :
デフォルトの名無しさん :2001/08/18(土) 00:43
D3D7IMでzバッファ作成したんですけど どうも、マシンによって作成されたりされなかったり しかも新しいPCでもだめなときがあります。ソース出すんで変なとこあったら教えてください ZeroMemory( &SurfaceDesc, sizeof( SurfaceDesc ) ); SurfaceDesc.dwSize = sizeof( SurfaceDesc ); BSurface->GetSurfaceDesc( &SurfaceDesc ); SurfaceDesc.dwFlags = DDSD_WIDTH | DDSD_HEIGHT | DDSD_CAPS | DDSD_PIXELFORMAT; SurfaceDesc.ddsCaps.dwCaps = DDSCAPS_ZBUFFER | DDSCAPS_SYSTEMMEMORY; SurfaceDesc.ddpfPixelFormat.dwZBufferBitDepth = 16; SurfaceDesc.ddpfPixelFormat.dwFlags = DDPF_ZBUFFER; if(lpDirectDraw7->CreateSurface(&SurfaceDesc,&ZSurface, NULL )!=D3D_OK) MessageBox(NULL,"ZCreateSurface","error",MB_OK);
>>74 >カラーバッファとZバッファが同じビット数でないとレンダリング ターゲットが
>作成できないボードがあります
というのは大丈夫?
あとZバッファはシステムメモリにおくんだっけ?
76 :
デフォルトの名無しさん :2001/08/18(土) 02:00
カラーバッファってのがプライマリサーフェスのbppのことならおなじです システムメモリはこれならドウかなーと思ってやったものなんで どっちでも同じ結果でした。 というか自分のマシンならちゃんと動くけど、ほかの3台(性能上下あり)で やったら動きませんでした。 別にハードに依存する書き方なんてできないし、しらないし DXのバージョンもおなじみたいだし。南下ほかに理由はありますか?
とりあえず、sageて書いてくれ。 初心者だと思うが、まず動く環境動かない環境を書くこと。 それから他人に聞く前にCreateSurfaceの戻り値を調べてHELPと照合してくれ。 おおよそこれで解決するはず。 それから自分のPCだけで動いて、他人のPC3台で動かない事から 環境に依存するコードを書いている場合もある。
78 :
ks :2001/08/18(土) 03:22
あのー、DirectShowのサンプルに キャプチャアプリのAmCapってありますよね? あれって、DVからの映像とかもキャプチャ/プレビューできるものなんですか?
DebugRuntimeで、Warning出まくり状態でも遅くなる。
80 :
デフォルトの名無しさん :2001/08/18(土) 19:02
HWTL 150fps SWTL 250fps なんだかなあ
DirectPlay で、OpenDPlayWithoutLobby2関数を利用する場合は プロバイダ名を指定する必要がありますよね。 プロバイダ名って、具体的にどんな文字列を指定するんですか? 接続先のIPアドレスですか?ソネット利用してますが、 まさか"so-net"ではダメですよね? 指定例が無いので分からないです。
プレイヤーキャラクタが隠れないように 手前の背景が半透明になるのってもはや標準ですかー。 鉄拳とかデビルメイクライとか。 どうやって実装すりゃ楽かのう。
83 :
:2001/08/19(日) 03:36
カメラとキャラ結ぶ線に 掛かってたら 半透明にするだけじゃないの?
だよなぁ(w
85 :
_ :2001/08/19(日) 13:41
しっかしDirectXプログラミングって盛り上がってないね。 D3DXでわからないことあってGoogleで検索かけても MSのwebヘルプしかヒットしないのはキツイ。
86 :
デフォルトの名無しさん :2001/08/19(日) 13:59
だいたい、なんでSAGEてるんだ? そこまで変なスレじゃないだろ。 どうどうとAGEろ。
87 :
デフォルトの名無しさん :2001/08/20(月) 11:33
俺もDirectXは全然資料無くて苦労したよ。 でも検索するか、それっぽいBBS覗いていけば何とかなる。
88 :
デフォルトの名無しさん :2001/08/21(火) 07:44
DI のラッパを作りたいのですが、joystick 関係がうまく行きません。 インターフェースやデバイスをグローバルにしなければならないみたいです。 グローバル変数ではラッパになりません。 こまってます。 問題は インターフェース->EnumDevices( DIDEVTYPE_JOYSTICK, ここ, NULL, DIEDFL_ATTACHEDONLY ); のコールバックらしいのですが。 DI のラッパで参考になるものは有りませんか?
ライブラリ野郎のオナニープログラミングには興味無し
90 :
89 :2001/08/21(火) 08:40
と思ったが、ただの初心者君か。 コールバック関数はたいていユーザー定義のデータを渡せるようになってるから thisを渡せばいい。 // 呼び出し hr = m_pDI->EnumDevices(DI8DEVCLASS_GAMECTRL, (LPDIENUMDEVICESCALLBACK)EnumJoystickCallback, (void*)this, DIEDFL_ATTACHEDONLY); // staticメンバ関数 BOOL CALLBACK DIWrapper::EnumJoystickCallback(LPDIDEVICEINSTANCE pdidInstance, void* pContext) { DIWrapper* pdiw = (DIWrapper*)pContext; HRESULT hr = pdiw->m_pDI->CreateDevice(pdidInstance->guidInstance, &obj->m_pDIJoystick, NULL); if(FAILED(hr)) return DIENUM_CONTINUE; return DIENUM_STOP; }
勉強になるなぁ。俺はグローバルにしてたよ。
92 :
デフォルトの名無しさん :2001/08/22(水) 02:23
すみません。意見下さい。 スキンメッシュで半透明の物体を動かすとき、 自前で変換してソートするものなんでしょうか? ちょっと溜息でそうなんですけど・・・
94 :
デフォルトの名無しさん :2001/08/23(木) 11:37
物体が全て半透明だったら、ZWRITEENABLEをFALSEにしてごまかすのも手ですが。
95 :
:2001/08/23(木) 12:39
おぉ目からウロコかも Zソートってどうやるの? なんどか出てるバケツソート(OTソート) なんだろうけど、 Z値じゃなくて W値とかでやった方がいいのかな? あと、Z値(Float)からOTのインデックス(Int)に変換するのに早い方法ないだろうか? (int)(float*65535) とかより速いのが(シフト演算?)あったのな、、、忘れたけど
96 :
日本語エラー :2001/08/23(木) 12:50
(int)(float*65535) とかより速いのが(シフト演算?)あったような、、、忘れたけど
2分木との組み合わせ?
98 :
:2001/08/25(土) 02:10
質問ですがテクスチャサポートされてない VIDEOカード上ではHELでもテクスチャって描けないんですか? DX7のDRAWPRIMITIVEでDDERR_NOTEXTUREHWこんなエラー出ちゃいました
99 :
デフォルトの名無しさん :2001/08/25(土) 10:31
OPENGLとDXじゃふかくまなぶなら OPENGLのほうがいいの?
DirectX8を深く学びすぎると、DirectX9が出たとき虚しくなる。
102 :
デフォルトの名無しさん :2001/08/25(土) 20:26
helってなに?
103 :
:2001/08/25(土) 20:50
氏ね
104 :
デフォルトの名無しさん :2001/08/25(土) 21:20
ティムティムってなに?
とりあえずD3DFontのバグを何とか直して欲しいな。
107 :
デフォルトの名無しさん :01/08/26 11:03
>105 わらえません
>>105 チョムチョムの事ならあしたのジョーの方が早い。
109 :
デフォルトの名無しさん :01/08/28 11:41 ID:zM23AVh2
>>94 それって大丈夫か?条件によっては破綻しない??
110 :
:01/08/28 11:51 ID:6e8eft4Q
馬鹿?ごまかす って書いてあるだろ。
111 :
デフォルトの名無しさん :01/08/28 11:53 ID:zM23AVh2
破綻しても見なかったことにする訳ね。スマソ
破綻しないように表示する手もあるね。
113 :
:01/09/04 01:03 ID:59YjTS8Q
cedec age
114 :
:01/09/04 01:22 ID:THUfbr9I
ここって何でネタスレ化されてるのですか?
初心者はここで聞け!スレッドに客を取られたからさ
馬鹿な1がDirectX2なんて書きやがったから
117 :
デフォルトの名無しさん :01/09/04 02:19 ID:ih5eONCo
あのぉ・・・ とあるビデオカードでビデオメモリの容量を調べたら 0バイトって帰ってきたんだけど、これ、どういう意味?
>>117 ビデオメモリに直接触れないって意味なんじゃないの?
ところで素人童貞な質問でもうしわけないんですが、 ビデオカードごとに内部の制御を変えて作っているんですか? 特にプロの方にお聞きしたいのですが。 そんなことするの大変なような気がするのですが。 iアプリですら機種ごとに作るのがめんどくさかったっていうのにw
プログラムサイズがいくらになってもいいだけ iアプリより断然マシです。
>>119 時々他人のPCで動かしてみて、おかしいところを直すだけなんじゃないの?
最初から複数のカードを想定して設計なんかできない。
開発しているうちに新しいカードが出てくる。
>>117 うんこなビデオカード&ドライバ逝ってよし
>>117 そのカードのベンダの未来のためにも放置しましょう。
124 :
_ :01/09/04 12:09 ID:PaerADqQ
>119 昔は、いろんなチップが混在していたから、互換性の問題は多かったけど 今はnVidiaとATiの2種に絞れば良いんで、そんな気にするほどではないんでないの? 明らかなドライバやDirectX側の問題は放置ってことで。 しかし、昔は酷かった。Voodooが特に元凶だった、死んでくれて良かった。
125 :
デフォルトの名無しさん :01/09/04 15:10 ID:rccG4HwI
誰かDirectSoundでWaveMapperを指定した時(LPCGUIDをNULLにしてCreateしたとき)に、 実際にマッピングされたデバイスを取得する方法知りませんか? レジストリからWaveMapperの設定拾っても、 『優先したデバイスのみを使用する』のチェックが無い時は、 設定したデバイスがビジーの時は他の空きデバイスにマッピングされるので、 特定できなくて困ってます。
GeForceを挿したデスクトップとなんでもいいからノートがあればいいわけか
127 :
デフォルトの名無しさん :01/09/06 01:46 ID:P88cOSZM
誰か SMeshContainerクラスの 内部を公開してるサイトとか知らん? ヘルプにも載ってないし、、、
128 :
:01/09/06 01:50 ID:EGOl8GTs
ソースついてたと思うが
130 :
127 :01/09/06 02:01 ID:P88cOSZM
>129 む、 そっちの方が詳しそうっすね。 ちょっと逝って来ます
131 :
127 :01/09/06 14:23 ID:cV0UwKeM
>>128 見つけました、どうも
orenomefusiana,,,
定期sage
133 :
デフォルトの名無しさん :01/09/18 09:22
ここはひとつage
対抗sage
135 :
デフォルトの名無しさん :01/09/26 22:35
う゛ぁかが重複スレ作ったのでage
136 :
デフォルトの名無しさん :01/09/26 23:09
CoCreateInstance( CLSID_DirectMusicPerformance, NULL, CLSCTX_INPROC, IID_IDirectMusicPerformance8, (void**)&g_pPerformance ); void**って何?(泣) (LPVOID*)じゃないの・・・
バカハッケソ LPVOID = VOID* LPVOID* = VOID** わかる?
LP って Long(4byte)Pointer の略だぞ
139 :
デフォルトの名無しさん :01/09/26 23:23
がーーん
恨むならゲイツを恨め。
141 :
デフォルトの名無しさん :01/09/27 02:36
その手のtypedef/defineは不整合おおいよな。 LP〜とP〜、果てはNP〜までが用意されてたり(大概レガシーIF)、 LP〜もしくはP〜しかなかったり(大概新規IF) 前者はまだしも、後者はLPなのかPなのか統一して欲しかった。 モウオソイケド
142 :
デフォルトの名無しさん :01/09/27 03:28
VC++プログラミング終わってる気がするのは 気のせい? はやくJavaみたいなまともな文法の言語が作られると うれしいなー
>>142 人はそれを C# と呼ぶ。
でも template ないんだよな。。。
144 :
デフォルトの名無しさん :01/09/27 04:00
メモリモデルflatなのにlongもクソもないよな win16の遺産か?
>144 far の間違いでは?
>>144 その通りでございます。LPARAM, WPARAM とか、昔の名残はいろいろと。
そういや Win64 の型はどうなってるんだろうね。
147 :
デフォルトの名無しさん :01/09/27 06:34
nasmとかでもさ いちいち BITS 32 だとか、パラメータの受け渡しがどうとか オブジェクトファイルの内容がどうとか 16ビット関連ってほんと、うざいよ〜 たすけて、ドラえもーん
ゲーム用途において、不定期ガベコレのある言語は 理由の如何にかかわらず却下である。
150 :
デフォルトの名無しさん :01/09/27 18:06
結局C#ってJava並な気がするんですが そう考えると、Linuxで動くJavaの方がいい感じのような・・・ 厨房質問ゴメン DWORDって何?
151 :
デフォルトの名無しさん :01/09/27 18:08
double word = 4byte形式
>>150 32bit 符号無し整数。
一般には word (語) というのは、その CPU にとってもっとも自然なデータ長を
指します。Win16 時代には 1 word = 16bit が自然だったので、Microsoft は
BYTE = 8bit 符号無し整数
WORD = 16bit 符号無し整数
DWORD (Double WORD) = 32bit 符号無し整数
と決めた。
Win32 になって自然なデータ長が 32bit になったんだけど、ソースコードの
互換性を維持するために WORD, DWORD の名前は変えずに今日に至る。
LPARAM, WPARAM も似たような事情で、Win16 時代は LPARAM は LONG
(32bit), WPARAM は WORD (16bit) たったのを、名前を変えずに引きずって
るのね。
ちなみに 32bit MIPS CPU では word が 32bit で、16bit は half word と呼ん
でます。
WORDのサイズも処理系依存なんだ サイズが定まらない INT に対するものだと思ってたよ
>一般には word (語) というのは、その CPU にとってもっとも自然なデータ長を >指します レスが早くて助かる上に、+αまで ありがとうございます Windowsプログラミングが初めてで、 しかもDirectMusic・・・ いくらMSDN見ても限界がありますね(笑)
155 :
デフォルトの名無しさん :01/09/27 21:31
DWORDはintだと思っていいんでしょうか?
156 :
デフォルトの名無しさん :01/09/27 21:33
DirectXなんて使っているとMSの思う壺だぞ。 やめとけやめとけ、 Updateするうちに互換性もなくなっちゃうぞ!
157 :
デフォルトの名無しさん :01/09/27 21:34
unsigned な
158 :
デフォルトの名無しさん :01/09/27 21:54
なるほど>157
>>156 同じくそう思ってるんですが・・・
仕事なんで仕方なくです
>>156 そういうことは DirectX 以外の選択肢を提示してから言いましょう。
DirectXなどまだ遥かにマシな部類じゃないか。
161 :
デフォルトの名無しさん :01/09/27 22:16
だろうね>160 そもそもCOMって・・・ いやそれよりもC++が痛い
スレの看板に違わぬ見事な鬱ムードやね。
>>160 同情の念を持って遺憾の意を表明いたします
低バージョンのDirectXを使えばいいジャン ウチは5.0を使っている
>>159 GDIなんてどうでしょ?
CreateDIBSectionなんて選択肢は、駄目?
あと、OpenGLが使えるという話を聞いたことがある。
>>165 マジレスしておくが。Windows 環境に限定した話ね。
- DirectX は COM テクノロジを使っている。したがって DirectX 8 をインストールしたか
らといって DirectX 5 が使えなくなるわけではない。
- GDI はハードウェアの機能を最大限に活用するような API 設計になっていないため、
パフォーマンスが著しく落ちる。3D 関係の処理などをソフトウェアでエミュレーション
した場合、現在最速の CPU, メモリを利用しても論外に遅い。
- Direct X はいろいろ機能を含んでいるが、特にフォールフィードバック対応のジョイス
ティック制御など DirectX 経由でしか使えない機能も多い。
OpenGL は、3D 描画に限れば選択肢としてはアリですが、非常に早いペースで拡張
されている DirectX API と比較すると機能が制限されます (NVIDIA のカードなどでは
非標準の拡張 OpenGL 命令を使うと DirectGraphics と遜色ないぐらい機能を使える
んですが、これ使うと移植性がなくなります)。
ただしその場合でも DirectGraphics (以前の DirectDraw, Direct3D) 以外の DirectX は
活用することになるし、OpenGL を Microsoft が将来にわたってサポートし続けるかどうか
は、何とも。むしろ OpenGL と DirectX、MS が切るなら前者という気が。
>>166 えー。
レガシーなDirectXアプリが動いてるのは、単に過去のdllを
全部ご丁寧にインストールしてくれてるからじゃないのかな?
つまり、これとCOMは関係ないと思うんだが、そこんとこどうよ?
>>167 キーワードは全部書いてあるんだから、推測でものを言わずに勉強してから出
直してこいよ。
169 :
デフォルトの名無しさん :01/09/28 09:24
OpenGL って WinXP で切るって いってなかったっけ? 切るっていっても当面動かす方法はあるんだろうけど
>>168 でもCOMである事の恩恵なんて所詮ネームスペース程度の事でしょ、
実際には167のいってるとおりじゃないの。(MSはCOMのおかげって宣伝してるけどさ)
>>170 いや、実装を共有しながら(そうでないと過去のインターフェースをサポート
しつづけるのが辛くなる)バイナリ互換性を崩さずに済むのが大きなメリット
だと思うが。
>>168 まぁ聞けや。
とりあえずsystem/system32フォルダを覗いてごらんよ。
OSに最新のDirectXランタイムをインストールするときに
コイツが何を放り込んでるのか確かめてくれや。
そしてまずは問いたい。COMの売りってナニよ?
例えばDX8のDirectXGraphicsを使うアプリを考えよ。
何でアプリがDirect3DCreate8()なんぞ呼び出しとんの?
make時にロードするdllファイルを指定してどないすんの。
こんな手続き踏まされといて、DirectXのCOM実装が
バージョン間互換のためにあるなんて言い切ってええの?
そこんとこどうよ?
173 :
デフォルトの名無しさん :01/09/28 09:39
バージョンがあがるたびにインターフェースや構造体の 名前の後ろにつく数字が大きくなっていくのはどうかと思うが。
174 :
デフォルトの名無しさん :01/09/28 09:40
>>167 過去のdllでDirectDrawCreateしたらIDirectDrawからIDirectDraw2にQueryInterfaceできんでしょーが。
>>172 COM の売りは、COM の開発者サイドにとっては
1 複数のAPIセットを比較的少ない労力で提供できる
2 バイナリ互換性を崩さない
この二つ。
> こんな手続き踏まされといて、DirectXのCOM実装が
> バージョン間互換のためにあるなんて言い切ってええの?
良いんじゃないの?
ただしバージョン間互換というのは、DirectX API を利用する側が「ソースコードを書き換えずに
新しいバージョンの DirectX API を活用できる」という意味ではなく、あくまで API 開発者サイド
が古いAPIの提供を続けやすいという意味ね。
かねてから話のあった 3DMax game edition 配布開始? 落したばかりでフリー版で何ができるかよくわからん & 初MAX者には辛い予感 だけど遊ぼうぜ〜 www.discreet.com/products/gmax/
とちあえず、 815+GF3+detonatorXP で 最大化表示→画面にゴミ発生→通常化で落ちるぞゴルァ
DirectXも8からはCOMじゃないぞ? あと、8はシステムを結構書き換えるので下位互換性もあやしくなるぞ?
179 :
デフォルトの名無しさん :01/09/28 13:32
初耳だ。COMじゃないなら特記されるような改変だと思うが 下位互換が損なわれる話も特に聞いたことがないがなぁ (毎回微妙な不具合は出てるけど、MSが悪いのかいまいち切り分けられない様な)
>>175 > 1 複数のAPIセットを比較的少ない労力で提供できる
> 2 バイナリ互換性を崩さない
とりあえずここでは2に関してレスするよ。
> > こんな手続き踏まされといて、DirectXのCOM実装が
> > バージョン間互換のためにあるなんて言い切ってええの?
> 良いんじゃないの?
そうかな。
繰り返しになって悪いんだが、
例えば
『DirectX8APIを使ったアプリケーション』と
『DirectX7APIを使ったアプリケーション』
あるいは
『DirectX7APIを使ったアプリケーション』と
『DirectX5以前のAPIを使ったアプリケーション』
の間ではロードするグラフィックス周りのdllが違ったりするよね。
新しいDirectXのインタフェースからQueryInterfaceして
古いDirectXのインタフェースを取得できないなんてザラだよね。
例えば、IDirectDraw7からIDirectDraw4を取得できなかったりとか。
最近だと、IDirect3DSurface8からIDirectDrawSurface7を取得得でき
ないおかげでGDIインタフェースとの接点を失ったりしたよね。
COMは突き詰めれば単なる実装技術だよね。 で、DirectXのインタフェースはCOMによって実装されている。 でもDirectXのインタフェースは常に過去のそれを継承してるわけじゃない。 DirectXのCOMはAPIの下位互換性も上位互換性も保証してくれるわけじゃない。 つまり、世間一般で言うところの『DirectXは過去の資産を継承する』 とかいうアレはCOMのおかげじゃない。 じゃあ実際何のおかげなのかというと、あれは巨人MSが配布する DirectXランタイムパッケージのおかげなんだよね。 過去資産継承うんぬんの宣伝文句は、ランタイムパッケージが過去の 汚点も何もかも全てを包容して、それを『DirectX』の名でワンセット で配布することで何とか成り立ってるの。バージョンアップする毎に 容量が多少増えたってMSにとっては大した問題じゃない。 だからユーザが持つ(バイナリ配布)アプリがもはや使いもしなくなった (あるいは使うことすら出来なくなった)DLLまでご丁寧に用意してくれてるの。 人に見せる看板は一緒だけどアプリから見たら中身は全くの別物だよ。
> ただしバージョン間互換というのは、DirectX API を利用する側が「ソースコードを書き換えずに > 新しいバージョンの DirectX API を活用できる」という意味ではなく、あくまで API 開発者サイド > が古いAPIの提供を続けやすいという意味ね。 ソースコード書き換えの不可避の手間とCOMを絡める気はないよ。 あんなもんはどちらかというと、MSのインタフェースデザイニング の取り組み方とか姿勢から来るものだと思う。 別に過去のインタフェースを捨てることを悪いと言ってんじゃないよ。 DirectXはマルチメディア向けのローレベルAPIの類だから、程度の差 こそあれインタフェースがガチャガチャ変わるのはまぁ仕方ないと 諦めてるよ。 割と泣くけど。
んで、結局何が言いたかったのかというと クルッ _____________ ∧_∧ / ( ・∀・ )彡< 過去はガンガン捨てるけどね! ⊂ つ | 人 Y \ し (_)  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ みたいな性質の代物に『COMを採用しましたー。ヨロシク (テヘ』 みたいに宣伝したって世間はあんまメリット感じないわけで MSもトンチンカンなネタを引きずってるなぁ、って思った。
スマン、どうでもいい訂正。 × でもDirectXのインタフェースは常に過去のそれを継承してるわけじゃない。 ○ でもDirectXのオブジェクトは常に過去のインタフェースを継承してるわけじゃない。
185 :
デフォルトの名無しさん :01/09/28 15:42
そりゃ 古いバージョン用の死んでるコード含んでるのは当たり前じゃない? 毎回最新のインターフェスと旧来のインターフェイスでコード共有なんてされたら 違うバグが発生しそうでいやん ビデオ周りのアーキテクチャが激変した時はじめて 古いインターフェイスの実装部分を差し替えればいいんだし、DX2とかの アプリの互換性も保証されてウマーじゃないの? それとSurface8からsurface7を取得するとかってあるの? 下位から上位をQueryInterfaceするんじゃないの? 取得できなくても全く問題ないと思うが
186 :
デフォルトの名無しさん :01/09/28 16:00
>>185 見てる感じ、
166>- DirectX は COM テクノロジを使っている。したがって DirectX 8 をインストールしたか
166> らといって DirectX 5 が使えなくなるわけではない。
てのがそもそも無理があって、それにツッコミが入ってるんだと思う。
>それとSurface8からsurface7を取得するとかってあるの?
>下位から上位をQueryInterfaceするんじゃないの?
試したけど出来なかったよ。
>取得できなくても全く問題ないと思うが
いや、これ結構有名だと思うよ。
システムメモリ上のサーフェスのHDCが取得できないわけで
文字描画部分の修正とかして余計な手間が増えて鬱になったよ。
Lock()して適当にメモリ転送すると速度ガクって落ちて笑えた。
つーか簡易な解決の方法はないのかな。
うーん。コンシューマーゲーム機じゃないんだから (一応)永遠に保証してくれないと困るよ 「過去はガンガン捨てるけどね!」だからこそCOMだろ〜 DirectXのバージョンが上がるごとに仕様が変わるんだからさぁ 最新の機能が使いたければ、他の仕様変更部分修正する位当たり前じゃない? 文字出力を書き直せばいいだけだし、その位で鬱になったらやってられん バイナリ互換はされてるけど、アーキテクチャは変わっていくんだからさ〜 頂点データー周りなんて毎回変わるじゃん、そっちの方がよほど書き直し量多いよ〜
188 :
デフォルトの名無しさん :01/09/28 16:20
正直、漏れもGetDC()無いのは不満があるぞ。 MSはドケチだYO!!何のためのCOMなんだYO!! Win32のぬるま湯サービスとの距離が遠くなる生活なんて耐えらんねー。 あと、ID3DXFont::DrawTextA()のパフォーマンスも納得いかねー。 コンシュマ機みてぇなやり方は面倒だやりたくねぇ。でも諦めたアル。
189 :
デフォルトの名無しさん :01/09/28 16:31
>>188 > あと、ID3DXFont::DrawTextA()のパフォーマンスも納得いかねー。
烈しく同意!!
8.1でresetがらみのバグも取るんだぞゴルァ!!>MS
190 :
デフォルトの名無しさん :01/09/28 16:32
2dものはDX7で作れや。3DでGetDCはないだろ どうせ dx8対応ビデオカードが普及してないんだから 1つ前のバージョンで 作ってもいいじゃん マターリ 行こう 処理速度も右上がりなんだから、 うまくクラス設計して マターリ マターリ
191 :
デフォルトの名無しさん :01/09/28 16:45
最近のアーケードゲーム見てると、いまさらDirectDrawはイヤン。 ていうか、がいしゅつだがテキストの表示くらい自分でライブラリ作れい。
∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ( ´∀`)/<先生!だれも3DMAXの話題に触れてくれません _ / / / \___________ \⊂ノ ̄ ̄ ̄ ̄\ ||\ \ ||\|| ̄ ̄ ̄ ̄ ̄|| || || ̄ ̄ ̄ ̄ ̄|| .|| ||
普及型グラフィックスカード上のプロセッサが更に インデリジェントになって付属Cコンパイラが当たり前 なんてことになれば、再び D R A W マンセーな時代が到来するんだ。きっと。たぶん。 ソフトレンダラは不滅なんだから。たぶん。くそ。
>>192 ダウンロード速度100バイト/秒なのであきらめた。
次のスレで会おう。
ソフトレンダリングは誰か興味があって優秀なヒトに任せるです。 いまさら手を出しても、ねえ。 というわけで、良いライブラリどんどん公開してつかーさい。 WinGLもobsoleteになりつつあるし、英雄になれますで。
196 :
デフォルトの名無しさん :01/09/28 17:19
DXのリファレンスラスタライザーのソース読んだ人とかいる?
197 :
デフォルトの名無しさん :01/09/28 17:27
Directx7のコードの中に #define DIRECTDRAW_VERSION 0x0500 としたら安直にDirectX5対応としてしまっていいのか? 手持ちにDirectX5がないのでわからん。 DirectX7SDKが入っとるやつでは動いているんだが。
198 :
デフォルトの名無しさん :01/09/28 17:28
>>197 Input とか Sound とかのバージョンも要ると思われ
>>191 しかし、ちょっと半透明スプライト使うだけでDrawPrimitive呼んで
きて「3Dボード必須」ってのは罪悪感に苛まれ。
でも使う(w
今月のCマガにDX8の2D記事があったが8にする意味があるとは思えん 7以前だと何か問題があるのか?
201 :
デフォルトの名無しさん :01/09/28 17:50
>>199 カラーキーではなくアルファで透過スプライト!
拡大縮小回転にはバイリニアフィルタリング!
背景には意味もなく3Dオブジェクト!(w
みんなでガンガンいこうぜ。
>ピクセルシェーダ みんながハードでサポートしてくれる日はまだまだ遠いが 魅力があるという点では同感だべさ。
まあ昔のDirectXは、あくまでもWindows用のライブラリ群だったのに対し 今のそれはちょっと違ってるからなあ。 Windows用と言うよりXbox用だろ、Direct3D8なんて。 デバイスコンテキストが取得出来なくなっても、別に何も言えない感じ。
つまんないことききますが 2Dゲームでよくあるメッセージウインドウは半透明で 後ろの絵透けてますよね。あれって、アルファチャネル使ってるんですか? DDのBLTってαさぽーとしてましたっけ? それともサーフェスロックして演算書き込みってかんじですか?
206 :
デフォルトの名無しさん :01/09/28 23:19
Direct3D8 で文字を表示するには、TrueType フォントのアウトラインを取得してポリゴン化すべきなのだろうか。
207 :
デフォルトの名無しさん :01/09/28 23:19
>>205 >それともサーフェスロックして演算書き込みってかんじですか?
そんな感じです。
不思議な事考えるなぁ、、、テクスチャに書いて 1枚のポリゴンに出すだけだよ ハイレゾならテクスチャサイズも大きくしたりしてね
______ /_ | / \ ̄ ̄ ̄ ̄| / / ― ― | | / - - | ||| (6 > | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | | | ┏━┓| / 正直、DirectX5対応と謳っていながら | | | | ┃─┃| < DIRECTDRAW_VERSION 0x0500宣言してなかった || | | | \ ┃ ┃/ \_____________________ | || | |  ̄  ̄|
>>210 おい、それは0点だぞ。
お前は森脇健児か。
212 :
デフォルトの名無しさん :01/09/29 18:28
>>209 DirectX5SDKを使っていれば問題なし。
______ /_ | / \ ̄ ̄ ̄ ̄| / / ― ― | | / - - | ||| (6 > | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | | | ┏━┓| / 正直、Rubyはクソです。ゴミ箱逝きです。 いじょ | | | | ┃─┃| < この発言をコピペしていただければ幸いです。 || | | | \ ┃ ┃/ \_____________________ | || | |  ̄  ̄|
DirectX7のSDKつかってた…(´д`;)
>>202 開発マシンのビデオカードがカスなおかげで、人のマシンをガンガン借りて
動作確認してる状態なんだが(w
>>214 あるよな……DX8入れると動かないゲーム
218 :
デフォルトの名無しさん :01/09/30 01:41
DX8でテキストファイルから文章を表示するサンプル教えてYO
// 浅い知識でVC++をやって // コンパイル⇒実行までのドキドキは // 思い通りにいった時 // 射精よりも気持ちいい
>>218 ちょっと前の所で話題に出てるじゃんYO。
しっかりしてくれYO!
>>218 文字表示の方法なら今月のCマガに書いてある
223 :
!= 218 :01/09/30 17:11
>>222 地方都市ではもう売り切れです。VS.NETβ2のおかげで。
ところでC#からDirectXを使うサンプルを外人のページで見た記憶があるのですが、URLを失念してしまいました。
だれか知ってる人いたら教えてください。
>>223 Cマガくらい定期購読しとけば
というのはおいておいて。
C#からDirectXって、.netのSDKにサンプルあるよ。
>>224 いや、私は発売日にちゃんとGetしてます(定期購読してないけど)、
最近は割と地元でもCマガ売り切れること無くなったんだけど
(1年位前まで、ウチの地元の本屋とかってどこの店も1〜2冊しか取ってなかったみたい)
> C#からDirectXって、.netのSDKにサンプルあるよ。
マジ?気づかなかった。ありがとう。
227 :
デフォルトの名無しさん :01/10/03 18:41
|● ⊂アゲ !! ■> / |
228 :
デフォルトの名無しさん :01/10/14 18:15
類似スレ抑止のためage
229 :
デフォルトの名無しさん :01/10/29 00:31
テスト&age
230 :
デフォルトの名無しさん :01/10/29 00:33
いまどき、DirectX 2 かよ!! だせー。 あひゃあはやはyひゃひゃはyっはひゃあyはやhyはっや
>>288 実装じゃなくてC99とかの仕様書でということでは?
ありゃ。スレ間違えた。
>>230 FukakuにもWA・RA・TA
ちくしょう、こんな誰もが予想しうるネタに……
235 :
デフォルトの名無しさん :01/10/29 22:04
DirectX9.0には今度新しくDirectMailというスパム発信機能がついたという噂を聞いたのですが本当ですか?
つまんねえよボケ
237 :
デフォルトの名無しさん :01/11/02 06:48
SetTextureStageState の引数に入れる D3DTEXTURESTAGESTATETYPE の内容が良くわかんないんだけどアホでも解るように解説したホームページとかない? DX8の日本語マニュアル見たんだけど、全然わかんねー。 頼むよ。 っていうか下がりすぎ。age.
っていうか大体解った。 アホ書き込みスマソ。 DX8のサンプルってXBoxのサンプルと同じなんだね〜。そりゃそうか。 DX久しぶりに触ったけど、かなり良くなったねぇ。
239 :
デフォルトの名無しさん :01/11/02 08:32
DirectShowでmpeg1ストリームを2本カラーキーイングで 重ね合わせ再生&DirectDrawで文字カキカキってやったら フレームレートが1桁(celeron900Mhz+G400) つーかi810+celeron466のマシンだとFPSが0.5とかに・・・・ クライアントに「メディアプレーヤなら2本同時に30fpsで再生できるでしょうが!」 と文句を言われ中。 鬱だ・・・
240 :
デフォルトの名無しさん :01/11/04 09:11
241 :
デフォルトの名無しさん :01/11/04 09:27
俺のほうがスゲェ
242 :
デフォルトの名無しさん :01/11/06 18:42
ところで、既にベータが出てるDirectX9って何が変わるの?
DirectX9もWindows2000でしかうごかないんですかね。
>240 それが、2本のデコーダそれぞれから メインメモリ上バッファの画像データをゲットしてきて それをまた自前で合成してプライマリサーフェスに転送してるだす。 つまりVRAM直書きは1回しかおこらんのにい。 そもそもデコーダからなかなか画像データがこねえだあ。 DX9だと早くなってるのか??
>>244 自前で合成って・・・
そのブレンドルーチンが亀なんじゃねーの?
ターゲットをD3Dのテクスチャあたりに指定して、
ハードウェアで合成させれば?
246 :
デフォルトの名無しさん :01/11/06 20:51
X7、Win2K、GeForce2GTSでフルスクリーンのものを作っています。 最初にリフレッシュレートをChangeDisplaySettingsで60Hzにしてから、 DirectDrawCreateするところまでは良いのですが、 SetCooperativeLevelを呼ぶとなんと、リフレッシュレートが85Hz(普段のデスクトップ)に 戻りやがります。EXCLUSIVEとCOMPLEXをつけるとなるみたいです(T_T Flipを使いたいので↑ははずせないのです。どうにかなりませんでしょうか?
VC++でやってみようとMSSDKのincludeファイルを ディレクトリに追加したんですけどこれでいいんですか?
>>246 なりません。リフレッシュレートの制御は当てに出来ません。
>>248 そうですか(T_T
SetCooperativeLevelでリフレッシュレートがいじられるのは普通なんでしょうか・・・。
フリーソフトで60HzでFlipしてるような感じのものがあるので、
何か上手い方法があるような気がするのですが。
>>246 SetDisplayModeのリフレッシュレート設定じゃだめなん?
>>250 さくっと無視されます(藁
仕方なく先にChangeDisplaySettingsでリフレッシュレートをいじろうと思うと、
SetCooperativeLevelで元に戻ってしまってゴルァな状態なのです。
Cooperativeの後でChange〜をやっても無視されるし(T_T
DirectX8で2Dのゲームを製作しているのですが スプライト表示をする場合256×256ドット以上のテクスチャを 扱うことができないので 大きな画像を表示する場合に画像ファイルを256×256に切って いくつかにの分けて表示するようにしました ちゃんと思うように表示はされていますが これは一般的に正しいやりかただとといえるのでしょうか?
>>252 ビデオカードの制限か、D3DXの制限どっちだ?
前者ならそれでいい。
後者ならスプライトを使用しない。
>245 DirectShowのレンダリングフィルタ内の処理なんで DrectDrawの機能使えないため自前ルーチンなのよ。 でも自前ルーチンバイパスして実行してみても FPSは大してかわらんのよ(泣)
>246 ディスプレイのリフレッシュレートが60ってのが もはや異常というのがこのご時世だ。 目に悪いぞ。 Flipをちらつき防止&タイミング取りに使おうとするのが そもそもいかんのじゃよ。 Flipはあくまでもちらつき防止 タイミング取り(60FPSとかな)は マルチメディアタイマあたりで実装しておくれやす。
256 :
239(泥酔) :01/11/07 01:47
>252 それくらいの制限でビビってんじゃねえよ。 ありがちなBitBltエンジンの制限ではないか。 ちょっと昔のスプライトなら16*16ドットのパターン組み合わせて 横に32個並べると表示が欠けるとかザラだったんだからなあ。 ハードウエアBltエンジンマンセー!
>>256 川
( ゚∀゚)__.臼 オツカレ、ソチャデスガ
>>255 マルチメディアタイマじゃちらつき防止できねーよ
Vblank検出しないと。
チラツキ無視だな。ノートとかblank検出できなかったりするし それに、3dだと、待つと 性能殺しちゃうじゃない? その辺どうなのよ トリプルバッファ で キー入力無視して、1枚分先に描画するのって 気持ち悪くないか? (1/60のキー入力見切れる奴も少ないけど〜)
性能殺しちゃうってなんで? はっきり言って、同期取れてないとFPSとかプレイ出来たもんじゃないよ。
要するに Flipするタイミングを待てば、その間チップも寝てるわけでしょ(何も描画しなければ) 待ち時間に、別の物(更に一つ先の画面)を描画すれば、チップは動きつづけるわけで それがトリプルバッファでしょ 俺はFPSしないけど、むしろマニアな人は同期OFFにして、フレームレートを 稼ぐって聞くけどな。人それぞれ?
>ビデオカードの制限か、D3DXの制限どっちだ? ビデオカードの制限でもありD3DXの制限でもあります Voodoo系のビデオカードは256×256以上のテクスチャを扱えないらしいです >ちょっと昔のスプライトなら・・・・・・ 昔はえらい大変だったんですね
また不毛な論議が・・・。
皆さんありがとうございました。 とりあえずVSync無視のタイマで妥協します。
DirectXはゲーム以外にも使われると思うけどね
その通りだな。 じゃあ、とりあえず向こうは支店つーことにしとくか。
いや、だからみんな勘違いだてえ。 >246 VSyncもタイマもどっちも使うんだって。 本当ならばVsync80でも60でもOKなプログラミングするべきなんだが 長年の馴れでゲームの進行だけは60fpsにしたいってことでしょ。 だから、ゲームの処理ループはマルチメディアタイマ使って60fps とするのさ。 で、実際に画面に書きこするときは80hzのタイミングでFlipするんだよ。 それも毎回80hzでフリップするんでなくてな 60FPSのゲームループで画面が書き換わったときだけにFlipかければいいんだよ だからもし、画面のリフレッシュレートが120hzでゲームが60FPsなら Flipは2回に一回かければいいんだしリフレッシュレートが80Hzだったら 1回に尽き1かいとか、2回に尽き1回のFlipが混在するわけだ。 ちょうど映画が24fpsなのをNTSC30fpsに変換するのと同じことだよ。
>>268 残念ながらその方法だと、滑らかなスクロールは不可能です。
120/60fpsなら綺麗に書けますが、
80/60fpsだと絶対に引っかかります
270 :
239(泥酔) :01/11/07 21:42
>269 そうなんだよなあ。 でも60HZの画面見てると目がおかしくならねえか? 80/60fpsでもうまくFlipするタイミング変えれば それなりに見えるし。 まあ、本質的にはどんなFPSでもおっけーなプログラム書けって ことだがな。 そんな難しいことでもねえぞ。
>>270 解像度が低いなら640x480@60fpsでも大して気にならないでしょう、とくに動きの多いものなら。
まぁ、
>まあ、本質的にはどんなFPSでもおっけーなプログラム書けって
こういうことでしょうね。
どんな環境でも動くけど、ある特定のリフレッシュレートで
最適な結果が得られるというのがベストでしょう。
ああ、泥沼のリフレッシュレート論争に…
DXSDKのDolphinの中変数Dolphin1,2,3をfor文で出来ないでしょうか? 処理速度はループより速いけどfor文使えば容量節約できそう。 CD3DMesh DolphinMesh01; CD3DMesh DolphinMesh02; CD3DMesh DolphinMesh03;
ゲーム製作が出来たばかりなのに、 こっちでこの話題になるとは(藁
よくわからんけど配列にすれば? CD3DMesh DolphinMesh[3];
意味がわからん
昔、DirectDrawSurfaceの配列を要素数を奇数しておくと、 なぜか解放に失敗することがあった。仕方なく、当時はなれべがき。 なんだったんだろうアレは・・・。
>280 たとえば、0から3の順に取得したサーフィスは 3から0に向けて解放しなければ行けなかったとか? 解放のタイミングで落ちる事って多いよね。 ところで、>274は一体・・・
282 :
デフォルトの名無しさん :01/11/12 09:59
メモリ内の音声や動画データを DirectShow で再生できるんですか? サンプルソース探してもファイルからの再生しか見つからないんで…
分かりにくくて、スマソ。知りたいのはXモデルを10近く読み込む ときにfor文で簡素化できるかどうか?ということです。 (3Dゲームで10以上のXモデル読み込みを良く見かけるので。) ちなみに、普通の配列ではmeshが構造体らしいので多分出来ないです。
284 :
どっちが悪いのかよーわからんが・・・ :01/11/12 19:27
(1) かのぷすのSPECTRA5400R2のGreenドライバがメチャ不安定。最新のにしてもBIOS更新してもぜんぜん駄目。 (2) 仕方ないのでWin2K標準のTNT2ドライバにしる。安定。でもCreateDeviceでコケる。D3DDEVTYPE_SWでも通らない。当然アダプタんところはD3DADAPTER_DEFAULT。 ・・・どっちかひとつでも解決すれば、そっちでコーディング続けるんだが・・・(^^;
nvidiaのリファレンス使えよ
>>285 Win2K標準のって、nvidiaのリファレンスぢゃないのか?(^^;
今、連日徹夜して作ったDirectXのプログラム、実行してたらPC落ちてさぁ。 そこまではよくあることなんだけど、再起動したらなんと苦労して書いた ソースがメチャメチャなバイナリーになってるのよ(T-T なんか壊れたのと同じファイル名のファイルを、 そのソースがあったフォルダにコピーするともれなく化けるし…。 こんなことってあるの?何が一番悪いの?オマエノコードガナー? そりゃ分かってるけどあんまりだよ。ああ、マジで鬱だ氏のうDirectXだよ…。 そういえばTurboCは確か自動的にbakファイル作ってくれたっけ…。 (゚∀゚)アッヒャッヒャッヒャッッヒャッヒャッヒャ ムキョーヒョッッヒョッヒョッヒョヒョ
>283 普通の構造体で配列が使えない?なんで?? 更に深まる謎。刮目して次回を待て!
>>283 はまずC/C++をちゃんと勉強すべきだと思ったり思わなかったり
>>289 おちたら確実にScanDiskしとけ、OSはNT系に変えとけ。
Win98のときは日に数十回落ちていたが、Win2000にしてから日に数回だ。
ファイルも壊れん。もし壊れても定期バックアップで問題なし。
今見たらヘッダー見たらCD3DMeshは構造体でなくクラスでしたな。
>>293 そこまで言うならソースみせろよ。ヒッキーが偉そうに。
× 今見たらヘッダー見たら ○ 今ヘッダー見たら
>>294 実力も無いのに偉そうにするな。
> 今見たらヘッダー見たらCD3DMeshは構造体でなくクラスでしたな。
クラスだと配列に出来て構造体だと配列に出来ない?
出直して来い
どうみても274がアホ。リアル厨房?
293=296=(298)=299=300 (w あんたはもうレスしなくてもいいから他の人の意見聞きたい。 一部でもいいからソースでヒントくれるとうれしい。
>>301 スマン。俺の負けだ、俺が間違ってた。
がんばって構造体に一つ一つ読み込んでくれ。
CD3DMESHなんて 使わないから調べるのウザイ 該当部分を書けば添削してあげるよ
CD3DMesh dol[3]; char* filename[]={"dolphin1.x","dolphin2.x","dolphin3"}; for(int i=0; i<3; i++){ if( FAILED( dol[i].Create( m_pd3dDevice, _T(filename[i]) ) ) ) return D3DAPPERR_MEDIANOTFOUND; }
あ、_T(filename[i]) っは間違いか _T() 削っといて
悲惨な274にいるスレに認定されました(ワラ
でも、オレもさりげなく悲惨。
>>289 1. ファイルシステムを NTFS にする。
2. ソースコード管理システムを使う。
3. バックアップをこまめにとる。(できれば自動化しておく)
>306 ありがとうございます。あとこんな感じでいいですか? m_dwNumDolphinFaces = DolphinMesh01.GetSysMemMesh()->GetNumFaces(); ↓ m_dwNumDolphinFaces = dol[0].GetSysMemMesh()->GetNumFaces();
オッケー
274はどう見ても厨房だが、294みたいなこと言う前にちゃんと勉強した方がいいぞ。
もし5年後に自分の書き込みみたら恥ずかしくて人前に出れないくらい恥ずかしい事を
言ってるよ。自分では分かってないが。
>>305 それやるなら
LPTSTR filename[]={_T("dolphin1.x"),_T("dolphin2.x"),_T("dolphin3")};
だな。
っていうか、LPCTSTRにしろよな>CD3DMesh書いた奴
>>312 LPCTSTRとか、_Tとかその辺ってどうなのかね?
あんまりキチッと書いてる人見たことない(ネットのサンプルレベル)
ゲーム系の人はその辺いい加減だしね。所詮windowsの方言でしょ
linux&OpenGL環境とか考えるとねぇ。
ソースファイル毎に違ったりするとそれも嫌だし。
ってことで俺は無視。ダメ?(藁
UNICODEアプリにしたところで、実行速度はそんなに変わらない。 NT用と9x用に別々のバイナリを提供するほどの利点はないので、 LPCThogeを使うのは止めといて正解。
>>314 TCHAR, LPTCHAR, _T 使うとコンパイルオプションでマルチバイト、Unicode の切り替えが簡単
にできる、かつ各上でのデメリットは殆どないから、使うのは問題ないと思われ。wchar_t で書く
のはやめといた方が良いけど。
漏れはある日突然UNICODE化したくなるかもしれないので、気が向いたら書いてる。 書くかどうかはそのときの気分次第。 D3DXCreateTextなんかはUNICODE版でないと日本語使えないから、そういうときに 突然必要になったり。 ちなみに312でLPCTSTRにしろって言ったのは、引数がLPTSTR相当になってるから。 ようするにconst付けろって意味。
いつからかMBCSをやめてUNICODEで処理するようになった・・・ API呼ぶときはW版呼んで失敗したら変換してA版 ・・・ムダ? しかしキャラ名にハングルも入力できるぞ。Global IME 対応。 ・・・ムダ?
>>292 >>309 OSはWindows2000でNTFS、一番強いスキャンディスクをかけても
FOUND000とかは現れなかったんです…。いまだに原因もわからずじまい…。
でもレス有り難うございます。お勧めに従い、今後はまずバックアップ
ツールでも探すor作ってみることにします。今日から早寝だ……わーい…。
>>318 すでにNTかー
まあ、309の言う通りバージョン管理ツールも併用しなさいってこった。
俺はCVS使ってる。本コードが吹っ飛んでもへっちゃら。
320 :
どっちが悪いのかよーわからんが・・・ :01/11/14 17:30
284なりよ
>>288 レス遅れ申し訳なく存知奉り候。問題これ無事に解決し候。貴君の助言に感謝し奉り候也。
・・・・これであってる?(笑)
#板が違うかもしれない(苦笑)
とりあえずMicrosoft市ねっつ〜ことで(^^;
321 :
デフォルトの名無しさん :01/11/17 01:26
あるプログラムをフィルター化しようと思っているのですが、フィルターやDirectXは まったく経験無し。いい参考書(できればサンプルコードが多くでてるものとか)が あれば教えてください。
322 :
デフォルトの名無しさん :01/11/18 00:35
>>321 俺も同じようなことをしたいと思ってた。
とりあえず、COMプログラミングから勉強始めてみたよ。
323 :
鬱だ氏のう :01/11/20 11:54
バージョン多すぎ。テスト工数も多すぎ。
324 :
デフォルトの名無しさん :01/11/29 11:41
325 :
デフォルトの名無しさん :01/11/30 08:13
>>321 俺もDirectShowでそんなことをやろうとしているところ
>>322 良い参考書あった?
DirectX8.1SDKにサンプルグラバフィルタのソースが付いてるみたいだよ。 独自のフィルタ作成する際には参考になるかも。
327 :
デフォルトの名無しさん :01/11/30 09:40
DX8のXfileの事で。メッシュやらマテリアルやらテクスチャやらを読み込んで 保持する構造体 へのポインタをたくさん作って中身を入れて、 複数のキャラを登場させるためにそれらのポインタを配列変数に入れて使っています。これって メチャメチャメモリを使ってるんです(・・・か?)よね。 それで終わったらその格納されたメッシュとテクスチャとへのポインタだけ(Xファイル関係では)を DXのリリース処理に渡してるんですけどこれでいいんでしょうか。 一応ちゃんと動いて、ちゃんと終了したように見えるのですがとても怖いです。
なんだ違うのか DirectX 2 機能限定スレッドかと思って期待して入ってしまった(マジ)
>>328 違うのだ。「 鬱だ氏のう DirectX 」 のパート2。
330 :
デフォルトの名無しさん :01/11/30 14:53
DirextX9のβ当選のメールがきたYO!
331 :
デフォルトの名無しさん :01/11/30 14:54
>>332 ほしけりゃ自分で応募しろYO!
最初の募集で応募すれば誰でも当選するYO!
winMXだ!
あれって当選とかそういうもんか? 応募者全員に来たのかと思った。テストしてやるんだし。 国際FAXさせられたぞ
>>335 東京のマイクロソフトでいいんでないの?
337 :
デフォルトの名無しさん :01/12/01 17:18
DirectXをつかって、自分用に簡単なモデリングツールを作っているのですが コロコロ変わる頂点の扱い方について、うまい方法が、どうも思いつきません。 今は、丸め誤差対策にintかなんかで、データを別場所に持ち [0] [1] [2] [3] .... ←可変長ベクトル(DrawPrimitiveに渡すバッファ) ↑ ↑ ↑ ↑ ptr ptr ptr ptr ←各データオブジェクトがintデータを渡すためのポインタ なんてやっているのですが。可変長ベクトルが縮んだりした場合の処理が厨で… 初心者丸出しの質問ですが、もしこんなの組んだ方いらっしゃましたらアドバイスお願いします。
338 :
デフォルトの名無しさん :01/12/01 17:26
>>337 データの格納自体にはSTL使って、表示データをそこから生成するように
してみれば?
正直すまんかった >>TBS
厨房でスマンが 丸め誤差対策にIntで持つって有効なの? 解説本でも見たことないなぁ 同じビット数なら大差ないような気がしないでもない (ある程度、数値の上限下限が決まってればfloatよりbitを効率よく使えそうだけど)
>>338 レスありがとうございます。
えっと、別場所int格納のオブジェクト管理にSTLを使い、
描画毎に、表示データを生成する、ということで良いのでしょうか?
>>340 すいません、私本当に初心者なので間違っていると思います。
実はすでにfloatで頂点データ持つ様なの作ったんですよ。
で、この頂点を、たとえば0.1ずつ動かすようなコマンドがあるのですが、
これを50回実行したあと、-0.1ずつ50回動かしても、元の値には戻らない。
しょうがないのでデータは整数できっちり持って、
描画時には適当な値で、それを割ったのを使おうと思ったんです。
343 :
デフォルトの名無しさん :01/12/01 17:44
>>341 (インデクスの?)int以外に、頂点のセレクションデータとか、ユーザーデータとか持つ場合の
情報を構造体とかに収めて、それをSTLの任意のコンテナで管理しておくという感じのを想像
してました。
描画毎、というよりはデータの更新や変更がある度にモデラーに表示するデータを更新して
やればOKかと。(実際の管理データと、プレビュー上に表示するためののデータを分けて
やるってことですね。)
344 :
デフォルトの名無しさん :01/12/01 17:45
>>342 doubleで持っていても精度に問題あります?
>>343 言葉足らずですいません。上記のintはインデクス管理のintではなく、頂点データそのものです。
そうなんです、管理データと、描画データ(DirectXのfloatバッファ)を分けて考えたくて…。
描画バッファをフラッシュせずに処理することばかり、考えてました。
お勧めに従い、変更あるたびにバッファデータを全更新してみます。
御陰様で、しがらみから解放されたような、清々しい気分です(^ ^)
>>344 double d = 0.0; int i;
for( i=0; i<1000; ++i ) d += 0.1;
for( i=0; i<1000; ++i ) d -= 0.1;
今、VC++6でこんなの試してみましたが、やはり完全な0.0には
戻らないみたいです(T-T なにか私が勘違いしている気がしてきました…
そもそも0.1って2進数で表現すると循環小数で正確に表せないヤバゲな数字では?
>>346 サンクス、そうみたいですね(T-T
BCD演算とかよく分からないですし、描画は相対的なつじつまさえ
合えばいいので、やはり整数でデータ保持の方向で行ってみます。
348 :
名無しさん :01/12/01 18:39
来年にはDirectX9が出るそうですが、何がどうなりますか?
349 :
デフォルトの名無しさん :01/12/01 18:47
>>347 0.1 じゃなくて、0.125 とか 0.06125 とか、
2の乗数だったら正確に計算できるはず
352 :
デフォルトの名無しさん :01/12/01 20:14
それはそれとして、普通浮動小数点の同値判定には 閾値を設けるものではないかね。
>>352 デフォルトの名無しさん wrote:
> それはそれとして、普通浮動小数点の同値判定には
> 閾値を設けるものではないかね。
というか「してはいけない」のでは?
うむ。
>>356 デフォルトの名無しさ wrote:
>
>>354 > 閾値って知ってる?
先日すっぽんのを飲みましたよ :)
で、a > 0.0 とか b < 3.5 ってのはOKだけど、
a == 0 のかわりに 0 - d < a && a < 0 + d みたいなのは
「やるべきではない」という話ですよ? > 前述の
(だからa == 0 にしろと言っているわけではない)
358 :
デフォルトの名無しさん :01/12/01 20:56
>>345 >double d = 0.0; int i;
>for( i=0; i<1000; ++i ) d += 0.1;
>for( i=0; i<1000; ++i ) d -= 0.1;
純粋に疑問なんだけど、こういうのをどういう目的につかっているの?
UNDOの為にこういうことをしているんだったら根本的に間違っている気が…。
>>358 デフォルトの名無しさん wrote:
>
>>345 > >double d = 0.0; int i;
> >for (i = 0; i < 1000; ++i) d += 0.1;
> >for (i = 0; i < 1000; ++i) d -= 0.1;
>
> 純粋に疑問なんだけど、こういうのをどういう目的につかっているの?
「こういうのはやっちゃいけない」という例題の目的では?
吾輩の幾何学クラス群にも==/!=演算子などない。
a == 0 のかわりに 0 - d < a && a < 0 + d みたいなのは 「やるべきではない」という話ですよ? > 前述の えっ これダメなの?
出張サービスです。放置してください。
>>361 wrote:
> a == 0.0 のかわりに 0 - d < a && a < 0 + d みたいなのは
> 「やるべきではない」という話ですよ? > 前述の
>
> えっ これダメなの?
それを「やるべし」という話だったんですよね?
まあ一般にはよくいわれるけど、
それを私は「そうではない」と主張したわけです。
(もちろんa == 0.0のほうが0.0 - d < a && a < 0.0 + dよりよいと
いっているわけじゃないですよ。勘違いしないように)
どうでもいいけど、ヘミ猫の日下部さんですか?
へみ猫やめてギコ猫にしましょうよ
368 :
デフォルトの名無しさん :01/12/01 21:22
>>363 私も気になります。どう書けばいいか、
「作ってわかるCプログラミング」に書いてありますか?
なんかさっきから、内容の無いあいまいなレス返してるしてるヤツがいるなあと思ったら・・・ハァ。 たのむからプログラマ板に帰ってくれ、こっちまで汚さないで。
Knuth Sec. 4.2.2 pp. 217-8. を見ろって いわれちゃうんだろうな。誰かクヌース先生の 原著持っている人、確認してください。
>>371 デフォルトの名無しさん wrote:
>
>>357 > 「閾値=しきいち」
その慣用読み(まではまだ行ってないかなあ)ってどの時代にできたんでしたっけ?
「しきいち」と「いきち」ではどっちが一般的なんだろ?
>>372 DirectXスレッドにくるのはやめてください。ゲーム開発者に恨みでもあるのですか?
>>374 スレ違いな発言は無視でしょ。ここ DirectX スレなんだし、言語史はどうでも良い。
>>373 デフォルトの名無しさん wrote:
> 「しきいち」と
「敷居値」とでも書くのですか? :)
377 :
デフォルトの名無しさん :01/12/02 11:19
MFCとATL、SDK・・・どれ使ってる?
SDK、場合によってVCL(笑
>>376 MS-IME98だと「しきいち」で「閾値」に変換されます。
閾値は「いきち」が普通だと思ってたけど、まさか「しきいち」でも変換できる
とは思ってなかった。
メルトダウンのATiのスライドでも「しきい値」ってのが出てきますね。
>>381 373 wrote:
>
>>376 > MS-IME98だと「しきいち」で「閾値」に変換されます。
> 閾値は「いきち」が普通だと思ってたけど、まさか「しきいち」でも変換できる
> とは思ってなかった。
まあMS-IMEですから。
VJE-Delta4.0ならまっとうですよ。
学生の時に使っていた電気回路、電子回路の教科書計10冊ではすべて 「しきいち」を使っていましたが、何か?
386 :
デフォルトの名無しさん :01/12/03 01:50
>>336 東京でいいの
あとMAILでおくる場合って、
やっぱり印刷したPDFをスキャナでスキャンして送るのかな?
387 :
デフォルトの名無しさん :01/12/03 11:31
うちに郵送で来たやつだと、川○さん宛てになってたけど。
389 :
デフォルトの名無しさん :01/12/03 13:59
390 :
デフォルトの名無しさん :01/12/03 14:39
X9のPDFはみんなアメリカまでファクースしてるの?
391 :
デフォルトの名無しさん :01/12/03 16:59
おれはファックスしてしまったよ・・ でも音沙汰無し
392 :
デフォルトの名無しさん :01/12/03 17:07
PDFを印刷して、書き込んで、スキャンして、 JPEGで添付してmailで送ったよ。
393 :
デフォルトの名無しさん :01/12/03 18:35
394 :
デフォルトの名無しさん :01/12/03 20:06
>>393 無いよ。
mailじゃダメなのかな?
どうしよう・・・
395 :
デフォルトの名無しさん :01/12/03 20:47
>>394 いや、俺はアメリカへFAXしたけれど、やっぱり連絡ない。
もう少し待ってればいいのかな
396 :
デフォルトの名無しさん :01/12/04 18:24
8.1インストールしたら起動しなくなった どう対処していいのか分からず、OSからの再インストール・・・鬱だ
722 :Kusakabe Youichi :01/12/04 18:06
In article
>>710 , 710 仕様書無しさん wrote:
> > そんな変なことを言うひともいるんですね。
> そうですよね、ふつー上京は東京に行くことだし、
はつみみです。
730 :仕様書無しさん :01/12/04 18:13
>>722 じょうきょう【上京】
地方から都へ行くこと。現在は,東京へ行くこと。
(新辞林 by 三省堂 @Yahoo! DICTIONARIES)
とありますよ。
「地方から都へ行くこと。」「東京へ行くこと。」のどちらが「普通」かと言
えば現在では後者といっておかしくないでしょう?
744 :スバリ回答 :01/12/04 18:20
民明書房国語辞典
じょうきょう【上京】 [名][自サ]地方から都に出ること。京都へ出ること。
やはり、日下部氏は正しかった。
752 :Kusakabe Youichi :01/12/04 18:27
In article
>>741 , 741 困った wrote:
> 清水国語辞典
> じょうきょう【上京】 ジヤウキヤウ[名][自サ]地方から都に出ること‥豕・惱个襪海函
>
> 誤植ですね。
民明書房国語辞典 じょうきょう【上京】 [名][自サ]地方から都に出ること。京都へ出ること。
8.0a入れても起動しなくなった・・・鬱だ 8.0にしてみるか・・・
>>386 え”、日本マイクロソフトでもよかったの?
レッドモンドまでエアメールで送ってしまったよ。。。
例のタンソ菌騒ぎで多分相当遅れるって郵便局で脅されたよ。。。
400 :
デフォルトの名無しさん :01/12/07 12:38
まーだーへんじがーなーいーよー
こないだイギリスで見たよ。
ってこんなギャグ誰が分かるんだよ。激しく後悔。
403 :
デフォルトの名無しさん :01/12/07 18:41
DirectX8ってデフォルトでは入っていないので、 DirectX7とVC++でゲーム作っているのですが、 メタセコイヤがDirectX8のラインタイムが無いと、一部動かないので DirectX8のランタイムだけ入れたいと思います。 というわけで、DirectX7SDK+DirectX8ラインタイムっていう 組み合わせは吉でしょうか?凶でしょうか?
404 :
デフォルトの名無しさん :01/12/07 18:55
凶っぽいけれど、大丈夫かもしれない。 俺は8.1ランタイムで8.0aSDK開発してるよん。 いまのところ問題はない。
>>403 問題ナシ。
DirectX8SDK入れて、7のインターフェース使う場合とかは#defineが必要になる。
406 :
デフォルトの名無しさん :01/12/08 00:49
16ビット画面のフェードアウトがどうもうまく逝かんです 640*480でMMX233でMMXつかっても10fpsぐらいしか逝かんです RGB各色ごとに処理してるから遅いと思われるのですが なにかいいほうほうはないもんですか
>>406 自前描画ならそんなもんです。MMX233程度なら、60FPS出せとか誰も言いませんよ。
環境が許すなら、素直にハードウェア使いましょうや。
408 :
デフォルトの名無しさん :01/12/08 13:28
DirectMusic使ったことある人います? 設計おかしくないですか?
>>407 いや、10fpsはさすがに遅すぎだろ。MMX使ってるのに。
20〜25fpsは出るよ、がんばれば。
つか、フェードアウトなら60fpsも可能かも?
漏れ作ったのはクロスフェードで20fps以上出てたから。
>>406 その部分のコード見せてみ
ロジックそのものが悪いか、
パイプラインを考慮してないだけだと思う。
410 :
デフォルトの名無しさん :01/12/08 17:06
Xファイルで読み込んだモデルを描画する際、 そのポリゴン(プリミティブ?三角形の断片)数を 取得する関数ってありますか?
411 :
デフォルトの名無しさん :01/12/08 19:13
>>407 DirectX8の機能にフェードアウトできるようなものはないんですか??
フェードアウトって自前でないと実現できないんでしょうか。
画面全体に半透明ポリゴン重ねなさい。
movq mm0,[esi] movq mm1,mm0 movq mm2,mm0 pand mm0,mm3// 赤マスク psrlw mm0,[Rshift64] //赤を右にもってく psubusw mm0,mm6//減算 psllw mm0,[Rshift64]//赤のビット位置戻し pand mm1,mm4 psrlw mm1,[Gshift64] psubusw mm1,mm7 //565を考慮して差を変化 psllw mm1,[Gshift64] pand mm2,mm5 psubusw mm2,mm6 por mm0,mm1 por mm0,mm2 movq [esi],mm0 パイプラインなんて考えてないっす つーかフェードアウトの意味違ってたらごめんなさい 画面が暗くなってくやつだよね?
>>408 結構使ったけど、何がおかしいですか?
私は合理的な設計に思えるけど。
>>413 ふつーフェードアウトは乗算でやるけど、まぁ減算でもいいか。
413のソースをちょっと改良すると、
movq mm0,[esi]
movq mm1,mm0
pand mm0,mm3// 赤青マスク
psubusb mm0,mm6//赤と青を減算
pand mm1,mm4//緑マスク
psubusw mm1,mm7 //緑だけ減算
por mm0,mm1
movq [esi],mm0
こんなとこか?試してないから間違ってたらスマソ。
とりあえず、406はIntelの最適化マニュアルでも読んで、最適化の方針くらいは
覚えた方がいいかと。下手なアセンブラはCよりも遅いよ。
例えばレジスタに書き込む操作をした直後に読み出そうとすると遅くなる。
↑のソースの場合だと、pandの直後にpsubusbやpsubuswはまずいかと。
pand mm0,mm3// 赤青マスク
pand mm1,mm4//緑マスク
psubusb mm0,mm6//赤と青を減算
psubusw mm1,mm7 //緑だけ減算
こうした方がいい。
>>415 そこ見てみたけど、わざわざ色分けして解説するほど良い物じゃないなぁ。
教科書通りというか、406にちょっと毛が生えた程度のレベル。
>416 最適化マニュアルなんていいっすね 早速見させてもらいます ちなみに赤と青を同時演算は考えたんだけど 青成分が0で赤成分が残って減算すると赤から借りが発生して 青成分がMAXになってしまうんですよ 乗算でやるともっと遅くなる気がするんですがどうなんでしょ?
>>417 赤青のところはpsubusbになっているのに注目
>>418 書き間違えだと思った ためしたら成功しました 参考になります ついでに質問なんですがメモリをロックするとき読みこみと書き込みを 別々にロックすると2倍くらい速度出るんだけど それもメモリアクセスで読み書き両方すると遅くなるってやつ?
direct musicとか覚えるのめんどくさいから SDKのクラスそのまま使うのってあり?
あり。
>>420 SDKにクラスあったのか、、、
ヘルプ見て自作してたよ、、、鬱出し脳、、
LPDIRECTDRAW DDobj; LPDIRECT3D7 D3Dobj;から DDobj->QueryInterface(...);で D3D7のオブジェクトを作ろうとしたらコンパイラエラーが出たので (LPDIRECTDRAW7*)DDobj->QueryInterface(...); とキャストしたらコンパイルは成功。 でも,D3D7オブジェクトは作成失敗 やはりすべてのDDインタフェースに7をつけてやらんとだめなんでしょうか? それともたんにD3D7作成持に簡単なミスでしょうか?
QueryInterfaceのやり方が間違っているに4000デュカーティ。
425 :
ιょιnιゃ :01/12/18 04:16
DirectX8.0でDirectGraphicsを使用してやっています。 Windowモードで実行したら、処理落ちみたいなのが発生して マウスの動きが飛び飛びなのですが、 DXSDKサンプルとかは、マウスの動きがスムーズです。 初期化の数値はすべて一緒にしたはずなのですが… ほかに何か気をつけることってありますか?
426 :
デフォルトの名無しさん :01/12/18 05:19
>>80 バックバッファの大きさを320x240位にしてみれば?
>>423 LPDIRECTDRAW7 DDobj;
LPDIRECT3D7 D3Dobj;
DirectDrawCreateEx( NULL, (void**)&DDobj, IID_IDirectDraw7, NULL );
DDobj->QueryInterface( IID_IDirect3D7, (void**)&D3Dobj );
初期化処理が他にも必要だから本買って勉強したほうがいいよ。
>>427 DX7のD3Dで簡単なものを組んだことがあるので一連の初期化等は
わかってタのですが,423のような無茶なやり方で
通るかなと思った次第です
むりっぽいので普通にやります
age
431 :
デフォルトの名無しさん :02/01/21 05:45
age
>>425 マウスの入出力は全てAPIで扱うってのはどうでしょうか。
もうやってます?無茶なコーディングしてますけどマウス関連
で異常が出た事はありません(今のところ)。
433 :
デフォルトの名無しさん :02/02/25 18:51
ちょっと調べたいことがあって探しているんですが DirectX2のSDKはどこかで手に入りませんか?
>>433 8のSDKでも2の機能は使える。
#define DIRECTDRAW_VERSION 0x0200
とか書くのを忘れないように。
>>433 ヘルプが欲しいのなら、DirectX3のSDKにDirectX2のが入っているはず。
入手先は、本なら「DirectDrawプログラミング」あたりかな
436 :
デフォルトの名無しさん :02/03/15 03:02
シツモン。 D3Dによく出てくるオフセットとはなんですか。 検索かけると意味が全く統一されてないんですが。 Xにおけるオフセットという言葉の意味を教えてください。
辞書引け
印刷所に依頼して同人誌刷ってもらうこと。
WMP for XPでHard coded break pointとでるので、DirectX8.1のSDKをはずしたいのですが。うまくいきません。 なぜかdebugモードのDLLが残ってる。とりあえずdirectshowだけでもRetailモード で動作させる方法ないですか?または、XPでDirectX8.1を上書きコピーするだけでも いいのですが、知っている方がいたら教えてください。
オフセ印刷かよ!!
441 :
デフォルトの名無しさん :02/03/28 15:41
C++Builder5用のOpenGLコンポーネント使って3Dプログラミングしてます。 なのでボタンとかチェックボックスとかテキストボックスのあるものも簡単にできるんですが、 DirectXでも同じようなことって簡単にできるんですか?
ご使用のコンポーネントと同じように動くDirectXのコンポーネントを使用すれば、 出来ると思います。
test
age
トゥーンシェードについて書いてある文献やHPがあれば紹介してもらえないでしょうか? DirectXに限らずOpenGLでも何でも構いませんので。
すいません、解決しましたので失礼しました。
447 :
デフォルトの名無しさん :02/05/08 14:32
D3DVertexBuffer8GetData でメッシュの頂点データ取ろうと思うんだけど バッファサイズはどうやってとるの?sizeof(?)
ごめそ・・・VBじゃんこれ。 VCでmeshの頂点取ろうとしてたんです 逝ってきます
449 :
デフォルトの名無しさん :02/05/08 21:01
ところで、BBXリンク切れてますね・・・。 学生の頃はよくお世話になったのに・・・。
450 :
デフォルトの名無しさん :02/05/08 21:05
<dinput.h> のなかで #ifndef DIJ_RINGZERO ・・・ #endif ってのが沢山あるんですが、DIJ_RINGZEROってなんでしょうか?
452 :
デフォルトの名無しさん :02/05/09 01:23
453 :
デフォルトの名無しさん :02/05/09 11:29
DX8でラインを描きたいんですが どうすれば良いでしょうか?
455 :
デフォルトの名無しさん :02/05/09 15:52
DirectX9はいつでるんでしょうか? いまIJWで簡単なラッパーをせっせと作ってたりするけど、 これって無駄な作業になっちゃうのもいやだから早く リリースの時期だけでも発表して欲しいんだけどな。
>455 .netってこと? ラップしたライブラリを作るぐらいなら、最初からmanaged C++で DirectXにアクセスする部分だけを作って、それ以外のところをC#(C++でもいいけど。。) で作るとかした方が、何かといいと思うんだけど。
457 :
デフォルトの名無しさん :02/05/14 02:11
DirectX7でActiveDesktopに描画する場合、どうすれば宜しいのでしょか。 SetCooperativeLevelの時にActiveDesktopのハンドル入れてみたり しましたが、全く上手くいきません…
サウンドをキャプチャーして別のマシンで演奏したい。 ファイルに落としてではなく、ストリーミングして。 DirectAudioで間に合うのか、DirectShowを使うべき?なのか識者の見解を 求めます。どうかよろしく。
459 :
デフォルトの名無しさん :02/05/16 23:27
AABBについて図解付きで解説しているサイトってありませんか? たとえば、線分(0,0)-(100,100)を含む2DのAABBってどんな物になるんでしょう?
なにやら高尚っていうかふざけた名前がついておるが、 単なる軸アラインされた直方体(2Dなら長方形)のことでござる。 float*6ってのは、頂点1つのXYZ座標と直方体の幅、高さ、奥行きの6つでござるな。 いろんなプリミティブからAABBは簡単に求まるし、AABB同士の判定も非常に高速なので、 厳密な判定をする前に大まかな判定ではじくために使われるでござる。
あー、分かりました。 459の(0,0)-(100,100)ならそのままそれがBOXですね。 float*6をBOXの表現に使う物だと思ってました。 位置ベクトルも含めての値なんですね、thxです。
っていうか、一般的にバウンディングボックスといわれているのが、 このAABBっていうことですよね?
464 :
デフォルトの名無しさん :02/05/20 12:47
D3DXCreateTextureFromFileで読み込んだテクスチャのサイズを知る方法を教えてください。 GetLevelDescだと、2^nに補正されたサーフェイスのサイズしか帰ってきません
>>464 DXIMAGE_INFO。
Exじゃない方にはないかもしれんが。
466 :
デフォルトの名無しさん :02/05/20 15:42
テレビチューナー機能付のMPEGハードウェアエンコードボードを DirectShowで制御してテレビの録画を行いたいのですが、 上手くできた方いませんか? いましたらそのボードメーカー、製品番号も教えてください。
一枚絵を画面に直接コピーするために、 m_lpDevice->CreateImageSurface(640, 480, dmode.Format, &m_lpSurface); m_lpDevice->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &m_lpBackBuf); D3DXLoadSurfaceFromFile(m_lpSurface, NULL, NULL, path, &srcRect, D3DX_FILTER_NONE, 0, &info); m_lpDevice->BeginScene(); hr=D3DXLoadSurfaceFromSurface(m_lpBackSur, NULL, NULL, m_lpSurface, NULL, NULL, D3DX_FILTER_NONE, 0); m_lpDevice->EndScene(); m_lpDevice->Present(NULL,NULL,NULL,NULL); とやっているんですが、最後のLoadSurfaceFromSurfaceがエラーになります。 CopyRectならいけるんですが…。なぜなんでしょうか? ご教示ください。お願いします。
うおぉ、Spaceが消えた! 読みづらくてすいません。 あと、age忘れ。
エラーコードは?
D3DERR_INVALIDCALLでした。
DirectShowツールのGraphEditででネットワーク配信する方法ってありませんか?
472 :
デフォルトの名無しさん :02/05/31 10:15
漏れも知りたい。 Audio Cap. -> G.711 -> RTP SPH G.711 -> RTP Render RTP Source -> RTP RPH G.711 -> G.711 -> Auido Device と別のマシンでやって、ポートとか設定してみたけど全然つながらない。
474 :
デフォルトの名無しさん :02/06/03 23:43
DirectX9が米で発表されたってよ。携帯のニュースサイトで言ってた。
475 :
デフォルトの名無しさん :02/06/05 19:57
しかとかよ。一時の隆盛はどこへいったんだ、ここ。
そのうちやろうと思ってたDirectXももう既に9ですか。 手元にあるDirectXの本なんか3が対象だよ。まさに鬱だ氏のう。
D3DXFontのバグって8.1で直ってるの?
no
今更だけどID3DXFontだけじゃなくID3DXSpriteもおかしい感じがするんだけど 、、、ひょっとして漏れがバグってますか?
480 :
デフォルトの名無しさん :02/06/16 03:14
nave the BK は DirectShow を使っていると思うのですが,様々な動画・音声ファイルを05〜4.0倍速再生をしています. IMediaSeeking::SetRate での高速化ではファイルによっては2倍程度までしか高速再生が出来ません.しかし,このソフトは4倍再生を行っています.(音程維持ではなく,可変速でデータの取得に関してです) このように再生させるにはどのようなインターフェイスを用いればよいのでしょうか? あるいはどのような設定をしてDirectShowを用いればよいのでしょうか? 御享受願います.
>>480 自力で計算してるんだよ。
既存の機能を使ったガワだけプレイヤーを彼らが作ると思うか?
>>480 ええと,データのデコードに関してはDirectXを用いていると思ったのですが...
私はDirectShowを用いてデータをデコードしているとおもいました.
#もちろんデータ(音声/画像)の出力に関しては他の方法でも出力は可能だと思います.
彼らはデコードも自力でやってるのでしょうか?だとすると,個別に直接でコーダを
たたいているのでしょうか?どなたかわかる方回答願います.確かにそうすれば,
何倍でも高速に再生できると思います.
デコードはDirectShowフィルタとか、Video codec使ってるんだろ サーフェイスへのレンダリングを自力で行っているだけで。
なるほど. Video RenderとかSoundDeviceフィルタ?を自力でやっていると言う感じですね. データを高速にコードする(取得する)にはVideo Renderとかが要求すれば 良いのでしょうか? 基準クロック等をいじるのでしょうか? どなたか教えてください.
Video Render繋がなければ全力でデコードするね。
基本的にはReferenceTimeの進め方をx4.0とかにすれば良いだけなので、 たいして面倒でもないのでは? #音程云々は除けば デコードだけやらせて、画像や音声のレンダリングは自前でやるなら、 DirectShowをそのまま使うより、 WindowsMediaFormatSDK経由で使う方が簡単で良いよ。 WMF/WMA/ASF対応するには、どっちにしろWMFSDK落として wmstub.libを手に入れなければならんわけだし。
487 :
デフォルトの名無しさん :02/06/23 22:23
折れは,ベータのDX9入れたけど, DirectShowがガタガタ抜かしまくりで,エンコ関連がほとんど死んじゃったYO!
βテスターでもないくせにインストールした罰だよ。 たしかβテスター向けニュースグループにそういう話題があった気もする。
489 :
デフォルトの名無しさん :02/06/24 23:39
どなたか、DirectPlay8でクライアントサーバ使ったことある人いますか? クライアント側からIPをポートをAddComponent関数で追加して指定しようと したけど、できませんでした。 おかしそうなところが見当たらないので、 (というか、ピアツーピアでは同じコードでできている)クライアントサーバ ではAddComponentは使えないのでしょうか。 みなさんはどうやってIPとか指定してます? 自分は仕方がないので、とりあえずDirectXについているあのダイアログボックスで 直接IPもポートも入力してるんですが(汗
490 :
デフォルトの名無しさん :02/06/28 16:35
自前の関数の戻り値の型に何使ってる? bool BOOL int HRESULT などなど DirectX絡みの戻り値がHRESULTなのでいっそのことすべてHRESULTで統一しようかと悩み中。
491 :
デフォルトの名無しさん :02/06/28 20:14
HRESULT。 IDL使ってるから、仕方なくね・・。 local宣言しないと、DWORDを返しすら文句言うからね奴は。 ブチキレですよほんと。
age
HRESULT反対 勝手にエラーコード定義されても重複して困るだろ
494 :
デフォルトの名無しさん :02/06/29 00:08
>>493 めんどくさいんで作らないよ。
返す値は、E_FAILとS_OKとDXの戻り値のみ。w
MS的に激しく推奨されない形だろうなあ。
基本的にBOOL 値返すの、エラー内容必要なのはDWORD
496 :
デフォルトの名無しさん :02/06/29 05:36
>>495 BOOLだと間違って整数値入れたときにwarning出なくない?
boolにしたほうが良いと思われ。
BOOLなんて使う時点で、そんなことどうでもいい気がする。 エラー無しをBOOLの場合はFALSEで、DWORDの場合は0にする習慣を 付ければ互換性保てていいかも? そういや、最初はBOOLで宣言していた関数で後からエラー値が2種類 必要になったときも、関数の宣言直さずにエラーコードを返すような 事を過去に何度かやったことあるな(駄目プログラマ)
>>497 いや、正常終了がFALSEってのは
批難ゴウゴウだぞ。(笑
つうか DX9いつ出るんだYO! なんかゲーム作りたいんだが、C# + DX9 に移行するつもりなんで、 スキリーと製作始められないんだyo!! いつリリースなんだ・・・ フツーβ公開から どれくらいで一般公開かな??
エラーには例外使えよ。
> いや、正常終了がFALSEってのは > 批難ゴウゴウだぞ。(笑 S_OKは0だな FALSEも0
505 :
デフォルトの名無しさん :02/06/29 22:16
>>476 INPUT m
FOR n=2 TO m
sum=0
FOR k=1 TO (n-1)
a=n MOD k
IF a=0 THEN
sum=sum+k
END IF
NEXT k
IF n=sum THEN
PRINT n;
END IF
NEXT n
END
こんなんです。どこかえたらいい??
つうかDirectX3の実行バッファ使ってみてぇ。
あれって、HWTnLの為に用意されてたってshi3zたんも言ってたし。
GeForceのDirectX8ドライバでもアクセラレート出来るらしいし。
でもマニュアルが手にはいらねえ。
>>500 「例外を有効にする」にチェックを入れると
遅くなると風の噂で聞いたんでイヤです。
昔のWDJにC++の例外を使うといかに遅くなるかって記事があったな。
Windowsで用意してる構造化例外(SEH)はかなりマシだから、速度を気にする
ならそっちを使えと。
>>506 OpenGLにも似たような機能あるから、そっち使いなよ。
PCの世界では今あるハードウェアを限界まで使いこなすよりも、速さの向上は
ハードウェアの進歩に任せて、APIは実行効率よりも使いやすくする方向に流れ
てしまったので、今後Direct3Dで実行バッファが復活することは無いと思う。
実行バッファの方が効率がいいことはみんな分かってるし、それがパフォー
マンス的には最適だと思ってるけど、結局使いやすいAPIの方がウケることを
Glideが証明したんだと思う。
508 :
デフォルトの名無しさん :02/06/30 03:07
今日からこのスレにもお世話になりそうな予感なので よろしくおながいしまうですage
おまえはゲ制作板にでも逝け
>>506 風の噂を無条件に信じるなよ。重要なのは自分で調べることだ。
エラーなんていちいちチェックしねーよ。全部裸。ロストだけ描画前にIsLostでしらべれば十分だって。
そして青画面
カコイイ!!
最近のBASICにはENDIFなんて命令があるのか
ddbltfx.dwSize = sizeof( ddbltfx ); ddbltfx.dwFillColor = 255; lpDDSBack -> Blt( NULL, NULL, NULL, DDBLT_COLORFILL | DDBLT_WAIT, &ddbltfx ); で背景を好きな色に変えたいのですが,16bitの場合, dwFillColorに何番を入れれば意中の色が出てくるのかわからないのですが,どうすればいいでしょうか?
自前スケーリング
スケーリング?
>>515 フォーマットからマスク値をゲトーして、自前で計算しる!
519 :
デフォルトの名無しさん :02/07/07 23:57
DirectX 7.0 日本語ドキュメントをWindows2000にインストールする方法を 教えてくらはい。
インストールするものなの?
>>521 ・そこまで分かっていたら、問題ないんじゃないの?
・7.0なの?
8.0/8.1のドキュメントにはddrawが無いから、漏れも2つ入れてる
>>522 7です。
Error creating process<C:\DOC略>. Reason: 指定されたパスが見つかりません。
と言うエラーメッセージが出てインストールできないのです。
>>523 OSはなんですか?
なんでOS聞くんだ?
ヒマなのでWin2kで試したが何も問題ないが。 ていうか、ただの自己解凍ZIPじゃん。
>>524 ユーザ名に日本語(全角文字)使ってない?
日本語の場合、WindowsXPだとPowerPointViewerのインストールで問題あった。
とりあえず、WinZipで開けばchmだけ抜き出せるよ。
>>524 自己解凍だが解凍ソフトで強引に解凍しる!
531 :
デフォルトの名無しさん :02/07/09 23:33
質問です。 DirectSound(not DirectShow)でサウンドカードのクロックとPCのクロックを 合わせるにはどうしたら良いのでしょうか?
533 :
デフォルトの名無しさん :02/07/10 01:28
ディメンジョンってなんですか?
534 :
デフォルトの名無しさん :02/07/10 02:11
Dimension ・・・Javaのクラス。おもにアプレットの大きさを取得し、バックバッファを作るのに用いられる。
Dimensions ・・・ Adobe の 3D ソフト。ヘボい。
536 :
デフォルトの名無しさん :02/07/10 05:35
DirectXを使うC++のコード、皆さんキッチリクラス分けしてますか? 俺はDirect3D、DirectInputのクラス(つーかラッパ)を作ってプログラム本体から呼び出すまでは良かったのだが 本体をクラス化しようして、と細分化したクラスからDirectX関連のクラスをコールするあたりで脳みそウニになりました。 誰か私に道しるべを・・・
>>536 ラッパなんか作る意味が果たしてあるのかどうか。
538 :
デフォルトの名無しさん :02/07/10 12:07
>>537 DXはCOMだからね、生のままでは使いづらい部分もあるよ。
俺はラッパーでエラー戻り値廃止、ポインタ極力排除、で結構スマートになったよ。
これだけで描画いける。Release無し。
D3DDevice& d3ddevice = D3DDevice::GetInstance();
d3ddevice.BeginScene();
描画処理
d3ddevice.EndScene();
すげー そんな非本質的なところで舞い上がってる奴、初めて見た
>>538 あぁそうかVBではそれ勝手にやってくれるから忘れてたよ。
>>539 ラッパの意味があるのかというレスに応えただけなのに・・。
なんだか捻くれた人多いね。
>>540 詳しくは書かないけど、君の思ってる10倍は機能多だよ。
表には現れてないだけで。ラッパーってそういうもんだと思うし。
10倍ってメソッドの数でつか?
さあ?10個ぐらいじゃない?
じゃぁ、引数がすんごいんですね。
>>545 俺のD3DDeviceラッパーでは今のところ
引数を受け取るようなメソッドは無いね。
唯一、作成時にオプションとして
ウインドウハンドルと親となるアダプタのインデックスを渡せるだけだね。
まあまだ中途半端だから。
ところでいまのところ日本のPCゲーでまともなゲームないじゃん? 3D一番きれいなのはエロゲーという哀れな状態で、、 ここにいる皆さんの仕事はなんですか?完全に趣味でやってるのですか?
せっかくだから、その一番綺麗な3Dのエロゲーとやらを紹介していただきたい。
バイオハザード3は?
SEGAなんかはかなり質の良いPCゲーを作ってるね。 セガラリー2はいまだにPCゲーの最高峰ではないかと思う。 BGMにCDDA使っているせいでループするときに止まる欠点があるけど。
デモプレイしてみろ。 トゥームレイダー2クラスとタメ張れるゲームだぞ(ワラ
なんで?
日本はコンシューマが強いからだと・・・ 欧米は一定以上の年齢層(つまり大人とか)でコンシューマやってると 馬鹿にされるらしい。日本の大の大人がゲーム・・・・、というより強烈なんだそうな。 だから、向こうは大人はPCでゲームやるんだってさ。 まぁ、日本のコンシューマで大人な3Dゲームが出てるかっていうと怪しいが・・・。 大人なってのは=エロじゃないぞ、念のため。
>欧米は一定以上の年齢層(つまり大人とか)でコンシューマやってると >馬鹿にされるらしい。 そりゃ昔の話DEATH もう欧も米もコンソールは日本並みの市場規模に成長しとります。
市場規模じゃなくてさ、向こうは大人がコンシューマでゲームやらないってのは あんまりかわりないでしょ。 もしかして、それも変わってきてるのかなぁ・・・。 ワシも年を取ったなぁ
うん、変わってきてる。PCだけでやってた海外メーカーはコンシューマに続々参入中よ。 まあネットゲーはまだPCだけどさ。
563 :
デフォルトの名無しさん :02/07/12 10:06
Ax + By + Cz + Dw = 0 なんでこれで平面を表す方程式なんでしょうか? Ax + By + Cz =d ジャ無いんですか?
同時座標系について考えてみよう
セガとかバイオは面白いし技術的にも悪くはないけど、僕が不思議に思ったのは DirectXを使った仕事がほとんどない(と僕が妄想する)のになんで結構 やりこんでるような方が居るのが不思議です。 セガはゲーム機やアーケードをそのまま移植しただけだしバイオのPC版もほぼ同じ。 日本製で、DerectXを活用してるゲームがほとんど思いつかないのですが・・・
アマチュアにはDirectXしか選択肢がないでしょーが。
オプソグルがある
568 :
デフォルトの名無しさん :02/07/12 12:20
>>564 調べてみたらわかりました、有難うございます
しかし(x、y、z、w)のときw=1じゃなくすることってありますか?
>>565 君の意見はDirectXを使うだけで精一杯の人間の考え方だよ。
大事なのはDirectXを使うことではなくて、DirectXを使って何をするか。
DirectXはその何かを実現するための手段でしかないんだよ。
自分で自由にDirectXを使って何かを作れる人間には、OpenGLを使わせても
3日もあれば使えるよ。逆にそれが出来ない奴は使い物にならない。
DirectXなのかOpenGLなのか、それとも全く別のライブラリなのかなんて
ことはC++とJava程度の違いしかない。
本当に大事なのは言語の文法やライブラリの仕様ではなくて、考え方や
概念でそれらはライブラリを使いこなす事なんかよりも遥かに難しく
時間がかかること。
Direct3Dの固定機能なら使えるけどシェーダーが駄目って奴は、基本的に
ライブラリが使えるだけの奴。シェーダーの方がより原始的で座標系や
ベクトル演算を正しく理解していれば1日もあれば使える単純な物。
DirectXってそんな簡単なものなのか? そうか、ならやってみよう。
>>569 コイツも口だけなんだろうなぁ。
シェーダーの方が原始的で単純な物なのは確かだけど、
技術力が低い人間や経験の浅い人間は、
D3Dの固定機能を使った方が高度な処理を高いパフォーマンスで実現出来る場合もある。
理解しているからと言ってすぐさま実用になるたぐいの物ではない。
部品を軽視するやつは何もできないやつだな。
>>569 んー じゃここの人は仕事で使ったわけじゃないけど、3Dある程度分かってれば
DirectXいじるのは簡単だから趣味でいじってるということですか?
というかもっと日本製の3DゲーというかまともなPCゲー出してほしいな
やっぱり洋ゲーじゃビジュアルのセンスがあれなので。
まあエロゲーでも別にいいけどw
574 :
デフォルトの名無しさん :02/07/12 14:36
まあ日本は家ゲーとPCゲー のレベルの違いは酷いものがあるのは事実。 セガのXbox向けは日本でもトップクラスなのに セガPCのレベルはというと、アマの俺から見てもイマイチ。
日本の高スペックPCの普及水準が低いんだからしょうがない。 海外のゲームはロースペックはばっさり切り捨てられるけど、 日本じゃそういうわけにもいかない。 FFXIだってP3 800MHzまでサポートしてるんだし。
とりあえず俺は547が何ができるのか知りたい。
3Dは な に も で き な い が、なにか? いやー3Dは学生時代から興味あるけど、家ゲー業界に入るのはやはり 抵抗あるし、残念なことにPC業界は3Dやってるところほとんどない。 一応PGですが仕事で使えるものじゃないと、あまり時間掛けられないので ここの人はなんでやってるのだろうと思っただけです、はい。
>>573 ここにいる人が全員職業プログラマってわけじゃないよ。
学生も結構いるんじゃない?
>>575 ロースペックをばっさり切り捨てられるメーカなんて極一部だよ。
そのゲームのためにPCを買い換えるくらい魅力のあるゲームでないと駄目だし。
それか、最新技術にいち早く対応してベンチマークの役目を果たすソフト。
これは面白さよりも、とりあえず最新機能に対応していてある程度重ければいい。
昔で言うと、モンスタートラックマッドネスが当時唯一(?)Direct3Dに対応した
ソフトだったから、ベンチマーク代わりに売れてた。
メーカーが配布していたコースエディタのオマケ機能の、コース内を試しに
走れるDOSプログラムの方がDirect3D使ったゲーム本編よりも遥かに滑らかに
動いていた事は秘密(解像度は低かったけど)
海外のソフトは低スペックをばっさり切ってるやん
つうかロースペックにそんなに需要があるとは思えん。 PCでゲームやろうとするやつなんて無駄に超ハイスペックだろ、どうせ。
>>577 仕事とは無関係にゲーム作ってますが何か?
ていうか、まるで俺様が真面目に仕事してないみたいじゃねえか。
してないけど。
578の言うロースペックと日本のロースペックは程度が違うな、たぶん。
アフォばっか。
最近出た海外のゲームだと例えばGTA3があるけど、これの必要環境はP3-450、 メモリ64MB、VRAM16MB。これってロースペックを切り捨ててる? 他にはThe Sum of All Fearsなんかも同じようなスペック。 国産で3DゲームだとPSOとかエクストリームエアレーシングとかがあるけど、 どちらも要求するスペックはGTA3とほとんど一緒。 他に国産だと式神の城は700MHz以上が必要だし、FFXIは800MHz以上が必要。 別に海外の方がロースペックを切り捨てているようには見えないが。 むしろ575のロースペックの基準の方が凄いと思う。 (800MHzでロースペックって…)
今の普及機って言ったら1.2G〜1.6Gくらいじゃん。
>>585 それは今売っているPCでの話で、今普及しているPCではないと思うが。
未だにけろよん450Aですが何か? VisualStudio.NET┗(゚д゚;)┛オモー
レトロ P3 650MHz以下 ロースペック P3 700MHz以上、Celeron800MHz以上 ミドル P3 1.13 P4 1.4 Athlon 1.2 ハイスペック P4 2 Athlon 1.8
今でも普及機はP54C-133MHzだったりする罠
>>589 さすがにそれは無いだろうと言いたいところだが、実際にうちでその
スペックのマシンを使っている罠。
>>584 国産だとそれぐらいしかないじゃん。
ま、これからはそういうのが増えそうだけど。
セガも月一ペースでPCゲーを出してるけど、実はほとんどがヨーロッパで 開発されてるんだよね
594 :
テiチ[テVテテ :02/07/24 20:56
DirectInput8Create関数ほかのDirectInput系の変数や関数がが定義されていない識別しです。っていわれる理由って何が考えられるかな? dinput.hインクルードしてdinput8.libもちゃんとリンクしてるんですけど
guidは?
dx8sdkのincludeディレクトリが優先されてないとか
597 :
?i?[?V?? :02/07/24 21:40
アドバイスありがとうございます。 あっけなく解決しました。 596さんの正解でした。includeなおしてもだめで何でだろうと思ったら LIBディレクトリも優先させないとだめでしたね。
598 :
デフォルトの名無しさん :02/07/28 12:37
ゲーム作成っておもしろそうじゃん(゚∀゚)
599 :
デフォルトの名無しさん :02/08/02 20:53
今ゲーム作っててDirectX8.1を配布したいんですがこれってメディアに同梱しちゃって良いんですか?
redist.txtを見てみろ
>DirectX コンポーネント変更を加えないという条件で・・・ 配布OKみたいです。 ありがとう御座いました。
>>601 再配布して良いのはredistアーカイブだけだぞ。
すいません。 DirectXを使いたいのですが F-BasicでDirectXを使う命令がわかりません。 F-BasicのバージョンはF-Basic98です。 パソコンはPC-9821Xa7でWindows98です。 友達がもっと新しいF-Basicを持っているので借りることもできます。 DirectXはゲームに付いていた物をインストールしています。
>>603 F-Basicのバージョンが古すぎるな。
>>604 あたらしいF-BasicならDirectX文が追加されてるのでしょうか?
友達が持ってるのは最新版なのでコピーしてもらってきます。
あと、DirectXのバージョンは何が良いのですか?
自分は、DirectX7を入れたのですが友達に7は性能が悪いと言われたので
DirercX3を上書きインストールしました。
>>605 友達の言うとおりだ。それにDirectX3なら8000円のオフィシャルマニュアルも
販売されているから安心だ。
>>606 説明書が8000円もするんですか!?
高すぎて手が出ないですぅ・・・・・・
でもF-BasicのヘルプにDirectX文の解説がのってるはずですよね?
GOTOとかINKEY$ものってる位だし。
あと、最新版DirectXを入れてる人ってけっこういますよね。
もし、自分が作ったゲームをダウンロードしたら最新版を消さなきゃいけないですよね?
やはりDirectX8で作るべきなんでしょうか?
悩みます・・・・・(最新のF-Basicは明日Rに焼いてもらってきます!)
コピ厨シネ
>>608 友達の同意も得てるし問題ないと思うですが
だったらネットでWindowsXPをダウンロードしまくってるVisualStudioスレの人もコピ厨ですよね?
初心者は氏ね
ごめん、もしかして、まじだったの?>初心者さん。 絶対100%ネタだと思ってた。
ネタですよね? つかF-Basicだし。 明らかな違法コピーの話してるし。 一応ネタに付き合うと、F-Basicでもcomが扱えりゃなんとかなるんかな?
615 :
デフォルトの名無しさん :02/08/07 19:41
DirectX8.0でスプライト使うときは何か設定が必要ですか? CreateTextureFromFileExでテクスチャ作るときにフィルタをNONE以外にすると、 Drawでスプライトを描画したとき、拡大されてしまいます。
>>615 拡 大 ?
スケーリングを原寸にしろよ(w
>>616 ありがとうございます。
やってみます。
618 :
デフォルトの名無しさん :02/08/11 14:24
DirectX7を初めていじってるのですが、 GeForce2, Pen3 1Gのマシンで DrawPrimitive にてARGB1555のテクスチャーを 毎回切り替えつつ描画し 秒間12万シングルテクスチャードポリゴン 位しか出ないんですが こんなもん?
使ってないです。 DrawPrimitive で2枚の四角ポリゴン描画してます。 頂点バッファ使おうかと考えたんですが、 やっぱりないマシンでは劇重になるんですよね? GeForce2のスペックの何百万ポリゴン/秒とは一体?
>>620 単一の頂点バッファに数万ポリゴン押し込めば少なくとも可能
>>618 とりあえず、サンプルのOptimizedMeshを実行してみやう。
>>618 テクスチャの切り替えは負荷が大きいから、毎回テクスチャを切り替えてる
ならあまりパフォーマンス良くならないよ。
同じテクスチャを使うのはまとめて描画してしまった方が良いかと。
624 :
デフォルトの名無しさん :02/08/13 00:41
超初歩な質問だと思うのですが DirectXで裏画面を何ドットか平行移動するっていうのは どうやればいいんでしょうか。 元の画面を左に平行移動して、空いた右の部分に描画することで 画像が右から左にどんどん流れていくようにしたいのです。 よろしくお願い致します。
>>624 ゲーム製作技術板のほうが適切な解答がもらえると思う
あと目的をもっとズバリ言ったほうがいいぞ
>>624 普通、もう1枚のオフスクリーンにずらしてブリットするんだよ。
で空いた部分にもブリットするなりして、まとめてプライマリに転送
>転送先および転送元サーフェスは 1 つかつ同じサーフェスであることも >可能である。DirectDraw では、オーバーライトの前にすべての転送元ピ >クセルを保持するため、オーバーラップの心配はない。 (DirectX7日本語ヘルプより) というわけで、気にせず同じサーフェス内でBltしてOK
>>626 ブリットってなんだ?bltはBlock Transferの略だが。
>>628 衝撃のぉぉファーストぉ〜
すいません、仕事に戻ります…
あ、でもブリットって言葉使ってる解説書も多いので、
>>626 を責めるのもどうかと( ・∀・)つ
>>629 むしろbltをブリットと読むことを知らない628が知ったか
bltをブリットって読むんじゃなくて、blitをブリットって読むんだよ。 blitはbitbltから作られた造語。よくbitbltをビットブリットと読むと説明 している所があるが、なんか違う気もする。 で、blitはビット単位のブロック転送を表す言葉なので、626は何も間違って ない。DirectDrawのBltもBltFastもblitを実装する関数だから。
bacon, lettuce and tomato、ベーコン・レタス・トマトをはさんだサンドイッチ
624です。遅レスすみません。 同じサーフェス内でBltして問題ないんですね。 早速やって見たところ、きちんと動きました。 本当にありがとうございました。 あと、僕はbltをブリットって読んでました汗 勉強になります。
635 :
デフォルトの名無しさん :02/08/14 22:43
質問 直線を引くのに デバイスコンテキストを確保してLineToを使う意外によい方法はありますか? どうもLineToは遅い気がするのです。
3DにしてDrawPrimitive
3DにしてもnV系のカードはラインは遅いよ。
もちろん、していない
今更DirectXを選ぶ人はどうかしてますね。 M$にマインドコントロロールされてますよ、マジで。 財産貪られるからさっさと俺にした方がいいよ、うん。
642 :
デフォルトの名無しさん :02/08/15 00:09
643 :
デフォルトの名無しさん :02/08/15 00:36
マインドコントロロールage。
お前らあんこの料よりごまの料をき」
>>640 はぁ?
nV系のビデオカードは、線1本書くのもトライアングルで代用してるんで、
パフォーマンスが極端に落ちるんだが。
ATI系とそれぞれWireframe-Shadeモードでパフォーマンス比較すれば一目瞭然。
DX8でプライマリサーフェイスと違うサイズのバックバッファの生成って出来ませんか?
>>647 好きなサイズのサーフェス作ってRenderTargetにすれば?
650 :
デフォルトの名無しさん :02/08/16 19:17
現在、DirectInputを使用してジョイパッド入力クラスを設計しております。 クラスの機能の一つとして、連射機能付きジョイパッドが使用されているか調べる関数を 制作しているのですが、イマイチ上手くいかずに困っております。 上手くいかない理由として、連射の間隔が一定ではないことが挙げられます。 手元にあるパッドが吐き出す連射の間隔を計測してみますと、どうも間隔が一定せずに マチマチ(16,17,16,98,16,16,17[msec]など)な数値しか吐き出しません。 このような場合ですと、手動の連射と連射パッドの区別を上手く判別できないので 苦労しております。 どなたか良いアルゴリズムありましたら御教授頂けますとありがたいです。
>>650 押しっぱなしで連射にすればいいじゃん。
連射パッドなんか持ってるヤシ自体かなり少ないと思われ。
>>651 RPGの自動戦闘やSTGの自動連射を避けるために
連射パッドでの連射を無効にしたいってのじゃない?
>>652 その通りです。
ソフト連射を作るのではなく、連射パッドを無効にしたいんです。
連射パッド無効というか、一定時間一定間隔の連射を無効ということですよね。 そもそもこの場合、ハードウェアの機能を無効にするということは現実的ではないですし。 目的が自動連射を避けるということは、 ツールを使っての連射も防ぐ必要があるので、 (つまり連射付きのジョイパッドかどうかは問題でない) 入力された値から見るしかないですね。
連射パッドを使ってるヤシよりも、ソフトウェアで連射やってるヤシの方が多そうだな。
>入力された値から見るしかないですね。
はい。
それで入力される間隔が一定ならば良いのですが、
>>650 にもあります通り
一定とならない(しかも時折100msec近い間隔になることもある)ので
苦労しています。ツールの場合は一定となるかもしれませんが…。
現在は、
連射の間隔時間を一定数分保存しておき、同一の間隔時間が一定の割合を超えれば
連射パッドまたはツールを使用している。
以上のような案を考えているのですが…。
まぁ、人間はどんなにがんばっても1発の打鍵に70〜200ms程度はかかるんで、 それ以下の連射が続くようなら無効化するのが良いんじゃないの
>>657 特定の連射パッドしか無ければそれでも良いのですが、他の方のご意見にも
あります通り、PCでは時間間隔を自由に設定できる連射ツールがありますので
無理なようです。
自分でも手動で連射して統計を取ったりしてみましたが、結局のところ
時間の間隔を調べてはじく方法は使えないようです。
残念ですがこの機能は実装できそうにないです。
ありがとうございました。
>>649 ヘルプ読んで見たんですが良く分かりませんでした
できれば具体的な方法とかを教えて頂きたいのですが・・・
>>659 教えて君か?
SetRenderTargetを使ったサンプルを見た?
SetRenderTargetをヘルプみて理解できないっつー事は IDirect3DDevice8::Clear IDirect3DDevice8::BeginScene IDirect3DDevice8::EndScene IDirect3DDevice8::Present を理解してねーっつー事だよな。
662 :
デフォルトの名無しさん :02/08/19 18:09
^キーのDIK_は何ですか?
663 :
デフォルトの名無しさん :02/08/21 23:28
DIK_~
>662 DIKは「キー」に割り当てられているんだぞ。
>>650 遅いかもしれないけど、
別に設定画面みたいなものを作って、
『Xms以内の連続押下無効(もっと分かりやすくする必要があるが)』
として、デフォルトを{しない}にすれば?
666 :
デフォルトの名無しさん :02/08/25 00:39
>>662 ^キー押してみてどこに押されたフラッグが立ってるか調べたら?
667 :
デフォルトの名無しさん :02/08/25 18:32
DirectDraw7のBltは透過処理できるのでしょうか? ちなみにBltFastでは出来ました。ヘルプ見ても載ってなかったからできないのかな 教えてくんですまそ
ヘルプに無いことやっても動くものなのか・・・ 「透過処理」はアルファブレンドとカラーキーの どちらを指して言っているのか不明
BltFastでできたんだからカラーキーの方だと思うんだけど、 それだとBltでもヘルプにちゃんと出てるしなぁ・・・。
DirectX9, GDI+になったらどうなるんやろ。
オナニーライブラリ野郎が調子に乗るだけだからGDI対応いらない。
意味がわからない
673 :
デフォルトの名無しさん :02/09/10 00:12
DirectXスレは相変わらずのびねーな age
2D描画だけなら俺的にはGDIで十分 ウィンドウで動かしたいし、ウィンドウモードでDirectDraw使う意義あんまりないだろうし。
・誰も使ってない ・単純な使い方しかしていない ・MSのヘルプ&サンプルがすげえ分りやすい 同人や個人でやってるのって思ったより少ないネ
ていうか、みんなゲ製板のスレに行ってるんでしょ。
Visual C#とDXVBLib(Direct X 7.0 for Visual Basic)で簡単なチャットをつくろうと思っています。 DirectPlayのReceiveでDirectPlay4のQueryInterfaceに失敗しました。 というエラーメッセージが出ます。 エラーメッセージの意味がわかりません。 解決方法とかってあるんでしょうか。
age
DirectPlay4が入っていないとか?
ゲ製だとDirectX7以前やVBは嫌われます
680です ちなみに、DirectPlayにてCreatePlayerをクライアント側が行ったとき、 サーバー側でDirectX Eventが起こり、そのときに起こるエラーです。 自分でメッセージを送るわけではなく、SYSMSGとして送信されるものです。 インターネットなどいろいろ調べてはいるのですが、 まったく理由がわからずじまいです。 たぶん、ReceiveするときにDirectPlay4が入っていないというのは いい線行っていると思うのですが、どのようにすればDirectPlay4が 入るのかわかりません。 解決策とかあるのでしょうか。お願いします。
>>681 ツール作るときにgetDCできないとつらいんだよ。
どうすんだYO!!(´д`;)
未だに解決できません。。。 今は趣味でやってるので特に困ることも無いのですが やってること自体邪道なのでしょうか・・・ COMについてもっと知らないとならないのだおろうか・・・ 鬱だな。。。
685 :
デフォルトの名無しさん :02/09/12 19:20
鬱だ氏のう
DirectXなんか最初から使わなきゃいいんだよ。
OpenGL使うか・・・ Networkには関係ないが(藁 Socketで自作するのが一番なのだろうか。。。 DirectPlayもなかなかよさげだったのに( ´・ω・)
かぶっちまった(藁 今やりたいのはチャットなわけで・・・ 某糞会社もDirectPlayのドキュメントをもっと公開してほすぃ
>>689 チャットならDirectorで(^-^*)ニコッ
ちゃっとから後々大規模MMORPを作れたらとか 無謀なこと考えてたりするので 今回はChat んで上手くいったら、グラフィックをのせて簡単な対戦オセロとかで いいから作ってみようかと。 趣味は気楽で(゚∀゚)イイ!!
>>691 MMO作るならWinsockがオススメ。
MOだったらDirectPlayがオススメ。
オイラ今MMORPG作ってるけど、
ネットワーク部分はチャットからハジメタYO!
漏れの環境(Visual C#アカデミック)ではなぜか Winsockが使えないんです(泣 Winsockも使おうと試みましたが、 ライセンスがたんねぇよとかってエラーになってしまった。 だからC#のSystem.NET.Socketまわりで一回チャット作ってみますた。 でもこれだと、セッションとかグループとか、プレイヤー周りが弱い つか自分で作ることになるので、DirectPlayとかだと簡単なのではないか と考え試行錯誤していた次第でありまする。
>>692 どっかのソフトハウスでMMO開発やってるの?
それにしてはなぜにVC#アカデミック?
訂正 Visual C#→Visual Studio.NET アカデミック まぁあんまりかわらんが。。。 アカデミックだとWinsock使えないのかも 教育機関の一趣味プログラマーですた
DirectX9!!
>>695 趣味でMMO作ろうとしているのか・・壮大な計画だな。
とりあえずMOくらいから始めれば?
MMOの設計考えるだけでも楽しいよ
DirectX9まだかいな・・・ NV30待ちか?
701 :
デフォルトの名無しさん :02/09/17 02:56
Xファイルをオリジナルフォーマットにコンバートしたいのですが IDirectXFileEnumObject::GetNextDataObject()が DXFILEERR_PARSEERRORを返してwhileループから抜けてしまいます ↑はヘルプを見る限り返さないはずですが・・・ あとIDirectXFileData::GetType()でGUID拾ってくるのですが これはCOMオブジェクトを作れと言ってるのですか? ヘルプの DirectXGraphics->高度なトピック->Xファイル->使い方->ロード だけだと情報が少なすぎます どうかご教授お願いします
>702 移動したならその旨報告しような まさかこっちでも引き続きとか言うんじゃないよね?
704 :
デフォルトの名無しさん :02/09/21 21:29
初歩的な質問なんですが、VC++.netとdirectx8sdkでdirectdrawのフルスクリーンを表示する サンプルを新規のプロジェクトに張り付けてビルドしてみたのですがリンカが エラーをだすんですが対応策がわからなくて困っています。 Test2 error LNK2019: 未解決の外部シンボル _DirectDrawCreateEx@16 が関数 "public: long __thiscall CDisplay::CreateFullScreenDisplay(struct HWND__ *, unsigned long,unsigned long,unsigned long)" (?CreateFullScreenDisplay@ CDisplay@@QAEJPAUHWND__@@KKK@Z) で参照されました。 などのエラーがでます。 どう設定すればいいのでしょうか?
>>704 ddraw.lib がリンクされてない
706 :
デフォルトの名無しさん :02/09/21 21:52
>>705 メニューのツール、オプションのプロジェクトからVc++ディレクトリではライブラリのパスを
記述したんですけどだめなのでしょうか?
libのあるディレクトリの指定をしているのはオッケー。 lib自体をリンクする指示がないんじゃない?
708 :
デフォルトの名無しさん :02/09/21 22:10
そっか、そういうことね。 わかりました。 ddraw.libを追加したら動きました。 ありがとうございます。
709 :
デフォルトの名無しさん :02/09/24 19:35
トゥーンレンダリングのやり方とか載っているHPとかないでしょうか? MSDN Online のHPのをみたんですけどいまいちわからなくて...。(;´д`)
シューティング作り始めましたあげ。 っていうかね、ゲーム作る面倒くささがわかった。 でもまぁ頑張るよ。 ライブラリいっぱいある分楽だし。 2Dだけどね。
>>713 ゲーム製作技術板というのがあるのはご存知?
あんまり参考にならんかもしれんけど
あそこは90%が妬み野郎の巣だから行かないほうがいい
>>715 キミもそのオーラをプンプン発してるぞ。
717 :
デフォルトの名無しさん :02/10/02 00:49
テクスチャの指定した位置(X,Y)に指定した色のドットを書くやり方を教えてください 買ってきた本とかには載ってませんでした UDPでX,Yの情報と値が送られてくるのでそれを書き込みたいのですが どうかよろしくお願いします
>>717 テクスチャをロック!!
↓
サーフェイスメモリへのポインタをゲッツ!
↓
ポインタを書きこみたい位置(y*(x*[ピクセルの大きさ])に移動!!
↓
そこに打ちたい点の色を書きこみ!!
↓
テクスチャをアンロック!!
ミッションコンプリート!!!
微妙にスレ違いかもしれないけど。 「今フルスクリーンで稼動しているアプリがあるかどうか」って、 どうやって調べたらよいんでしょう? SetCooperativeLevelでDDSCL_FULLSCREEN指定して フルスクリーンにする方法はいろんなところで紹介されてるのだけど、 そうやって動いているアプリがあるかどうかを調べたいのです。
720 :
デフォルトの名無しさん :02/10/02 13:45
フルスクリーンのゲームやってる最中に別のフルスクリーンアプリを立ち上げる人はあんあmりいないとおもうのですが。
>>719 他のアプリケーションがフルスクリーンモードを使用中に切り替えようとすると、
SetCooperativeLevelがDDERR_EXCLUSIVEMODEALREADYSETを返す。
>>720 検査する側のアプリはフルスクリーンにしたいわけではないのです。
>>721 ということは、
SetCooperativeLevelでDDSCL_EXCLUSIVEだけ指定してみて
DDERR_EXCLUSIVEMODEALREADYSETが返ってきたら起動中、
DD_OKだったら起動してないと判断してすぐにNORMALに戻す、
てな感じでいいのかな。
ありがとう、試してみます。
723 :
デフォルトの名無しさん :02/10/02 16:03
>>718 ありがとうございます
>テクスチャをロック!!
>サーフェイスメモリへのポインタをゲッツ!
って言うのはどうやってやるんですか?
>>723 IDirect3DTexture8::LockRectを見れ。VBは知らん
「ゲッツ」で思ったのだが、ダンディ坂野のAAって無いの?
ダンディ坂野マイナーすぎですか?
725 :
デフォルトの名無しさん :02/10/02 21:29
>>724 STDMETHOD(LockRect)(THIS_ UINT Level,D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags) PURE;
見てもわからないす
サンプルプログラムとかある場所教えてもらえないですか?
そのAPI名とかキーワードでgoogleすればいいのに
727 :
デフォルトの名無しさん :02/10/02 22:20
728 :
デフォルトの名無しさん :02/10/02 22:30
最初に買うならGemsしかないよね?
あきらめたほうがいいと思う
>>728 最初ってのがなんだかわからんが、DirectXの入門書/使い方の本が必要ならば
Gemsは役に立たないと思われ。Gemsはアルゴリズムとか手法の本なので。
「DirectXなりの使い方はほぼわかっていてゲームも簡単なのを何個か作った。」
程度以上の知識・技術がある人にはカナリ参考になると思う。
ただやっぱり高いよね。
お金が余って困ってる/会社の金で買える。とかゆーんなら買って損はない。
内容は(・∀・)イイ!ですが、金額分の価値を感じるかどーかは人によってちがうと思う。
持ってる友達とか探すとかして、ざっと内容見てから買ったほうがイイと思う...
DirectX9!!
出たの?
今まで、DIRECT7のDirectDrawで2Dグラフィックやってたんですが 最近になって3Dの必要が出てきたので、DIRECTX8をはじめました。 で、本題なのですが、今、あるプログラムを組んでまして、 それは基本的には2Dグラフィックなんですが、一部3D(Y軸回転)を使いたいんです。 それで、そのためには当然RHWではダメなわけで、ワールドを用意しないといけないですよね。 そうすると、画面(今回は640×480)全体をちょうど2Dになるようにするには 視野角や、2D画面のポリゴンの位置を調整して擬似2Dにするしかないんでしょうか? ズレが怖いんですが、きちっと座標をあわせれば大丈夫なんですかね? また、その場合、各ポリゴン優先順位はどうすればいいんでしょう? Z座標を0.000001とかの単位でズラすしかないんでしょうか?
Y軸回転とは微妙なものを使うな。 回転するのは画面全体?それとも一部のキャラだけ? 一部のキャラだけなら回転してるアニメーションパターンで十分。
一部ですけど、数が多いと思うのでパターンは厳しいです。 拡大縮小もあるし、やはい3Dで処理したいところです。
重ね合わせについては、既に優先順位付きの描画ルーチンになってるなら Zバッファを使わないという手があるね
ビルボードの回転くらい自分で作れば。 背景を3Dで作って、Y軸回転させたいつうことかな。Gダラみたいな。
>>736 そんなことできるんですか?
DirectDrawではあとから描画する方が自動的に手前になっていたので・・・・・・
考えたのは、画面をクリアするときに Z=0 と初期化して、
描画の際に Z-=0.00001 などとして、ちょっと手前にもってくるという方法なんですが。
>>737 えっと、本当なら背景もスプライトも全部2Dでいいはずなのに
一部、画像の回転(Y軸回転)、拡大縮小を使いたいために
3Dにしなければいけないって状況です。
なので、RHWは使わずに、3D空間上で640×480の2D空間を表現したいのですが
それには、たとえば40×30のポリゴンをつくって、
それがちょうご640×480に投影されるように調整するしかないんでしょうか?
??? 2Dで拡大縮小するにも、絵の上下左右の幅を計算するだろ。 それと同じことを RHWでもできるのでは?
>>739 拡大は問題ないんですが、回転が問題なんです。
しかも、Y軸回転ですし・・・・・・
正射影行列 → D3DXMatrixOrthoのことか? ハッタリとしての奥行きが欲しいのかな。 昔、スーパーファミコンのRPGで、半透明のポリゴン1〜2枚程度 くるくる回る魔法エフェクトのあっただろ。 XYを適当な値で除算して、それなりに奥行きを出したものだ。 まあ、君はまだ勘違いしてる感じがするよ。 今のまま進めて無駄な苦労をしないことを祈る。
いきなり目的のものを作らずに3Dでいろいろ試してみるのがいいと思うよ...
>>741 つまり、2Dでポリゴンの変形によって擬似的に回転を表現する、ってことですか?
>>742 そうですね。
でも、今どうしてもこれが必要で・・・・・・
回転が必要なキャラだけ3Dで描けばすむじゃん。 もしくは場合分けで。
>>744 どうやってやるんでしょう?
RHWモードにすると3Dモデルは作れなくなってしまう、
RHWでなくなると、全部をワールドにおかなくてはならない。
>745 何がわからんの? ワールドに置いて回転させればいいだけやん。
自分の知識の及ばないことには手を出すなと。 基礎から積み重ねていけと。
DirectXでMIDIを再生する方法ってありますか?
DirectMusic
751 :
デフォルトの名無しさん :02/10/17 18:37
>>748 DirectXにはMIDIの再生はできません。
できないのか・・・
だからDirectMusicで出来るって
MIDIデータは再生できるけどMIDIは再生できんなあ。 とか言ってみるテスト
"MIDIの再生"の定義によると思われ SMFファイルの解釈を含むのか、 MIDIメッセージを受け付けるだけの話なのか・・・
756 :
デフォルトの名無しさん :02/10/19 12:27
スピーカーレベルのはなしだと思われ。
MIDIの曲をゲームで流したいんです
だからできるってば
759 :
デフォルトの名無しさん :02/10/20 20:35
キミもな。
質疑応答ネタは失礼とは思わないのか。 こちらはまじめに答えてるのに。 釣る釣られたとか正直どうでもいい。
762 :
デフォルトの名無しさん :02/10/22 02:02
>>748 質問する前にまず調べろ。
と、5日前のカキコにレス。
>>751 ,
>>754 DirectXで外部MIDI音源も使えるよ。
いまSDKのサンプル使ってSC88Proで演奏させてるから間違いない。
765 :
デフォルトの名無しさん :02/10/23 02:54
748は今でもこのスレを見てるのだろうか...
766 :
タイミング悪いかな :02/10/24 20:11
質問なんですが、いまX形式のファイルを作っているんですが、 テクスチャのある色を透過色に指定して切抜きとかは出来なんでしょうか?
767 :
デフォルトの名無しさん :02/10/25 11:01
ある点を中心にカメラが回りこむような処理は 注視点、視点位置をどのように設定したらよいのでしょうか
769 :
デフォルトの名無しさん :02/10/27 00:59
D3DXCreateTextureFromFileExA関数で、引数に画像ファイルのパスを指定しますが、 このとき、画像ファイルに暗号をかけたいのです。 暗号というよりかは、ぱっと見ではわからなくなれば十分なのですが、 ファイルを変換すると当然この関数では読み込めません。 どうすればいいのですか?
770 :
デフォルトの名無しさん :02/10/27 01:11
>>769 重複うざいよ。ゲーム製作技術でとてもいい回答をもらっただろ。あれを実行しろ。
769がなんで消えてるんだ?
772 :
デフォルトの名無しさん :02/10/29 20:03
age
773 :
デフォルトの名無しさん :02/11/09 02:15
VB.NETでDirectInputを扱う方法で参考になる情報ありませんか??? 探してもまずない、だいたいVB.netでゲーム作ろうとしているヤシが少ないのかもしれないが とりあえずDIのキーボードは簡単だったけど、ジョイスティックがどうしようもありません。 キーボードと似たやり方で適当にコーディングしてみましたが動作せず。 助けてください!!!
774 :
デフォルトの名無しさん :02/11/09 02:40
VBはバカの使う言語なので帰ってください
775 :
デフォルトの名無しさん :02/11/09 07:44
776 :
デフォルトの名無しさん :02/11/09 09:23
もうDirctX9がでるというのにいまだに2を話題にしているスレはここですか?
2の意味がちがいます。
DirectXって結局いつでるんですか?
こういうことはWindows板のほうが情報が早かったりする。 人柱いっぱいだし。
ゲームが対応しているわけでもないのに なぜWindows板のほうが速いんだろう
781 :
デフォルトの名無しさん :02/11/09 11:02
>>781 なんでβテスターでもないのにβ版入れたがるの?
デバッグに協力したいなら、ちゃんとβテスターとして登録して報告すれば、
VS.NETとかゲームとか貰えるんだが。
ちなみにDirectX 9.0 Interim releaseが出たのは本当。
でもRC0ではない。そのスレの1は英語が読めないようだ。
783 :
デフォルトの名無しさん :02/11/11 19:46
DirectSoundのAcoustic Echo Cancellerってどうやったら使えるんでしょう?Windows XPでつかえるはずなんですが。 DSCBUFFERDESCdscbd; DSCEFFECTDESCdsced[1]; ::ZeroMemory(&dscbd, sizeof(dscbd)); dscbd.dwSize = sizeof(dscbd); dscbd.dwFlags = DSCBCAPS_WAVEMAPPED | DSCBCAPS_CTRLFX; dscbd.dwBufferBytes = m_bufSize; dscbd.lpwfxFormat = &m_wfx; dscbd.dwFXCount = 1; dscbd.lpDSCFXDesc = &dsced[0]; ::ZeroMemory(dsced, sizeof(dsced)); dsced[0].dwSize = sizeof(dsced[0]); dsced[0].dwFlags = DSCFX_LOCHARDWARE | DSCFX_LOCSOFTWARE; dsced[0].guidDSCFXClass = GUID_DSCFX_CLASS_AEC; dsced[0].guidDSCFXInstance = GUID_DSCFX_MS_AEC; hr = ::DirectSoundCaptureCreate8(&m_deviceID, &m_ds, NULL); if (FAILED(hr)) { ... } hr = m_ds->CreateCaptureBuffer(&dscbd, &buf, NULL); if (FAILED(hr)) { ... } CreateCaptureBufferでパラメータが間違ってますとなるんですが、サンプルなどが全然無く困ってます。 dscbd.dwFlags = DSCBCAPS_WAVEMAPPED | DSCBCAPS_CTRLFX; dsced[0].dwFlags = DSCFX_LOCHARDWARE | DSCFX_LOCSOFTWARE; あたりは色々と替えてみましたが、どうやっても動きまへん。
Windows板のほうが盛り上がっているのが謎だ
>>782 βユーザーって成りたくてなれるものなの?
その辺、よく知らんのだが。
MSDN会員じゃなくちゃだめとか条件なし?
>>785 たまに募集してるよ。
英語のNDAに署名しないと駄目だが。
RC0 age
どうせ最初はまたバグバグなんだろ? 3,4ヶ月はじっくり見させてもらうよ。 別に仕事でDirectXいじってるわけじゃないしな。
DirectX7のDDrawを調べていたら、 BltメソッドにDDBLT_ALPHADESTほかα系のフラグを見つけました。 DirectDrawは結局半透明をサポートしなかった(D3D使え)と聞いていたのですが、 DDrawで上記のようなフラグを使えば高速な半透明処理を行えるのでしょうか?
そのフラグはたしか2のころからあったと思う 使われてるのか、使えるのか、一切知らないスマン
使えないほうに賭けるね、俺は。
フラグは使えるけれど、それをサポートしたビデオカードは見たことないです。 実質使えない。
#include <d3d8.h> #include <qedit.h> int main(void){} ---コンパイル--- error C2061:構文エラー 識別子LPDIRECT3D error C2061:構文エラー 識別子LPDIRECT3DDEVICE . . なぜだぁ〜、鬱。
教えてage
>>793 >error C2061:構文エラー 識別子LPDIRECT3D
このエラーを見て原因が分からなかったら首つって逝った方が楽だよ
だいたいどのバージョンのインタフェイスを使うつもりなんだ?
ヘルプとサンプルをよく読もうぜ
>>788 あんたはRC0が何なのか分かってないな。
さあ殺伐として来ました。calm down
8付いてないとかそういうことじゃなくて?
801 :
そんな脳みそは・・・いらんわなあ :02/11/16 12:29
>>795 今時無印のDIRECT3D使う変態がいるかよ。
802 :
デフォルトの名無しさん :02/11/16 12:29
DirectX8.0 3Dアクションゲームプログラミング を買って、基礎を覚えろ。 おれはアレの初期化やいろいろな部分をコピって商用ソフト出してるからな。 世の中、他人のをコピーしまくるのは楽でよいよ。 でも理解した上で使うようにせんと、自分でゼロから作ろうと思っても何も出来ないからね。 今 の 中 国 & 韓 国 人 み た い に ( ワ ラ
おれはアレの初期化やいろいろな部分をコピって商用ソフト出してるからな。 おれはアレの初期化やいろいろな部分をコピって商用ソフト出してるからな。 おれはアレの初期化やいろいろな部分をコピって商用ソフト出してるからな。 でも理解した上で使うようにせんと、自分でゼロから作ろうと思っても何も出来ないからね。 でも理解した上で使うようにせんと、自分でゼロから作ろうと思っても何も出来ないからね。 でも理解した上で使うようにせんと、自分でゼロから作ろうと思っても何も出来ないからね。
>>802 まさしく中国人や韓国人みたいだなキミは。
お前らそう興奮するな アレのコードの利用は法に触れないだろ。 韓国人は違法なことをしているわけだけど。
「コピって」とか「商用」にすぐ反応すんのかな。 これが違法なら工学社の例のムックは全部違法だ。
age
809 :
デフォルトの名無しさん :02/11/17 13:40
sage
810 :
デフォルトの名無しさん :02/11/17 14:35
もうDirectX2の話は止めてDirectX9の話をしましょうよ。 どうして昔の技術にしがみつくのですか?
811 :
デフォルトの名無しさん :02/11/17 15:35
2個目のスレだから2がついているだけだと何度言ったらわかるのか。 それともわからないのか。 わらろうとさえしないのか。 そうか。 荒しか。 そうか。
812 :
デフォルトの名無しさん :02/11/17 15:36
次スレのタイトロは「鬱だ氏のう DirectX9.0β」 あたりでいいんじゃね?
813 :
デフォルトの名無しさん :02/11/17 17:30
>>812 先生!まだわかってない香具師がいます!
ランタイムのRC0が一般向けに出てるけど いったい何をしろというのか
815 :
デフォルトの名無しさん :02/11/17 20:15
____ /´,,,.`ヽ (,´._ヾ、 ) L_ "q 丿 もう・・・終りにしましょう・・・ __`フ ~l." / / / ̄ヽ /〈" ''´ ~~/ミ)━・~~~ *このスレは終了いたしました*
816 :
デフォルトの名無しさん :02/11/17 21:29
再開しました
817 :
デフォルトの名無しさん :02/11/17 21:45
いつのまにか8.1bでてるんだな
こっちにも来たのか終了厨。
さすがにム板じゃ暴れないだろ っていうかいくらなんでもそこまでバカじゃないだろ
>>812 入れると、XPが快適になるというデマを聞いて入れてみたが、やはり何も変わらなかった。
あれってやっぱりプラシーボ効果なのか?
半透明ウィンドウが軽くなるって話じゃなかった? 俺はそんなもん使ってないから知らんが。
ちょっと下がりすぎだろ
828 :
デフォルトの名無しさん :02/12/13 14:41
fraps
http://www.fraps.com/ みたいに、他のDirectXソフトの画面に他アプリケーションが
重ね描きするのって、どうやればいいんでしょう?
どなたか、キーワードだけでも知らないですか?
829 :
デフォルトの名無しさん :02/12/13 15:33
>>828 APIをHookしろ。もしくはAPI Wrapperを作れ
830 :
デフォルトの名無しさん :02/12/13 18:07
DirectX9待ち. .netで・・・。
>>829 >>830 ありがとうございます
確かに、FAQにAPI HookかAPI Wrapper作れば・・・などの
文章ありましたね
(ちょっと時間かかりそうな方法なので)その方法でいくかどうかは
ともかくとして、非常に参考になりました
そして迷惑なマルチポストを指摘されたことには無視と。 もう典型的な質問クンって感じ。
836 :
デフォルトの名無しさん :02/12/14 18:18
マルチポストって、べつにいいんじゃねーか。 って俺は思うがどうよ。 駄目な理由が見当たらない。
もともとマルチポストがダメってのは古い時代の話だしな。
838 :
デフォルトの名無しさん :02/12/14 19:06
>>836 すべての投稿に対して適切なフィードバックがあるならば
別にマルチポストは問題ないと思うよ。
しかしながら、たいていはフィードバックなし。
とにかく
>>828 は最低限あっちのスレにも報告してこい。
DirectX SDKはDelphiで使えますか?
努力と根性があれば。 Delphi使う利点なんかないがな。
今、上でマルチポストするなといったばかりなのに(;_;) 向こうにレスつけといたから、こっちにもフィードバックしとけよ。
843 :
デフォルトの名無しさん :02/12/15 00:05
いまうちの環境にはDirectX8.0aが入っています。 ここの質問は基本的に2.0みたいなのですが、8.0aでも参考にして大丈夫でしょうか?
DirectXのバージョンよりも、使ってるインターフェースを明示 してくれたほうがわかりやすい。
楕円体を表示させる簡単な方法はないでしょうか?
まずは球から...
タイトルがDirectX 2となってるので、 DirectX 2の話題のスレだと思っている人が意外といるみたい。 DirectX vol.2 DirectX no.2 とかスレッドNoの前に何か表記させたほうがよいのでは。
Direct9まだー? 耐え切れずDirectX8で DirectGraphics使ってライブラリ構築始めてますがいいのでしょうか?
うわああああ
>>848 ×Direct9
○DirectX9
だ。
>>848 PSとかVSとか動的テクスチャとかは変わってるけど
そのほかは変わってない
↑このへんを活用するつもりなら暫し待ったほうがいいかも
>>848 来月発売のCマガにDirectX9の特集が載るらしい。
付録CD-ROMにもDirectX9 SDKが収録されるらしい。
c:\dxsdk\include\dinput.h: DIRECTINPUT_VERSION undefined. Defaulting to version 0x0800 と directInput だけ 警告ーが起きるのですが 回避するにはどうすればいいですか?
ありがとうゲイツ!!
>>852 include前に自分でdefineしちゃおうぜ
>>852 DIRECTINPUT_VERSIONが定義されていないので
自動的にバージョン8を使いますよと言ってるだけなので問題無し。
まあ、警告がウザイってんなら
>>855 が言ってるように
#define DIRECTINPUT_VERSION 0x0800
としてやればOK。
(・∀・)・・・
859 :
デフォルトの名無しさん :02/12/29 23:11
(・A・)・・・
860 :
デフォルトの名無しさん :02/12/30 00:27
>>853-854 >DirectX 9 SDKをリリースしたよ。おまたせ。
嬉しくねーよ!おかげで年末年始仕事だよ!
せめて、年始にリリースしてくれれば...
いきなり移行せにゃならんような職場なのか?
DX9ランタイム入れたら動かなくなったと泣いてた人はいたな。 マスターアップが2日後だったけど、どうなったことやら…
>いきなり移行せにゃならんような職場なのか? そりゃそうだろ。「DirectX9対応!」で売りたいじゃん。
DirectX9環境下での動作確認済み、で売りたいというのもあるかも。
各グラボとかのDirectX対応状況(どの機能が使えてどの機能が使えない)を まとめたホームページないですか?
866 :
デフォルトの名無しさん :03/01/05 14:49
>221
>>867 おぉ、これはすばらしい。
ちなみに865ではないです。
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/ 1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27 鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
僕の「1秒だけIP記録して、んで消去しる方法とったらいいじゃん。」 という方法は採用されないのでしょうか? おい、誰か教えて
>255 本音が書き込めない
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
GeForce2MXだとDirectX9はやっぱり遅すぎる・・・ そろそろ新しい物にするしかないか
>>875 言ってる意味が良く分りません。
処理的には8.0や8.1だろうと9だろうが、そんなに変わらないだろ。
問題は何をグラボにやらせているかだろう?
9のサンプル動かす程度しかやって無いのか?
つーかシェーダー3.0とか当然使えないのだろうし、
何が、どう遅いのですか?
するからなー。
ちがいます。
ちがいます。
ちがいます。
>>24 じゃ、いつ作為義務が発生したと判決は言っているというのでしょうか?
勝ち組のみなさんには朗報ですな
>>876 こうやってメーカーの広告に乗せられていくのです。
4nd…… ラウンジの「ラウンジ恋愛部」かとおもた
IPは確かにプロパイダの協力が無ければ何にも使えないけど、プロパイダの協力さえあれば 住所も特定できる、、、 プロパイダってそんなに信頼できる物なのか?
上下逆さまに印刷してしまっていませんように、、、
俺は イスラエル---インド---中国---北欧---カナダ---エジプト---自宅 と20もの多弾プロ串を経由しているので追跡は不可能です。
俺がへたれなだけでした。 PresentationIntervalにD3DPRESENT_INTERVAL_IMMEDIATE;指定し忘れ ちゃんと待つようになっていたのね・・・
>>356 IP記録すると、書き込みの質があがるんでつか
ZDNetは2chネタ好きだからな
最近他の板でも誤爆みたいなのをよく見かけるけどこれって一体なんなの?
>>885 とか
>>886 とか
>>890 とか。
CGIがおかしくなっちゃったのか?
自治スレ逝ってみ。どうやら荒らされてるらしいよ。
禿同。 今の日本でまともな告発が出来るなんてのは絵空事だ。 あれは告発なのか?
173 :名無しさん@3周年 :03/01/09 22:20 ID:FDWl1Tso ひろゆきは自宅に押しかけた暴走族に土下座した人だよ。 暴力団に脅されたら山奥に連れ出されるまでもなく玄関先で二つ返事で請け負うんじゃない? 権力には抵抗するけど、暴力には滅法弱い、それがわれらのひろゆき
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
実際にあったことなら中傷にならないからいいんだよね? たとえば俺が救急車出で杏林病院に運ばれたときに酷い目に 逢ったとか。
日本にいるんだ。で、2ちゃん三昧の引きこもり生活?
「噂」に根も葉もない場合があるからでしょ。
しょぼーん
2ちゃん批判してるヤシはYAHOOの掲示板逝け
170 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:42 ID:rLfxQ17l 負荷が高そうなサーバにも入れて見ます。 ココカナ?
負荷が高い?
俺2ちゃんねる見損なったよ
ええ。2ちゃんにとって多大な被害が予測されます。(((( ;゚Д゚)))ガクガクブルブル すみやかに教えて下さい。おながいします。
age
暫定管理人 :
見事釣られたと思ったら3流新聞かよ・・・
DDTアドレスは、何日保存されるんだろか。
プ(^_^;)誰が無責任でいいなんて書いたのかな ちゃんと削除依頼のルールを守って待てばいいだけの事じゃん 強要するのはボランティアに物を頼む態度じゃないんだって最低限の礼儀ぐらいは弁えろよクソガキ君(^_^;)
荒らしの書き込みしかないのかぃ
あはっ たとえば、1スレをIEとかのブラウザで表示するのに 何秒かかりますかー(スレの大きさによるけど) それの 10,000倍くらいかかるかと。 あと倉庫の一覧表とかも全部書き換えるし html化と同時に datのzip化 および出来た htmlの zip化も同時に行われますー さてさて どれくらいかかるのやら。。。
(^^)
その具体的な理由として社長は、こう話す。 「2ちゃんねるはボランティアの削除人が書き込みをチェックして、 好ましくない書き込みを一所懸命削除している、 ということになっているが、あれはウソ。 削除人には給料が支払われ、その給料の原資となっているのが、 まずいことを書き込まれた企業が削除要求とともに渡す裏金。 これはまさに、総会屋の構図そのものだ。 これまで裁判になっているのは金額で折り合えなかったり、 裏金を出さない強い態度の企業とだけだ」
918 :
デフォルトの名無しさん :03/01/15 02:48
C++Builderで DirectX9は、使えないのですか? 8でもいいや。
919 :
デフォルトの名無しさん :03/01/15 03:15
つかえないの?
つかえません。
次スレ立てる奴へ。 DirectX <3>と言う風にDirectX3と間違えにくい名前にして下さい。
ここは DirectX2 のスレですが
タイトルに<>とか#とか使うと悲惨なことになる予感が
DirectX <3> になる予感。
って実体参照はそのまま書き込まれるのか。
普通に「Part3」とか「その3」でいいじゃん。 でも、1はDirectX2にひっかけて、わざとこの名前にしたのでは? 1の意思を尊重して次はX3に、その次はX5にするのもいいかも。
927 :
デフォルトの名無しさん :03/01/15 16:54
DirectX 8とか9で HALがサポートしている機能はHALをつかってサポートしてない機能は リファレンスデバイスを使う っていうのはできないの?
>>927 あなたが郵便ポストに入れた手紙の内容を
配達されるまでに書き換える能力を持っているのなら可能です
(^^)
>>927 できない。それを勝手にしないのがDirect3Dの良いところでもあるし。
必要であれば実行時に自分でHALとソフトウェアデバイスを切り替えられる
機能もいくつかある。
(^^)
932 :
デフォルトの名無しさん :03/01/25 00:55
933 :
デフォルトの名無しさん :03/02/01 22:20
本からサンプルプログラムを実行してみたのですが、動きません。 次の様なエラーが出ました。 「error LNK2019: 未解決の外部シンボル _Direct3DCreate8@4 が関数 "int __cdecl InitDevices(void)" (?InitDevices@@YAHXZ) で参照されました。」 一応、includeとlibの設定はしたようなきがするんですが・・・ 環境はvisualc.net directx8.0SDKです。
934 :
デフォルトの名無しさん :03/02/01 22:24
おまえら、DirectX9がでたのにまだ2の話しですか? いい加減バージョンアップしろよ
>>933 どれかのソースの頭にこれを入れろ
// リンカにリンクを指示する
#ifndef _DEBUG
#pragma comment(lib, "d3d8.lib")
#else
#pragma comment(lib, "d3d8d.lib")
#endif
これでヘタったらlibの設定がおかしい。
>>935 入れてみました。そしたら
「fatal error LNK1104: コンパイラは、ファイル 'd3d8d.lib' を開くことができません。」
こんなエラーになりました。やっぱ、libの設定がおかしいのですかね。
「ツール」→「オプション」→「project」→「vc++ディレクトリ」→
の先の項目に入れてあるんですけどね。。。
OSはwindowsXPです。
あーごめん、d3d8にdebugのは無いや。 単に #pragma comment(lib, "d3d8.lib") だけでいい。 つかそれくらい調べてくれよう
938 :
デフォルトの名無しさん :03/02/02 00:45
おい937。 はたからみててお前の説明でわかる奴は初めから知ってる奴ぐらいだぞ。 おまいヘルプ書くの下手糞だろ? しかも、自分で勝手に間違えて調べてくれよとか逆ギレ? 自分が書いたヘルプが間違ってたらソース見てとかいうタチ? ↓これやるよ うんこ
あう。935は私の学習不足なだけですので・・・ ちなみに、 #ifndef _DEBUG #pragma comment(lib, "d3d8.lib") #endif を頭に入れても、エラーは変わりませんでした(933のエラー文)。 う〜ん、お手上げです。
940 :
デフォルトの名無しさん :03/02/02 01:22
こうゆうの掲示板で解決するのは骨かも。 SDKインストールしたんかってところから SDK付属のサンプルは動くのかってところから、か?
たしかに、自分でも掲示板で解決させるのは大変だとおもいます。。。 ちなみに、SDKのサンプルは動きました。
942 :
デフォルトの名無しさん :03/02/02 02:43
サンプルが動いただと? じゃーはなしははえーおめーのせってーミスだけにマトが絞れるだろうがよー。 お節介サイトまわりまくって設定の手順学んでこいや ここにいるやつらもそれ以上のことは知らないよ
口は悪いと思うがとりあえず同意。
情報提供できない奴は黙ってればいいのに。
>>939 あ、いや、#ifdefとかそういうの全部省いて、
#pragma comment(lib, "d3d8.lib")
だけでいいの。
情報ってほどのもんかい。第一キミの提示する解決方法微妙にズレてないか。 ヘルプに普通に従えって。
「必要なライブラリをリンクしろ」と言えば解決 他の情報は余計であり蛇足
946は頭の回転が鈍いな…。
「必要なライブラリは起動後にロードしろ、インポートライブラリを使うな」と言えば解決 DirectXの該当バージョンが入っていなかったら 間抜けなダイアログを出して終了することになるぞ
その前に
>>933 はC++自体分かって無いだろ・・・
ん?開発環境の使い方が判ってないように見えるが・・・
951 :
デフォルトの名無しさん :03/02/08 13:24
すみません、これからちょっとDirectXプログラミングをかじろうと思ってるのですが、 DirectInputであつかえるのは、いろんなハードからの入力を「取得」することだけですか? 具体的には、他のアプリが取得している入力を、DirectInputを利用して取得したデータを 加工することで、擬似的に送ってあげることはできるのでしょうか? もし、ドライバレベルでのエミュレートが必要なら諦めまする・・・・
>>952 Thx。読み取りオンリーってことか。
すると、やっぱりWDMとかをいじらないと駄目か・・・鬱d
954 :
デフォルトの名無しさん :03/02/08 16:23
どうでもいいけど次スレ立てる人はわかりやすいスレタイにしてくれ
>>954 どうでもいいのはお前の存在
人に要求せずに自分でやるのが筋
956 :
デフォルトの名無しさん :03/02/08 19:29
ところが俺のIPじゃ無理なわけだ
初心者板で頼んでこいよ
もういいよ。このスレ使わんし。終了。
ゲ製作技術板は荒れてるからイヤだ……
961 :
デフォルトの名無しさん :03/02/11 05:54
あのさ、みんなDirectXのバージョン上がったら、ソースどうしてる? あれに用意されてる関数使いまくると DirectXとおおよそ関係ないところまで直さなきゃいけなくなるじゃん。 やっぱりそういう部分ってDirectXは使わない? それともなんかいいてありますか?
DirectXのバージョン上がっても古いのを使い続ける。
963 :
デフォルトの名無しさん :03/02/11 23:12
XFileって何でしょうか? 検索したのですが、DirectXで使える画像の形式ぐらいしかわかりませんでした。 何方か詳しく教えて下さい。
>>963 >DirectXで使える画像の形式
それ以上に詳しい説明はないよ
ありがとう御座いました。
画像?モデルデータじゃなくて?
>>963 3Dオブジェクトデータ
仕様についてはまずヘルプ嫁
汎用的なメタデータの定義がされているだけで 3Dオブジェクトのデータが入っているとは限らない
969 :
デフォルトの名無しさん :03/03/04 04:33
hosyu
970 :
デフォルトの名無しさん :03/03/08 02:15
DirectXのアプリでWindowsの標準コントロールを使うにはどうすればいいんでしょうか? たとえばエディットボックスを使おうとしても表示されません。 メッセージループの中で画面更新を行うようにしているんですが、 標準コントロールが表示された後にDirectXの描画によって消されてしまうようです。
そりゃ そうだ DirectX9からは一部サポートされてるらしい
コントロールへの入力は生きているみたいなので、 ノーティファイメッセージが来た直後にプライマリサーフェスに表示されている コントロールの中身を読んでおいて、画面更新の時に再度描画するという手法をとってみました。 面倒きわまりない上に危険だ・・・ クリッピングしてコントロールのところだけ描画しないようにしてもできるかな・・・
クリッピングはDX8では使えないような。 コントロールの中には、WM_PAINTのwParamにHDCを入れると、 そこに描画してくれるのもあるらしい。 そこにメモリDC入れて、描画内容をテクスチャ化して表示する・・・ という手もあるぞ。まどろっこしいが。
どうもありがとうございました。 9はまだ触ったことなかったのですが、いい機会なので勉強しようと思います。
質問お願いします。DirectX9をいじっているのですが、SampleのCommonフォルダに入っている フレームワークには、皆さん、どのくらいの評価を与えているのでしょうか? とにかくX9でひとつゲームを作ってみたいのですが、根本からやるかどうかで迷っています。 「あんなの利用するのは素人だ!」「アレを利用しないのは車輪の再発明だ」 などの感想を、教えていただければ幸いです。
978 :
デフォルトの名無しさん :03/03/08 23:40
ごめんなさい、あげ忘れてました
979 :
デフォルトの名無しさん :03/03/08 23:49
おまえ多分なにやってもムリだわ
うーん、予想通りの反応が。 DirectX自体は5の頃から触っていまして、拙いながらも全くの初心者ではないんです。 しかし他人のフレームワークを使った経験が無かったので…。 自分の鑑識眼に自信がもてないこともあって、 これを使っている方の、客観的な評価をお尋ねしたかったのですが…残念です。
まぁ、でも考えてみれば凄い人が作ってるんですし、 使いづらいってことは無いんでしょうね…。 使っている人はいなそうですが。
DirectX云々ではなくて日本語的にダメなんだわ
>>982 だぁ、もうネチネチ、ネチネチと…。
用語がダメならバシっと指摘してくれ。それも勉強になるから。
罵倒したいだけなら、どっか行ってくれい。
最初に否定レスつくと、万が一親切なレス下さったかも
知れない方も、行っちまうのが2chだっての(´Д⊂
>>977 実験とか、サンプルプログラム作る分には手軽でいいけど、しっかりした3Dゲーム作るには
弱すぎる気がするよ。DXを裸で使ってるような感じというか…。
弱すぎるというより、ゲームには向いてないでしょう。 方向性が違う。
なんだとコノヤロウ! ≡ ∧_∧ ∧_∧ ≡ (# ・3・)⊃ )3`) ≡ /ニつ / ⊂ ⊂/
↓yo炉
↓任せた。
いやーまいった。だってCeleron500+Intel on board chip 4MBだとDirectX9デバイスの初期化できねーんだもん。まいったね。
今時4MBのチップなんか使うのが悪い。 ソニーとか。
いや俺の作ったゲームを他のマシンで試してみようとおもったら、できねーの。 GFTi4200とonboard4MBじゃ、話が全然ちがうな。
onboard4MBでDirectX9か。 電卓でスパコン用の計算をさせるようなものだな。
4MBっつーたら、640x480のダブルバッファとZバッファ32ビットで確保したら 496KBしか残らんような容量だぜ。サクッと切り捨てるしか。