2 :
1 :02/10/07 01:01 ID:???
Z華麗
2ゲット
おつかれー
初心者用相談室へのリンクも張っとけよ。 どこかわからん。
7 :
1 :02/10/07 01:19 ID:???
ところでちょっと聞いてみたいんだけど、アヌビスのムービーを見てると キャラはゼノサーガみたいなポリゴンより2Dのほうが良いと思わない? いやポリゴンでアニメっぽい人形劇作っても報われんような気がして。
9 :
1 :02/10/07 01:35 ID:???
10 :
篭初心者 :02/10/07 02:50 ID:???
↑禿しく参項になりますたm(_ _)m
うむ、初心者をうまく誘導できたようでよろしい。
DirectX8(Direct3D + DirectInput + DirectSound)で学祭用のゲームを 作ったんだが、今回無念だったことはDirectAudioのDirectMusicを諦めたこと。 ヘタレな俺にとってはアレが一番難解だった。 DirectMusicのラッパーライブラリがホスィ・・・。DirectX9に期待(;´Д`)ハァハァ
DirectXやり始めて3ヶ月ですが、質問があります。 今、ファミリーサーキットのような、2Dタイプ見下ろし型レースゲームを作っています。 そこで疑問に思った点があります。夜のシーンで車がライトを照らすシーンを作りたいのですが、 どのようにすればよいか分かりません・・・。 加算合成だと、元の絵よりまぶしくなってしまいます・・・。 自分がやりたいのは、薄暗いシーンで特定の部分にスポットを当て、しかもその部分が元の絵の明るさを 超えないようにしたいのです(複数の車が同じ場所にライトを当てた場合なども) どうかご伝授お願いします!!
15 :
:02/10/08 03:10 ID:???
>>14 明るい部分を明るくするのでなく
暗い部分を暗くすればいい
元より明るくなることは不自然ではないが
stencil bufferのサンプルをみり
>14 フォグ使え
19 :
名前は開発中のものです。 :02/10/08 12:14 ID:y4cJqFJs
nvasmのマクロって使えてます? v1.42です。 ドキュメントのTestマクロをそのまま打ち込んでも、 エラーがでるんですけど・・・
マクロは問題なく使えます。 エラーの内容をよく読みましょう。
SFCゼルダで暗闇のダンジョン内でキャンドルたらした時のアレかい? それならピクセルごとにα値を持たせたイメージを使えばOKじゃん。 並みのビデオカードじゃうごかんだろうけどサ(藁
Riva128程度でも十分にイケるぞ。
ラグナロックオンラインなどの3Dカード必須ゲーの登場のおかげで 3D機能を使うことにはもはや何の躊躇も要らなくなったしな。
ノートPCも3D搭載が当たり前になったしな
マンセー
じゃあもうYaneurao&SDKは洋梨ですか
>>26 +αの部分(つまりDirect3D周り)だけ
自分で付け加えればいいだけだと思われ。
Yaneurao自体もう洋梨
DirectGraphicsの初期化に関する質問なんですが IDirect3D8::CreateDeviceを行う直前の バックバッファの縦横、サーフェイスフォーマット等が既知の状態で 本当にその設定でCreateDeviceできるか調べる事ってできますか? 調べたところEnumAdapterModeでとりあえず対応している解像度とか調べて それに照らし合わせてみるしか方法が無いようなのですが 上記の方法か、実際にCreateDeviceしてみるしかないんでしょうか? 要求としては、例えば10x500とか無茶な解像度でCreateDeviceしようとしてたら 事前に察知して警告したいんです
>>29 ディスプレイモードのwidth,heightを自由に入力させてるのか。
EnumAdapterModesで列挙されたディスプレイモードの中から
ユーザに選択させればいいと思うが。
あとはIDirect3D8::CheckDeviceType()
CreateDeviceの戻り値をチェックするのと意味は同じ。
>>30 iniファイルに設定を保存しているので
好奇心旺盛な方がいじくっちゃった場合を想定してます
一番の関心事は「ビデオカードが対応している解像度であるか」なんですが
それはやっぱりEnumAdapterModesを検索するしかないみたいですね
どうもありがとう
32 :
名前は開発中のものです。 :02/10/09 02:51 ID:0hZguT0J
DirectInput8を使用したプロセスの終了時にこんなデバッグメッセージが出ます。 >スレッド 0xFFE2FAC9 終了、終了コード -1 (0xFFFFFFFF)。 >DINPUT8: unloaded before all objects released. (cRef:1) SDKサンプルのjoystickでも出ます。 joystickデバイス、DInputデバイス共にリリースしてrefカウントも0が返るのですが Acquire()せずにリリースすると正常終了する模様。誰かわかりませんか?
33 :
名前は開発中のものです。 :02/10/09 11:27 ID:dZsv+OW7
綺麗な水面の描写に関して何かいい本ありませんか?
長くてごめんなさい 視点移動なのですが HRESULT CMyD3DApplication::FrameMove() { ・・・ D3DXMATRIX matView; D3DXMatrixLookAtLH( &matView, &D3DXVECTOR3( 0, 0, -2*m_fObjectRadius ), &D3DXVECTOR3( 0, 0, 0 ), &D3DXVECTOR3( 0, 1, 0 ) ); D3DXMatrixMultiply(&matView,&matView,m_ArcBall.GetTranslationMatrix()); D3DXMatrixMultiply(&matView,&matView,m_ArcBall.GetRotationMatrix()); D3DXMatrixMultiply(&matView,&matView, m_ArcBall.GetTranslationDeltaMatrix()); m_pd3dDevice->SetTransform( D3DTS_VIEW, &matView ); ・・・ }
LRESULT CD3DArcBall::HandleMouseMessages(HWND hWnd,UINT uMsg, WPARAM wParam,LPARAM lParam) { ・・・ case WM_RBUTTONDOWN: iCurMouseXR = iMouseX; iCurMouseYR = iMouseY; s_bRB=TRUE; return TRUE; case WM_LBUTTONDOWN: iCurMouseX = iMouseX; iCurMouseY = iMouseY; return TRUE;
case WM_MOUSEMOVE: //回転 if( MK_RBUTTON&wParam ) { //移動行列に今回移動した分を保存 if(s_bRB&&!D3DXMatrixIsIdentity(&m_matTranslationDelta)) { D3DXMatrixMultiply(&m_matTranslationDelta,&m_matTranslationDelta, &m_matRotation); D3DXMatrixMultiply(&m_matTranslation,&m_matTranslation, &m_matTranslationDelta); D3DXMatrixIdentity(&m_matTranslationDelta); s_bRB=FALSE; } FLOAT fDeltaX=(iCurMouseXR-iMouseX)*RAITO; FLOAT fDeltaY=(iCurMouseYR-iMouseY)*RAITO; m_vYPR.x+=D3DXToRadian(fDeltaX); m_vYPR.y+=D3DXToRadian(fDeltaY); D3DXMatrixRotationYawPitchRoll(&m_matRotation,m_vYPR.x,m_vYPR.y,m_vYPR.z); iCurMouseXR = iMouseX; iCurMouseYR = iMouseY; }
//移動 else if(MK_LBUTTON&wParam) { FLOAT fDeltaX=(iCurMouseX-iMouseX)*RAITO; FLOAT fDeltaY=(iCurMouseY-iMouseY)*RAITO; D3DXMATRIX matT; D3DXMatrixTranslation(&matT,0.0f,0.0f,8*fDeltaY); D3DXMatrixMultiply(&m_matTranslationDelta,&m_matTranslationDelta,&matT); iCurMouseX = iMouseX; iCurMouseY = iMouseY; } return TRUE; ・・・ } これだと移動した後に回転をすると視点が飛びます >移動行列に今回移動した分を保存 の部分が間違ってる気がするのですがどうすれば改善されますか?
みんなストレス溜まってるなあ
41 :
名前は開発中のものです。 :02/10/09 16:06 ID:DaJCh7ix
UINT_PTRってどこで宣言されてるんですか? undefind symbol 'UINT_PTR' と出てコンパイルできません。
/\⌒ヽペタン / /⌒)ノ ペタン ∧_∧ \ (( ∧_∧ (; ´Д`))' ))(・∀・ ;) <おまいら、もちつけ / ⌒ノ ( ⌒ヽ⊂⌒ヽ .(O ノ ) ̄ ̄ ̄()__ ) )_)_) (;;;;;;;;;;;;;;;;;;;)(_(
この板で数少ないまともなスレなんだからマターリしようZE
44 :
名前は開発中のものです。 :02/10/09 16:13 ID:H4uBHT3u
45 :
名前は開発中のものです。 :02/10/09 16:20 ID:s4kqpcbZ
今からDirectXを勉強するなら当然ver9ですよね? 今までのDirectXと全く違う仕組みなのでビデオカード業界が各社発売しているとかで・・・
なんかカチンときた。
なんかチカンがきた。
>>45 Direct 3D9∈Direct X9∋Direct X8∋Direct X7....
51 :
名前は開発中のものです。 :02/10/09 21:06 ID:DaJCh7ix
>>48 ありがとうございます。もうひとつ質問させてください。UINT_PTRは解決できたの
ですが、
d3dx8math.h undefind symbol '_11'
d3dx8math.h undefind symbol '_13'
d3dx8math.h undefind symbol '_14'
と出ていまだに、コンパイルできてません。
これらについても教えてください。
52 :
:02/10/09 21:25 ID:???
>>45 グラフィックカードの構造が大幅に変わったからといってAPI仕様も大幅に変わるとは限らないです。
DirectX9ではシェーダー部分の機能拡張は大きいですが
基本的な部分の使い方はほとんど変わらないです。
DirectX9はまだ正式リリースもしてないし、使用方法の情報についても少ないので
「今」始めるならDirectX8がいいと思います。
DirectX9をインストールしたマシンでも当然DirecX8のプログラムは動きますし、
後からDirectX9特有の機能を使いたくなった時に移行しても手間はあまりないと思います。
とか言ってしまいましたが、オレもDirectX9βに実際触ったわけではないので
なんかまちがってたら識者の方修正キボン
>>52 まあそうあせらずに・・・
こないだβを触ったので漏らしてあげよう。
インターフェースの見た目はあんまりDirectX8とかわらん。
8用のコード(directx部分だけで数千行)を9用に書き直したが、
4時間もかからなかったよ。
7→8もそうだったけど、コンパチ度は意外に高いと思う。
9の機能(シェーダー2.0だけじゃないぞ)を生かそうと思ったら
いろいろ実験が必要だろうねえ。やる時間がほしい・・・
それよりもユーザーにはやっとDirectX8が普及してきた状況なので DirectX9で作っても誰も遊んでくれない罠 まぁ3年越しのプロジェクトとかならわからんけど
55 :
名前は開発中のものです。 :02/10/09 23:37 ID:/K9cQ5sf
DirectXGraphicsでもHDCを取得できる関数があるんでしょうか? あったら教えてもらえたらうれしいです 初心者まるだしの質問ですいません
56 :
51 :02/10/09 23:42 ID:???
>>51 問題点がわかりました。
VC++じゃないとコンパイルできないのですね。bccでがんばってましたよ。
答えてくださったかた、ありがとうございました。
>>32 俺もずっとまえから同じ。
dx9待つのがよかろ
>>60 さんきゅ。
今の DirectDraw を使ったライブラリの保守は止めて
DirectX9 SDK の配布まで待とう。
しかし大きな仕様変更があったら嫌だな。
またあのヘルプやら妙なサンプルやらを読む日々が続くのか…。
63 :
名前は開発中のものです。 :02/10/10 01:14 ID:8ADA7E3+
DX9はC#に対応しているから何よりそこに期待。
C#でDirect3Dか〜。うーん夢のようだなハァハァ
これでDirectDrawが綺麗サッパリ、消えてくれるわけだな
>>53 参考になりますた。9がまちどおしいです。
68 :
名前は開発中のものです。 :02/10/10 20:24 ID:pMa8asNt
32bitカラーに対応していないビデオカードを使用している場合のことですが CreateDeviceの引数のBackBufferFormatに D3DFMT_R5G6B5を設定して初期化した場合 D3DFMT_X8R8G8B8やD3DFMT_A8R8G8B8フォーマットのテクスチャを正常に扱うことが出来ますか?
全てはビデオカードに依存する あらゆることに何の保証も無い
DirectX8を使って、DirectDrawがどれだけクソだったのかを知った。
71 :
名前は開発中のものです。 :02/10/10 21:54 ID:LV4wwsC0
>>68 例えば、俺が確認した範囲では
nVidia Geforce4Tiでは使えた。しかしMatrox G400では駄目だった。
結局、DirectXを使うなら何をするにも必ずDeviceCapsをチェック。
環境毎に使えるものを選択していく以外に方法はないのさー。
>>70 >DirectX8を使って、DirectDrawがどれだけクソだったのかを知った
何の機能を見てクソだといっているのかはよくわからないが、
GDIオブジェクトを取得できないDirect X8もけっこうクソだとおもうよ
将来君は「DirectX9を使って、DirectX8がどれだけクソだったのかを知った」
とか言うんだろうね。まあいいけどさ。
時代にあわせたAPIだったんだよ。うん。
GDIが直接使えなくても回避方法はいくらでもある 大した手間でもないしその程度で糞呼ばわりでは底が知れる
>>回避方法はいくらでもある どんな方法?
GDI使えるとUIがつまらなくなる
初心者な漏れ的発想 DX5-7 Drawしか使えねーよ、3Dわけわかんねーよ、初期化ってなんだよ意味わかんねーよ。 つかWIN32APIだけで画像転送できるじゃねーか、それでいいや。 DX8 半透明と加算、拡大縮小回転が楽に出来る関数あるじゃねーか、頑張ってみるか(このときネットに繋がったのでネット漁りで何とかDX8導入できた) 便利じゃん、楽じゃん、簡単に派手になるじゃん。げっ、文字の描画おせー。WIN32APIのTEXTOUTつかえねーのかな? 3D案外らくじゃん、物体出すだけで戸惑ってたのに一応フィールドを360歩くジャンプ攻撃、の簡易アクションゲーまでできるようになった。 漏れはDX8が無ければc++使う気になりませんでした。 ていうか、クラス継承とNEWDELETEくらいしか使ってねーけど。 糞って言う前にもっと使って楽しみたいね。漏れは。糞って言ったら過去否定みたいでションボリ
77 :
名前は開発中のものです。 :02/10/11 03:15 ID:8aFpC2Gc
DirectX8で質問です。 ビルボードを複数描画する場合にテクスチャフィルタを使うとエッジの部分が ぼやけてしまい、奥から描画しないとエッジの部分がきちんと描画できません。 エッジをぼかさないようにテクスチャにだけフィルタをかける方法はないのでしょうか?
>>77 1 でかい値のAlphaRefで(0xf8とか)AlphaTest。微妙なフィルタを使わない
2 奥から描画する。
3 放置。
どれも、市販ゲームで使われてる選択支。
DirectPlay8Create関数を使うと関数が定義されていない旨のエラーが出て困った。 includeのパスが通っているか。など、調べまくったが原因が不明。 なんとなく、"DirectPlay8Create"で検索してみたら以下の文が・・・ >This function is no longer supported. It is recommended that CoCreateInstance be used to create >DirectPlay8 objects. > >extern HRESULT WINAPI DirectPlay8Create( const GUID * pcIID, void **ppvInterface, IUnknown *pUnknown); だったらわかりやすいところに書いてくれよぉ! 俺の六時間を返せ!鬱だ氏のう・・・
ルビーの開発者も言っていたよ。 日本は開発者とユーザーを繋ぐ存在が皆無だと
81 :
77 :02/10/11 11:24 ID:???
>>78 ありがとうございました。1でテクスチャ内部にだけフィルタ処理できました。
奥から描画はなるべく行いますが、モデルで組んだときにできないので。
Dx8って文字列描画遅いの?なんで?
83 :
名前は開発中のものです。 :02/10/11 18:53 ID:a1gnR+r6
D3DTEXTが遅いから
>D3DTEXT そんなものは無い 知ったか馬鹿は引っ込んでろ
D3DXFONTでしょう。なにか特殊な処理でもやってるのかしら?
D3DXFONTなんて使ってるから文字列描画が遅いなんて思い込むんだろう 何でそんな不必要なものに頼るんだ?
>>87 サンクス。なるほど・・・なんかメッセージ表示したとたん重くなるとおもったらこういうわけだたのか。
>>87 最初からDIB経由でTextureに転送してやれば
DIB -> Texture -> D3DDevice
だけですむところをD3DXFontでテクスチャにレンダリングなんかしたら
DIB -> Texture -> D3DDevice -> Texture -> D3DDevice
なんて無駄が発生する
何も知らない初心者を騙すページを作るのはやめとけ
CD3DFontってあるやん。これは遅くないんじゃない?知らんけど。
まあ、
>>87 はだますつもりなんてないんだろうし。
せっかく善意でTips公開してるんだからあたたかく見守ってやろうじゃぁないか。
しかしその他の内容が( ´д`)
91 :
名前は開発中のものです。 :02/10/12 03:23 ID:C17IsShu
DirectX8で質問です。 半透明で丸状の影を落としたいのですが、最初アルファ付きテクスチャでやったのですが、 ボードによってはできませんでした。 丸影の中心は半透明レートが高く端に行くにつれ薄くなる感じです。 丸の中心を白にして端に行くに従って黒になるテクスチャを作り フレームバッファからの減算になるのを期待して SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SUBTRACT ); この設定で表示してみたのですがうまく表示できません。 なにか設定がたりないのでしょうか? それ以外の方法でもなにか良い方法あれば教えてください。
>>91 D3DRS_BLENDOP
ただし、GeForce3やRideOn8500より古いと使えないことが多いのに注意。
世の中、DirectX講座をしている香具師の中にも オオバカがいるんだな・・・気をつけないと馬鹿が写される!!!
そのために2chのような辛口サイトがある。
×辛口サイト ○厨房サイト
正直、あまりにも漏れが初心者なのでどの辺りが馬鹿で、何をしてはいけないのかが分からない。 ようするに表示する文字は先にBMPにしておけってことですか? 結構あの講座は判りやすかったんで良かったのですが。
98 :
91 :02/10/12 22:52 ID:???
>>92 D3DRS_BLENDOP
試しましたが出来ませんでした。うちのマシンはラデ7200なので無理っぽいです。
結局この設定で出来ました。中心が黒で外に行くに従って白になるテクスチャを使用してます。
SetRenderState(D3DRS_SRCBLEND,D3DBLEND_ZERO);
SetRenderState(D3DRS_DESTBLEND,D3DBLEND_SRCCOLOR);
>>97 BMPではなくDIBにDC経由で描いてテクスチャに転送
回りくどくD3DXFontを使って速度を落とす必要がないだけ
それからCD3DFontの方は9x系で日本語が使えない
100 :
97 :02/10/13 12:20 ID:???
101 :
_ :02/10/13 20:00 ID:???
>>99 その方法で描画すると、ビデオカードによっては文字がぼやけてしまいます。
TNT2、G450等では文字がくっきりしているのですが、
Geforce2、RADEON等は、文字がぼやけた感じになってしまいます。
表現しにくいですが、アンチエイリアスがかかったかんじです。
これはどのようにすれば改善されるでしょうか…?
画面のプロパティなんかで、フォントのアンチエイリアスをONにしていると そうなるのは仕方ないような。 GetGlyphOutlineは駄目?
103 :
101 :02/10/14 02:20 ID:???
間違えました。アンチエイリアスというより、 SetTextureStageState(0,D3DTSS_MINFILTER,D3DTEXF_LINEAR); SetTextureStageState(0,D3DTSS_MAGFILTER,D3DTEXF_LINEAR); が、かかっているような状態になります。
>>103 俺は99ではないが同様の方法を取っている。
社内の複数のマシンで動かしているが特に
>>101 のような
問題はでていない。
座標-0.5の話が過去ログにあるが、それではない?
ビデオカードのプロパティで強制アンチエリアシングONというオチもあり得る
106 :
101 :02/10/14 19:39 ID:???
107 :
名前は開発中のものです。 :02/10/15 00:01 ID:394UiHGE
誰か教えてください。 光の残像ってどうやって表現しますか? 例えば、蛍が暗闇を飛び回る姿を想像してください。 蛍が光っているのを描くのは簡単ですが、その残像がうっすらと残るように したいのです。 思いつくのは、光の球を、αブレンドで何度も直線状に描画することくらいですが… みなさんはどうやっていますか?
グラディウスのオプションをたくさん・・・
ホタルだったら、 蛇状の半透明ポリゴンを軌跡にそって動かす。
110 :
109 :02/10/15 00:30 ID:???
あと、視線との角度に応じてα値を調整するとよりリアル。
111 :
:02/10/15 02:01 ID:???
>>107 光の部分を別サーフェースに書いて加算合成。
次のフレームにはそのサーフェースは暗くして(クリアはしないで)重ねて光を描画。
そーすりゃスーーッて光が伸びると思う
...まあオレもやってみてはいないんだけどね。イロイロやってみてくだせい...
D3DRS_ZBIAS機能が使えないビデオボードって結構あるのでしょうか? Geforce2GTSで使えないのです。 これ以外のビデオボードでは今の所使えています。
>>112 2GTSでの IDirect3DDevice8::GetDeviceCaps() の結果のほうはどうなってる。
D3DPRASTERCAPS_ZBIAS のフラグは立ってるのに動作がおかしいという状態か。
>>D3DRS_ZBIAS機能が使えないビデオボードって結構あるのでしょうか? GeForce2GTSのみならず GeForce2 or 3 も正しく機能しません。 したがってZBIASは「使えない」ものと認識してしまったほうがいいと思われます。
ZBIASの正しい動作とはどういうもの?
フライトシムみたいな視点移動を実現したいのですが、 どうすればよいですか?
>>116 あー前に作ったことあるな
ちょっと待ってろ
119 :
116 :02/10/15 14:36 ID:???
ありがとうございます 早速落としにいきます
120 :
118 :02/10/15 14:50 ID:???
121 :
118 :02/10/15 14:50 ID:???
122 :
名前は開発中のものです。 :02/10/15 21:14 ID:394UiHGE
windowモードで、ガンマコントロールを使用したら、 ゲームとは関係のない画面まで色が変わってしまいました。 これって直すことはできますか?
ガンマ制御はディスプレイの設定を丸ごと弄ってるので、無理。
>>122
124 :
名前は開発中のものです。 :02/10/15 21:21 ID:394UiHGE
へぇ、そうなんだ。ありがとう。 全体をだんだん暗くさせたいときとかは、真っ黒なテクスチャをαブレンドさせるのかな。
ああ、しまった。 sageれなかった。ごめん。
>>124 レンダリング済みサーフェイスをテクスチャーにして
頂点色をいじるとおもしろいフェードアウトができるよ
127 :
112 :02/10/17 01:23 ID:???
>>113 すいません。出先のマシンなので調べられないです。
>>114 ZBIASが使えない場合なにか変わりになる機能とかあるのでしょうか?
地面を描いてその上に影を落としているのですが、z値が同じになってしまうので、
影が出たり消えたりします。影をzバッファ非使用で描くことも考えたのですが、
地形に隠れる場合もあるので、zバッファを使用したいと思います。
>>127 影ポリゴンの頂点が、影を落としたい地形の頂点と
完全に同じなら消えないよ。
だから地形の一部を切り出してきて、テクスチャを投影するという手もある。
D3DTADDRESS_CLAMPでuvの範囲を0〜1に限定するのがポイント。
129 :
名前は開発中のものです。 :02/10/18 05:29 ID:Nk5vOGxB
俺が今作ってるプログラムでは、 D3DXMATRIXA16で境界合わない元凶が d3dx8math.inlのD3DXMATRIX::operator *の中の一時オブジェクトだった。 __declspec(align(16)) D3DXMATRIX matT; にするだけで改善するのに。 しかたない。自前の構造体作るか。
良スレと思ったらage進行で
131 :
名前は開発中のものです。 :02/10/20 04:45 ID:h2ye+Wzc
すいません。directx8でガンマコントロールを使わずにフェードインとか、 全体を青っぽく見せたりとかって、どうやりますか?
画面全体を覆うような半透明ポリゴンを作成してはいかがか。
半透明というより指定した頂点カラーのアルファーを増減
ちょっと意味がわからないのですが、つまり 「描画した後に、画面全体を覆う四角形ポリゴンを作成して、その上から αブレンドで重ねる」 ということですか?
>134 Yes Yes Yes!
136 :
名前は開発中のものです。 :02/10/21 01:18 ID:3IKbfs80
SetVertexShader()を毎回のループで呼び出すと、その後に描画したはずの テクスチャが見えなくなるのですが、気のせいですか?
137 :
名前は開発中のものです。 :02/10/21 01:25 ID:3IKbfs80
えっとですね… Clear BeginScene sprite->Begin SetVertexShader DrawPrimitiveUP sprite->End EndScene Present の順に呼び出したら、描画されませんでした。何がおかしいのですか?
多分気のせいです そんなときはたいてい頂点数指定ミスとか頂点バッファがおかしいとか 私はそういうことが多かったです。根気よくデバグせよ
あ、テクスチャだけ見えないのか。なんだろ。
141 :
名前は開発中のものです。 :02/10/21 10:14 ID:DC+a3Xms
HardwereT&Lに関する質問です いまいち不透明なんですが、一般にDirect3DをHardwereT&Lで処理するという事は CreateDeviceでD3DDEVTYPE_HALとD3DCREATE_HARDWARE_VERTEXPROCESSINGを 指定するという事なんでしょうか? D3DCapsにはD3DDEVCAPS_HWTRANSFORMANDLIGHTという HWT&Lそのものズバリを指すフラグがあるのですが 肝心の初期化や各処理の引数を見てもHWT&Lという単語が出てこないので混乱しています
>>141 DirectX8ならデバイス作成時に指定すれば
UP系以外なら勝手に動作するので気にする必要は無い
143 :
名前は開発中のものです。 :02/10/21 10:42 ID:DC+a3Xms
>DirectX8ならデバイス作成時に指定すれば
それが具体的に
>>141 であってるのか?という質問なのですが・・・
例えば市販のFPSなどで描画方式の選択肢が
DirectX・DirectX H/W T&L・OpenGL などとなっていますよね?
で、H/W T&Lが選ばれた場合、内部では具体的にどうしているんだろうという質問です
146 :
名前は開発中のものです。 :02/10/21 12:06 ID:DC+a3Xms
すいません、まだ質問の意図を理解して貰えていないようです・・・ Hardwere T&Lって、ポリゴンの変形とライティングを ハードウェアで処理するって事ですよね? で、DirectXのリファレンスを見ても 「ポリゴンの変形とライティングをハードウェアで処理しろ」 っていうフラグが無いんです。 CreateDeviceでD3DDEVTYPE_HALとD3DCREATE_HARDWARE_VERTEXPROCESSINGを 指定することでポリゴンの変形はハードウェアで処理してくれそうなんですが ライティングに関してハードウェアを使えと明示するフラグはなさそうだし どうすれば「HardwereT&Lしてるぞ」っていう状態にできるのか悩んでいるのです。
あとUP系て何ですか? ぐぐっても全然hitしないんですけど・・・ (DrawPrimitiveに関係あるらしい事はわかった)
D3DCREATE_MIXED_VERTEXPROCESSINGを指定すれば実行中に切り替えられるけど 普通はデバイスを作成し直す というよりはほとんどのゲームは実行前に指定するようになってる それからT&LはTもLも一緒なので別々に指定する方法は無い >(DrawPrimitiveに関係あるらしい事はわかった) そこまで分かっていてヒットしないはずは無いんだけどもしかしてネタですか?
DrawPrimitiveUP
とりあえず悪いことは言わないから、
IDirect3DDevice8 のメソッドくらい全部調べとけよな
>>147
>>140 質問の意味が分からん。もそっと詳しく説明しー
>>133 の処理とFSAAに何の関連があるというのだ。
152 :
名前は開発中のものです。 :02/10/21 20:14 ID:3IKbfs80
DirectXGraphicsを使用して、画面全体をぼかす方法って何かありますか? キーワードだけでもいいので教えてください。
>152 グーグルで「DirectXGraphics」「画面全体」「ぼかす」をキーワードに検索しる!
>>152 DirectXGraphicsだと検索にヒットしないかもしれません
DirectGraphicsです。
Direct XのXはいろんな物(変数XとかプロジェクトXと同じ)という意味でして、
Xの中にGraphics Audio Inputなどが含まれていますです。
>>154 うそを言ってはいけない。
正しくは「DirectX Graphics」と「DirectX Audio」だ。
>>154 知ったかするのはヤメレ
DirectXGraphicsで正しい
>>158 ダメじゃねえか。
つかワロタ。
画面全体は辞めて、エフェクトとか画面効果に変えてみたら?
directx8 soft focus directx8 full scene blur
>>152 ちょっと真面目に答えてみると.......。
いちど小さいサイズのテクスチャにレンダリングして、そのテクスチャをもう一度 元のサイズに
レンダリングしてみるってのはどう?
例) 欲しいサイズが640x480の場合
640x480 → 320x240 → 640x480
つまり、いちど縮小して、また拡大する......ってな具合に。
求めたい画像イメージとは違うかもしれないが、ボケたように見えるてっとり早い方法だと思うよ。
あとは、サーフェスをロックして、シコシコとピクセル単位でいじるとか。
処理コスト高いけど。
まずは、上記の方法を実装してみれ!がんがれ!
>>152 一般的にはDirect3Dで話は通るよ。
Direct3D ぼかす で再チャレンジだ。
「Direct3Dの質問をするとみんな答えをぼかす。。。」とか 教えてクンの愚痴日記がヒットしたら笑えるんだけどなぁ。
164 :
名前は開発中のものです。 :02/10/22 21:48 ID:cC1V2h4q
テクスチャって、2の累乗の大きさの正方形じゃないといけないんですよね。 640x480の画像を表示させたいのですが、どう分割したら効率よく無駄なく 表示できますでしょうか。
>>164 >2の累乗の大きさの正方形じゃないといけないんですよね。
それはビデオチップによって事情が違うぞ。
まず、D3DCAPS8.TextureCaps をチェックしたほうがええ。
富豪的サボり屋さんならD3DPTEXTURECAPS_SQUAREONLY ビットをチェック。
それが立ってなければ1024x512なテクスチャサーフェスをローカルメモリに
ドカっと確保。で完了。そこまで湯水のように使えないが小金持ちではある
ということならAGPメモリに確保。で完了。
それは困る、テクスチャサーフェスのムダは絶対省きたいんだよ。
だけどDEVCAPSなんかチェックしてらんねーよ。俺は横着でおまけにケチなんだよボケが。
という場合は、640x480の元画像をキャラクタチップデータと共用の256x256テクスチャ
サーフェス(複数)に分割配置。画像表示用のポリゴンメッシュを用意して完了。
基本的なことで申し訳ないんですが、 サーフェースのプロパティで横幅とピッチってありますよね ピッチは横ラインのバイト数だと書いてあったんですが、 初心者な自分にはよくわかりません 家の環境ではピッチが横幅の倍になります このとき、サーフェースのメモリを+1するということは どういう意味があるんでしょうか? 試しにメモリを一つ飛ばしで描画したところ、 元の画像と色が変わってしまいました 2バイトで一つのピクセルを表しているということなんでしょうか? 教えてもらえたらうれしいです 長くてすいませんでした
× キャラクタチップデータと共用の ○ キャラクタやマップチップのデータと共用の
168 :
名前は開発中のものです。 :02/10/22 22:24 ID:4cmO9mq8
167=165ね。スマソ
>>166 256色なら1バイトで1ピクセル
ハイカラー色(16ビット)なら2バイトで1ピクセル
フルカラー色(24ビット)なら3バイトで1ピクセル
フルカラー色(24ビット)なら4バイトで1ピクセル
これでわかるかな?
>>169 どうもです
それじゃあ、ピッチというのは
ピットマップの色数で決まるものなんでしょうか?
172 :
171 :02/10/22 22:51 ID:???
>>171 しつこくてすいません
今、フルカラーのビットマップを使っているんですが
ピッチが横幅の2倍という事は1ピクセルが2バイトということではないんですか?
そうすると、どうやって色を表しているんでしょうか?
フルカラーのX8R8G8B8とA8R8G8B8なら1ピクセル4バイトじゃねえか。 ピッチはLock成功後のD3DLOCKED_RECT::Pitchの値以外にない。 幅×ピクセルサイズで決めうちが可能とはMicrosoftも誰も保障しないので 自己責任で。
176 :
名前は開発中のものです。 :02/10/23 02:33 ID:rAqnFbe+
深度バッファを設定しないで描画をすると、画面のクリアが出来ないんですけど、 そういうもんですか?
物凄い勢いで厨な質問が続いてるな。
>>176 んな仕様はない。
お前のコードが腐ってる可能性が99.9%。
厨な流れに便乗して…私の厨質問もお願いします。 DirectX使用、かつマウスメッセージを自前処理している ゲームにおけるマウス入力の有無を、外部からフックして 取得するみたいな事は、可能でしょうか?
>>180 DLL使えば普通に可能ですよ?
可能かどうかとウジウジ悩む前にまずやってみそ。
>>181 ああっと、お待ちを。もちろんグローバルフックは試し済みです。
うーん、ゲームやマウスドライバによるのでしょうか…よわりまくりん。
いずれにせよレスサンクスです。
とほほ、どうしても取得できない…。 質問を限定させて下さい。DirectInputを使って、マウス制御を 排他処理にしているようなゲームのマウス状態を 外部から取得することは可能でしょうか? 座標についてはどうやら、絶望的なようで…。 せめてボタンの押し下げだけでも分かると嬉しいのですが…。
逆の発想で行ったら? つまり、マウスの移動を自ら外部に通知する。
DirectX9は、 いつ頃出るんだ? 今、DX8使ったライブラリ組んでも 途中でDX9が出てきそうで嫌だ。 で、 いつよ? IO別冊の本には デッサン狂いまくりの猫耳の絵は載せないでください。 見てて恥ずかしいです。
ゲーム開発じゃなくて、チートツールでも作ってんじゃねえ? そこまでやるならメモリ覗け。
私も知りたいなぁ…<DX9 DirectX9が出たとしても今更DirectX Graphicsで示した グラフィック周りの統合を解除することは無いと予想して 拡張を見越しながらDX7からDX8に移行することを決心。 大幅に仕様変更されていたら撃沈。 個人的には、あのど土井たんの(?)ネコみみの絵を見ると 「この絵なら技術は信頼できそうだ」っていう印象を持ちます。 「天は2物を与えず」っていうか…。
>>184 むむむ、逆転…理解できませんでしたがヒントサンクスです!
正直袋小路の今、ありがたい限りです(´Д⊂
ベッドで考えてきまつ((((((*´∀`)
>>186 私ですよね?いえいえマウスホイール上下に
キー入力を割り当てるだけの、ささやかなツールになりそうです…。
でも確かにメモリ…公開は諦めて逝っちゃおうかしら(*´∀`)
バイナリの中で IDirectInputDevice8::SetCooperativeLevelを callしているところを見つけ出して、push命令の オペランドを6などに書き換えればいい。
とっかかりになるのが、0041d8f0hとか。 そっから追ってけば所望の場所にたどり着くだしょ。
0041d8f0h = IID_IDirectInput8A
プログラムと関係なくてすいません。 サンプルについてるDMBoidsの後ろで流れてる音楽が凄い好きなんですが、 ああいうのってなんてジャンルなんでしょうか。
DMBoids起動できないよ(笑)
>>189-191 うはー、ありがとうございます。
正直久しぶりにアセンブラ見て、うんざりしてたとこでした。
これで一気に進めそうです。大感謝<(_ _)>
DirectseX
196=中学生
>>185 DX8→DX9はあまり変わってないから安心してDX8で組んでいいよ。
異メジャーバージョン間での移行では今までで一番少ない変更で済むくらい。
一番修正が必要なのはシェーダー関係がハンドルからインターフェースに
変わったくらいで、それ以外は関数名が変わったとか、引数が変わった程度。
DX9出てからDX覚えようと思ってたんだが、
>>198 見るに激変はなさそうだな。
今からDX8覚えて基礎固めるかなぁ
さてどうしよう?
202 :
199 :02/10/24 00:35 ID:???
まぁ知っての通り、DirectXがバージョンアップする度に 移行作業が大変だとかぼやく香具師もたまに登場するわけだが あーいう書き込みを読むときは眉に唾付けといたほうがいいな。
204 :
名前は開発中のものです。 :02/10/24 01:25 ID:OYxRWu3f
Visual Studio.NETでDirectXのプログラムを作るときって、 何か設定はいらないんですか? Ver6の時は、インクルードフォルダとか指定したりした気がするのですが。
厨質問をここでするかなぁ。 ツールの取り扱い説明書ぐらい嫁よ厨房。 分かりやすい例えいえば、VisualStudio6は標準パスの中に PlatformSDKをインストール
>>204 そりゃあ必要だべさ。
つか基本だべ?
も一回プログラムの基礎から始めた方がよかんべ。
ワロタ
(続き) すればインクルードフォルダの設定を書き加えることなしに DirectX8.1SDKが使えるぞ。
>>205 コピーだから説明書はもってねぇって返事がくるぞ
211 :
198 :02/10/24 02:27 ID:???
これくらいなら書いても良さそうなので… DX8→DX9はシェーダーの強化が主題みたいなものだから、それ以外の部分は あまり変わってない感じ。 DX8からの移行時に固定機能で影響を受けるのはSetTextureStageStateの一部 がSetSamplerStateに変わったとか、SetIndicesのBaseVertexIndexが DrawIndexedPrimitiveに移った程度。あとはCreateImageSurfaceが CreateOffscreenPlainSurfaceに名前が変わったくらいか。 追加された新機能はいっぱいあるけど、DX8用に書いたソースから変更が 必要なのはそれくらい。 ちなみにD3DXはだいぶ強化されてる。アニメーション対応とか、アンチ エイリアスライン描画とか。 一通り眺めてみると、DX9の作りかけの状態がDX8って感じ。
212 :
名前は開発中のものです。 :02/10/24 05:48 ID:AlCDGmpl
>>211 C#への対応は完璧ですか?それとも現在のVBみたいなもん?
こらこら
DCの扱いも詳細きぼんぬ。
とっととリリース あるいはpublic betaを出してほしい・・・
動的環境マッピングをやりたいんですが詰まってます。 環境マッピングにつかうテクスチャにレンダリングするわけなんですが、 レンダリングした物体が次フレーム時にも残ってしまい残像が出来てしまいます。 で、レンダリングする前にクリアしてみると、今度はテクスチャの画像が消えてしまいます。 どうすればよいのでしょうか…
>>216 キューブテクスチャを使った動的環境マップの
サンプルソースコードがSDKに入ってるから、まずそれ嫁。
>>211 >ちなみにD3DXはだいぶ強化されてる。アニメーション対応とか、アンチ
>エイリアスライン描画とか。
アニメーションというと、D3DRMみたいな、Xファイルのアニメーション?
スキンメッシュを自分で作成してアニメーションさせてみたいと思ってるのですが、
コンバーターとか、Xファイル関連のユーティリティとか付いてますかね??
219 :
名前は開発中のものです。 :02/10/25 00:02 ID:4L21o589
dx9リリースどうなったのよ!時期に関して聞こえてコネー
来年
222 :
名前は開発中のものです。 :02/10/25 09:46 ID:0f8ClKRQ
でちまったか。 そして仕様変更の罠
>>219 >DX9 might not come out this year
日本語に訳すとね
「direct X9は今年中には公開されないっぽ」
ですな。
>>224 暗黙の仮定法のmightはmayよりもさらに確実性が低いから、
「ひょっとしたら今年中には出ないかも」くらいの意味だよ。
いつのまにかこんなスレが
227 :
名前は開発中のものです。 :02/10/25 19:42 ID:0f8ClKRQ
だったら、頑張ってフルサポート1番乗りしたATIテクノロジーズって かわいそうかも?
228 :
名前は開発中のものです。 :02/10/25 19:43 ID:4L21o589
つか、NVidiaの妨害工作の予感
一番かわいそうなのはマトロックス
> つか、NVidiaの妨害工作の予感 NV30合わせになるようにMSと結託したのでは?
GeForce5キタ━━━━━━(゚∀゚)━━━━━━━!!!!!
232 :
名前は開発中のものです。 :02/10/25 21:32 ID:Xo93wY0r
vs.netでd3dx8.hインクルードするとたまにvsの起動が滅茶苦茶重くなるんだが なんで?
zdnetの記事は提灯くさいなー。 実際、DirectX8がそうであったように、 DirectX9もここしばらく(来年の今頃まで)の間は ベンチマニアや趣味シェーダプログラミング専用の玩具に留るだろ。 9000や4Tiでゲームは快適に動くしなー。 いや・・・Doom3クラスは9700要るのか・・・。
237 :
名前は開発中のものです。 :02/10/26 09:25 ID:XAvHACAG
漏れはDX9の描画機能よりC#対応のほうが気になります。
238 :
名前は開発中のものです。 :02/10/26 09:36 ID:NGd267ph
来年じゃな… ベーター登録必須なのかもね〜 とはいえ、対応ハードがないと意味ないか…
DX9開発ならRadeon9700だよね! という状況をnVidiaは是が非でも回避せねばならないわけですわ このままだとDX9の動作リファレンスは9700になっちゃうからね...
>>236 8すら未だメインで使われているとは言いがたい
4MX搭載機種を売り続けているメーカを怨むがよい。
242 :
名前は開発中のものです。 :02/10/26 21:24 ID:vJSal2rR
D3DXCreateTextureFromFileExA関数で、引数に画像ファイルのパスを指定しますが、 このとき、画像ファイルに暗号をかけたいのです。 暗号というよりかは、ぱっと見ではわからなくなれば十分なのですが、 ファイルを変換すると当然この関数では読み込めません。 どうすればいいのですか?
>>242 質問する前に同じ系統の関数のヘルプには目を通せ
つまり何の為にD3DXCreateCubeTextureFromFileInMemoryがあるかという事だ
コピペする行間違えた(笑 D3DXCreateTextureFromFileInMemoryな
246 :
bloom :02/10/26 21:43 ID:6nCjm/4Q
>>225 「公開されないっぽ」
で、ひょっとしたら出ないかも〜をあらわしたつもりでしたが・・・
もしかして、漏れは英語の間違いじゃなくて日本語の間違いをしたのかな?
char aho[10000000]に一括してある数でXORかける関数ありませんか? なかったらforでチマチマやってくしかないでしょうか。
249 :
248 :02/10/27 00:23 ID:???
ゲロ スレまちがった
250 :
名前は開発中のものです。 :02/10/27 00:27 ID:mrhYFwGU
スプライト描画の時に、テクスチャより大きいサイズを指定すると、 その部分が、枠の色で塗りつぶされてしまいます。 これを、画像の繰り返しに変更する方法ってありますか? キーワードでもいいので教えてください。
>>248 君はそんなでかいレジスタが存在するとでも思っているのか?
>>241 オンボードメーカーと、クソモバイルチップメーカもうらみますのでよろしく。
40MBか・・・・
254 :
248 :02/10/27 01:12 ID:???
printfだってCPUで専用命令もってるわけじゃない。
巨大xorも同じこと。
>>248 さん。
そういう仮想CPUをエミュレートした関数をお願いすます。
248って242ぽ 違う?
DirectX9!!
259 :
名前は開発中のものです。 :02/10/27 05:11 ID:xlOk2lB2
257は電波
261 :
鬱だ :02/10/27 12:01 ID:???
DX5でLPDIRECTなんたらの長さが嫌になって挫折。 DX6でデバイスの初期化で面倒になって挫折。 昨日からDX8始めたがまた挫折しそう… よく皆こんな面倒臭いのつかってるね
>>261 長さは一度作るとそうでもなくなる
あと、おっかけてると変化への対応はそんなに難しくない
ゲラゲラ。挫折しすぎ
>>261 ただ自分に根性がないのを環境のせいにして
挫折する「口実」を探しているだけじゃないかと自問してみるといいと思うよ。
オレモナー
どうせヘルプからコピするだけだしなぁ あとは自分のクラスに置き換えるから長さも関係ないし
>>261 #define TD LPDIRECT3D
#define TD2 LPDIRECT3D2
#define TD3 LPDIRECT3D3
#define TD7 LPDIRECT3D7
#define TD8 LPDIRECT3D8
#define DV LPDIRECT3DDEVICE
#define DV2 LPDIRECT3DDEVICE2
#define DV3 LPDIRECT3DDEVICE3
#define DV7 LPDIRECT3DDEVICE7
#define DV8 LPDIRECT3DDEVICE8
#define D LPDIRECTDRAW
#define D2 LPDIRECTDRAW2
#define D3 LPDIRECTDRAW3
#define D4 LPDIRECTDRAW4
#define D7 LPDIRECTDRAW7
#define S LPDIRECTDRAWSURFACE
#define S2 LPDIRECTDRAWSURFACE2
#define S3 LPDIRECTDRAWSURFACE3
#define S4 LPDIRECTDRAWSURFACE4
#define S7 LPDIRECTDRAWSURFACE7
むしろ長いのが快感になります。
268 :
名前は開発中のものです。 :02/10/27 17:01 ID:YXyH0IbH
1文字#defineはやめろやw
チンコも変数もプロトタイプも長いほうが(・∀・)イイ!
typedef typename _Rope_rep_base<_CharT,_Alloc>::allocator_type allocator_type; _Rope_RopeFunction(char_producer<_CharT>* __f, size_t __size, bool __d, allocator_type __a) : _Rope_RopeRep<_CharT,_Alloc>(_S_function, 0, true, __size, __a) (*´Д`)ハァハァ
271 :
名前は開発中のものです。 :02/10/27 21:55 ID:mrhYFwGU
スプライト描画の時に、テクスチャより大きいサイズを指定すると、 その部分が、枠の色で塗りつぶされてしまいます。 これを、画像の繰り返しに変更する方法ってありますか? キーワードでもいいので教えてください。
>>271 SDKヘルプ 「テクスチャ テクスチャフィルタリング」
273 :
名前は開発中のものです。 :02/10/27 23:26 ID:mrhYFwGU
どうもありがとう。
sage忘れました。ごめんなさい。
まあ、 「テクスチャ ラッピング」の方だけどね
276 :
名前は開発中のものです。 :02/10/28 01:05 ID:liEtuJz8
ポリゴンに貼り付ける方法でやってみたら、それっぽいのが出来ました。 ただ、2Dで十分なので、スプライトでやりたいのですが…それはないのですか?
277 :
名前は開発中のものです。 :02/10/28 01:19 ID:t4ureGZv
フルスクリーンでデバッグ時にうっかり不正な処理でハングさせると操作不能になりますよね。 このとき、VSを強制終了して復帰させるのですが、もっとスマートな方法はないんですか?
278 :
名前は開発中のものです。 :02/10/28 01:27 ID:1Tubv01s
D3DXVECTOR3 pt[100][100]がありまして pt[y][x] = D3DXVECTOR3(x,y,0)で初期化して作った四角形を 簡単に表示するにはどうすればいいのでしょうか? D3DPT_TRIANGLESTRIPに当てはめる為に DrawPrimitiveUPでコツコツ書くしか無いんですか?
>>277 リモートデバグしる!
ヘルプに「フルスクリーンアプリケーションのデバッグ技法」ってのが載ってる。
280 :
名前は開発中のものです。 :02/10/28 01:30 ID:liEtuJz8
281 :
名前は開発中のものです。 :02/10/28 01:40 ID:1Tubv01s
>>280 頂点4つの四角形作ってテッセレートするんですか?
分かりやすくと思い(x,y,0)と書いたのですが
実は(x,y,rand()%50)ぽい四角形なんですが、
それでも出来ますか?
282 :
:02/10/28 05:41 ID:???
>>278 「簡単に」ってのがどんな簡単さなのかよくわからんのだが、
pt[100][100]→カスタム頂点フォーマット の変換で
1個の点が複数のポリゴンで使用されてて無駄が多くてイヤ。ってなら
インデックスバッファ使えばイイんでないのか?
>>278 = 四角ポリゴンがないのが信じられん!世も末!と憤慨する人
285 :
工房初心者 :02/10/28 16:00 ID:3IbZcUWO
VC++6.0でdiectx8の初期化のプログラムをビルドさせたら t1.obj : error LNK2001: 外部シンボル "_Direct3DCreate8@4" は未解決です Debug/cdq63_test1.exe : fatal error LNK1120: 外部参照 1 が未解決です。 というのがでた。これは何?
286 :
名前は開発中のものです。 :02/10/28 16:08 ID:uvHswAPY
リンクが必要なライブラリを指定してない
プッ
288 :
工房初心者 :02/10/28 16:23 ID:3AR3oMdu
スマソ 再インストしててわすれてますた
>>288 CUIでコンパイルしてると起きにくいミスだね。
ビルドの過程を頭の中で大雑把にイメージするようにしてごらんよ。
正しくなくても整合性が取れていればOK。
DirectX8以降でVSync待つ関数ってありません? DirectDrawのWaitForVerticalBlankみたいなの
>>290 デバイス作成時に無視するように設定していなければPresentで勝手に待ちます
>>291 どうもです
やっぱりPresentの時にタイミング覚えるしかないかぁ
V-Sync信号待ちのメソッドではないんだが IDirect3DDevice8::GetRasterStatus( ) で走査線の現在位置が 取得できるので、WaitForVerticalBlank( )の代用にはなるだろう。 もっとも、DirectX8の場合はウィンドウモードだろうとフルスクリーンモード だろうと、DirectXにV-Sync待ちしてから画面更新するように 指定できるようになったので、あえてGetRasterStatus( )を使う 機会はほとんどないかもしれんけどね。
実際、漏れはこんな感じでやってるが、無茶苦茶ラクで問題もなし。 IDirect3D8::CreateDevice( ) で指定するパラメータは D3DPRESENT_PARAMETERS.Windowed = TRUE (ウィンドウ モード)のとき D3DPRESENT_PARAMETERS.SwapEffect = D3DSWAPEFFECT_DISCARD。 D3DPRESENT_PARAMETERSの他のメンバはデフォルト(ゼロ)のまま。 D3DPRESENT_PARAMETERS.Windowed = FALSE (フルスクリーンモード)のとき D3DPRESENT_PARAMETERS.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC。 D3DPRESENT_PARAMETERSの他のメンバはデフォルト(ゼロ)のまま。 これで IDirect3DDevice8::Present( )時にV-Sync待ちをしてくれる。 (※一部の超マイナーな骨とう品ビデオカードを除けば)
295 :
:02/10/29 09:01 ID:???
ageとくか。
296 :
:02/10/29 09:12 ID:???
スマン。ちょっとド忘れしてて少し嘘を付いちまった。 思い出したことは、 ウィンドウモード時にIDirect3DDevice8::Present( )に V-Sync待ちを任せると、環境によっては満足いかない結果に なるかもしれん。てこと。 そゆときは、しょうがないから自分でタイミングを測って Present( )するしかないだろうね。DirectX7以前の頃と同じ。
>>294 なんでD3DSWAPEFFECT_COPY_VSYNCなんてパフォーマンスの悪いの使うの?
D3DSWAPEFFECT_FLIPの方がパフォーマンスは良いし、VSYNC待ちもするよ。
あと、D3DSWAPEFFECT_COPY_VSYNCはVRAMも余計に消費する。
(D3DSWAPEFFECT_COPY_VSYNCはコピーしてからFlipする)
298 :
294 :02/10/29 15:03 ID:???
>>297 ん。スマン。
D3DPRESENT_PARAMETERS.Windowed の部分がアベコベ。
これで納得してくれたか。
>>297 それはフルスクリーンの時の話なの?
それともウィンドウモードのときの話なの?
>>297 >(D3DSWAPEFFECT_COPY_VSYNCはコピーしてからFlipする)
また適当なことをいう知ったかが発生してるよ
二回PresentしたあとにそれぞれDC経由でウインドウに描画してみればフリップが発生していないことが分かる
裏になっていれば片方は表示されないはずだが両方ともきちんと出る
301 :
名前は開発中のものです。 :02/10/29 16:41 ID:eWrxqCn0
メッセージポンプって別スレッドにすることできないのだろうか……
>>301 できるよ。
でもややこしい&複雑&面倒、
やねうらおがYANESDK2ndで挫折してた気がする。
だけどだれかやってるのとソースを見たことがある。
303 :
名前は開発中のものです。 :02/10/29 19:20 ID:72W8qWmd
>302 見た。情報ありがとう。 Winで用意されているクラスを使うのが適当かと。 出来れば自前で書きたいんだけどね。
304 :
297 :02/10/30 01:04 ID:???
>>300 うちではD3DPRESENT_INTERVAL_IMMEDIATEを指定しないとFlipするぞ。
ちゃんと確認してあるよ。
このあたりの動作はドライバ依存かもしれないが。
ちなみにD3DSWAPEFFECT_COPYはPresentしてもバックバッファの内容が変化
しないことを保証するフラグで、フロントバッファをBltで更新するという
意味ではない。
>>297 >>304 >298 :294 :02/10/29 15:03 ID:???
>
>>297 > ん。スマン。
> D3DPRESENT_PARAMETERS.Windowed の部分がアベコベ。
> これで納得してくれたか。
>
>
>299 :名前は開発中のものです。 :02/10/29 15:25 ID:???
>
>>297 > それはフルスクリーンの時の話なの?
> それともウィンドウモードのときの話なの?
306 :
297 :02/10/30 05:42 ID:???
>>305 そんな事は分かってる。297はアベコベの状態へのツッコミ。
299には294を読めと言っておいてよ。
307 :
305 :02/10/30 08:17 ID:???
>>297 >>304 >>306 いや、そうでないと
君が
>>304 で言ってることの意味が全く通じないんだが。
はっきり言及してくんねぇ?(簡単な話だろ)
フルスクリーンモードの話なのか。
ウィンドウモードの話なのか。
それとも両方の話をしてんのか。
どーでもいい ヘルプ嫁ば詳しく書いてある。そこに書いてない仕様は君らの妄想。 まともに描画エンジン作るなら、D3DSWAPEFFECT_DISCARDだろでいいだろ。 時間管理はVSYNCがどうであっても綺麗に動くように作っとけ。 というかその部分で手抜きなのをSwapEffectでどうにかしたいだけじゃねえか。
あえてD3DSWAPEFFECT_FLIPを持ち出した奴の意図が分からん。
310 :
名前は開発中のものです。 :02/10/30 20:46 ID:JTrX3m8I
テクスチャを張った四角形のポリゴンをDrawPrimitiveでループ中で描いているのですが、 for(int i=0;i<10;i++){ for(int j=10;j>0;j--){ //iをX座標、hをZ座標と見てDrawPrimitive } } こうやって同じポリゴンを座標ごとにかいていきました。 すると描画されるテクスチャのZ座標は自然なのですが、座標が右にいけばいくほど、新しいポリゴンが以前に描いたポリゴンに重なってしまいます。 これを回避するにはどうすればいいのでしょう。
>//iをX座標、hをZ座標と見てDrawPrimitive h君がいません
312 :
名前は開発中のものです。 :02/10/30 21:39 ID:JTrX3m8I
ひとつ左にキー間違えました。続きをおねがいします。
313 :
名前は開発中のものです。 :02/10/30 21:54 ID:JTrX3m8I
あらら? D3DXMatrixPerspectiveFovLH(&m_matProj,64.0f * 3.1415f / 180.0f ,1.0f,0.000001f,50.0f);を D3DXMatrixPerspectiveFovLH(&m_matProj,64.0f * 3.1415f / 180.0f ,1.0f,1.0f,500.0f); にしたらなおっちゃった!いやーすまそ!
314 :
名前は開発中のものです。 :02/10/31 01:41 ID:6X+8XPW4
よくわかんないけどZバッファの精度が足りなかったってこと? といいつつageる
316 :
名前は開発中のものです。 :02/10/31 03:11 ID:aqEn0QVg
ヘルプの「射影テクスチャを実行する」って部分は、 メッシュにテクスチャを投影するようなことですよね。 ヘルプでは具体的な行列の例を挙げるのを避けてやがるんですけど、 具体的にどういう行列なんでしょう?
cgi3.tky.3web.ne.jp/~tkano/stained.shtml ↑参考資料
質問させてください。DX8のサンプルプログラムで、Windowモードの時にメニューが ありますよね。そのサンプルをFullScreenにして、再びWindowにすると、メニューが 消えてしまいます。 どうやらd3dapp.cppの中のCD3DApplication::AdjustWindowForChangeで呼び出している SetMenu が失敗しているようなのですが(GetLastErrorの戻り値は0x579)、原因が 分かりません。GetLastErrorの戻り値をFormatMessageに渡してみたのですが、全然 文字列が帰ってこないし(FormatMessageを使うのは初めてなので、使い方が悪いかも しれません)。 どなたか、原因と対策をご存知の方がいらっしゃいましたら、教えていただけませんで しょうか?
>>318 DirectXは関係ないよ。
SetMenu()の返り値が以前のメニューのハンドルなんてMSDNには書いてないね。
GetMenu()でメニューのハンドルを取得してから削除すればOK。
m_hMenu = (HMENU)SetMenu( m_hWnd, NULL );
↓
m_hMenu = (HMENU)GetMenu( m_hWnd );
SetMenu( m_hWnd, NULL );
これくらいピンときてね(・∀・)
320 :
318 :02/11/01 15:23 ID:???
ご指摘の個所を修正したら、ちゃんとメニューが出るようになりました。 というか、目の前にある間違いに気づけなかった自分に赤面、穴があったら 入りたい気分です……。 本当にありがとうございました。
DirectXを使ってCGIを動かしたいんだけど、対応のサーバってありますか?
DirectXのどの機能をCGIに使うつもりなのですか?
323 :
名前は開発中のものです。 :02/11/02 11:12 ID:3acNjFb9
指定した座標がそのまま2Dで画面にうつるような3Dの座標軸のとり方ってありますか? たとえば、 v.x = 300; v.y = 200; v.x = 0; などとして頂点座標を記述すると、画面の (300, 200)の位置に表示されるような座標軸と視点をとりたいのです。
>>321 CGIってComputer Generated Imageのこと?
それともCommon Gateway Interfaceのこと?
サーバーって言ってるから後者だと思う
とりあえず
>>321 はまず、DirectXをCGIに使って何をするつもりなのか答えるように
329 :
名前は開発中のものです。 :02/11/02 19:43 ID:tqgG6cJg
dx以上にVC7に挫折しそう 慣れた道具が使いやすいの〜
サーバーサイドレンダリング
Windows2000以降のOSがWEB鯖になっているなら利用可能
>>330 そんなことができるようになるのって何年先の話だろう?
インターネットにつなげればPCでもケータイでも電子レンジでも
3Dゲームができるのかな?
>>333 バカでいいから、どこらへんの意味を理解していないか教えてください
サーバーサイドでレンダリングするんでしょ?違うの?
レンダリング結果を返すだけなら 携帯レベルでも何の問題も無いのに何を勘違いしているんだ? 頭が固すぎ
cgiがDBからデータを引っ張ってきてHTMLに変換するのもレンダリングの一つだわな
>>335 いや、だから、ダム端末(とその類似品)で可能なのはわかるけどさ、
サーバーが追いつかないってことだよ
そんなに能力の高いサーバーに帯域が現時点でございますか?
(現在は数値データの処理だけでラグだのさばダウンだの問題があるじゃん)
まあ、並列処理の出番だとは思うけど、現時点で何台のサーバーが必要なのか
別釣るわけじゃないけど、私って本当に頭固いの?
>>337 硬い、とてつもなく硬い
>サーバーが追いつかないってことだよ
誰も何も言っていないに勝手に時間当たりのヒット数を途方も無い数字で妄想しているだろう
もしくはソースデータにとんでもないポリゴン数を勝手に妄想
レンダリングしてその結果を返す、それだけしか話が出ていないんだぞ
>まあ、並列処理の出番だとは思うけど、現時点で何台のサーバーが必要なのか
妄想もそこまで逝くと病気
携帯電話ぐらいの画面ならFOMA(藁使えばできなくもないかも
>>338 現時点でそういうことをやっているシステムが存在するのでしょうか?
存在するのなら教えてください
「レンダリングしてその結果を返す」それだけでも十分に重いと思います
実用の範囲内で動作させるのはどう考えても不可能では?
>勝手に時間当たりのヒット数を途方も無い数字で妄想しているだろう
一ユーザーあたり一秒間に20回は送信させないとゲームにならないかと
え?20FPSじゃなくて静止画ってことですか?
だったら何で「DirectX」なの?
>もしくはソースデータにとんでもないポリゴン数を勝手に妄想
ポリゴン数よりもむしろメモリ帯域が問題では?
こういうことをやろうとしたとき、一番のネックでしょ
ビデオメモリ→システムメモリは当然のことながら
システムメモリ自体が遅すぎる
関係ないけど、妄想って言葉好きですね
妄想って根拠の無い推論のことなんですが・・・
DirectPlay関連で聞きたかったんじゃなかろうか >>ネットワークレンダリング そういう商売やってるとこもありますね リアルタイムじゃないけど ちなみに帯域で言うならビデオチャットやライブカメラを見る限り大丈夫では?
現時点では...って 時代に取り残される人の典型ですなこりゃ > え?20FPSじゃなくて静止画ってことですか? > だったら何で「DirectX」なの OpenGLだったらこのシトはナットクしてたんだろうか・・・
>>341 ビデオチャットやライブカメラはP2Pなんじゃ・・・
たとえサーバークライアントだったとしても少人数だし
ネットワークレンダリング(こういう名前でしたっけ?)は知ってるけど、
リアルタイムなんて現時点では不可能なのでは
>現時点では...って
>時代に取り残される人の典型ですなこりゃ
商売は時代に取り残されても失敗しますが、
時代の先を見すぎても失敗します
「現時点では不可能」これの何が悪いのでしょう・・・
論理的に説明してほしいです
>OpenGLだったらこのシトはナットクしてたんだろうか・・・
言葉尻を捕らえないで・・・でもまあ納得したでしょうね
だってOpenGLはもともとリアルタイム性を考慮していなかったから
みなさん、ただ私を非難するんじゃなくて
反論してください、でないと何も得るものが無いです
非難と反論の違いはわかりますよね?
グラフィックボードの替わりになるわけないだろヴォケ ちょっと計算すれば解ることまで説明せにゃならんのかよ 話の前提が違いすぎる
何を議論したいのかわからん。 可能性を否定したいだけ? それとも可能性のある方法を探りたい?
346 :
343 :02/11/03 02:11 ID:???
347 :
343 :02/11/03 02:22 ID:???
>>345 私は可能性のある方法を探りたい
>>338 第一、サーバーにレンダリングしてもらうなんていうのは
光の速度が「遅すぎる」せいで明らかに現実的ではないはず
(どうせ言っても理解してくれなさそうだから言わなかったけどね)
どんなにPCが進化しても(今のままの通信・コンピュータの構成では)
光の速度のせいで空間的な制約を受ける
妄想妄想と非難をする前に情報と物理について学んでほしいものだ
硬い硬いと言うけどね、この宇宙に住んでいる限り
宇宙の法則に縛られて生きなきゃいかんのだよ
はっきりいって、光の速度とかノイズとか回路の応答速度とかの問題って絶望的だよ?
絶望的な中で何とかしようとしてるのに、それを頭が固いなどと言われては・・・
問題なのは光でなくインターネットの仕組み ターンアラウンドタイムが長すぎると一文で済むんだから わざわざバカにしたような長文返さなくていい それからP2Pかどうかはこの場合関係無い ちなみにライブカメラはCS、ビデオチャットはP2P(商用エロビデオチャットはCS)が主流
349 :
名前は開発中のものです。 :02/11/03 04:24 ID:3BaP/5EM
質問させてください。 画像A,B,Cを合成しながら描画したいのです。 画像Aは背景で、B,Cはオブジェクトです。 このとき、B+Cを描画したいのですが、加法合成で描画をすると、 A+B+Cとなってしまいます。 かといって最初にAを描画しないわけにもいかず、どうしたらいいか分かりません。 どうすればいいのでしょうか。
>>348 「インターネットの仕組み」って、
何か解決法があるかのような言葉に聞こえますけど。
>>350 解決できない原因がそこにある、とも読めるな。
352 :
351 :02/11/03 06:12 ID:???
俺は何言ってるんだろう…スマソ寝る
加法合成?
>>349 (1)テクスチャにBとCを描画(加算合成)
↓
(2)フレームバッファにAを描画
↓
(3)フレームバッファに(1)のテクスチャを描画
355 :
354 :02/11/03 07:46 ID:???
× フレームバッファ ○ バックバッファ
356 :
330 :02/11/03 09:23 ID:???
>サーバーサイドレンダリング 適当にレスったらすごいことになってますた。おはようございます。 以下妄想 クライアントはDirectPlayにDirectInputをアタッチ あとはストリームビデオ再生。 全ゲーム共通クライアントのできあがり。こんなかんじです。
358 :
343 :02/11/03 14:59 ID:???
>>348 あ、すみません、二つの視点からの反論が交錯しているのでわからなかったかも
・サーバーの処理能力が足りない
・ターンアラウンドタイム(つまりはレスポンス)が長い
ということで、P2Pは上方の意見
光速の限界は下方の意見です
ところでインターネットの仕組みが原因ということならば
待時系でなく即時系なら(サーバーの能力如何で)可能性はあると言うことですか?
359 :
名前は開発中のものです。 :02/11/03 15:24 ID:J+IbtFrh
光速?帯域じゃなくて?
しょぼい質問だけどいいかな? すふぇあマッピングってバーテックスシェーダー使って自分で組むしかないのかな?
361 :
:02/11/03 17:09 ID:???
議論になってないですYO! CGI+DirectXが可能かと問われれば可能である。 ・一般的な用途としては負荷・応答性等の問題より実用的でない。 他の技術を使った方がイイ ・非常に特殊な条件・用途の場合には有用な可能性がある。 はおんなじコトでしょ。 343氏は可能性を探りたいならさ、まずどんな用途に適してるか考えてみたら? 応答性や処理速度がどんだけ必要かってのは、条件や用途によって決まるものでしょ 前提とする条件も用途も決めずに、遅いとか負荷がどうのトカ言っても意味ないよ。
ネタ質問だとおもう…
>>360 DirectX SDKのSamplesの下にソースがあるよ
最初はなんでそうなるか分からなかった・・・
結局自分で一度作っちゃったヨ
364 :
名前は開発中のものです。 :02/11/03 17:43 ID:3BaP/5EM
テクスチャラッピングで繰り返し描画した方が、同じ回数だけ自分で 描画するより早いのはどういう原理なのですか? 同じように、同じオブジェクトを、好きな座標にいっぺんにたくさん描画する 方法ってありますか? ブロック崩しのボールを分裂させて500個とか高速に描画させたいのですが、 全部自分で書くと遅くなってしまいます…
>>364 >早い
塗る面積が同じなら、送る頂点の個数の差でしょうね。
>500個とか高速に
??何と比べてるのか分からない。
CGIとの組み合わせねぇ。 どこにでもあるようなCGI利用可能なWEBサービスを 前提にしてるんだろ? セッション毎の接続時間や負荷に制限もあるだろうから あまり派手にアクセスするような用途には不向きだな。 ・最高得点データの共有 ・ユーザ管理 せいぜいこんなものか。
367 :
360 :02/11/03 18:07 ID:???
>>363 DX8から固定機能のすふぇあマップって無くなったのかな?
前のバージョンにはあったような気がしたんだが。
シェーダーまだ勉強してなんだよね…
368 :
363 :02/11/03 18:15 ID:???
そういえばあった気がする(^^; 頂点シェーダの勉強したかったので見てません>固定機能 スマソ
369 :
364 :02/11/03 18:23 ID:???
>>365 頂点の個数の差だけなんですか?
たとえば、背景画像に、640x480のbitmapを一枚貼り付けるのと、
32x32のテクスチャをラッピングで20x15個分貼り付けるのでは、
貼る面積が同じなのに、後者の方が桁違いに速いですよね。
それの理由と、それを利用して、32x32の大きさのテクスチャを、自分の好きな位置に
20x15個高速に貼り付けることは可能かを知りたいのです。
何と比べているかというと、
1. 32x32のテクスチャを20x15個貼り付ける速さ
が、どうにかして、
2. 32x32のテクスチャを1個貼り付ける速さ
にならないかということです。
取りあえずウインドウモードで作成してるんですが、 ウインドウのサイズが変わったときにどんな処理をしたらいいのでしょうか? そのままだと、元画像がただ引き伸ばされるだけなので。 サンプル見たんですが、どうもデバイスごと作り直しているような… 実際どうなんでしょうか?
引き伸ばされるように描画しているからそうなるだけ
>>369 最近のビデオカードでやってると仮定するよ。
ビットマップ一枚貼るだけなら、内部処理はほとんどがメモリコピー
になる。フィルレート値そのままの速度になるはず。
同じ640x480を塗りつぶすなら、メモリコピーにかかる時間はどういう
方法をとっても同じになるから、違いといえばGPUに送る頂点の個数の
違いでしかない。
ただし、DrawPrimitiveを20x15回呼んでるとするなら、それのオーバー
ヘッドのほうが大きいと思う。工夫してVertexBuffer/IndexBufferを
つかったほうがよい。
> 何と比べているかというと、
> 1. 32x32のテクスチャを20x15個貼り付ける速さ
> が、どうにかして、
> 2. 32x32のテクスチャを1個貼り付ける速さ
> にならないかということです。
書いたように、メモリコピーの時間より短くなることはありえない。
あとはいかにこれに近づけるかにかかってる。API呼び出し回数を抑えるとか、
テクスチャを一枚にまとめて切り替え回数を減らすとか、
そういう工夫が必要。
373 :
名前は開発中のものです。 :02/11/03 18:44 ID:POPax65V
空きVRAMの取得関数ってあったっけ? ウインドウリサイズでサーフェイス作成で失敗しない最大サイズって計算できる?
374 :
364 :02/11/03 19:04 ID:???
>>372 どうもありがとうございました。
それでこんなにも極端に遅くなるものなんですね。
いろいろ試してやってみます。
375 :
370 :02/11/03 19:12 ID:???
>>371 PROJECTIONとVIEWは一応更新してるんですが、それとは関係ないですよねぇ。
>365 :名前は開発中のものです。 :02/11/03 17:51 ID:???
>
>>364 > >早い
> 塗る面積が同じなら、送る頂点の個数の差でしょうね。
嘘を付くんじゃない。
おまえ、自分で検証してみたか?
>372 :名前は開発中のものです。 :02/11/03 18:40 ID:??? > > 同じ640x480を塗りつぶすなら、メモリコピーにかかる時間はどういう > 方法をとっても同じになるから、違いといえばGPUに送る頂点の個数の > 違いでしかない。 ソースデータ(テクスチャデータ)の大きさについては言及しないのか。 D3DTADDRESS_WRAPを使って32x32のテクスチャパターンを描いた場合には どうなるのか、全く触れていないのは知らないからなのか。
小さなデータを連続して参照するケースではどういったメリットがあるのか について説明を欠いているのは極めて不適切ではないのか。という指摘だぞ。
>>376-378 それって最終的にGPU依存の話になっちゃわない?
OpenGLスレで、テクスチャ画像を正面から見るのと90度回転させるのとでは
塗られるピクセル数も参照されるピクセル数も同じなのに速度が明らかに違った、
なんて話があったな。ビデオチップは確かRadeProだったかな。
>>379 その通りだね。
まぁ、372が「最近のビデオカード」ちう前提で話してたので
ここの部分の説明を端折ったら364が気の毒だろと。そうおもた。
スプライトはフィルタをかけてくれないんdeathか??
382 :
名前は開発中のものです。 :02/11/03 22:59 ID:l1yRCGs2
DX8SDK+VB.NETでDirectDrawを一通り勉強し終わった漏れにアドバイスをください。 1.このままD3Dの勉強→後バージョンのDXに移行 2.DirectDrawなんか無くなるから今すぐやめて新バージョンDX 3. etc...
D3Dの勉強だな。 DX9が出たら.NETから叩けるようになる。 知識はほぼそのまま引き継げるから安心して行け。
384 :
382 :02/11/03 23:38 ID:l1yRCGs2
なんか陰湿なカンジのスレになってきたな。 知識を示せ。共有しろ。育め。 以上、大統領からのお願いダス。
>>385 >なんか陰湿なカンジ
具体的にどれだ。後学のためにご教授願いたい。
いらんレスにいらんツッコミがはいりますた。
>>370 IDirect3DDevice8::Reset( )
つまりコイツで
ビデオメモリの内容をクリア&フレームバッファの設定を更新
デバイスの再作成に限りなく近い内部処理だがこれでヨロシコ。
DirectX7以前とは勝手が違うのかもな。(よく覚えていない)
>ビデオメモリの内容をクリア&フレームバッファの設定を更新 ゴメンこの説明は変。正解はヘルプを見て知って。
>>389 DX8で、リソースがdiscardされるかどうか、されたかどうかが明確に
なったとよね。DX7ではサーフェスはロストすることは分かったけど
頂点バッファは明示してなかったと思った。
392 :
名前は開発中のものです。 :02/11/04 13:47 ID:zHhCma6Y
dx8.1b のSDKってインストールディレクトリ選べない? ざけんなゴラァ
自分で好きな場所に置けば良いだけだろ 知能低すぎ
394 :
名前は開発中のものです。 :02/11/04 14:27 ID:zHhCma6Y
>>393 はぁ、ただDisk上に置いてあるだけだと思ってんの?
レジストリにディレクトリ情報、数十箇所書いてあって買い換えなんて面倒なんだよ
なんか未インストールの項目実行すると、勝手にインストーラーが立ち上がる仕様になってるのね
サンプルのショートカットって*.exeに直接リンクされてないし
ディレクトリ選べなかったのは、win上書きインストールの汚れ環境のせいみたい
ランタイムを除けばSDK部分は置いてあるだけだが、 サンプルがスタートメニューのショートカットが入るだけがそんなに重要なのか? 知能低すぎ
使用するデーターって一箇所にまとめてあって、それをレジストリに書いてあるじゃん ディレクトリ移動すると、サンプル実行できませんが何か? キミは全部の実行ファイルと同じディレクトリにデーターコピーして実行するのか?
それで実用上何の問題が? 知能低すぎ
哀れなやつがいるな…
399 :
370 :02/11/04 15:35 ID:???
>>389-391 遅くなりましたが、レスどうもです。
やっぱりウインドウサイズ変更だけでも、
デバイス再作成に近いことはやらなきゃいけないんですねぇ。
デバイスに関連するものも作り直しとなると結構面倒・・・。
2chでこんなどうでもいい話してる暇があるなら レジストリ書き換えてればいいのに。
>>399 作り直さなくても、あらかじめ大きめのサイズのデバイスを
作っておけば良いだけだと思うが
>ディレクトリ選べなかったのは、win上書きインストールの汚れ環境のせいみたい 自分の環境の悪さを棚に上げて批判するなんて愚の骨頂だね
はぁ。おまえら暇だなぁ。 ストレス溜めた状態で2ch見るのは止そうぜ。な。
404 :
370 :02/11/04 16:14 ID:???
>>401 それって常に大きめのサイズでレンダリングしてしまうわけですよねー。
ウインドウが小さい時はそのサイズにあった速度にしたいし、うーむ。
>>404 SetViewportとPresentで調整すれば良いだけ
406 :
370 :02/11/04 17:02 ID:???
>>405 当分はその方向で逝こうと思います。
でもディスプレイモードが変更された時ならまだしも
CTRL+ALT+DELELE押された時もデバイスが死んじゃうんじゃ、
どっちにしろデバイス作り直す処理は必要かな。
OpenGL見たいに勝手にやってくれると有難いんだが、
DirectX9もここらへんは変わらないのかなぁ。
8なら作り直す必要は無いが?
>>407 ほら、もうちょっと言葉を足して書こうぜ。
誤解されて変なツッコミが入っちゃうぞ。
関係ないけど、DX9SDKではスタートメニューにサンプルが登録されねぇぞ。
>>370 サンプルプログラムの、d3dapp.cppの中にある、メッセージプロシージャは見た?
その中にあるサイズ変更関連のメッセージ(特にWM_SIZING)あたりを読むことを
オススメする。
デバイスの作り直しは、よほど特殊な要求(HAL→REFの切り替えとか)が無い限り
必要ないと思う。ヘルプのResetメソッドについても読もう。
DirectX9!!
↑デマ
413 :
410 :02/11/04 21:52 ID:???
すまん。WM_SIZINGじゃなく、WM_EXITSIZEMOVEね
414 :
370 :02/11/05 00:00 ID:???
>>407 ,
>>410 デバイスそのものを作り直さないまでも、
RenderState、VertexBuffer、テクスチャ、メッシュ全て設定し直さなきゃいけないなら、
デバイス作り直すのとほとんど変わらないなぁというお話でして。
415 :
389 :02/11/05 00:29 ID:???
>>414 >RenderState、VertexBuffer、テクスチャ、メッシュ全て設定し直さなきゃいけないなら
んなこたないよーヘルプ嫁ヘルプ。D3DPOOL要参照。
416 :
370 :02/11/05 01:15 ID:???
>>415 RenderState以外はMANAGEDにしておけば手間が省けるってことですね。
メッシュは物によって調べる必要があるみたいですが。
話はそれますがヘルプに
CreateVertexBufferのUsageに"次の 1 つ以上のフラグの組み合わせ"
って書いてあるのにサンプル見ると0指定してあるんだけど
どういう意味でしゅおうか??
どれかのフラグの値が0とか?
418 :
389 :02/11/05 01:32 ID:???
419 :
370 :02/11/05 01:34 ID:???
>>417 どれも0でないみたいです。
"0以上"の間違いだろうと思い込んで寝ます。
420 :
389 :02/11/05 01:36 ID:???
>漏れも分かんない。 >その部分は真似せんほうがええと思うよ。 嘘ですゴメン。
421 :
370 :02/11/05 01:38 ID:???
>>418 ,420
D3DUSAGE_DYNAMICに
"D3DUSAGE_DYNAMIC を指定しないと、頂点バッファは静的に作成される。"
って書いてあるんでこれが0なのかなと都合のいい解釈をしつつ寝ます。
422 :
389 :02/11/05 01:44 ID:???
>次の 1 つ以上のフラグの組み合わせ。 ↑これ日本語ヘルプの誤訳。 「これらのフラグは組み合わせて使えるよ」というのが正解。 何も指定しなければ静的に確保される。 俺の知ってる範囲では、ハードウェアT&Lを搭載してるカードでは ビデオメモリ上に確保される。ロック&書き込みが重いので静的な データ以外には使わないほうがええ。
>>422 原文は「A combination of one or more of the following flags」だから、
「次の 1 つ以上のフラグの組み合わせ」という翻訳は間違いではない。
日本語ヘルプに誤訳が非常に多いのは紛れもない事実だけど、
原文の説明自体が不適切・不十分であることも少なくないのだよ。
424 :
410 :02/11/05 08:07 ID:???
>>370 >メッシュはものによって調べる必要があるみたいですが
既にヘルプを呼んでいるかもしれんが、メッシュを作る時にオプションに
D3DXMESH_MANAGEDを設定すればいいだけ。
>>415 フォロー、サンクス。っていうか肝心なことを書き忘れてたんだな、俺(笑)。
425 :
389 :02/11/05 10:10 ID:???
>>423 >「次の 1 つ以上のフラグの組み合わせ」という翻訳は間違いではない。
そうだね。漏れ寝ぼけ過ぎ。
うちのグラカだと、どう調べても、スプライトで書くよりポリゴン作って テクスチャはった方が描画が速いんだけど、そういうグラカって結構あるもんですか? 他のマシンがないので調べられません。
427 :
名前は開発中のものです。 :02/11/06 01:21 ID:NGPM1Ygr
DirectInputで、なぜかZキーを押しながら、左と下を押すと、左か下の片方しか キー入力が取れません。 自分のプログラムが悪いのかと思ったのですが、そこらへんに転がってる DirectX8を使用したプログラム5個ほどでも同様の現象がありました。 これって、自分の環境が駄目なんですか? それとも、Microsoftのバグ?
洋ゲーが同時押しを必須としない設計をしてたりする理由だね。 CTRLやALTキーをデフォルトにするのも、 ほかのキーよりはこれの確率が低いから。
>>426 D3DXSpriteは内部でポリゴンにテクスチャ張って描画してます。
使うメリットがないなら、自前のスプライト描画クラスとか
作ったほうが良いものができるかもしれない。
>>427 キーボードが悪い。安物はそうなる。
USBキーボードはなりにくいのでお勧め。
安物云々は関係ない、知ったかするな PS2の伝達経路の数が足りず、安物だろうが高級品だろうが、 バッティングする位置が変わるだけ インタフェイスの問題 USBはなりにくいのではなくならない
434 :
名前は開発中のものです。 :02/11/06 11:53 ID:F7G6Kvvh
>>432 キーボードのようなキー数の多いデバイスはキーマトリクスを
作ってスキャンしている(大昔から変わらない)ので、
なんともトンチンカンだよ。
>>432 うちのUSBキーボードは同時押しできない組み合わせがある。
うちのはクソということでよいか?
432こそ知ったか野郎でFA? ところで427ってノートPCでも使ってる? そこまで同時押しできないキーボードは、俺が今まで使ってきたマシン ではThinkPadしかなかったけど。
ドッカン
,、、 ドッカン
━━━━━) )= ☆ゴガギーン
∧_∧ | | / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( )| |_____ ∧_∧ < おらっ!
>>432 出てこいゴルァ!
r ⌒ ̄ ノ __. | (´Д` ) \
| イ |__| | / \  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | .| | | /\\
| | | .| へ//| | | |
| | | (\/,へ \| | | |
| ∧ | | ◎\/ \ / ( )
| | | |.| .| | |
/ / / / | .| | |
/ / / /.| |三三三| | |. |
/ / / /...| | ||
俺のノートPCはCtrlとCapsを入れ替えた時に、Ctrl+Shift+Zが押せずRedoできなくて泣けるんだよ、ボケが
問題はそこじゃなくて、ユーザがそれ買わなきゃ意味ないとこだろ( ´∀`)
DirectX9!!
442 :
名前は開発中のものです。 :02/11/06 18:17 ID:HmH3fN4E
(DirectX9のね)
445 :
名前は開発中のものです。 :02/11/06 20:14 ID:F7G6Kvvh
でもそのページにはそんなことないよね?
98のキーボードはよかった…
>>436 427ですが、ノートVAIO使っております。
家で使うときはUSB使おうかなぁ。
ということで、プログラム自体は変更することないんだね。ありがとう。
>>447 変更する点があるとするならば、キーコンフィグをつける点。
449 :
名前は開発中のものです。 :02/11/07 17:05 ID:2yv67rKD
LPDIRECT3DDEVICE8 dev; ↑このdevを別のファイルで扱おうと思ったらどうすればいい? 別のファイルで LPDIRECT3DDVICE8 dev2; dev2=dev; てやったら2重定義でゴラされた。
>449 Cの勉強をしなおせ
extern LPDIRECT3DDEVICE8 dev;
452 :
449 :02/11/07 17:35 ID:2yv67rKD
俺、Cは6年やってるけどな。そうかexternだな!ありがとう。 もう一つ、聞きたいのだがいいかい? LPDIRECT3D8 d3d=NULL,d3d2=NULL; 2個用意してd3dの方でDirect3dCreate8をする。 その後、 d3d2=d3d; とする。こうしたら以後の処理はd3dでもd3d2でもどちらを使っても 良いのかだよな?中身をコピーする、すなわちIDirect3Dインタフェースへの ポインタがd3d2へコピーされるんだからなw その後、オブジェクトを開放する時はどちらか一方だけリリースを呼び出せばいいんだよな? ん?
453 :
449 :02/11/07 17:40 ID:2yv67rKD
>>452 よいのかだよな? ×
よいのだな? ○
鬱だ・・・逝こう
うぜ・・・
449みたいなのと組まされたくは無い罠
>>452 はいはい、正解、あってるからさっさと仕事に戻れよ!
休憩時間はおわったんだからさ・・・・・・・・
>449 ム版に逝けよ。DirectX以前の問題だ。
どうやったら、そんなソースの書き方になるんだか不思議だ
459 :
449 :02/11/07 17:54 ID:2yv67rKD
うるせー馬鹿!
それが人にものをお願いする態度? 人生おしまいだね
今朝、最後のβっぽいのが出たよ>DX9 次はRelease Candidateみたい。 うまく行けば年内に来るかな?
449やべーよ。6年とは信じられん d3d2=d3dはまあいいとして、どちらか一方だけReleaseとか頭いたい。 d3d2->AddRef(); d3d2->Release(); だろう
AddRef?
ときどき dialect を堂々と使う田舎者と中学生の合いの子のようなあんぽんたんがいるよね。
>>462 年数なんてかんけーねーよ。
馬鹿はいつまでたっても馬鹿だ。
むしろ年季の入った馬鹿の方が 矯正が利かない分タチが悪い。
インターフェイスを2つ用意する意味が全然わかんないんですが…
468 :
名前は開発中のものです。 :02/11/07 23:13 ID:oHLaAcmh
教えてください。 四角形ポリゴンで描画した後に、スプライトで画像を表示させようとしても、 表示できません。 ポリゴンの後ろにスプライトが隠れているようなのですが、これをどうやったら 前に出せますか? 座標変換は行っていません。
DirectX9!!
471 :
名前は開発中のものです。 :02/11/08 14:02 ID:mLnGgDjl
>>468 Z比較ですべて書き込むALWAYSではうまくいかないのでしょうか?
472 :
アフォプロ ◆P6rBQWtf4. :02/11/08 14:24 ID:NMeEcAJo
>>471 プログラム的に先にスプライトを描画しようとしてたらうまくいかないだろうね。
あとならたぶん描画できる。
473 :
471 :02/11/08 14:33 ID:mLnGgDjl
>>473 スマヌ、嘘ついたカモ。
描画されるのはZ比較を無効とした場合。
こいつつかえねー
相変わらずここの板は雑魚キャラ満載だな
Windows版FF11はなぜあんなにも画面は汚く糞重いんだろ。 何の理由で重くなってるんだか想像つく人います? それとも、案外これがSquareの実力なのかな。
CPUのウェイト大きいし、CPUでスキンとか頂点処理してたりして HWでシェーダー使えるの少ないし…
479 :
名前は開発中のものです。 :02/11/09 01:52 ID:WtQZiHWM
画面がさあ、ビクッ!ビクッ!ってなるの
DirectX9!!
DirectX10!!
X9まだかよ・・・マジでNV30あわせなのか?
ワンスキンアニメ付きX形式に吐き出せるツールどういうのがありますか? 学校でDirectX付属のMAX用プラグイン使ったのですがスキンアニメにはならない&テクスチャが貼られないという状態なのですが。 または、ここの方々はどうやってファイル作ってますか? 自前形式と言われたらそれまでなんですが。
>>477 スペック低いPCなんじゃないの?
アナタのPCがどんなハードウェア構成なのかわかんないから答えようがないよ。
# UOでBantheeチップ使ってると激しく重くなる、とかそういう相性かもしれないし。
485 :
名前は開発中のものです。 :02/11/09 12:37 ID:IwFQStjk
DXUtilsのDxTexというツールでDDS形式のファイルを作りたいのですが、 何を読み込んでも画像が真っ黒に表示されてしまいます。 何か改善策は無いでしょうか。
>>485 明日秋葉原に来な。そしたら教えてやる。
488 :
485 :02/11/09 13:44 ID:IwFQStjk
貧乏学生です。 明日秋葉原へ旅立てば十中八九餓死します。
489 :
477 :02/11/09 14:33 ID:???
>>484 ,487
俺自身はGF4TiとP4 2G。遊べないことはないんだ。
他のゲームと比べてパフォーマンスでていない感じがすることかな。
>>485 "ペイント"で作成した.bmpを読み込んでもダメ?
491 :
485 :02/11/09 15:29 ID:IwFQStjk
ペイントで描いて読み込んでみましたがダメでした。 Dxdiagを起動して気づいたのですが、 AGPテクスチャアクセラレータが「なし」になっていました。 もしやこれが原因なのでしょうか?
ワンスキンアニメは駄目だねー ウエィトつか、ボーンの入れ方がプリレンダと違うから データー転がってないし モーションデーターもそろわないし 素人プログラマには、手の出しにくい領域だ。よってコンバーターも充実していない MaxかLWしかないっしょ
Lwでも、ボーン関係のアレが駄目コレが駄目で 苦労しました。
ボーン関係をツールでデザインしてプログラムに取り込むパスって どういうのがあるかねえ Maxのエクスポータが王道か?
データー
ウエィト
デバイスをリセットした時にレンダーステートを復活させるには 自前で設定し直すしかなんですか?
おおまかなステートについては再設定のルーチンを作ってそれを呼んでるよ 細かいのは次の描画時に設定されるからどうでもいい
500 :
498 :02/11/09 17:54 ID:???
>>499 リセット掛けるとStateBlock消滅するし、一つ一つGetRenderStateするのもなぁと思い、
ステートにもMANAGED見たいな機能がないかなぁと思って聞いてみました。
自前で用意するとなるとそれなりに頭を使わなきゃいけないので。
保守
502 :
483 :02/11/09 21:31 ID:???
やっぱりワンスキンやらないほうが良いのか・・・。 ツール高い&やりにくい、自作モーションエディタ作るよりは楽かなと思ったけど逆にややこしそうですね。 パーツ毎に呼び出してmikotoあたりでモーション呼び出したほうが楽かな。 返答ありがとうございました。
ゲーム向に適切なレベルのモーションエディタが
ないってことだな。
頑張ってつくってくれ
>>483
>>500 StateBlockはどこかで一度は設定しないといけないんだから、ロストしたら
もう一度設定する関数を呼べば良いだけ。
505 :
498 :02/11/10 00:48 ID:???
>>504 リセット前にCreateStateBlockでガポッっと取って
リセット後にApplyStateBlockでドバッと適用出来ないかなと考えた訳でして。
それに代わる楽な方法はないものかと聞いてみた次第です。
あまりリセットを考えた作りにしたくないなぁと・・・
ある程度のことはPOOL MANAGEDでなんとかなりそうだし。
出来ないのであればそれしかないんですけどね。
つか、レンダーステート設定ってどうやるよ? フラグまとめた構造体でも作って それをvector配列にでもstackしておいて リセット時は再設定とか? 物体毎に直書きは駄目だろ?
あ、そんな必要ないか「飛んだぞゴルァ」フラグを作って全オブジェクト描画前にそれをチェックか?
あげん
>>502 「高い」だけなら、MilkShape3Dって言う安いツールがある(20ドル)。他は
解決しないけどな。30日間は無料で使えるから、試してみる?
510 :
名前は開発中のものです。 :02/11/10 11:29 ID:St+9OfWz
ん? レンダリングステータスなんて物体毎に変更でしょ? 俺的にこんなものの変更に速度気にしてたら何も作れないと結論つけましたが あと速度のことではテクスチャフリップも俺的に気にしないつーすたんすなんすけど。 だからステータスは全体で使う奴を憶えとくだけだけど
511 :
509 :02/11/10 11:50 ID:???
(ほぼ)連続カキコ、スマソ。MilkShapeの続き
・頂点数が多いものはインポートできない(1000くらいはOK。限界は不明)。という制限が
あるので、レジストする前に無料期間で確認しよう。
・ワンスキンの場合、ウェイトは0%か100%しか設定されないみたい。これがX用の
エクスポートプラグインの仕様なのか、アプリ自体の限界なのかは不明。
・メタセコでモデルを作るなら、メタセコでは「3DS形式で保存」し、インポートすると
テクスチャ座標が反映されて便利。オブジェクト分割の情報もグループとして反映
される。オブジェクトの名前は半角英数にしよう。
>>507 Reset呼び出し直後に必ずステート設定しなおしのほうが、シンプルで
良いと思われ。
512 :
名前は開発中のものです。 :02/11/10 12:40 ID:St+9OfWz
そら、逆にむだちゃう? と、思ったら全くかわらないや速度。 毎ふれーむ設定採用決定。 だれかおそくなったひといる?
毎フレーム再設定にしてるよ アフォなドライバのデバッグには付き合いたくないし
ウインドウが全部隠れた状態でレンダリングするとカチコチ重くなるんですけど、 何でですかね?
515 :
511 :02/11/10 15:00 ID:???
>>512 俺へのレス?違ってたらスルーして。
毎フレーム呼び出すのはPresent。俺が書いたのはReset。字面が似ているから
読み違えたかもしれないが。
Resetの後は、どうせパフォーマンスが落ちてるんで、使う使わないに関係なく、
全てのステータスを設定しなおしてる。理由は
>>513 と同じ。
516 :
がんばります :02/11/10 20:24 ID:Ojm0qAse
超初心者向けのDirectX講座をやってるHP知りませんか? 一応自分で一通り探したのですが、リンク切れとか 説明不足とかが多かったので、よろしくお願いします。
517 :
名前は開発中のものです。 :02/11/10 20:37 ID:p3Uh3pyT
511さんすいません。その通りでまちがえました。
>>518 そうですか。わざわざレスありがとうございました。
もっと探してみます。
がんばりかたが間違っています。がんばってヘルプを読みましょう。
>>520 うるせーよボケが。下手に出てれば偉そうに
黙ってURL貼れよ。んでもって氏ねカス
↑ 偽者ですね。 そんなこと言わないで下さいよ。
523 :
名前は開発中のものです。 :02/11/11 00:46 ID:FUv1TWBV
すいません、もう一度質問させてください。 ウインドウモードで動かしてるんですが、描画領域が他のウインドウなどで 完全に隠れると、CPU使用率が100%になりカーソルまでロックされてしいます。 SDKのサンプルはそんな現象が起きないので自分の作ったプログラムに 問題があると思うのですが、サンプルと見比べても原因がまったく分かりません。 ちなみに描画ルーチンではClearとPresent(NULL...しかやっていません。 何か致命的なことを忘れているのでしょうか? 教えてください。(;´Д`)
ウインドウプロージャのメッセージの受け方を確認しる
ソースを見ないで間違いを指摘するのは難しい。
526 :
名前は開発中のものです。 :02/11/11 01:03 ID:8CEKfzu0
defwinproc
527 :
523 :02/11/11 01:18 ID:???
何処が原因かまったく分からないので ソースの全体を乗せるわけにもいかず… とりあえず大まかな説明を。 PeekMessageして空の間レンダリングするようにしています。 初期化もWM_CREATEでは無くCreateWindowでハンドルが帰ってきた段階で やっていています。 ウインドウプロージャはWM_SIZEとWM_DESTROYくらいしか引っ掛けていません。 directxを呼んでいるのは一つのスレッドだけです。 レンダリングの部分は d3d_dev->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_COLORVALUE(.5, 0, 0, 1), .0f, 0.0f); d3d_dev->Present(NULL, NULL, NULL, NULL); 削って実験してこれだけです。 この2行を取ると重くなりません。 こんなところなんですが…
WM_PAINT引っ掛けないと駄目よ
529 :
523 :02/11/11 01:33 ID:???
さらに、現時点で分かっていることは、 CreateDeviceでD3DCREATE_SOFTWARE_VERTEXPROCESSINGでは 大丈夫なようです。 D3DCREATE_HARDWARE_VERTEXPROCESSING D3DCREATE_MIXED_VERTEXPROCESSING だと重くなります。(描画領域が1ピクセルでも表示されていれば大丈夫) SDKのサンプルでd3dapp.cppのCreateDeviceの部分にに D3DCREATE_HARDWARE_VERTEXPROCESSING D3DCREATE_MIXED_VERTEXPROCESSING 共に指定してやってみましたが同じような現象は起こりません。 ただし、d3dapp.cppを使っていないTutorialsのサンプルでは 現象が再現します。 自分のプログラムはd3dapp.cppは使っておらず、Tutorials見たいな簡単な 作りになっております。 しかし、d3dapp.cppがどうやってこれを回避してるのかさっぱりです。 D3DPRESENT_PARAMETERSまで一緒にして試しては見たんですが…
530 :
523 :02/11/11 01:40 ID:???
>>528 前はこんな感じで引っ掛けていました。
case WM_PAINT:
win->OnPaint();
ValidateRect(hWnd, NULL);
return 0;
でもどうもぁゃιぃので今は取っています。
BeginPaintなんかも入れて試したんですが変わりませんでした。
一人で長々と書いてすいません。
defwinprocはしてるの? プロージャの最後で return defwinproc(hoge,hoge〜 よ?
532 :
523 :02/11/11 01:57 ID:???
>>531 DefWindowProcしてますよ〜
ウインドウ管理の部分は他のプログラムの奴の使い回しですから、
そこで重くなっているとは考えにくいです。
つか、 case WM_PAINTで受けてるのはいいけど defWinproc通さないでreturn 0しちゃってるじゃん
あ、いまは外してるのか失礼 つか、他の部分はちゃんとdefwin〜通してからreturn してるか?
535 :
523 :02/11/11 02:09 ID:???
WM_PAINTの部分はヘルプのチュートリアルそのままパクッただけです。 元々は全てbreakでdefwin行くようにはしてたんですが。
DirectX8にでDirectInputを使用しようと思っているのですが、 原因が良く分からない部分でエラーとなってしまいます。 LPDIRECTINPUT8 pDInput; LPDIRECTINPUTDEVICE8 pKeyboard; HRESULT hr; hr = DirectInput8Create(hinstance, DIRECTINPUT_VERSION, IID_IDirectInput8, (void**)&pDInput, NULL); if(FAILED(hr)) return false; hr = pDInput->CreateDevice(GUID_SysKeyboard, &pKeyboard, NULL); if(FAILED(hr)) return false; hr = pKeyboard->SetDataFormat(&c_dfDIKeyboard); if(FAILED(hr)) return false; // ここでreturn false このようにしてDirectInputを設定したのですが必ず最後の SetDataFormat(&c_dfDIKeyboard)で失敗してしまいます。 普通に使用できているキーボードを使用しているのですが、 この場合どのような原因が考えられるのでしょうか? どうかよろしくお願いします。
アイドル時に常に描画ループ回ってる構成かどうか わからないが、 WaitMessageしてないとか Sleep(0)入れてみるとかじゃない?
540 :
名前は開発中のものです。 :02/11/11 13:25 ID:9PgLbw0e
DirectX8.1を使用しています。 IDirect3DDevice8::Clearを実行したところアプリケーションが 終了してしまうので色々試していたのですが、 例外を捕捉してみたところ、捕捉できてしまいました。 try { pD3DDevice->Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0, 0, 0), 1.0, 0); } catch(...) { // ここへくる } DirectXのドキュメントを見ても例外が起こるということは書いておらず どこかで変な処理でもしてしまったのかと思うのですが どのような場合に例外が起こるのでしょうか?
自分の手元に「まともに動くソース」があるのに 全然読まねー奴っているよな。
545 :
名前は開発中のものです。 :02/11/11 18:33 ID:Ooxx02A3
みなさん、Xファイルで読み込んだモデル同士の当たり判定ってどうやって取ってます?
>>545 まずアナタがどうやっているか(どうやろうとしているか)を書くのが筋でしょう
からむなよ。
548 :
547 :02/11/11 20:11 ID:???
スレ違いスマソ
炎を表現したいのですが、いい方法ありますか? まっつんが考えたのは黄色の丸を描いたビットマップを上にいくにしたがってARGB指定で徐々に赤くしていきます。 また上にいけばいくほど中心からはなれればはなれるほどアルファ値を低くという法則にしたがって1万ほどの粒子を描画するというものですが、それらしくはなりますがいまいちです。 お知恵を拝借したいです。
551 :
まっつん :02/11/12 03:30 ID:3TBeukJM
あげ
好きです。。。>>まっつんつん 結婚を前提にメルトモしましょう
>>まっつんが考えたのは 萌え
まっつん萌え同好会をここに開きます!
>>552 がリーダー
>>550 バーテックス、ピクセルシェーダーが使える環境?
後、ただ色変えて重ねるだけじゃマンガの炎っぽくなるんじゃない?
しかし、昔試したアッドブレンドだと上手く炎の赤が出来なかった記憶が…
それに、その炎以外に、アルファ描画は無いの?
あるんだったら、少し細工しないと。
アルファ描画同士の整合性を取らないと駄目だと思うよ。
PC版のFF11買ってきてやってるんだけどエフェクト系は勉強になる感じ。やっぱ綺麗だわ。 しかしバックバッファの設定が512*512とか正方形しか無いのが なんでなのかいまいちよくわからん。 フルシーンアンチのつもりなんだろうか。
テクスチャにして各種効果を使う予定なんでは?
過去ログで、 SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE); 透明On SetRenderState(D3DRS_SRCBLEND,D3DBLEND_ONE); 黒抜き SetRenderState(D3DRS_DESTBLEND,D3DBLEND_ONE); 加算 この後に描画するものはすべて加算になる。 っていうのを見たのですが、例えば画面左下にステータスを 表示させようと思い、黒の背景に青い文字でLIFEと書いてある ビットマップを作成しました。それで上の方法でアルファブレンディング をしたのですが、上書きされる裏地の画面の色が黒の場合は 綺麗に青い文字でLIFEと表示されるのですが、そうでない場合だと 文字の色が合成されて青ではなくなってしまいます。かといって ブレンディング方法をONEじゃなくてZEROなどにすると こんどはテクスチャの黒い部分も表示されてしまいます。 透過GIFのように、黒は表示されずに、それでいて青は上から しっかりと上書きされるようにするにはどうすればいいのでしょうか?
文字の色が背景によって変化して欲しくないんだったら、 文字列のビットマップをα付きにするしかないと思うよ。 背景部分を完全透過にすれば、普通のαブレンドで行ける。
>>558 選択肢にないだけでレジストリを直接いじれば正方形以外にも変更可能
>>559 いい加減なことを言うな
>>560 アルファ値を直接変更しないで無駄な苦労をする理由は?
560です。 ビットマップをα付きにするというのは、画像を作成するときに 特別なツールが必要ということなのでしょうか。 それとも、テクスチャを読み込む関数 D3DXCreateTextureFromFileExの ColorKeyで完全に透明にするいろというところに (0,0,0)と入れればいいということなのでしょうか。 ちなみに普通のαブレンドというのは lpD3DDEV->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA); lpD3DDEV->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA); のことですよね?
>>564 >特別なツールが必要ということなのでしょうか。
何故そういう発想になるのか理解しがたいが
最初からアルファ値があるデータを使う必要はない
読み込んだ後にテクスチャをロックして好きな値を設定すればいいだけ
半透明の減算ってどうやるの?
567 :
名前は開発中のものです。 :02/11/12 16:32 ID:8nxZuYA/
SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA ); SetRenderState( D3DRS_DESTBLEND, D3DBLEND_ONE );
560です。 >読み込んだ後にテクスチャをロックして好きな値を設定すればいいだけ これのやり方がわからないのです。 黒地に青の文字のテクスチャを作って D3DXCreateTextureFromFileEx関数の完全透過色の値を (0,0,255)と設定すると、青が抜かれて描画されます。 じゃあ、(0,0,0)と設定すればできるかなと思ったのですが それもできず。 じゃあ、赤地に青文字で(255,0,0)とやれば青文字だけできるか と思えば、それもできず。 うーん、参ってしまいました。
>>568 >これのやり方がわからないのです。
何故分からないのかが分かりません
ロックして自分で色を判断して該当するアルファ値を書き込むだけですが、
いったいどこが分からないのでしょうか?
わからないのは ・ロックして ・自分で色を判断して ・該当するアルファ値を書き込む …のどれよ?
560です。 正直言うと、すべてです。 ロックするってのは頂点バッファに頂点情報の配列をmemcpyするときに つかうあのロックのことでしょうか? そもそもテクスチャのなかがどのようになっているのかもよく理解できて いないのでありまして。 テクスチャの中にはそれぞれのピクセルごとにRGBAそれぞれ255ずつの 情報が格納されてて、そのなかのピクセルで黒(0,0,0)の 色情報のピクセルのαの値すべてを0に書き直せってことを おっしゃってるのですか? だとしたらそもそもの記述方法がわかりません。 便利な関数に頼りすぎてしまっているのかもしれません。
>>571 全部わからんならヘルプ読むことを勧める。
どれか一つなら解説にもたいした手間はかからんけど、
全部まとめて1から解説する気にならん。
BBX って閉鎖したんでつか? 少し前から全然繋がらない。
>>574 うちも
[an error occurred while processing this directive]
とか表示されて見れないよ。
infoseek と HOOPS! の統合作業のせいかと思ってたけど
作業終わっても見れん。
560です。 結局SDKに入っているツールを使ってDDS形式にすることで 解決できました。というか、解決できてませんね。 どうやら自分は、メモリの中を自分で書き換えることがまだちゃんと できないようです。 Xファイルを読み込んでそれをカスタマイズした頂点情報のひな型に 入れていくという作業もいまなにも見ないでやれといわれたら 絶対にできないと思います。 実際、ゲームプログラマーとして食べて行くにはどれくらいのスキルが必要 なのでしょうか。かなり不安になってきました。PS2とかの開発は もっとむずかしそうですし・・・・・
>>580 ローカルルールより
>以下の話題は別の専用板で
>・業界の話題 → ハード・業界板
BBXって 結局移転なの? それともトップだけ死んでるの? アドレスが変わったの?
>>583 トップだけ死んでるんじゃない?
昨日の投稿記事もあるし。
>>584 ふーん、移転したわけじゃあないのか…
それにしても長いこと死んでるなぁ、、
っていうかBBX掲示板って以前はアドレス直指定じゃ入れなかったような
>>583 つーか、トップ逝って見れなかったのでソースちょっといじって
デスクトップに置いたら以前と変わらず見れますが
それにしてもいいタイトルだなこのスレ…
DirectX9.1!!
DirectXP
DirectSEX!!
DirectSEX=生でプレイ?
593 :
名前は開発中のものです。 :02/11/14 02:08 ID:GiEDJ/06
どなたか、mingw や bcc で 8.1b の d3dx が使えるように、dll を作ってください。
594 :
名前は開発中のものです。 :02/11/14 02:22 ID:jiqdRyiV
無理
キチガイキタ━━━━(゚∀゚)━━━━ !!!!!
arudaro
597 :
593 :02/11/14 08:00 ID:???
>>596 8.0 用しか見つけられませんでした。
DLLhaSDKnodeyoinodeha?
>>598 スタティックライブラリになっている部分が分かっていない馬鹿は黙ってろ
よおしまってろよおおおおお おまえのあいぴーぬいてやるぜえええ
static library nanisore ? ijyo Delphi tyubo deshita
Delphiとか言語は関係ないのだが… 厨房ならしかたないや
603 :
名前は開発中のものです。 :02/11/14 16:14 ID:h7xbBaO2
DirextX 9 まだー? 8から大幅仕様変更はしないだろうな。 本も安くねえんだぞ
先日RC0が出たからもうすぐだと思われ。 8が解ってればあとはヘルプのみで対応できるよ。
今年中には出るのか
>>602 delphi niha .lib ga nainodesu
>>603 DirectDrawとDirect3Dが統合されてDirectGraphics…とか、そういう大幅な変更はないはず。
工学社のDirectX本はほんとカス
カスな奴が読むには丁度いい
611 :
名前は開発中のものです。 :02/11/15 00:58 ID:X0luojF8
Win上でのDVD再生時に発生するコマ落ち原因を知りたくてWindows板にスレ立てた のだがあまり良い意見が聞けない(OSが原因かと思いWin板へ立てたが期待ハズレ)。 ゲ製板住民はリアルタイム処理に強いことを期待して意見をいただきたい。既に スレ立ててしまっているので該スレにリンクを張ってもよいか? もし迷惑だったらスマソ。
>>611 その程度でスレ立てるな、と…。
ソフトウェア板やCD/DVD板とか、色々あるだろうに。
プログラム的な問題ならソフトウェア板。
どちらにしろこの板じゃ板違い。
>>611 期待ハズレ、っていうより自分の希望通りのレスがもらえなかっただけだろ(藁
何が原因かわからないのにWin板でスレ立てか。おめでてーな。
初心者板へ(・∀・)カエレ!
614 :
523 :02/11/15 01:33 ID:???
今更だがどうもバグっぽい。 鬱だ…
615 :
まっつん :02/11/15 02:02 ID:uKssfMT8
>>523 ソース全部ここにコピペしな。まっつんが解決してあげる。
まっつん━━━━━━(゚∀゚)━━━━━━ キター!!!
617 :
523 :02/11/15 03:14 ID:???
>>615 今から寝て会社いきますんで、待ってください。
それにこんな汚いソース全部貼ったら荒らし見たいなんで。
618 :
まっつん :02/11/15 03:45 ID:uKssfMT8
>>617 いいわけはいらねえ。必要なのは貼るか貼らないか、はっきりすることだ。
DirectX10!!
DirectX9!!
じゃあ貼らない!
ProjectX2!!
(´-`).。oO(ロックマンX4やりたくなっちゃった)
ロックマンはやっぱ2が難易度的に最高。
DirectX4!
2はそんなにむずかしくない
(´-`).。oO(難しいかどうかじゃなくてバランスのことをいってるんだと思う)
最悪! Radeonのドライバの設定画面に 「代替ピクセル センター」なる項目があるが、 この項目の意味を調べようとしてもヘルプにも載ってない、HPにも無い! で、いろいろ検証した結果、なんとテクスチャの指定で0.5ピクセル分(テクセルじゃないよ) 勝手に足してしまうと言うとんでもない効果だったのですぜ! 0.5足すのはプログラムの側だろうがぁぁぁぁぁ! 「Radeonでテクスチャがぼやけるんですけど?」 なんていう原因不明のバグ報告が舞い込んできて、どこがいけないのか探していたが、 なんとなんとまぁ、これが原因!さいあくじゃ〜〜〜〜い! 漏れの一週間を返せ!!! 漏れ同じバグに苦しんだ人いまふかぃ? 鬱だ氏のう・・・
629 :
523 :02/11/15 21:07 ID:???
ビルボード以外で炎を表現しているゲームあります??
人ヾ / ゚o\ (´Д`O ) (⊃o⊂゚) U U ______∧_______ クソスレはちゃんと削除依頼しないと ageられちゃうんですよ…
635 :
523 :02/11/16 11:40 ID:???
サンプルもD3DCREATE_MIXED_VERTEXPROCESSING指定してデバイス作って 文字表示してる奴はDrawText削って実行すると同じようにロックしてしまうんで、 バグだと思うんですよう。 一応環境書いておきます。 Athlon1G、Win2000sp3、geForce3、DirectX8.1b 同じ症状起きる人いないですか?
人ヾ / ゚o\ (´Д`O ) (⊃o⊂゚) U U ______∧_______ クソスレはちゃんと削除依頼しないと ageられちゃうんですよ…
637 :
名前は開発中のものです。 :02/11/16 13:31 ID:uUfXAzbl
D3DXFontで文字が表示されません・・・。 一応、HRESULTをチェックしても成功はしているみたいですが・・・。 LCPWSTRでなに?おしえて〜!
LPCWSTR? いわゆる16bit unicode文字列だよ
639 :
名前は開発中のものです。 :02/11/16 13:41 ID:uUfXAzbl
DrawTextWの第一引数でそれをしてするんだが、 const型の文字列じゃないといけないの? char *strなんかで送られてきた文字列を表示させたいけど、できない・・・
640 :
名前は開発中のものです。 :02/11/16 13:46 ID:uUfXAzbl
わかんないから、CreateSurfaceFromTextでテキストつかうよ・・・
人ヾ / ゚o\ (´Д`O ) (⊃o⊂゚) U U ______∧_______ クソスレはちゃんと削除依頼しないと ageられちゃうんですよ…
↑ お前、寒いんだけど・・・
DirectDrawSurfaceで、プライマリサーフェスを SYSTEMMEMORYに作るのはまずいのでしょうか。 サーフェス全部SYSTEMMEMORYにしてみたら 低スペック(Pen200)でも快適な動作になったので、 この方法を採用してみたいのですが、 どの文献見てもプライマリはビデオメモリに と書いてあるので・・・
あぼーん
あぼーん
647 :
名前は開発中のものです。 :02/11/16 20:51 ID:8J2K3wmZ
EQとかフル画面専用のゲームを どうにかしてウインドウモードで動かせませんか?
>>647 void main(void)
{
while(1)
SendMessage(GetForegroundWindow(),WM_CLOSE,0L);
}
>>637 >LCPWSTR
LPCWSTRだろ。
マルチバイト文字列へのポインタ。
LP ポインタ
C const
W ワイド文字
STR 文字列
>>523 SkinedMeshで実験してみた。家の環境Cele1.3,GF2MX400,Win2KSp2、Dx8.1で、
CreateDeviceのパラメータのpModeInfo->dwBehaviorは128(多分MIXED)、
DrawTextはコメントアウトしているけど、他のウィンドウで隠しても問題は
おきてない。
あと、他人に試して欲しいなら、もうちょっと具体的に書いたほうがいいぞ。
俺も自分の方法が君の条件を満たしているか、イマイチ自信ないし。そもそも
やり方を探るのが面倒だ。
651 :
650 :02/11/16 23:13 ID:???
ちなみに、ランタイムはリテール版。
654 :
名前は開発中のものです。 :02/11/17 00:35 ID:PWlU8B0V
まことに申し訳なく思う次第です。 ただいま、D3DXFontで文字を表示させることに成功したのですが、 一つだけ疑問に思う個所が御座います。 実はD3DXFont::DrawTextで日本語を表示させた時、画面の左隅や上端のほう で表示させると、文字の表示がおかしくなってしまいます。 まことに遺憾では御座いますが、何事ぞご伝授のほうよろしくおながいいたします・・・。
655 :
523 :02/11/17 00:46 ID:???
>>650 わざわざ試してもらってすいません。
2MXは問題が起きないということは3との相性が悪いのかな?
ご指摘の通りもう少し具体的に書きます。
サンプルのTutorialsでも同じ症状が起きるんで、
簡単にいじれるTutorialsのTut04_Lightsあたりで説明します。
CreateDeviceのD3DCREATE_SOFTWARE_VERTEXPROCESSINGを
D3DCREATE_MIXED_VERTEXPROCESSINGにして、
ビルド→実行→ウインドウを完全に隠れる状態にする。
これでカーソルが飛び飛び状態になります。
CreateWindowのウインドウサイズを大きくするとさらにはっきりします。
ランタイムはデバック、リテール問いません。
とこんな感じなんですがどんなもんでしょう?
>>654 君は慇懃無礼という言葉を知っているか?
あぼーん
あぼーん
あぼーん
あぼーん
あぼーん
あぼーん
あぼーん
このAA上げ嵐はどうやら1人の手によるものらしい。 ヒマなんだなぁ〜(w
665 :
名前は開発中のものです。 :02/11/17 19:27 ID:z7dk3Kxz
頂点バッファの描画登録を別スレッドにて実行させようと考えてますが、 その度にスレッドを作るのはあぼーんですよね。
666 :
名前は開発中のものです。 :02/11/17 22:55 ID:mLU4AxUE
ゲームってオブジェクト指向で作るんですか?
667 :
名前は開発中のものです。 :02/11/17 22:58 ID:z7dk3Kxz
きちんと管理できればどうでもいい。
>>666 RPGだったらプライヤやアイテムや敵キャラのクラスとか作ると便利だよん
プレイヤーが攻撃力100の武器を装備して攻撃力が二倍になる補助魔法がかかってて
装備しているアクセサリで命中率が上がって敵の属性効果の影響でダメージが半減する
なんていう一連の動作を管理してくれるクラスは何かと便利です
つまり、武器の装備はプロパティをいじるだけ
敵に攻撃するときはメソッドを呼ぶだけ、
敵に攻撃されたときはイベントを呼ぶようににするってこと
ソースコードの見通しが非常によくなる上に、
新機能の追加も簡単になるね
たとえば、敵からダメージを受けたときに自動的に反撃する技を追加しようとしたとする
そのときは敵からダメージを受けたときに呼ばれるイベントに処理を追加するだけだしね
もしクラスでなくて素の関数書いたとしたらどんどんスパゲッティが出来上がっていくし、
新しく記述した影響で予期せぬバグが発生するかもしれない
クラスならバグが発生する確率は低いよね
でも、なれないときは単なる構造体のほうが便利かもね
まあ、この場合はRPGだけど、ほかのジャンルでも同じようなことがいえるよ
>>668 >もしクラスでなくて素の関数書いたとしたらどんどんスパゲッティが出来上がっていくし、
構造体と関数の組み合わせでスパゲッティを作る奴はクラスを使っても同じ
そういう奴はクラス同士の連携部分で結局スパゲッティになる
それからイベント処理ならクラスではなくスクリプト的なデータを持たせるだけでクラスは関係ない
イベントを追加するごとにわざわざプログラム側を直すつもりなのか?
その方が見通しが悪くなって余計なバグを生む
> そういう奴はクラス同士の連携部分で結局スパゲッティになる ツリー構造を作るのは得意なんだが、 関連の表現については不得意な人が多いよね。
駄目な企画に当たるとそういう構造も台無しで 力の浪費になるけどな
>>670 苦手です・・・
結局モジュール間で互いの詳細に依存してたりすると鬱。
というか、依存してよいものとしてはならないものの区別をつけるのが苦手。
>>665 メリットなさそうだけど…
へたな作りだと登録が終わる前に描画されて、中途半端な描画しかできないとか
キー入力と描画のタイミングが思いっきりずれて変な操作性になったりとかしない?
>>669 俺は668じゃないけど
>構造体と関数の組み合わせでスパゲッティを作る奴はクラスを使っても同じ
構造体と関数の組み合わせできちんと管理できる人は、それでいいと思う。ただ、
クラスのほうが若干楽になる可能性が高いのは確か。
まあ、何が合うかは人次第なので、余裕があれば自分に会う方法を試すのが
一番でしょう。余裕が無けりゃ、今までの方法でいくのが確実かな。
>それからイベント処理ならクラスではなくスクリプト的なデータを持たせるだけで
>クラスは関係ない
668の言うイベントは、オブジェクトのイベントでゲームのイベントじゃないよ。
675 :
名前は開発中のものです。 :02/11/18 10:44 ID:Xph0uw4U
>673 そうでもしないとパフォーマンスが稼げないんだよね。 GeForce2MXなんだけど256x256のテクスチャ張ったスプライトを 50ぐらい描画するとフレームレートおちる。 でかいモデルになると描画終了まで同期取ってるとさらに遅くなる。 コールバックがとれればいいんだけど、DXはスレッド分けるの前提にしてるみたいだし。
っていうか、なんでDirectX使うのこんなに難しいんだ?
677 :
名前は開発中のものです。 :02/11/18 11:36 ID:v9eMDMzi
ポインタ使わないでゲームできますか?
>677 逝ってよし
>>676 自力でエンジン作るよりは1G倍簡単だよ。
動くだけの3Dエンジン作るのならそう難しくないが、
アクセル使うとなると話は別。てゆうか1人では無理。
>>675 フレームレート落ちるって、どのくらい?そしてそれは、垂直同期を
取っているのか取っていないのか、とか判断のための情報が少なすぎ。
それに描画終了まで同期を取るって、使っているDirectXのバージョンは
いくつ?少なくともDirectX8でDrawPrimitive使うなら描画終了まで待つ、
何て事はしないはずなんだけど。
681 :
名前は開発中のものです。 :02/11/18 13:26 ID:bSTW048q
>>523 >>655 に書いてある通り、Tut04_LightをMIXEDにして試してみた。
特に問題なし。ウィンドウの上にエクスプローラーや、タスクマネージャー
を乗っけてみたけど、問題なく動いているよ。上に乗ったウィンドウを
どかせばちゃんとでてくるし。DirectXのプログラムを動かしているから
CPU使用率は100%だけど。
環境は
CPU Pen3 550MHz
VGA GeForce3(無印)
OS Win2KSP2
DirectX8.1(SDKのヤツそのまま)デバッグランタイム
変な常駐物とか、使ってないか?後8.1bをアンインストールして
8.1に戻すとか、ドライバを変更するとか、環境周りもいろいろ
試してみたら?
683 :
682 :02/11/18 13:35 ID:???
CPU使用率が100%なのは、DirectXだからじゃなく、メッセージ無ければ とにかく描画してるからだったね。すまそ。
684 :
名前は開発中のものです。 :02/11/18 14:24 ID:SvLB2JUF
>680 当方DX8.1 垂直同期はとってません。 Windowモードなので、1/60fpsになるように自前で調節してます。 >少なくともDirectX8でDrawPrimitive使うなら描画終了まで待つ、 何て事はしないはずなんだけど そうなんですか?SDKのドキュメントにはそんなこと書いてなかったので、 そう思い込んでいたのですが。
685 :
680 :02/11/18 15:23 ID:???
>>684 ちょっと計算してみたんだが、256×256×50×60=196608000ピクセルの
描画をしていることになるんだよね。これに加えて画面やZバッファのクリア
なんかもあるんで、GeForce2MXの最大フィルレート350MPixelにかなり近い
処理になってるんじゃないか?
少なくとも、頂点バッファの登録(DrawIndexedPrimitive、TriangleListを
つかうとして)は大した時間が掛かっているとは思えないんで、可能ならフィルレートが
高いGeForce3なんかで試してみることをオススメするよ。
DirectGraphicsとあわせてウィンドウモードで 動画を再生しようとしているのですが、うまくいきません。 デバックしてみたところ IVideoWindowのput_OwnerのところでE_NOINTERFACEを返していました。 put_Ownerには::CreateWindowExの返してくる値を 使っているのですがDirectGraphicsとの関係で上手くいかない などあるのでしょうか。
687 :
685 :02/11/18 15:27 ID:???
連続書き込みスマソ。逆に、もっと小さいサイズのものをたくさん(1000くらい?) 描画してみれば、どっちが限界にきているのか分かるんじゃないの?
688 :
名前は開発中のものです。 :02/11/18 15:34 ID:Xph0uw4U
>685 ありがと。試してみる。 D3Dってスプライト表示させるのを考えると貧弱なんだな。
689 :
名前は開発中のものです。 :02/11/18 16:14 ID:XZ6tSCzR
大野ボンバーエ 大野ボンバーエ 大野ボンバーエ
>>684 >Windowモードなので、1/60fpsになるように自前で調節してます。
秒間0.0166・・回しか表示しないのか・・・
一分に一回しか表示しないとは凄い調整の仕方だ
かなり難しいげーむだな。
692 :
名前は開発中のものです。 :02/11/18 17:33 ID:Xph0uw4U
自分で書いてワラタ。 ミスです。
>>688 単に GeForce2 MX が貧弱すぎるだけだよ。
694 :
685 :02/11/18 22:06 ID:???
>>693 それは確かだが、恐らく内臓グラフィックの次にユーザーが多いからな>GeForce2MX
これで重たいゲームを作るのは、勇気が要るかも。
そもそも256*256なんてスプライトを50枚も表示する?
どこかに無駄があってそれで遅くなってると思うが、、、
697 :
名前は開発中のものです。 :02/11/19 00:46 ID:rNDIE8GL
なんかDX9いれると、動作がキビキビなんて話がでてるがホンマかいな winの描画にDX使うのは次期Windowsからだろ?
背景を描画する時って皆さんどうしてますか? 横360度、縦90度(真上から水平まで)視点を変更できるゲームをつくって おりまして、最初は円筒形の内側にテクスチャを張りフィールドが 進むのと同時にその円筒も移動、かつ回転することで景色がどんどん ながれていくような感じにしていたのですがなんか不自然なのです。
skyboxとかで検索しろよ
700 :
名前は開発中のものです。 :02/11/19 03:06 ID:2iAjk+S7
ひらたくいうとビルボードの位置座標バージョン。
>>695 最初のほうに表示したスプライトのほどんどは
上書きされて見えない罠
702 :
名前は開発中のものです。 :02/11/19 09:17 ID:rNDIE8GL
ソート&クリップしる ってことか
703 :
名前は開発中のものです。 :02/11/19 10:13 ID:rNDIE8GL
GF5キタ━━━━(゚∀゚)━━━━!!!!!! 2スロット占領キタ━━━━(゚∀゚)━━━━!!!!!!
× GF5 ○ GFFX
>>698 基本的には好きな方法でやればよし。天球等もあります。
自然に見えない場合、シーンデザインの問題である事もある。
処理方式はあくまでも道具にすぎないので。
>>695 そうね、
256x256のTextureだと、GF3だろうがなんだろうが、10枚くらいで60フレームは限界きちゃうと思うがどうか。。
基本は、最終描画エリアに近いサイズのソース、なるべくキャッシュにヒット、連続配列するようにして、
どうしても密度高めたいときはMipMap等の平行使用が良いかと思われ。
>>オブジェクト指向
ウチは(っつうか、どこもそうだと思うけど)、
DirectXを完全にラッピング化してポリゴンエンジン作ってます。
そして描画するときはポリゴンエンジンだけを呼び出す。
こーしとくと、1〜2年毎にVersionUpするDirectXでも安心。
あと、VCだと、コード補完してくれるのが何気に便利。
私の場合はLinux用だろうがWindows用だろうがVC使ってまふ。
KDevelopもコード補完してくれるんだけどね、、VCに慣れてしまった。
706 :
名前は開発中のものです。 :02/11/19 10:51 ID:zUDHMGtw
ポリゴンを二つ以上描写するときは drawprimitiveを二回以上使うということですか?
>>706 お前は一万ポリゴン描くのに一万回使うのか?
そんな馬鹿なことを聞いている暇があったら首吊って瞑想しろ
710 :
名前は開発中のものです。 :02/11/19 13:00 ID:Hqxr0J9c
>>706 マテリアルごとにまとめて描画するといいです。
1フレーム中、DrawPrimitiveは多くても100回くらいがいいそうです。
711 :
bloom :02/11/19 13:01 ID:tNxWidGo
回数を気にするのではなくレンダーステートの変更を出来るだけ少なくするように 種類に応じてソートする等の対策を講じた方が良い 季節の変わり目に時々頂点バッファを無理矢理一つにまとめようとする馬鹿が出没するが 百害あって一理無し
715 :
名前は開発中のものです。 :02/11/19 14:28 ID:lfPOAqq2
shadeからxファイルに変換するにはどうすれば良いのでしょうか?
>>715 そういう用途でのSHADEでのモデリングはあまりお薦めしない。
シェードはデータの構造が独特だからポリゴン数が増えやすくゲームには向かない いったんデータをMAXとかに突っ込んで最適化をかければいいんだけど、 だったら最初からMAXを使うという落ち
>>715 テクスチャも出力できるプラグ印をどっかのそういう筋の人がフリーソフトで出してたから探してごらん。
萌え
720 :
名前は開発中のものです。 :02/11/20 00:49 ID:tNCQ9Lo8
シェードのスピリット買ったけどUVデータ吐き出さなかったよ。 トゥルースペースがいいらしい。 サンマンぐらいのでアニメーションができて。 六万だすとスキニングができるかも?
722 :
名前は開発中のものです。 :02/11/20 08:27 ID:7DiAVuBN
Xファイルそのままはおすすめしないぞ。 COBよんだほうがいいよ
723 :
名前は開発中のものです。 :02/11/20 08:33 ID:OQyPiVnq
COBってなんですか?
724 :
名前は開発中のものです。 :02/11/20 08:44 ID:JqQGsa68
cob trueSpaceのフォーマt
725 :
bloom :02/11/20 08:56 ID:jL1YO+9H
E m a c s で 補 完 し る !
>>681 2D せんにょうってなんだよ!
O G R E つ か え え !
尿意マンマン。
728 :
名前は開発中のものです。 :02/11/21 02:42 ID:uI1ub6QO
MADE WITH NO LIMITS IN MIND.
JOIN US FOR A LIVE ONLINE EVENT
AS WE DEMONSTRATE THE POWER OF THE INDUSTRY
STANDARD DIRECTX9
HIGH LEVEL SHADING LANGUAGE. (HLSL)
WHEN : DECEMBER 11TH@11:00AM PST
WHERE :
http://www.gamasutra.com/atideveloper ATI.COM
あぼーん
DirectGraphicでポリゴンを表示したんですが、 表示時の形状(縦横比)が 画面サイズに依存してしまいます。 (縦と横のスクリーンサイズが違うと 正方形ポリゴンが長方形になってしまう) どうしたら直りますか?
D3DXMatrixPerspectiveFovLH
733 :
731 :02/11/22 01:25 ID:53Da1jiM
>>732 ありがとうございます。
アスペクト比の値設定したらいけました。
DirectXAudioのことで聞きたいのですが、どうせなら一連の作業をクラス化して おきたいと思いましてCMusicクラスを作成し、その中で変数 パフォーマーと、ローダーやセグメントなどを宣言。そのクラス内のメンバ関数で DirectMusicPerformance8オブジェクトの作成をしようとしたのですが、 なぜかその作成部分で部分で失敗してしまいます。 こういうことはできないのでしょうか?
>こういうことはできないのでしょうか? もちろん出来ません オマエゲンテイダケドナー
736 :
650 :02/11/22 18:19 ID:m/bok664
>>523 もう見てないのかもしれないが、見てるんならその後どうなったのか
教えて欲しいんだけどね。俺の報告は役に立ったのか、立たなかったのか、
問題は解決したのか、しなかったのか、とても気になるんで。
>>734 俺はDirectXAudioは知らないけど、質問するならせめて、どんな失敗
(要するに呼び出した関数とその戻り値)なのかを書いたほうが、良いんじゃ
ないか?
737 :
736 :02/11/22 18:22 ID:m/bok664
D3DXTesselateMeshってもしかして無くなりました?
739 :
738 :02/11/23 17:40 ID:q9W+YAVe
D3DXTessellateNPatchesに変わってました。失礼
741 :
shi3z ◆SHI3ZCg96A :02/11/24 18:44 ID:+vF0UxNc
o /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ / / このスレは無事に / / 終了いたしました / / ありがとうございました / / / / モララーより / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄/ ∧_∧ / /∧_∧ ( ・∀・) / /(・∀・ ) ( )つ ⊂( ) | | | | | | (__)_) (_(__)
742 :
名前は開発中のものです。 :02/11/24 18:55 ID:2BeBjK03
メッシュのテクスチャ0番の頂点データをいじりたいのですが、 テクスチャ0の位置を調べるにはどうしたらよいのでしょうか?
>>742 D3DXLoadMeshFromXでロードしてるならppMaterialsにテクスチャの
ファイル名が入っているから、そこから目的のテクスチャを使用し
ているサブセットが分かる。
ID3DXBaseMesh::GetAttributeTableで頂点バッファ内の各サブセット
の位置が分かるから、あとはLockして書き換えるだけ。
744 :
742 :02/11/24 19:38 ID:2BeBjK03
>>743 レスありがとうございます。
D3DXLoadMeshFromXは使用しておりません。
D3DXCreateTeapotで作成した物にテクスチャ座標を持たせようと、
CloneMeshFVFでテクスチャ座標を追加したものです。
>>744 それならサブセットは1つだけだから、Lockして全ての頂点を書き換えるだけ。
746 :
742 :02/11/25 00:55 ID:5L7kQxzm
>>745 書き換えるにあたってのテクスチャ座標にあたる部分のオフセットがほしいのですが…
もしかしてメッシュってインターリブの形で入ってないんですか?
あぼーん
748 :
742 :02/11/25 01:03 ID:5L7kQxzm
レス付いたかと思ったらこれか… (´・ω・`)ショボーン
749 :
まっつん :02/11/25 01:07 ID:gj9/Hfuk
世捨て人にかまうな
あぼーん
ageた香具師は責任もって終了AAの削除依頼出しとけよ。
あぼーん
あぼーん
755 :
名前は開発中のものです。 :02/11/25 04:03 ID:Dzx1Bs9z
俺はフラグからオフセット計算する関数作ったよ 必要なのにD3DX系にないのが不思議 FVFのサイズだか求める関数はあるのにね
あぼーん
ageた香具師は責任もって終了AAの削除依頼出しとけよ。
あぼーん
>>746 どうせテクスチャ座標なんて一番後ろなんだから、FVFのサイズから簡単に
求まるじゃん。
このスレを終わらせようとする人が多いのは何でだろう... Windowsでゲーム作っている人にとって、このスレが無かったら ゲ製作技術板自体がほとんど意味をなさないような気がするんだけど。 厨な質問も多いけれど、それなりに役に立ってるスレだと思うし。 「○○なゲームを作ってくれ」みたいなアフォなスレよりは「ゲ製作技術」してると思うんだけど。 ひょっとして、厨な質問を無視された厨な人々の私怨なの?
Direct Xが使えない人間の嫉妬ではないかと 勝手に脳内妄想 正直漏れもオブジェクト思考が理解できなかったとき 心の中に嫉妬という感情が芽生えたことを覚えている まあ、漏れはその嫉妬をうまく利用して必死に勉強したがな 嫉妬を覚えた時点で「荒らしに走るか」「反面的努力を行うか」 そこに人生の大きな分かれ道があると思うぞ
うーん、昔ならいざしらず、最近のDirectXはエラく簡単になってるから、 使えないというのが正直分からん。 DX1とか2とか3とか、あのあたりで挫折するのは仕方ないと思うが それ以降全く触ってないのかなあ?
763 :
名前は開発中のものです。 :02/11/25 21:16 ID:jXbPw95p
DirectXAudio使ってMIDIをならしているのですが、MediaPlayerで聞くような 音よりも、すごく響いてぼんやりとしたようになってしまいます。 変なエフェクトがかかっているようなのですが、これってどうやって直すのですか?
あぼーん
765 :
◆b3549jSUig :02/11/25 21:49 ID:7Jzx6Qd/
>>759 あ〜あ、
>>761 を怒らせちゃったよ
世の中にはプログラミングに適性の無い人もいるでしょ
パソコンですら使えない(注:使いこなすじゃないよ)人もいるんだから
プログラムはなおさら、仕方が無いよ
これって勉強とかスポーツにも当てはまるでしょ
プログラムが出来る人たちが「使えない理由がわからない」って言う理由は"わかる"けどね
あぼーん
>>760 デフォルトパスを指定するとリバーブか何かのエフェクトがくっついていたような
記憶に無いのであいまいでスマソ
766 名前:名前は開発中のものです。[sage] 投稿日:02/11/25 21:51 ID:rjDKlzGr
>>759 あ〜あ、
>>761 を怒らせちゃったよ
761 名前:名前は開発中のものです。[sage] 投稿日:02/11/25 18:52 ID:rjDKlzGr
rjDKlzGr !?
(・∀・)ジサクジエーン!!!
ジサクジエーン(・∀・)!!!
おもわぬところで強制ID効果が!!!!!!
あぼーん
771 :
763 :02/11/25 22:21 ID:rjDKlzGr
>>766 763ですが、どこらへんがジサクジエン?
>>761 のIDはXfGdcqYmだ
漏れはrjDKlzGrだな
で、
>761 名前:名前は開発中のものです。[sage] 投稿日:02/11/25 18:52 ID:rjDKlzGr
なんていう捏造書き込みをするんですか?
わけわからん・・・
772 :
742 :02/11/25 22:23 ID:5L7kQxzm
遅れましたが、レスどうもです。
>>755 やっぱりFVFから割り出すしか方法ないんですねぇ。
一応いま簡単な奴を作成中です。
>>759 後ろから求めるとはちと思いつきませんでした。
また追加で質問になってしまうのですが、
ID3DXMesh::LockVertexBuffer使う場合、読み書き出来るようにするには、
D3DLOCK_DISCARDとD3DLOCK_READONLYで別々にロックしてやる
必要があるんですかね?
ついでに、メッシュにストリーム形式で格納は出来ないですよね?
773 :
763 :02/11/25 22:28 ID:rjDKlzGr
ああ、あと、758=763だぞ。これをジサクジエンと言っているのか?
>>758 では終了させたがっている人に対してやめたほうがよいと警告した
>>763 では
>>759 の書き込みに対して中には挫折する人もいると
>>758 の書き込みの補助をした
で、これのどこがジサクジエン?口調が変わっているからか?
話の流れからして同一人物であることは明白だろうに
「ネタにマジレスカコワルイ」という言葉があるが
「ネタと勘違いしてマジレス」は二重にカコワルイな
ああ、無駄にスレが消費されていく
あぼーん
あぼーん
rjDKlzGrがレス番号を食い違って書いてる様子を見てて気付いたんだが 2ちゃんねるブラウザを使ってるだろ。たぶん。datを取得しなおすか IEでこのスレを開きなおしてみることを勧める。
一輪車の挙動を考えた時、トルクから出た角速度を使って 速度 = 角速度 * 車輪の半径 となるのは判った。この時って一切滑ってないわけだから 最大静止摩擦力の範囲に収まっているって事でOK? ホイールスピンはこの最大静止摩擦力を超えるって事ですか? あと、転がり抵抗ってなんですか?v=ω*rに影響するの?
>777 ホイールスピンは知らんが、転がり摩擦はそのなのとおり転がるときの摩擦。 同じ物体でも、回転させずに引きずっていく場合と転がす場合では、摩擦係数 が違ってくるから。
ageたヤツが責任もってAAの削除依頼出せよ
>>778 回答どうも。
車輪が回転している場合は転がり摩擦はあるわけですよね?
その摩擦はいったいどこに影響するんでしょうか。
v=ω*rで移動する車輪の場合、速度と角速度のどっちかですか?
もしかして車輪を回すトルク自体の抵抗となるんでしょうか。
>780 摩擦は移動方向の逆向きに作用する力。 車輪だと、力は摩擦とトルクで、それが速度に対して影響を与えるっつー 形やね。運動方程式は覚えてますか? m * dF/dt = v(t) 左辺の F は、進行方向に作用するトルク - 摩擦、右辺の v(t) は車輪の回転 速度。。摩擦を上回るトルクを与えれば加速するし、与えなければ減速する。 > 速度と角速度のどっちかですか? 速度と各速度は独立変数じゃないから、どっち使っても変わらんよ。上の運動 方程式で v(t) = rω(t) を代入すれば、力と各速度の関係に書き直せる。
763最強だな
>>781 うぉ。細かい解説どうもです。
やはり摩擦力はトルクに影響を与えるんですか。
なんとなぁーく感覚が掴めてきたので明日じっくり考えてみます。
最終的にはホイールスピンを起こして路面との摩擦を減らし
ドリフトの挙動まで把握したい。
784 :
763 :02/11/26 01:53 ID:XupqR/Si
なんか騙られてますねぇ。
785 :
763 :02/11/26 01:54 ID:XupqR/Si
あぅ。ID変わってる(w
786 :
名前は開発中のものです。 :02/11/26 06:01 ID:FTrzOORu
ここはAA荒らしが荒らさないスレです。 ここでは普通にカキコ
あぼーん
良スレは沈んでれば荒らされないが浮上すれば荒らされる。 上げて書いたFTrzOORuは責任もって終了AAの削除依頼を提出しておけよ。
789 :
名前は開発中のものです。 :02/11/26 12:49 ID:jeU7QeOq
DirectXの勉強しようと思ってるんですが ”ベクトル”って何ですか?
方向と大きさを持った量
791 :
名前は開発中のものです。 :02/11/26 13:56 ID:h+lnDE+R
あぼーん
793 :
789 :02/11/26 22:58 ID:XVB24ryt
794 :
名前は開発中のものです。 :02/11/27 00:51 ID:g6YR2uD3
DirectXって視錐台カリングは自動でやってくれてるんですか?
あぼーん
796 :
名前は開発中のものです。 :02/11/27 01:00 ID:rZX7hQlI
表示に関しては自動でやってくれるけど、
他の点ではしてくれないよ。
>>794
>>794 ヘルプのレンダリングパイプラインのところを嫁
あぼーん
799 :
794 :02/11/27 01:52 ID:g6YR2uD3
>>796 >>797 産休です。
いろいろ調べたら、メッシュ単位でのクリッピングは
自動でやってなさそう・・・
メッシュ単位のクリッピングもしたほうが、やっぱり早くなりますよね?
外部音源を買ったのですが、DirectXAudioでは鳴らせませんでした。 ちゃんと外部音源から鳴っているゲームもあるので、できるようでは あるのですが、どうすればいいのですか? キーワードだけでもいいのでお願いします。
あぼーん
>>799 あと不透明のものは手前から描いていくとはやい
>ログを管理してる人の話だと、 >これらの「終了」書き込みは全て1人の手によるものらしい。 >まぁ少し安心したかな。 > >ログから身元を調べて晒しに行くということなんでちと期待。 ログ管理されてたんだね。 でもどうせ串刺してスクリプトとかで自動で攻撃してるんではないのか?
あぼーん
>>803 うッそー?マジで?
今まで知らんかった…。
Zバッファを使っている以上
RenderStateの変更が少ない描画が早いのかと思っていたよ。
>>807 不透明なものの描画順を変更するからといって、RenderStateの変更を
する必要があるのか?あるのなら、どういう場合に必要なのか、教えてくれ。
煽りじゃなく、マジで。
809 :
名前は開発中のものです。 :02/11/28 13:13 ID:FFeoLfD+
>>807 少し頭使おうよ。Zテストでピクセルが書き込まれなきゃ その分の処理が無いじゃん。早いのは当たり前
810 :
名前は開発中のものです。 :02/11/28 14:14 ID:VxXaZwV7
あぼーん
812 :
名前は開発中のものです。 :02/11/28 15:29 ID:FFeoLfD+
各スレで終了終了と騒いでる奴何者なの? 入社試験に落ちて逆切れか?
>>812 禿同。不快極まりない。
なぜヤシらは終了終了と騒ぐのか?
あぼーん
ゲームを作りたくなりゲ製板で「ゲーム作りたいんですけど、どうすればいいですか」と 聞いてみるも住人から「氏ね」「終了」等心無いレスをされてしまった主人公。 「ちくしょう、こいつらいつか見返してやる」と涙ながらに復讐を誓った彼は、 数日後アスキーアートとコピー&ペーストを覚えこの板に帰ってきたのだった…
あぼーん
あぼーん
819 :
名前は開発中のものです。 :02/11/28 21:19 ID:FFeoLfD+
終了厨のIP記録お願いして置きました
しかし、比較的良スレと呼ばれるスレには終了AAは 余り張られなかった事からも板自体を良スレのみに したかった人らがダメスレに終了AAを張っていたんだと思う。 そう考えるとこのスレに終了AA張った奴らが沢山いるな。 良スレのみを保守しようとした態度が厨房を刺激したと思われ。
あぼーん
823 :
名前は開発中のものです。 :02/11/29 00:33 ID:drcnh3UD
終了厨の方々、あなたたちの人生自体が終了したのか 分かりませんが逆切れはいけません。 懲戒
〈 ̄ヽ ,、____| |____,、 〈 _________ ヽ, | | | | ヽ' 〈^ー―――^ 〉 |/ ,、二二二二二_、 〈__ _ __〉 | | | | / / | | |\ ___/ / | |___| ヽ \__/ ヽ_____)
>>823 かまうなっちゅーに
調子乗るから
完全無視でいかんと
あぼーん
デバッグモードだとちゃんとビルドできて実行もできるのに、 それをひとまとめのファイルにしようと思いリリースで ビルドしようとしたら error LNK2001: 外部シンボル "_c_dfDIJoystick2" は未解決です fatal error LNK1120: 外部参照 10 が未解決です。 などのようなメッセージがいくつか出てしまって 実行できないのですが、どうすれば解決できるでしょうか?
828 :
名前は開発中のものです。 :02/11/29 01:19 ID:RaEp9+7G
ひとまとめにすると、リリースの関連がわからないけど。 エラーの内容は関数が定義されてねぇよってことだYO
829 :
807 :02/11/29 01:25 ID:09jTqZK9
>>808 そう意味じゃなくてさ。
不透明、透明、アルファ付き、等々の全ての描画でさ、
RenderStateの変更が少ない方が処理が早いと思っていたって話。
不透明を手前からって一元的な考えじゃなくて、
RenderStateが同じ物を処理、そいでRenderState変更ってやってるって事。
不透明を手前からってだけじゃ、
RenderStateを変更しながら手前から処理ってありえるんじゃね?って思ってさ。
>>809 そうか?原理的にはそうだが、Zバッファの書き込みピクセルが減った程度で
早いなんて感じないけどね?
それより、遮断カリング処理判定を先にやって、書き込み自体をやらないって
方が断然早いとおもいます。
>>828 さん、どうもです。
私がやりたいのは、とりあえずゲームが完成したので1ファイルにして
公開しようかなと思ったのですが、その場合はリリースで最適化して
ファイル形式にすればいいと聞いたのです。
デバッグの時は大丈夫でリリースの時はだめなんてことがあるのでしょうか?
>>830 設定がデバッグ/リリースで違うんだろ。
確認してみ。
832 :
名前は開発中のものです。 :02/11/29 01:43 ID:HyNmdZhi
リリースにしてもファイルは一つにはならないぞ。 リソースのことと違うのかな。 とりあえずそれはおいておいて。 リリースのときのプロジェクトにファイルはきちんとリンクされてる? デバックのときにはじめになにやら設定しなかったかな? それとおなじことをやればいいんだけど
>Zバッファの書き込みピクセルが減った程度で >早いなんて感じないけどね? 感じるとか感じないとかそういうレベルの話?
どうも、830です。 最初にインクルードファイルのフォルダ設定とかはしましたが、それはデバッグの時 にやったもので、リリースのときはいっさいいじっていないので確認してみます。 ちなみに、1ファイルにまとめるにはどうすればいいのでしょうか?
830です。お騒がせしました。 リリースのリンク部分をデバッグ時と同じようにしたらあっさりできました。 しかし、なぜだか、フル画面表示になってしまいました。
836 :
807 :02/11/29 02:29 ID:09jTqZK9
>>833 それ以前でないの?
そもそもZバッファの書き込み処理が重いんじゃなくて
描画処理が重いんじゃないんでしょうか?
ZソートしてZバッファですか?
837 :
名前は開発中のものです。 :02/11/29 02:34 ID:IqhnQ+v1
ふる?そりゃライブラリなり作った人にきくよろし。 ちなみにファイルは一つにまとまるものなのか? リソースファイルとしてもつってことなの? すまん。よくしらん
>>834 もしかしてアプリで使う画像や音声のファイルを一つにまとめたいってことか?
なら自分でそういうプログラムを書くか、リソースに入れるしかない。
あぼーん
840 :
808 :02/11/29 10:13 ID:c8YtJb0o
>>807 いや、俺が言いたいのは「不透明なもので、RenderStateの変更が必要」な
ケースってどんなものかな?って事。もし「不透明描画用RenderState」で
一マトメにできるんなら、オブジェクト単位(決してポリゴン単位ではない。
それは無茶)でZソートして手前から描画って言うのはアリかな、と思うのさ。
>808の時は舌足らずで、伝わらなかったかもしれないけど。
連続スマソ。
>>835 アプリの初期化部分って、自分で作った?もし何かのを流用してるんなら
その中でデバッグビルドならウィンドウモード、リリースビルドならフルスクリーン
としているものは、少なくないと思う。「DEBUG」でソースファイルを検索して
ミソ(もちろん「」は外してな)。正規表現を知ってるなら#ifも使うと楽(知らない
なら、使わんほうがいい)。
>>836 いやだからZテストの結果、
Zバッファへの書き込みと描画処理がなくなるから
軽くなるって話なんじゃない?
>>840 >いや、俺が言いたいのは「不透明なもので、RenderStateの変更が必要」な
>ケースってどんなものかな?って事。もし「不透明描画用RenderState」で
頂点カラーの有無や頂点ブレンディング関係の設定など
必要なケースって結構あると思うんですけど。
逆に不透明ものが全部同じケースのほうが少ないような。
>>807 >>829 昨日から立ち聞きしてるのだが、
RenderStateの切り替えの話と、Z-Bufferの前から書く話との関連性がやっぱりよーわからん。
ただ、RenderStateの切り替えのコストが問題になったことは、俺は無い。
マテリアル単位でバンプマップ処理や、半透明処理を多用しても、
大抵はピクセルレートやポリゴン数が先に問題になる。
無駄に使いさえしなければ、RenderStateのコストはそう気にすることは無いんじゃないかな?
>遮断カリング処理判定を先にやって、書き込み自体をやらないって
方が断然早いとおもいます
表裏カリングは、ZTestの前に行われるハズ。
視錐台カリングは自分でやらないとダメだけど。
基本的なことは、まず本買って調べろ。
↑スマン、誤爆
847 :
名前は開発中のものです。 :02/11/29 23:59 ID:J1KJ5bfs
まことに基本的な事で質問しにくいのですが、お願いします。 HPで調べて理解した部分で下のコードまで作ったのですが 最後にオフスクリーンからプライマリサーフェイスへの転送の方法が解りませんでした 住んでいる場所が田舎でDirectXの参考書が簡単手に入れることができません DirectX挑戦2日目の私に救いの手をお願いできませんでしょうか 環境はVB6.0、DirectX7.0です
848 :
847 :02/11/30 00:04 ID:80Sipzv/
849 :
名前は開発中のものです。 :02/11/30 00:08 ID:Q8ferC8Y
D3DXMatrixRotationYawPitchRoll( &matRot, (Y軸回転量), (X軸回転量), (Z軸回転量) ); でメッシュの回転行列をつくってるんでつが、X軸とZ軸はモデル座標中心で 回転するのに、Y軸はワールド座標のY軸中心の回転になってしまいますた。 ナゼそうなるかサッパリわからんのですが、誰かわかるかたいらっしゃいません?
_n ( l _、_ \ \ ( <_,` ) ヽ___ ̄ ̄ ) GOOD END!! / /
851 :
まっつん :02/11/30 00:16 ID:Y4GSFPVJ
行列をかける順序を間違えてはいけませんよ。
852 :
まっつん :02/11/30 00:16 ID:Y4GSFPVJ
853 :
894 :02/11/30 00:23 ID:Q8ferC8Y
>>852 ワールド変換行列は
matWorld = matRot(回転行列) * matTrans(移動行列);
としてまつ。
D3DXMatrixRotationYawPitchRollのパラメーターも順番変えたり
したんでつが、そうすると他の軸がワールド中心の回転したりと。。。
854 :
808 :02/11/30 00:24 ID:AYxkaELv
>頂点カラーの有無や頂点ブレンディング関係の設定など
>必要なケースって結構あると思うんですけど。
なるほど。確かにそうかな、と思う。ただ、その場合は
どうせRenderStateを切り替えることになるんだよね?だったら
プログラムの流れとして
・オブジェクトをzソートしておく
・各RenderStateブロックの描画処理の中で、ソートした順番で描画
とすれば良いだけな気がするけど、どうだろ。
>>842 多分、そのことについては807は分かってると思う。
>>844 遮蔽カリングですか。やっぱ仕事で3Dやる人は違うって感じです。
ただ、ダンジョンみたいな場所なら私程度でも何となく効果的な
方法が思いつけそうなのですが、オープンフィールドで出てくる
オブジェクトが人間みたいな不定形のモノ主体だと、お手上げです。
差し支えなければ、こういうケースではどうしたら良いか、ヒント
だけでも教えて頂けませんでしょうか?
========大感動!愛と涙と友情の最終レス======== 〜未だかつてこれほどまでに感動的な 最終レスがあっただろうか?〜 ★このスレッドを読んだ人達の声★ 「何気なく開いたこのスレッドとの出会いから、 新しい自分の可能性を信じようと思った。」(27歳、フリーター、女) 「感動した!勇気が湧いてきた!人生観が変わった! 自分にも何かやれそうな気がした!」(24歳、会社員、男) 「落ち込んでる時にこのスレッドを見つけ、 期待しないで読んだが、読んで涙が出た。」(21歳、学生、女) これほどまでにみなさんに愛されてきたこのスレッドですが、 残念ながら、このレスで終了となってしまいました。 でも悲しまないでください。 このスレッドはいつまでも あなたの心の中で生き続けているのですから…
857 :
まっつん :02/11/30 05:22 ID:kKZVL/Eb
>>853 もう解決した?そのメッシュ回転させる前に別のメッシュを移動させたりしてない? matWorld = matRot(回転行列) * matTrans(移動行列); のmatRotとmatTransの生成過程のコードとmatWorldに代入時のコード貼ってくれない。
>>853 オイラー角なんだから初めの軸での回転がその後の軸の回転に影響を与えるんだよ。
常にローカル(ワールド)で回転させたいんなら、現在の状態に対して常に左から(右から)回転行列をかける必要がある。
859 :
名前は開発中のものです。 :02/11/30 10:29 ID:1dIcB0cR
全然別の話題ですけど。 行列からオイラー角取り出すのって無理ですか? なんか色々検索すると一応でてくるのですができていないものばかりでした。 だれか出来た人いらっしゃったらお願いします。
その行列が回転を表してるんなら取り出せるんでないの?
ひたすら方程式解けばでるんじゃない?解は一意的には決まらないだろうけど。
/ ヽ / __A___|〆 ヽ(____> ノ从ハ)从〉 シュ シュ クノ ´∀`§へつ シュウリョウ〜♪ √ ヽ@_X .| /│ ヽ丿 )) / \ |つ / ヽ__ノ く │ ヾ=====┘ し し 〜完〜
┌──┐ │終..了| └┬─┘ │∩∩ d(゚ー゚*) 。 (___')′ ~ ~
865 :
853 :02/11/30 16:48 ID:Q8ferC8Y
>>857 いろいろありがとうございました。解決しましたです。
858の言ってる通りにやってみたら、ウマク出来ました。
〈 ̄ヽ ,、____| |____,、 〈 _________ ヽ, | | | | ヽ' 〈^ー―――^ 〉 |/ ,、二二二二二_、 〈__ _ __〉 | | | | / / | | |\ ___/ / | |___| ヽ \__/ ヽ_____)
867 :
名前は開発中のものです。 :02/11/30 17:15 ID:sFiXZtWB
863さんありがとうございます。 試してみます ちょっと確認するまで時間がいるのでレスがおくれます。
D3DXAssembleShaderに渡すソースの中にコメント以外に2バイト文字あると ASSERTするね
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| | ここでおしまい | |________| ∧∧ || ( ゚д゚) || / づΦ
870 :
まっつん :02/11/30 20:30 ID:kKZVL/Eb
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| | 次の質問どうぞ。 | |________| ∧∧ || ( ゚д゚) || / づΦ
871 :
終了厨 :02/11/30 21:30 ID:fYlqjj5o
よーし、今日も「終了」カキコやりまくっちゃうぞー! ハァハァ…どこに書き込もうかなー …ヘ…ヘヘヘ…フフフ… あ、上がってるこのスレにしちゃうぞー (コピペ) よーし、「書き込む」っと。 わーい書けた書けた!ギャハハハァァァ…フフフゥゥ…へへへ ドピュドピュ(射精) アハハハハァ、ウフフウほほ。 あ、また上がってやがるぅ。また書いちゃおー
あぼーん
DirectX9今月には出なかったか…
結局来年になるのかねえ...
あぼーん
DirectXって次々新しいの出してた気がするのにな
877 :
名前は開発中のものです。 :02/11/30 22:12 ID:xT8ZrrPS
どっちにしてもDirectX9の研究アンドライブラリ要員にまわされるのは 嫌だなぁ。毎回毎回自社で使ってるモデリングソフトと使える機能との連携とプラグイン制作なんてする必要ないよ どうせサポートしてるグラボなんてでまわってないって
あぼーん
879 :
名前は開発中のものです。 :02/11/30 22:59 ID:dp72WDAO
266 :加藤健祐 ◆ozOtJW9BFA :02/10/19 19:44 ID:???
二回目の評価依頼になります
HP名:小説群
URL:
http://www3.omn.ne.jp/~ken3a7up/ 特に見難い点、扱いにくさ、不快な所などご指摘頂けると幸いです
私が気になっているページは過去の連載の隔離都市なのですが、悪い点は
厳しくお願いします
880 :
名前は開発中のものです。 :02/12/01 00:37 ID:VtLaI+Qp
フィルタリングでアンチエイリアスかけると、画面がきれいになりますが、 これって、等倍の描画でもきれいになるのですが? 自分のところではどうもそうは見えないのですが。
あぼーん
C++6からVC++.NETに乗り換えたのですが ライブラリのリンクの仕方が変更されていてとまどってます。 LIBフォルダを参照し、一番上に設定すればそれでいいのでしょうか? C++6みたいにファイルを個別に入力しなくてよろしいのでしょうか?
オイラもVS.NETに乗り換えたばっかなんだけど、 リンカ>入力>追加する依存関係 に今までと同じように追加するんだと思ってたんだけどちがうのか?
884 :
_ :02/12/02 19:11 ID:HKr9VeVM
.NET持ってないけど #pragma comment(lib,"d3d8.lib") #pragma comment(lib,"d3dx8.lib") : : みたいに、どっかのヘッダにでも書き並べてはいけないの…? VC++6.0だと↑のようにかいて、リンクしてるけど。
うむ、こちらのほうが楽だったりするな。
886 :
名前は開発中のものです。 :02/12/03 18:39 ID:ywQvhTIy
VCとDirectXでシューティングゲーム作ってるんですけど、PrintScreenで画面を キャプチャーしようとすると、うまく撮れません。どうしたらいいですか・・・。教えてください。
あぼーん
>>886 どう上手くいかないのかわからないんだが。
多分パレットを変更して使っているんだろうが、システムパレットの分は変色するぞ。
889 :
886 :02/12/03 22:19 ID:qfYFpOCO
なんか黒と白のエンボスがかかったようにバグって撮れます。 DirectX対応のキャプチャーソフト使ってもダメでした。
あぼーん
3番目と4番目は同じような気もするが。 1と2では無理なやつもあるしめんどうなんで3だな。
>>892 レスどうもです。
とりあえず3番目で一回やってみます。
3番目と4番目を分けたのは、検索してみて3番目が比較的多いような気がしたからです。
つまったらまたきます。
テクスチャシェーダーのtexm3x3pad、texm3x3texが日本語ヘルプだけでは わけ分からんかった…
895 :
名前は開発中のものです。 :02/12/04 23:52 ID:wmKD3z3+
>>886 コンパネのDDrawのEnablePrintScreenとかは関係ない?
あぼーん
897 :
名前は開発中のものです。 :02/12/05 01:09 ID:5Lopocb3
じみ〜な DirectShow のサンプルのことなんだけど Async でどうして CMemStream が必要で どうやって使われているのか(呼ばれるのか?)さっぱり分かりません ソースフィルタを作る条件って分かる方いますか?
あぼーん
899 :
名前は開発中のものです。 :02/12/05 14:22 ID:irwCCwIY
このスッドレは自分で考えが出来ない低級プログラマしかおらず 日本の恥じですので終了しました
わかりやすい煽りっすね。おつかれさまです。
あ、900げと・・・あんまりうれしくない・・・
>>899 はいはい、わかったからお前はもうここに何も書くな
あぼーん
やっぱ荒らしさん、ここで煽られて・・・って事だったのか。 最近は割とやさしめになったと思ってたんだがな。
>>886 バックバッファLockしてコピってBMP化じゃダメ?
俺はそーしてる。
ちなみに、フルスクリーン時のPrintScreenは効かないナリよ。
WindowModeなら出来るはず。
906 :
886 :02/12/05 20:34 ID:jeMNlb7j
>>905 なるほどそんな手が・・・・。
ところでコンパネにDirectXの項目がないんですが・・・
その場合はどこからEnablePrintScreenを設定したらいいのでしょうか。
CloneMeshFVFを使って、xファイルから読み込んだメッシュを struct CUSTOMVERTEX { D3DXVECTOR3 position; D3DXVECTOR3 normal; DWORD color; FLOAT tu0, tv0; }; という頂点フォーマットに変換したのですが、 colorの値が0になっており頂点の色が真っ黒になってしまいます。 どういった原因が考えられるのでしょうか?
頂点カラーではなくマテリアルで色設定がされているというオチでは?
元のメッシュにカラーデータが無いとか?
あれれ、xファイルって頂点色は持てないんでしたっけ
GetFVF汁
912 :
名前は開発中のものです。 :02/12/06 03:21 ID:hDFWlLMQ
>>906 DirectX8じゃないの?(8だったら普通にあると思ってた)
環境は?
あげちゃった… スマソ
あぼーん
>>906 SDKをインスコするか、他のマシンからもってくる
DirectXGraphicsで、スプライトを用いて描画を行っているのですが、 ある画像を描画しようとすると、元の画像よりぼやけた感じで描画されます。 キャプチャして詳しくみてみたところ、例えば青の背景に赤の線を描くと、 境界の部分が紫がかっているところがありあす。 他のアプリケーションでは、きちんと境界がはっきりと表示されているのも あるので、そうやるやり方はあるのですね。 何が原因なのでしょうか。 お願いします。
DirectMusic (DirectX Audio8) で効果音を鳴らしているのですが、 あるタイミングで同時に複数の効果音が鳴ると、CPUへの負荷が異常に 大きくなって、全体のパフォーマンスに影響が出てしまいます。 こういったときどのような方法で負荷を軽減すると良いのでしょうか。 効果音データのサンプリングレートを落とすことの他に何か方法が ありましたら、御教授ください。
(´∀` )オマエモナー
>>918 あんた態度わるいね
ま、2chだからいいんだけどね
でも、そんなに嫌そうに答えるくらいならレスしなきゃいいのに
ヘルプ嫁 つってもプログラムはじめて半年とか1年ぐらいじゃ
あのヘルプは酷なやつもいるぞ
と言ってみるテスト
確かにあのヘルプはちょっと酷い しかも英語版より少し削ってあるし
でも0.5ずらすと教えてくれてるから親切だと思うぞ。
DirectX8のヘルプは参考書籍並みに丁寧だと思うぞ 読みにくいといっている奴はチュートリアルすら目を通さずに そう思い込んでいるんじゃないか? あれで読みにくいといったら何が読みやすいというんだ?
技術書やヘルプはたいていは文章の難易度が高い それを読める人もいれば読めない人もいる ただそれだけだろうに 自分が読めるからなどと自分を基準にされても困る みんなが読めるからなどと平均を基準にされても困る 人の数だけ基準はある ヘルプ読まずに質問するのは良くない でも、ヘルプを読んでも理解できずに質問するのは悪いのか ヘルプのどこを読めばいいのかわからずに質問するのはわるいのか わからなければしらべてみる 調べてわからなければ質問する それでいいとは思わないか?
DX9は日本語ヘルプないぽ
>924 ごもっともなのだが、0.5の話は何度も出てきてるからな。現スレでも101とか。 918はヒントまで教えてくれてるし、かなり親切だと思うぞ。 こんなんで傷つかれてもなあ。
ピクセルシェーダに渡す値は キューブテクスチャ・ボリュームテクスチャに使用するに問わず、 0〜1に収めなきゃいけないんですか?
普通に描画したら、左と、上がぼやけてしまいました。 そこで、x、yとも0.5ずつ減らして描画してみたら、下と、右がぼやけました。 どういうことですか?
ボケさせずに640x480のテクスチャを張りたければ フィルタ全部切って dst{0.5,0.5,639.5,479.5} src{0,0,640,480} に汁!!
>>929 >dst{0.5,0.5,639.5,479.5}
>src{0,0,640,480}
dst{-0.5,-0.5,639.5,479.5}
src{0,0,640,480}
じゃなかったっけ?
>>931 だから、それではできなかったんだってば。
一方を補正すると、もう一方がぼやける。そんな感じ。
>>932 D3DTSS_ADDRESSUとD3DTSS_ADDRESSVをD3DTADDRESS_CLAMPにしたら?
>>933 そういうのではないです。
例えば日の丸の画像を貼り付けたとしたら、丸の右と下の部分だけ
ピンクっぽくなってしまうということ。
もしRADEONなら、
>>628 の方法を試してみたら?
>>935 どうも。
でもRADEONではないです。
ノートのへっぽこVRAMです。
×ノートのへっぽこVRAMです ○ノートのへっぽこVGAです
ひとつ確認しました。 その「ぼやける」現象がおこるのは、スプライトのカラーキーで 透過させた部分との境目だけです。 ビットマップを全部カラーキー以外で描画したら、ぼやけません。
>>877 1年後見て製作すると、どうしても最新仕様にならへん?
最新技術に触れながら給料もらえるならいい身分ジャン、裏山C。
#国内において、最新仕様の必要性があるソフトを作ってるメーカーは数えるほどしかない気もするが
一般公開したいゲームにプログラマブルシェーダ使うのっていつ頃ぐらいからが妥当かな
ノートのヘッポコVGAってことはそれ自体がバグってる可能性がある リファレンスデバイス(ソフトウェアレンダラ)で試してみたら?
>>932 伝わらなかったか、残念だ
つまりだ、疑う場所を間違えてないか?ということ
もし、君の環境で正常に動くようになったとしてもだ、
別の環境だと動かなくなる可能性が大きい
>>859 俺はもう使ってるよ。
来年春以降に出る予定の市販アクションRPG
頂点シェーダは全ての描画で使用(v1.1)(なければソフトウェア)
ピクセルシェーダは一部だけ。(なければ普通に描画)
DotProduct3バンプはCG屋さんが対応してくれなかったため
無念だが使われなかったし、弱小ソフトハウスはつらいね。
頂点シェーダーは、ハードウェア構成によってはCPUによる エミュレーションのほうがパフォーマンスがいい、って話を どっかで見たけど、本当かな?もし本当なら、ユーザーがどちらを 使いたいか、選べるようにしたほうが良さそうなんだけど。 俺的には、ひたすらポリゴン描画だけをするソフトならともかく、 ある程度ゲーム的な処理が入っているなら、CPUとGPUの並列のほうが パフォーマンスはイイ、と思うんだけど……。
ある2D画像を貼るのですが、そのすぐ斜め下に影を落としたいのです。 元の画像と、影の画像を2枚用意して、影をアルファブレンドで描いた 後に、元の画像を張る方法しか思いつかないのですが、 普通はどうやるんですか?
影込みの画像にすればいいじゃん。
geforce3のピクセルシェーダのバージョンって1.1ですか?
>>948 1.3とか書いてあったところがあったんで
自分の環境だけ1,1しか認識されていないのかと思い聞いてみました
さんくすです。
>>944 エミュレーションの方が有利なケースって思い浮かばないな。
CPU使うとVRAM<->CPUの重い転送が大量に発生するし、
ハードウェアシェーダは内積とかも一発で計算するしで、
エミュレーションの方が速くなることなんてそうそう無いと思うけど。
> CPU使うとVRAM<->CPU 細かいけど CPU → VRAM だよねえ
次スレ行っとく?
953 :
次スレ用 :02/12/09 07:09 ID:kgKHq6YR
画面モード切り替え時のRestoreがうまくいかない。 リソース作成するときにD3DPOOL_MANAGEDで作っておけば d3dd8->Reset(XXX) しても自動的に復旧してくれるんじゃないの?
955 :
_ :02/12/09 21:20 ID:PLNCjsi5
>>954 それ、なぜかうまくいかなかったので、
DirectX7までと同じように、自前にしてる…。
なぜかZバッファを使って描画できません。 本に書いてあった通りに d3dpp.EnableAutoDepthStencil = TRUE; d3dpp.AutoDepthStencilFormat = D3DFMT_D16; lpD3DDevice->SetRenderState( D3DRS_ZENABLE,D3DZB_TRUE ); lpD3DDevice->SetRenderState( D3DRS_ZWRITEENABLE,TRUE ); を設定したのだけど、奥にあるはずの物が手前に描画されてしまいます。 何が問題なのでしょうか?
人生に疲れたのですが、どうしたらよいでしょうか。
JIN☆SAY!LUCK※ARRAY□YEAR? QUEUE#MORE%RUE&SIR!
>>956 >d3dpp.EnableAutoDepthStencil = TRUE;
>d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
>lpD3DDevice->SetRenderState( D3DRS_ZENABLE,D3DZB_TRUE );
>lpD3DDevice->SetRenderState( D3DRS_ZWRITEENABLE,TRUE );
少なくとも、そこは問題じゃない。
View Matrixの値はどうなってる。あと、Projection Matrix。
>奥にあるはずの物が手前に描画されてしまいます
本当に奥にあるのか確かめたか。
透視・投影変換後の頂点情報。レンダリング後のZバッファの値。
それと、SDK付属のサンプルプログラムがちゃんと動くかどうか
確認してみ。それが動くなら,それと自分のソースを比較してみ。
961 :
名前は開発中のものです。 :02/12/10 11:48 ID:Dd4Ue4un
>954 Resetかけるタイミングじゃないの? きちんとEndSceneやってからResetしてる?
. __ ‖ ~"ー 、,,_ | ‖ 終 了 ,> \ | / ‖ _,:-−'´ ‖/~ ヽ | / ‖ , )) ,、 ,、 /'ll__/ ヽ / ヽ__/ ヽ/ _‖ _ ヽ. ∧___∧ / / ´ ‖ー/ ` l ロ. / _ _ / ´ 、__, ` |. ‖∨ ,! || | l--l ` _l ∨ ヽ/ ̄)( ̄ ̄`"::::ノ (⌒ヽ, ..ヽノ , ( ヽ_ / /ll `'ー、....::ノ ∀\/ー- /`l ヽ ヽ、 ,ヽ:..:ノ ‖ '::::|⊃ iー- l (_〕i__ l : :::Y ‖ ::| |"|ー-,| |(
>>954 ただうまくいかないじゃ、何が悪いのかなんて分からないよ。
何がどううまくいかないのかくらいは説明してくれ。
当然Reset周りのメソッドの戻り値くらいは確認してるよな?
reset失敗で考えられることは まず、ID3DXFontは解放しとして作り直す必要があるみたい。 あと、解放しとかなくちゃいけないリソースの参照カウントが バグとかで1より大きくなっちゃってると Release一回で解放されないから当然失敗する。 オイラが思いつくのはそんくらい。機種依存とかはシラン
 ̄ ̄ ̄ ̄ ̄ ̄ ̄○ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ O 。 , ─ヽ ________ /,/\ヾ\ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ |__|__|__|_ __((´∀`\ )< というお話だったのサ |_|__|__|__ /ノへゝ/''' )ヽ \_________ ||__| | | \´-`) / 丿/ |_|_| 从.从从 | \__ ̄ ̄⊂|丿/ |__|| 从人人从. | /\__/::::::||| |_|_|///ヽヾ\ / ::::::::::::ゝ/|| ────────(~〜ヽ::::::::::::|/ = 完 =
967 :
名前は開発中のものです。 :02/12/10 20:13 ID:+aqFrdvS
1000取り合戦開始!
_、_ GOOD END!! ( ,_ノ` ) n  ̄ \ ( E) フ /ヽ ヽ_//
969 :
956 :02/12/10 22:49 ID:+WxK/gNH
>>960 ご指摘ありがとうございます。
Projection Matrixの引数がおかしかったのが原因でした。
引数の数が間違ってなかった為コンパイルエラーが出なかったので
気が付きませんでした。
970 :
名前は開発中のものです。 :02/12/11 02:19 ID:BMId8xPM
うるせーばか
___. ∩゛ ∧空∧ ((( ))) /\ /. ――┤. -=・=- -=・=- | | ∧ ∧{´ ◎ `}____( ´∀`)\ う \ ./(. = ,= | ∧∧ ∧_∧ | | ( ´ー`) ):::/´∀` ;:::: \ヽ(`Д´)ノ゛\ ま\ |||\┏┓/∫ (=゚ω゚)ノ~ ( ´Д`)// \ < .∧|∧ /::::::::::| .¶_¶. \い\ V/ ∧,,∧ ∬ 〜( x) / / ,一-、(´ー`) /:::::|::::::| (ΦдΦ)/~ \棒\ || ミ,,゚Д゚ノ,っ━~~ U U / /| / / ̄ l⊂ヽ \/|:::::::::|::::::| γ__ ∧w∧ 旦∬ 人 ミ ,,, ~,,,ノ .n THANK YOU 2ch ■■-っ ┌───────┐ \ ( ゚Д゚ )∩゛ ( ゚ー゚)と..ミ,,,/~),ヽ(凸)ノ~ and.. ´∀`/. | ● ● | ヽ ノ / ̄ ̄し'J\[Y] GOOD-BYE 2ch WORLD! /| .┌▽▽▽▽┐. |____|__||_| )) / ● ●、ヽ (. ┤ .| |. |□━□ ) (゚Д゚)? |Y Y \ またどこかで会おうね.. \. └△△△△┘. | J |)∧_∧ |.| | .▼ |∀゚) |\あ\ | ∀ ノ " , 、 ミ | \ /■\ _人 |∧∧∩゛∧_∧∩゛∧_∧ | \り.\ | - Å′ ゝ∀ く | ( ´∀`)___/( ゚Д゚.)'/ ( ´∀` )/ (・∀・ ),. |. \が\. | ). \ Λ_Λ \ ( O ) 冫、 U / ( / ⊂ ⊂.)ヽ(´ー`)ノ゛ \と.. ∧_∧/(´Д`;)<丶`∀´> |││ │ ` | | ∪ | | ( ( ( ( へ (゚д゚)〜⌒(゚ー゚*) (-_-) (・ω・` ) (_(__(__)(・∀・) ∪~∪ (_(__) (_(_) く ⊂⌒~⊃。Д。)⊃⊃⊃(∩∩)(∩ ∩)
972 :
名前は開発中のものです。 :02/12/21 00:08 ID:V1BQvNrd
>>972 (´゚c_,゚` ) プッ ランタイムでしょ
と思ったらキタ━━━(゚∀゚)━( ゚∀)━( ゚)━( )━( )━(゚ )━(∀゚ )━(゚∀゚)━!!!!!
埋め立て?
976 :
名前は開発中のものです。 :03/01/22 14:48 ID:LX57UHTP
∧ ∧ ( ̄ー ̄) (つ つ ( ヽノ し(_) Now Thread Stoping. ... 大変見苦しいスレでありました. スレストするまでお待ちください。。。ニヤリッ
埋め立てage
979 :
ネタ埋め開始 :03/03/05 12:48 ID:XvEtE9xR
DirectXSDKはDX10から有料になります
980 :
名前は開発中のものです。 :03/03/05 15:19 ID:Cqv2iV99
1000ゲトー\ \∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∧∧ ≡≡.\ / \〇ノゝ∩< 1000取り合戦、いくぞゴルァ!! (゚ー゚*) 、 ≡≡\ /三√ ゚Д゚) / \__________ O┬Oc )〜≡≡\/三/| ゚U゚|\ \オーーーーーーーッ!!/ (*)ι_/(*) ≡≡\ ∧∧∧∧∧――――――――――― ――――――――――< 予 合 千 > __〃 ヽ lv い、今だ1000ゲットォ!! < 感 戦 取 > ヽ\ .ノノノ)ヘ))〉ヽ' / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ .∧ ∧ =- <. !! の り >_!(0.)! (┃┃〈リ / < はわわー。1000げっとです〜 (゚Д゚;) ≡=- /∨∨∨∨∨\ Vレリ、" lフ/ ./ \ \________ ⊂┯⊂) ≡=- / 1000 ∧_∧\――――――――――― (ヽ\ ヽ ) ≡=- / ゲット ( ´Д` ) \今だ!1000ゲットォォォォ! し\J =- / しますた /, / \ ∧∧ ) ズザーーーーーッ (( ̄(◎) ≡=-/ (ぃ9 | \⊂(゚Д゚⊂⌒`つ≡≡≡(´ ;;;≡
981 :
名前は開発中のものです。 :03/03/05 16:17 ID:S/sGsJUb
DirectInput9はもう実装されていて、 ヘッダーファイル内でコメントアウトされているんですけど、 使ってもいいんですか?
983 :
名前は開発中のものです。 :03/03/05 21:35 ID:gDUsAhw4
ミ ミ ミ ミ ドドドスッ ミ ウォリャ! ∧∧ ._ _ _ ( ;,,)O..―─┴┴──────────┴┴──────────┴┴──┐ /; ; つ. 終 了 | 〜′ /´ └―─┬┬──────────┬┬──────────┬┬──┘ ∪ ∪ ││ _ε3 ││ _ε3 ││ _ε3
DirectPlayを作成する時、 CoCreateInstanceの第2引数にクレジットカード番号を入れないと COMを作成できないのですが、何に問題があるのでしょうか? 気になって夜トイレに行けません。 教えてください。
986 :
名前は開発中のものです。 :03/03/05 22:37 ID:PW2U/KPq
>>985 おいおい、何を言っているんだ。
クレジットカードの番号だけじゃ動かないぞ。
暗証番号もきちんと入れなきゃ駄目だ。
987 :
名前は開発中のものです。 :03/03/05 22:49 ID:Kfzy4c/0
DX1000
988 :
988 :03/03/05 23:18 ID:hKAo4Ylv
気が付いたら次スレが1000レス突破&dat落ちしてるし。
989 :
名前は開発中のものです。 :03/03/05 23:37 ID:6Q0+QGIR
>>986 なるほど! 暗証番号を4Byteにパックしていれたら正常に動作しますた
>>987 それはDX1000bって事で、DirectX8について言っておられるのでつか?
あとDX9の新機能のディスプレイメントマップとかわかりません。
Nパッチっていいますが、今のパッチバージョンは何ですか?
最新パッチを当てようにもMSのDLセンターを探しても見つかりません。
まだ公開されてないのかな?
DirectXXXという年齢制限バージョンが欲しいのですが、
米国のコンビニには売ってないようなので、やっぱり専門店に行かないとダメですか?
なんでもかなりハードな部分へのアクセスがモロで見れるらしいのですが……。
DiningX9LDKはリビング多すぎませんか?
992 :
名前は開発中のものです。 :03/03/06 08:00 ID:pLCzVENG
993 :
名前は開発中のものです。 :03/03/06 09:12 ID:cCGCd5Zk
/ /ー-, ー────-, / / /ヽ、/ __/ `y' /ヽ、 | ∠_、 / ヽ | | `ヽ、 | ,/ | ヽ | | `ヽ、 、|
995 :
名前は開発中のものです。 :03/03/06 19:02 ID:pLCzVENG
DirectXと言う割にはアクセスが間接すぎやしませんか?
996 :
名前は開発中のものです。 :03/03/06 19:15 ID:cCGCd5Zk
997 :
はよこのスレの息の根止めようぜ :03/03/06 22:53 ID:pLCzVENG
・DirectX10が出る頃でもDX8世代VGAユーザーがほとんど ・DirectX10ではDirectInput9、DirectSound9になってる ・DirectX10SDKは今年中に出る
998 :
名前は開発中のものです。 :03/03/06 22:57 ID:baKFXTTT
Direct1000!
ふう
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。