くだすれDirectX(超 ..
[2ch|▼Menu]
554:デフォルトの名無しさん
08/06/05 18:39:53
>>552
OS再いんすとーる

555:デフォルトの名無しさん
08/06/06 17:14:34
URLリンク(www.nicovideo.jp)

556:デフォルトの名無しさん
08/06/08 06:42:38
>>552
素直に新しいパソコン買った方が早い

557:デフォルトの名無しさん
08/06/09 19:57:50
ジョイスティックのキーストロークを送信できるAPIってありますか?

558:デフォルトの名無しさん
08/06/09 20:02:41
BOTを作りたいならWin32APIスレでいじめられてくるといいよ

559:デフォルトの名無しさん
08/06/09 22:23:46
DX8.1でサーフェスの内容をテクスチャにCopyRectsしようとしています。
しかし、どうしても出来ません。設定内容になにか追加する物がありますでしょうか。
FPSで重さを量ってみると、
 CopyRects無し -> 400FPS
 サーフェス->テクスチャのCopyRects有り -> 350FPS ( 実行されている? )
 テクスチャ->サーフェスのCopyRects有り -> 400FPS ( 実行されていない? )
以上の結果になりました。何か抜けている物などがありましたらご指定下さい。m(__)m

●D3D初期化
ZeroMemory(&d3dppApp,sizeof(d3dppApp));
d3dppApp.BackBufferCount = 1;
d3dppApp.Flags = D3DPRESENTFLAG_LOCKABLE_BACKBUFFER;
d3dppApp.Windowed = TRUE; //ウィンドウモード
d3dppApp.SwapEffect = D3DSWAPEFFECT_DISCARD; //垂直同期でフリップ
d3dppApp.BackBufferFormat = dmode.Format;
d3dppApp.BackBufferFormat = D3DFMT_X8R8G8B8; // フォーマット
d3dppApp.EnableAutoDepthStencil = TRUE; // ステンシルバッファ作成
d3dppApp.AutoDepthStencilFormat = D3DFMT_D16; // 16bit Zバッファ作成
d3dppApp.BackBufferWidth = 800;
d3dppApp.BackBufferHeight = 600;
pD3D->CreateDevice(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,hWnd,D3DCREATE_HARDWARE_VERTEXPROCESSING,&d3dppApp,&pD3DDevice);


560:デフォルトの名無しさん
08/06/09 22:25:01
●テクスチャ初期化
D3DXCreateTexture(pD3DDevice,1024,1024,1,D3DUSAGE_RENDERTARGET,D3DFMT_X8R8G8B8,D3DPOOL_MANAGED,&pTexture0[MAX_CRTA]);
●メインルーチン
pTexture->GetSurfaceLevel( 0, &pTmpSurface );
pMainSurfaceへ描画
pD3DDevice->CopyRects(pTmpSurface0,&rc,1,pMainSurface,NULL);
pTmpSurfaceへ描画
pD3DDevice->CopyRects(pMainSurface,&rc,1,pTmpSurface0,NULL);
●テクスチャ表示
pD3DDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);
pD3DDevice->SetRenderState(D3DRS_CULLMODE,D3DCULL_NONE);
pD3DDevice->CreateVertexBuffer(sizeof(D3DVERTEX) * 4,0,D3DFVF_VERTEX,D3DPOOL_MANAGED,&pTextureVB0);
pTextureVB0->Lock(0,0,(BYTE**)&pV,0);
pvを設定
pD3DDevice->SetStreamSource(0,pTextureVB0,sizeof(D3DVERTEX));
pTextureVB0->Unlock();
pD3DDevice->SetTexture(0,pTexture0);
pD3DDevice->DrawPrimitive(D3DPT_TRIANGLEFAN,0,2);


561:デフォルトの名無しさん
08/06/09 22:52:30
画面は最終的に、黒にpTmpSurfaceへ描画したものになっております。
pD3DDevice->CopyRects(pMainSurface,&rc,1,pTmpSurface0,NULL);

●テクスチャ表示
では、どちらを行っても同じ結果になっております。

562:デフォルトの名無しさん
08/06/09 23:29:55
デバッグランタイムにすれば、何が悪いのか教えてくれるかと

563:デフォルトの名無しさん
08/06/10 03:15:41
>>562
ご指摘、ありがとう御座いました。
ランタイムはデバッグで行い、D3DSpyを使ったりしてみても変化が御座いません。
pD3DDevice->CopyRects(pTmpSurface0,&rc,1,pMainSurface,NULL);
が、TextureとpMainSurfaceの型違いで、Copyされていないっぽいです。
ためしに、CreateImageSurfaceで、pMainSurfaceから複製したサーフェスには、
CopyRectsが出来ています。(双方向)
テクスチャになにかの型が足りないのかと思いますが、思いこみかもしれませんので、
ご指摘、お願いいたします。

564:デフォルトの名無しさん
08/06/10 05:15:49
>>563
pMainSurfaceとrcのコードがないから、それだけでは何とも言えない。
っていうか、本当にデバッグランタイムで何も言われない?
失敗してるなら必ずデバッグメッセージ出てると思うが。

565:デフォルトの名無しさん
08/06/10 12:20:49
>>564ご指摘ありがとう御座います。

デバックメッセージは何も言ってきません。
デバックモードは、スタートメニューから[DX9]->[Install Debug]で設定してます。

RCは、rc.top=0;rc.bottom=600-1;rc.left=0;rc.right=800-1;
と定義しました。NULLにすると、pTmpSurfaceが1024*1024なのでハングしてしまいました。

pMainSurfaceの方は確実に描写されていました。
別のコクパチブルサーフェス(Bs)へCopyして、Bsへ描画して、pMainSurfaceへ書き戻した場合、うまく行きました。
最後のCopyRectsを無くすと、Bsへ描写した分は、ちゃんと描写されなかったです。
LPDIRECT3DSURFACE8 Bs;
pD3DDevice->GetRenderTarget(&Bs);
D3DSURFACE_DESC Desc;
Bs->GetDesc( &Desc );
pD3DDevice->CreateImageSurface(800,600,Desc.Format,&pMainSurface);
pD3DDevice->CopyRects(Bs,&rc,1,pMainSurface,NULL)
       Bsへ描画
pD3DDevice->CopyRects(pMainSurface,&rc,1,Bs,NULL)


566:デフォルトの名無しさん
08/06/10 16:37:11
自己レスですみません。テクスチャに直接描画する様にしたら問題なくなりました。

567:デフォルトの名無しさん
08/06/12 10:36:27
スプライトの上下反転表示って、出来る人いる?
自分の使ってるGF7600GSだとダメみたい。
rect.top=480
rect.bottom=0
でもダメで、
rect.top=0
rect.bottom=-480
もダメ。
データその物を反転して持たなくて甚目なのかな。

568:デフォルトの名無しさん
08/06/12 11:01:00
ID3DXSprite使ってという意味?
行列のスケーリングに反転指定すりゃできんじゃねーの

569:デフォルトの名無しさん
08/06/12 12:26:01
UVをいじるとか・・・

570:デフォルトの名無しさん
08/06/12 15:28:35
>>568
ありがとさん。スケーリングの方をつかうんですね。ちゃんと動きました。
>>569
こっちもレスさんきゅう。

571:デフォルトの名無しさん
08/06/13 00:59:24
>甚目
「はだめ」なのね。

572:誰か一緒に考えてください
08/06/13 22:45:22
もしプロトコルを開発するならどんなプロトコルにしますか??


573:デフォルトの名無しさん
08/06/13 23:52:45
TCP/IPみたいなやつ
でもちょっと高速なやつ

574:デフォルトの名無しさん
08/06/13 23:55:30
要求仕様を明らかにせよ

575:デフォルトの名無しさん
08/06/14 00:02:17
自前で作って
良くわからんバグチェックに時間費やすくらいなら
すでにあるもの使ったほうがいいと思うが

576:デフォルトの名無しさん
08/06/14 00:02:37
>>572
まずは他人に何をしたいのか伝える程度のプロトコルを身につけろ。
開発云々以前の問題。

577:デフォルトの名無しさん
08/06/14 00:28:54
フルスクリーンでげーむをやろうとしたところ、起動できなかったので、
DirectX診断ツールのDirectDrawでテストしたところ
DirectDraw テスト結果 : エラー - ステップ 17 (SetDisplayMode を 640x480x16 に): HRESULT = 0x80004001 (未実装)
とでました解決策などありますか?

578:デフォルトの名無しさん
08/06/14 09:48:44
>>577
プログラムを開発する事に対する関連性を述べよ

579:デフォルトの名無しさん
08/06/15 03:22:14
低レベルですが失礼します。
directX 9.0のウェブセットアップをダウンロードしたのですが、
セットアップをしようとすると、インターネットに接続している状態
でも「ネットワーク接続を確認してください」と出てしまいます。
原因等、よろしければお願いします。
あと、directX 9.0はSP1の状態でも大丈夫でしょうか?

580:デフォルトの名無しさん
08/06/15 03:24:55
>>579
>>578

581:デフォルトの名無しさん
08/06/15 12:04:57
文字表示なんですが、リアルタイムでフルカラーで表示出来るようにするには、
LockRectしか無いでしょうか。
指定された8色とかでしたら、文字は抜きのテクスチャにして、
ベースの色テクスチャを抜き出すという方法が使えると思いますが、
フルカラーでしたらどんな方法がありますでしょうか。

582:デフォルトの名無しさん
08/06/15 12:22:06
>>581
ID3DXFontはどうかね

583:デフォルトの名無しさん
08/06/15 12:25:33
>>581
αで文字を描いて、色は頂点カラーで与える。

584:デフォルトの名無しさん
08/06/15 13:44:07
ピクセルシェーダーでおけ

585:デフォルトの名無しさん
08/06/15 22:33:19
カメラにレンズ効果を付け加えるにはどうしたらいいですか?


586:デフォルトの名無しさん
08/06/16 09:45:46
フレア、収差、立体視、どれ?

587:585
08/06/16 09:52:28
たとえば魚眼レンズみたくしたいです。

588:デフォルトの名無しさん
08/06/16 10:22:28
単純に視野角を広げればいいんじゃね?

589:デフォルトの名無しさん
08/06/16 10:24:08
ひずませたいんじゃね?

590:デフォルトの名無しさん
08/06/16 14:11:05
>>587
シェーダーつかうNE

t-pot『Fish Eye』
URLリンク(tpot.jpn.ph)


591:デフォルトの名無しさん
08/06/16 15:02:37
>590は対角魚眼だな。全周魚眼にしたいならパラメータを調整して、更に範囲外の処理もしなくてはいけない。

592:デフォルトの名無しさん
08/06/16 15:27:06
で、でたー

593:デフォルトの名無しさん
08/06/17 22:05:55
バックバッファサイズ640*480のフルスクリーンで動作するアプリケーションを作ったのですが
アプリを終了してフルスクリーンから復帰すると他のウィンドウのサイズが
640*480に強制的に変化してしまう現象に悩まされています
原因に心当たりがある方いらっしゃいませんでしょうか
SDKはDirectX9/December 2004を使ってます

594:デフォルトの名無しさん
08/06/17 22:18:02
ごく希に、他のウインドウの表示位置がずれたり、640*480になるときがある。
しかし、常時なら、
バグで終了してないか?
ちゃんとリリース処理をしているか?
QuitMessageを使っているか?
細かくプログラムを切っていって、原因を突き止めないと何とも言えない。

595:デフォルトの名無しさん
08/06/17 23:10:50
DirectDrawにその問題あった気がすんな。
アプリ終了前にちゃんとAPIを通してウィンドウモードに戻してみ?

596:デフォルトの名無しさん
08/06/17 23:15:24
きちんと戻したければ、各ウインドウのサイズを記憶しておいて、自己責任できっちり戻せ。
大して手間のかかる処理じゃない。

597:デフォルトの名無しさん
08/06/18 00:12:31
画面モードを元に戻さずReleaseしてる例ならよく見る罠。
SetCooperativleLevelな。

598:デフォルトの名無しさん
08/06/18 00:17:00
効率の良い線や四角形の描画方法ってありますか?

599:デフォルトの名無しさん
08/06/18 00:23:42
ありません

600:デフォルトの名無しさん
08/06/18 00:34:21
ブレゼンハムのことか?

601:デフォルトの名無しさん
08/06/18 01:50:59
アニメーションや親子関連の情報が入ってるXファイルの
フォーマット解説しているサイトとかありませんかね?

602:デフォルトの名無しさん
08/06/18 13:07:41
>>596
可能です。
以上。
↓次どうぞ

603:デフォルトの名無しさん
08/06/18 14:09:54
あて先を間違ったレスって恥ずかしいよね

604:デフォルトの名無しさん
08/06/18 23:32:18
テクスチャーを張ったポリゴンの色を変えたいんだけどどうすればいいんだろう?
マテリアルのディフューズ色を変えても変わらなかった

具体的には灰色のテクスチャーを張っていて、色々、色を変えたいなと思って

誰か教えてくだせえ



605:デフォルトの名無しさん
08/06/19 00:34:43
頂点カラーでぐぐれ。

それ以前にデフューズいじって変わらないのはおかしいが。

606:デフォルトの名無しさん
08/06/19 08:44:51
言葉がたりなかったんだけど、ポリゴンっていうかXファイルのモデルの色を変えたかったんだ。
モデルにしても頂点カラーで色を変えられそうだけどコストかかりそうだね

なんか良い方法ないかなあ

607:デフォルトの名無しさん
08/06/19 10:00:40
>>606
シェーダーパラメーターでやればほぼノーコストだろう

608:デフォルトの名無しさん
08/06/19 10:32:51
>なんか良い方法ないかなあ

他の方法を模索する前にちゃんとマテリアルのデフューズで
変えられるようになるのが先です

609:デフォルトの名無しさん
08/06/19 10:52:14
いいこというね

610:デフォルトの名無しさん
08/06/19 13:23:31
低レベルな質問で申し訳ありません
カメラの回転のトラブルなんですが カメラ中心の回転とカメラの移動を同時に
することができません ソースがおかしいのでしょうか?どなたかご教授お願いします
D3DXMATRIXA16 matView,matCameraPosition,matHeading,matPitch;
D3DXVECTOR3 vecEyePt( fCameraX,fCameraY,fCameraZ ); //カメラ(視点)位置
D3DXVECTOR3 vecLookatPt( fCameraX,fCameraY-1.0f,fCameraZ+3.0f );//注視位置

D3DXVECTOR3 vecUpVec( 0.0f, 1.0f, 0.0f );//上方位置
D3DXMatrixIdentity(&matView);
D3DXMatrixRotationY(&matHeading,fCameraHeading);
D3DXMatrixRotationX(&matPitch,fCameraPitch);
D3DXMatrixLookAtLH( &matCameraPosition, &vecEyePt, &vecLookatPt, &vecUpVec );
D3DXMatrixMultiply(&matView,&matView,&matHeading);
D3DXMatrixMultiply(&matView,&matView,&matPitch);
D3DXMatrixMultiply(&matView,&matView,&matCameraPosition);
pDevice->SetTransform( D3DTS_VIEW, &matView );

fCameraXで移動、fCamerapitchでカメラの回転です

611:デフォルトの名無しさん
08/06/19 13:54:41
>>610
そこでD3DXMatrixLookAtLHを使う意味がワカンネ

612:デフォルトの名無しさん
08/06/19 14:11:48
>>611
ご回答いただいたのにすいません。どこをどう直せばいいか
教えていただけたらありがたいです。


613:デフォルトの名無しさん
08/06/19 14:42:21
SetCooperativleLevel に一致する日本語のページ 約 件中 - 件目 ( 0.098231 秒)


SetCooperativleLevel に該当するページは見つかりませんでした。



614:デフォルトの名無しさん
08/06/19 14:44:08
クォータニオン?

615:デフォルトの名無しさん
08/06/19 15:35:07
×>SetCooperativleLevel
○>SetCooperativeLevel

616:610
08/06/19 16:14:55
原点中心の回転ならわかるのですがカメラ中心の回転がわかりませんでした、
調べ方が悪いのか書いてるページも見つからないのでどなたかご教授お願いします

617:デフォルトの名無しさん
08/06/19 17:02:37
At=Eye+向きたい方向ベクトル

618:デフォルトの名無しさん
08/06/19 17:04:25
DirectX7じゃないっすか

619:デフォルトの名無しさん
08/06/19 17:17:32
>>616
610のLookAtが余計。
あるいはLookAtだけで十分。(注視点を回転させる)

それと、View行列は概念上はカメラの位置や向きを設定する行列だが、
実際の計算ではカメラが動くのではなく世界を回転させてカメラの位置に
合わせるので、回転や平行移動に関する考え方が逆になる。

変換の順番も普通とは逆で、まず平行移動させてから回転させる。
移動量も回転角もマイナスを賭けた値で。
(View行列をかけた後の原点がカメラの位置になる)

620:デフォルトの名無しさん
08/06/19 18:44:41
みんなはクォータにオンバリバリ使ってるの?

621:デフォルトの名無しさん
08/06/19 21:18:46
Xファイルのアニメーションはクォータニオンだし
最低限の回転や補間や行列への変換くらいは理解してるじゃろ。

622:デフォルトの名無しさん
08/06/19 23:04:25
俺は理解してないけど使えるからいい
難しいことは頭のいい数学屋さんにお任せ

623:デフォルトの名無しさん
08/06/25 04:20:46
テクスチャを左右反転して表示させるにはどうすればいいのでしょう?
ポリゴンの裏表を逆にしたり、uv値をいじったりはしてみましたが寸でのところでうまくいきません。
2の乗数の大きさのテクスチャでなら、u値を負にしたらできたのですが…。
ご教授くださいませ。

624:デフォルトの名無しさん
08/06/25 04:33:23
頂点座標に対するuvが
左上uv 0,0
左下uv 0,1
右上uv 1,0
右下uv 1,1
だった場合

こうすれば
左上uv 1,0
左下uv 1,1
右上uv 0,0
右下uv 0,1


625:デフォルトの名無しさん
08/06/25 10:42:46
u = 1.0 - u かな

626:デフォルトの名無しさん
08/06/26 05:49:10
>>624,625
ありがとうございます、できました!
uv値がポリゴンの頂点に対応しているということをいまいち理解できていなかったようでした…。

627:デフォルトの名無しさん
08/06/26 18:08:27
DX8.1でIMEを制御、入力するにはどうしたらよいでしょうか。
参考URL等を教えていただけると幸いです。

628:デフォルトの名無しさん
08/06/26 19:19:16
>>627
DX9のSDKにIME制御のソースあるよ。
描画にID3DXSpriteを使っているところ以外はバージョン関係なさそうだから
DX8.1に移植もそんなに難しくは無いと思う。

629:デフォルトの名無しさん
08/06/26 19:36:26
> DX9のSDKにIME制御のソースあるよ。
これって下の実はバグソースなのに誰も気づかなかったやつだっけ?
URLリンク(watch.impress.co.jp)

630:デフォルトの名無しさん
08/06/26 20:02:17
>>629
こんなソース初めて見た
俺のもそうだが
社内の他のグラマのもぜんぜん違うソースだったな
ネタだろこれw

631:デフォルトの名無しさん
08/06/26 20:04:45
>>629
>結局のところ結局のところ

大事なので2回いいました

632:デフォルトの名無しさん
08/06/30 04:20:08
DirectDrawアクセラレータを無効にしたいんだが、診断ツール開いて変更しようとしたんだが、
「使用できます」とだけ表示されてて変更ができないんだが、どうしたらいいのだろうか?

OS Vista Home Premium
V/B Mobile Intel(R) 945 Express Chipset Family
DirectXのヴァージョン DirectX 10

633:デフォルトの名無しさん
08/06/30 10:16:00
ディスプレイのプロパティのトラブルシューティングとか、DirectX SDKのコントロールパネルとか。
そもそもVistaじゃ切れないんじゃないか?

634:デフォルトの名無しさん
08/06/30 17:01:25
>>629
どこかで聞いたことあると思ったら

URLリンク(watch.impress.co.jp)
俺映ってるじゃん

635:デフォルトの名無しさん
08/06/30 18:21:58
DirectXが使える人って頭いいと思う。

636:デフォルトの名無しさん
08/06/30 18:52:44
俺は、絵が描ける人って頭いいと思う。
10日間、がんばて30秒ドローイングしたけど
URLリンク(www.posemaniacs.com)
俺には絵は無理かも知れない

637:デフォルトの名無しさん
08/06/30 20:39:58
頭いいかどうかはわからないが、尊敬はする
俺にもたぶん無理>絵

638:デフォルトの名無しさん
08/06/30 21:53:29
絵は好きかどうかがすべてだと思うので
やっぱりDirectXのほうが頭いいと思う。

639:デフォルトの名無しさん
08/06/30 22:10:31
昔のI/Oのヘルプ丸写しのDirectX本はサンプルの絵がヘタすぎて
立ち読みするのが恥ずかしかった記憶が

640:もこ
08/06/30 23:47:51
DX(JUNE2008)をDLしてインストールしてたら最終設定でERRORが出てDXerrorとDX.log見てがんばってね♪
みたぃなことを言われたんですがどぅすればぃぃんですヵ?

PC初心者でぜんぜんゎかんなぃです。

あとXPです。



641:デフォルトの名無しさん
08/07/01 00:08:59
>>640
グラフィックボードの種類、DXerrorとDX.logの中身、スリーサイズを答えよ

642:もこ
08/07/01 01:02:47
S3 Graphics ProSavage + utilities

グラフィックってコレですヵ?

module: dsetup32(jun 6 2008), file: setup.cpp, line: 1701, function: CSetup::SetupForDirectX
InstallPlugIn() failed.

DXはよくゎかんなぃですがコレですヵ?

あと最後の質問はシークレットでぉ願ぃします。


643:デフォルトの名無しさん
08/07/01 01:25:26
S3ワロタ

644:デフォルトの名無しさん
08/07/01 09:27:33
オンボードのVIAチップセットのやつか

645:デフォルトの名無しさん
08/07/01 21:16:03
そこは10年以上前のoxygenとか持ってきて欲しかった

646:デフォルトの名無しさん
08/07/03 18:19:48
S3はインストールすら許されないんだな

647:デフォルトの名無しさん
08/07/04 13:59:13
質問させていただきます。
自宅のPCはインターネットを繋いでないのですが、サイトからのダウンロード以外で、DirectX9.0をダウンロードできる方法はあるのでしょうか?

648:デフォルトの名無しさん
08/07/04 14:02:21
別の場所でダウンロードするとか、添付されてる雑誌や本を買うとか、
MSDN入会するとか、MSに問い合わせるとかするのがいいんじゃない?

649:デフォルトの名無しさん
08/07/04 14:03:30
・体験版が入ってるCD-ROMつき雑誌
・自作PCで最近のパーツならパーツ付属CD-ROMに入ってることもある。
・市販ゲームに同封してる(かもしれない)
くらい?
あとはネットカフェととか友人宅で・・・
でも最近ってネットワークダウンロードになちゃってるので
一式ってDLできるのかな?

650:デフォルトの名無しさん
08/07/04 14:13:21
SDKの中に再頒布可能パッケージが入ってた気がするからそれ使えばいいんじゃないの
どっちにしろ>>648,>>649の言うように別の場所で落としてCDか何かに入れる必要があるけど


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4925日前に更新/147 KB
担当:undef