5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

くだすれDirectX(超初心者用)

1 :デフォルトの名無しさん:2005/11/26(土) 09:33:26
このスレッドは、他のスレッドでは書き込めない超低レベル、 
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 
DirectX使いが優しくコメントを返しますが、 
お礼はDirectXの布教と初心者の救済をお願いします。 

DirectX Home Page 
http://www.microsoft.com/japan/windows/directx/



2 :デフォルトの名無しさん:2005/11/26(土) 11:44:39
DirectXのウイザードで作ったプログラムを実行中、
Altボタンを押すとポーズかかるのですが、
これを止めるにはどうしたらいいのですか?

3 :デフォルトの名無しさん:2005/11/26(土) 12:24:57
メッセージループとゲームルーチンを別スレッドにする。

4 :デフォルトの名無しさん:2005/11/26(土) 13:20:03
ますますわからないですぅ><
UPした僕のソースを添削してください!

5 :デフォルトの名無しさん:2005/11/26(土) 14:32:15
Direct3Dを使って開発をしているのですが、別のPCでテストしたら動かなくて困っています。
原因がさっぱりつかめないので質問させてください。

開発用は XP Pro SP2 + 9.0SDK(October 2005) で
テスト用は XP Home SP2(勝手に9.0cのランタイムが入っていると思う)です。

起動すると
「d3dx9d_27.dll が見つからなかったため、このアプリケーションを開始できませんでした。」
というエラーメッセージが出て終了します。

ちなみに、サンプルブラウザの CreateDevice というのをそのままコンパイルして
テスト用のPCで実行してみたら動きました。

何か抜けてる情報があったらすいません。よろしくお願いします。

6 :デフォルトの名無しさん:2005/11/26(土) 15:42:39
d3dx9d_27.dll
を使ってるAPI(関数)は何ですか?

7 :デフォルトの名無しさん:2005/11/26(土) 18:57:07
d3dx9d_27.dll が見つからなかったため、このアプリケーションを開始できないんだが、
これだけ完璧かつ明確なメッセージが出力されているのにこれ以上どうしろと?

8 :デフォルトの名無しさん:2005/11/27(日) 00:03:53
>>5
機械的に答えとくわね。
[概要]
・D3DXはDirect3Dとは別のDLLライブラリ。
・リリース版(d3dx9.lib が d3dx9_??.dll を動的リンク)は、再頒布パッケージでインストールできる。
・デバッグ版(d3dx9d.lib が d3dx9d_??.dll を動的リンク)は、SDKにしか入っていない。
・DLLは、SDKのバージョンによってファイル名("??"部分)が異なる。"27" は October2005。
[対処]
・d3dx9d.lib の代わりにd3dx9.lib をリンクする(リリースビルド)
・テスト用PC上で再頒布パッケージを実行して、D3DX DLL(October2005用)をインストールする。
October2005用 再頒布パッケージ(SDK内にも同じもの有り)
ttp://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=9930EFA6-9F7B-4C8A-AEA2-97DD6AB307A2

9 :デフォルトの名無しさん:2005/11/29(火) 16:48:36
DXUTの勉強したいのですが何をみたらいいですか?

10 :デフォルトの名無しさん:2005/11/29(火) 19:17:37
>>9
サンプル
MSDN

11 :デフォルトの名無しさん:2005/11/29(火) 19:25:59
>>10
サンプルの名前おしえてください

12 :デフォルトの名無しさん:2005/11/30(水) 04:51:59
MS丼

13 :デフォルトの名無しさん:2006/01/13(金) 08:24:29
ttp://www.plustarnet.com/aspil/Programming/Skeleton.htm

上記ページにあるスケルトンプログラムをビルドして実行しようとしたのですが、エラーが出て終了してしまいます。

エラー内容
グラフィックボードが、3D・ハードウェアアクセラレーションに対応していません。
実行する事は出来ますが、処理落ちする可能性が高いと思われます。

上の警告が出たあと、すぐに終了してしまいます、以下に環境を書きますので対処法が
わかる方いらっしゃいましたらお願い致します。

OS:Windows2000 SP4
開発環境:VisualC++ 6.0 + DirectX 9.0c (2003 Summer)
CPU:AMD Athlon64 3000+
MEM:hynix DDR 333 1GB * 2
M/B:ABIT KN8 Ultra
VGA:GeForce6600

以上です、よろしくお願いします。

14 :デフォルトの名無しさん:2006/01/13(金) 08:44:20
>>13
スタート->プログラム->アクセサリ->システムツール->システム情報
を起動して
メニューバーのツール->Windows->DirectX]診断ツール
を実行して、DirectXバージョンとかハードウェアアクセラレーション機能とか診断しる!

あと、デバッガで追えないの?

15 :13:2006/01/14(土) 05:40:26
>>14
13です、レス遅れて申し訳ありません。

ご指摘のとおりDxDiagの実行と、デバッガでのトレースを行いました。
DirectXについては、以下のとおりでした。

[ファイル]
いくつかのファイル (d3dx8d.dll、d3dx9d.dll、d3d9d.dll) はデバッグ版です。
製品版より遅く動作します。

[ディスプレイ]
ディスプレイ ドライバがサポートしていないため、ハードウェア アクセラレータを使った Direct3D 9+ は利用できません。
ハードウェアの製造元から新しいドライバを入手できるかもしれません。

上記の表示以外はすべて、問題なしなのでDirectXの方は多分問題がなさそうな気がします。
GeFoece6600なのにDirect3Dのハードウェアサポートが無いのには驚きましたが・・・・・・

[デバッガ]
PeekMessageで取得したメッセージを、TranslateAccelerator関数に渡して処理をしているところで、
AccessViolationが発生します。
NTDLL.DLLが原因のようなメッセージが出るのですが、調べてみてもそんなエラーで落ちている人は
見当たりませんでした。

原因はNTDLL.DLLかな、という感じはしますが、対処法が思いつかない状況です・・・


16 :デフォルトの名無しさん:2006/01/14(土) 05:49:13
>>15
ディスプレイドライバのインストールだけでいけそうな気配。ダウンロードしていれてみたら?
http://jp.nvidia.com/page/drivers.html

17 :13:2006/01/14(土) 06:34:56
ドライバーはインストールし直しましたが、うまく行きませんでした。
が、しかしいろいろやっていたら何故か解決しました。

何が原因で解決したかわかりませんが、以下に行った事を記述しておきます。

1. DirectXのアンインストール ←当然ながらこれだけだと状況が酷くなりました(コンパイルすら出来ない)

2. DirectXの再インストール ←状況変わらず

3. DirectXをアンインストールし、EndUserRunTimeの方を入れてみる ←この時点でサンプルプログラムが起動しましたが、
  コンパイル出来ず。 またDxDiagのハードウェアアクセラレーションが有効になりました。

4. DirectXのバージョン違いをインストールしようとする ←Summer 2004だったんですが、解凍すら出来ませんでした。

5. DirectX Summer 2003 を再びインストール ←コンパイル、ビルド、実行全て問題なく通りました。

以上です、結局原因はわからずじまいですが、動くようになったので今のところよしとします。

皆様には色々とご教授いただき、ありがとうございました。

18 :デフォルトの名無しさん:2006/01/21(土) 10:22:17
DirectXではじめてゲームを作ってるんですが、
環境によっては画像が上手く表示されないようです。

どなたか助けていただけないでしょうか…。

ソース
http://syuseki.2-d.jp/minami/src/minami2960.zip

通常の場合 http://kjm.kir.jp/pc/img/13560.jpg

画像が表示されない場合 http://kjm.kir.jp/pc/img/13569.jpg

よろしくおねがいします。

19 :デフォルトの名無しさん:2006/01/21(土) 11:22:23
動く環境と、動かない環境の詳細よろ。

20 :デフォルトの名無しさん:2006/01/21(土) 12:20:56
>>18
動く環境と動かない環境の詳細ぐらい書けば?

21 :18:2006/01/21(土) 12:24:05
まだ詳しく分かっていないのですが、
WindowsXP SP2 なら正常に動くようで、
SP1なら画像が表示されないようです。
よくあることなのでしょうか?

22 :デフォルトの名無しさん:2006/01/21(土) 12:30:10
>>21
ありませんー
グラフィックボードじゃないの

23 :デフォルトの名無しさん:2006/01/21(土) 12:40:47
ていうか、なんでフォント指定するかなー

24 :デフォルトの名無しさん:2006/01/21(土) 12:43:22
よくみたら文章内容まで化けてるぞ

25 :18:2006/01/22(日) 12:49:15
解答くださった方々ありがとうございます。
まだまだひよっこ設計、適当設計なので、
CTextureクラスに問題があるのかなと思い試行錯誤中です。

フォント指定は実際のゲームにより近くなるようにと思ってです。
配布時にはフォントも同梱予定です。

とりあえず問題は置いておいて、ある程度完成した時点でWeb上公開、
問題のある方にその詳細を送ってもらい、共通点を分析しようかなと思います。

相談に乗ってくださった方々本当にありがとうございました。

26 :デフォルトの名無しさん:2006/01/22(日) 13:12:22
うちの環境だと普通に表示されるが、
頂点シェーダをソフトウェアにすると表示されないな。
その場合、CTextureでZ値を1.0f未満に設定すると表示されたけど。

27 :デフォルトの名無しさん:2006/01/22(日) 13:15:25
>>25
まてまて、フォント同梱って。
ライセンスとかきっちり確認しないと痛い目にあうぞ。

28 :18:2006/01/22(日) 13:49:31
>>26
報告ありがとうございます!
設定値を変更したverを配布して確かめてみます!

>>27
一応きちんと調べてから同梱予定です。

29 :18:2006/01/22(日) 14:24:36
連カキコすみません。
フォントについて調べたところ >>27 さんの言うとおり、
両方ともライセンスがあるようですね。
忠告ありがとうございましたm(_ _)m

30 :デフォルトの名無しさん:2006/01/24(火) 06:27:25
おしえてBP! APIとDirectXって何?
http://oshiete.nikkeibp.co.jp/kotaeru.php3?qid=1914204


31 :デフォルトの名無しさん:2006/01/25(水) 03:51:52
サンプルのMeshesを実行中にCTRL+ALT+Deleteを押すとトラが消えてしまいました
なぜでしょうか?

32 :デフォルトの名無しさん:2006/01/25(水) 04:26:59
そういえば一休さんの虎を屏風から追い出すとんちの意味が未だにわからない

33 :デフォルトの名無しさん:2006/01/25(水) 16:23:41
ダイレクトエックスってエディタの表示部に使うとかできるの?
馬鹿げてる?

34 :デフォルトの名無しさん:2006/01/26(木) 07:56:36
すいません質問です。
DirectXSDKのデバッグ版とリテール版の違いで、
グラフィックボードのハードウェアアクセラレーションが使用できたり使用できなかったり
する事はあるのでしょうか?

35 :デフォルトの名無しさん:2006/01/27(金) 17:39:18
質問なんですが・・・
DirectX9.0cをネットに繋がってないPCにインストールするにはどうすればいいんですか?

36 :デフォルトの名無しさん:2006/01/27(金) 18:18:17
>>35
PC雑誌のCD
もしくは自分で焼け

37 :デフォルトの名無しさん:2006/01/27(金) 18:28:50
>>35
CD-ROMの郵送サービス(実費1050円)

38 :35:2006/01/27(金) 18:59:52
>>36
自分で焼く・・・ですか。
それはどうすればいいんですか?
>>37
郵送サービスなんてあったんだ・・・

39 :デフォルトの名無しさん:2006/01/27(金) 19:04:06
>>35
DX入ってるHDDを外してインストールしたいPCにつなげば?

40 :デフォルトの名無しさん:2006/01/27(金) 20:14:50
質問です。よろしくお願い致します。
VC++2005ExpressEdition(ベータではなく正式版です)で、DirectX Sample Browser (December 2005)の
「Tutorial 6: Meshes」をビルドして問題なく実行できました。

しかし、VC++EEのWin32アプリケーションウィザードで「Windowsアプリケーション」を作り「Tutorial 6: Meshes」の
DirectXに関するコードを「Windowsアプリケーション」にコピー&ペーストしましたが、うまくいかないです。
(cppファイルに#include <strsafe.h>に関するコードも加えました。)
具体的には以下のような感じです。

Windowsアプリケーションをビルドすると、「C2664」のエラーが出ました。

そのため、エラーが出た箇所で「L"Tiger.x"」、「L"..\\Tiger.x"」など「L」を付け加えたところエラーが
出なくなりました。ビルドが正常終了して、実行すると、
 「Could not find texture map」
と表示されたあとに、灰色っぽい虎の3Dモデルが回転する画面が表示されました。

この灰色の虎3Dモデルになる状態を解消するために、とりあえず
D3DXCreateTextureFromFile関数の2番目の引数に L"tiger.bmp"
を設定したところ、希望するように虎の3Dモデルにテクスチャが表示されました。

「Tutorial 6: Meshes」からコピー下記のコード
 StringCchCat( strTexture, MAX_PATH, d3dxMaterials[i].pTextureFilename );
の1番目の引数をデバッガで見ると、配列の中身が文字化けしているようで、正しく「"tiger.bmp"」と設定されていないようです。

StringCchCat関数の代わりにstrcpy関数に変えてもだめで、<strsafe.h>をインクルードしないようにして
D3DXCreateTextureFromFile関数の2番目の引数に直接「d3dxMaterials[i].pTextureFilename」を記述しましたが、
 「2番目の引数を 'LPSTR' から 'LPCWSTR' に変換できません」
というエラーがでます。LPCWSTRでキャストしてもだめでした。

どうすれば、Xファイルからテクスチャのファイル名をうまく取り出せるでしょうか?
(Platform SDKの代わりにVC++.NET 2002のヘッダとライブラリフォルダを「インクルード ファイル」、
「ライブラリ ファイル」のパスに指定しました。)

41 :デフォルトの名無しさん:2006/01/27(金) 20:19:32
「Tutorial 6: Meshes」からコピー下記のコード
→「Tutorial 6: Meshes」からコピーした下記のコード

上記の修正です。m(_ _)m

42 :40:2006/01/27(金) 20:51:44
ソースをうpしました。
ttp://www.uploda.org/uporg296866.zip

チェックのほど、よろしくお願い致します。

43 :デフォルトの名無しさん:2006/01/27(金) 21:12:09
pTextureFilenameをUNICODEに変換する必要があるだけじゃね?

44 :40:2006/01/27(金) 21:18:15
>>43
レスdクス。
UNICODEに変換する方法をこれから調べてみます。

灰色の虎3Dモデルになるソースもうpしましたので、ご確認のほどよろしくお願い致します。
ttp://www.uploda.org/uporg296892.zip

45 :40:2006/01/27(金) 22:11:01
VC++.NET2002ではどうなるかと思い、VC++.NET2002で作ったWin32プロジェクトでも、
同じように灰色の虎3Dモデルになってしまうかどうか試してみましたが、灰色の虎3Dモデルには
なりませんでした。
(「Tutorial 6: Meshes」からコピーしたコードのまま使い、「L」を付けたり
D3DXCreateTextureFromFile関数の2番目の引数に「"tiger.bmp"」を直書きしていないです。)

引き続き、>>43を調べます。

46 :デフォルトの名無しさん:2006/01/27(金) 23:19:31
UNICODEへの変換は、MultiByteToWideCharを使う。

まぁ、VC++2005EEはデフォルトがUNICODEだから、
プロパティの全般の文字セットをマルチ文字バイトセットにすれば、
LとかつけなくてもOKになるはず。

47 :40:2006/01/27(金) 23:22:12
とりあえず解決策を見つけました。
「ソリューションエクスプローラー」のツリー構造の根元の太字について、「プロパティ ページ」画面を出し
 ・「構成プロパティー」→「全般」→「文字セット」
の項目を「Unicode 文字セットを使用する」から
 ・「マルチ バイト文字セットを使用する」
に変更したところ、「Tutorial 6: Meshes」のソースからコピーしたままのコードで虎のテクスチャが表示されました。

UNICODEに変換するソースコードを書くのは結構大変そうに思えたので、とりあえずVC++EEの設定で
解決できてホッとしました。

>>43」さん、どうもありがとうございました。

48 :40:2006/01/27(金) 23:24:18
>>46
dクスです。

49 :デフォルトの名無しさん:2006/01/29(日) 01:15:05
作っているゲームが重くて遅いPCだと動かないんですが、
ゲーム画面を一部隠すと動作が軽くなります

これはビデオメモリがたりてないということでしょうか?
何か対策があれば教えてください

50 :デフォルトの名無しさん:2006/01/29(日) 13:03:28
http://www.plustarnet.com/aspil/Programming/
ここ以外にわかりやすい講座サイトありませんか?

51 :デフォルトの名無しさん:2006/01/29(日) 16:50:44
>>50
そこからリンクされてるところ

52 :デフォルトの名無しさん:2006/01/30(月) 01:41:05
複数モデルをマウスで矩形選択したいんだけどOpenGLのGL_SELECTみたいなのって
DirectXには無いよね?D3DXIntersectはモデルとしか判別しないし
描画ピクセルから選択を判別するような事がしたいんだけど。

53 :デフォルトの名無しさん:2006/02/03(金) 22:31:17
DirectX SDK Februaryは出るのですか?

54 :デフォルトの名無しさん:2006/02/06(月) 14:32:41
DirectX SDK Augustは出るけど…

55 :デフォルトの名無しさん:2006/02/07(火) 18:16:17
デバイスロスト中にID3DXFont::DrawTextを使うと例外エラーが出ます。
ID3DXFont::Beginが無いから描画可能かチェックできません。
今まではPresentの戻り値で状態遷移していたのですが
IDirect3DDevice9::TestCooperativeLevelで毎回チェックするしかないのでしょうか?
SDKはOctorber2004です。

56 :デフォルトの名無しさん:2006/02/07(火) 23:32:57
DirectX9.0cをインストールするのは無料ですか??(超超初心者)

57 :デフォルトの名無しさん:2006/02/07(火) 23:56:10
残念、有料です。
出張インストールサービスがあります。

58 :デフォルトの名無しさん:2006/02/14(火) 18:39:29
DirectMusic使いたいんですが、
サンプルをコンパイルしようとすると、
未解決の外部シンボル __imp__CoInitialize@4 が…
のエラーが出ます。
CoInitialize()使うのに必要な.h or .lib って何ですか?

59 :デフォルトの名無しさん:2006/02/14(火) 20:43:58
エスパーの方、
>>58
   OS
   DXSDKのバージョン
   開発言語
   コンパイラ
を透視した後、回答をお願い致します。

60 :デフォルトの名無しさん:2006/02/14(火) 21:48:15
>>58
ole32.libをプロジェクトに参加させなさい。

61 :デフォルトの名無しさん:2006/02/16(木) 12:19:42
>>60
解決しました。ありがとうございます。

62 :デフォルトの名無しさん:2006/02/23(木) 02:59:55
Win2000にインスコできるSDKの最新版って何?

Feb2006を拾ってきて入れようとしたら「サポートしてねぇぞゴルァ」って怒られた・・・

63 :デフォルトの名無しさん:2006/02/23(木) 08:30:56
インストールしないで.hと.libだけ使えばいい。

64 :デフォルトの名無しさん:2006/02/23(木) 09:26:53
>>62
>>63なら出来るけど
正式にサポートって言ってるのは2004のOctまでだっけ。

65 :デフォルトの名無しさん:2006/02/23(木) 10:06:44
日本語ヘルプがある最新版 = 2004OCT
Win2000サポート最新版 = 2004DEC
実際にWin2000で使える最新版は? = 手動で解凍してincludeとlibを設定すりゃ新しい奴でも使えるっぽいよ、DX10は知らないけど

66 :デフォルトの名無しさん:2006/02/23(木) 10:11:59
ちなみにスプライトを拡大するとフィルタがかかってしまうバグは
Win2000サポート中に修正されなかった。
最新版じゃ問題ない。

67 :デフォルトの名無しさん:2006/02/23(木) 22:40:32
>>63-66
激しくd

>>63
なるほど、そりゃそうですね。
>>65
とりあえず2004Oct,Decを拾ってくることします。

皆様本当にありがとうございました、

68 :デフォルトの名無しさん:2006/02/23(木) 23:20:38
質問です。
ロボットのキャラアニメ部分を製作中です。
D3DXFRAME と ID3DXAnimationController
1対1のアニメは成功しました。
最終的には4対1になるのですが、ID3DXAnimationController.CloneAnimationControllerで4対4にする方法しか思いつきません。
パフォーマンス的にそれは避けねばならない場合、どうしたら良いでしょうか?

69 :デフォルトの名無しさん:2006/02/23(木) 23:41:07
アニメーションをさせない、ポリゴン数を減らす、テクスチャを小さくする。
根本的なロジックを見直す。

70 :デフォルトの名無しさん:2006/02/23(木) 23:42:27
D3DXに頼らず、自分で共用可能な最適なアニメーション用コードを作成する。

71 :デフォルトの名無しさん:2006/02/23(木) 23:42:41
マルチ

72 :デフォルトの名無しさん:2006/02/23(木) 23:49:18
>>68
氏ねよマルチ

73 :デフォルトの名無しさん:2006/02/24(金) 00:25:36
前準備の質問ですみません

使用している処理系はBCC5.5.1でIDEはBCC developerを使用しています。
DirectX9.0 SDKは2004(december)をインスコしました。
PCに入っているランタイムは9.0cでOSはXPsp2(x64ではない)です。
CPUはx86の32bitです。

DirectXを学ぼうと思い、とりあえず環境整備から始めたのですが
ttp://lacc.biz/cpp/cpp.html
このサイトで紹介されている通りilink32.cfgとbcc32.cfgに必要なパスを通し
DXライブラリ(もちろんBCC用です)を使用してサンプルプログラムをコンパイルしてみました。
それですと問題なく正常にコンパイル&リンクできてバイナリも作成されるのですが、
ttp://wisdom.sakura.ne.jp/system/directx/dxg2.html
のページの下のサンプルプログラムをコンパイルした時に
「Error: 外部シンボル 'Direct3DCreate8' が未解決(C:\(path)\TEST.OBJ が参照)」
と失敗してしまいます。
何を見落としているのか判る方はいますでしょうかorz

以下設定しているファイルの中身を載せておきます
(bcc32.cfg)
-I"C:\Program Files\borland\BCCS\Include"
-I"C:\Program Files\Microsoft DirectX 9.0 SDK (December 2004)\Include"
-L"C:\Program Files\borland\BCCS\Lib"
-L"C:\Program Files\Microsoft DirectX 9.0 SDK (December 2004)\Lib\x86"
-L"C:\Program Files\borland\BCCS\Lib\PSDK"
(ilink32.cfg)
-L"C:\Program Files\borland\BCCS\Lib"
-L"C:\Program Files\Microsoft DirectX 9.0 SDK (December 2004)\Lib\x86"
-L"C:\Program Files\borland\BCCS\Lib\PSDK"

74 :デフォルトの名無しさん:2006/02/24(金) 00:29:29
「DirectX」
↑ってなんて読むんですか?

75 :奈々@スーパープログラマ ◆Xl6OTFSLJ2 :2006/02/24(金) 00:37:10
>>73
失敗するほうのサンプルはDirectX 8.0。
あなたのインスコしてるSDKはDirectX 9.0。
その違いだと思います。

>>74
ダイレクトエックス

76 :デフォルトの名無しさん:2006/02/24(金) 00:57:33
>>75
ありがとうございます。
ちとDirectX8.0SDK見つけてきて再度チャレンジしてみます。

77 :デフォルトの名無しさん:2006/02/24(金) 10:06:07
をいをい

78 :デフォルトの名無しさん:2006/02/24(金) 10:19:15
>>73
DX9SDKでもDX8はビルドできる。75は単なる糞コテだから無視しろ。
単にお前がリンクするライブラリを指定してないだけ。
VC6やVC8なら設定方法わかるけどBCCは知らん。

つか真面目にやる気あんならBCCなんぞ使うな。

79 :デフォルトの名無しさん:2006/02/24(金) 10:31:12
ディスプレイドライバがサポートしていないためDirect9が利用できません。どうすればいいですか?
初心者でスンマセン


80 :デフォルトの名無しさん:2006/02/24(金) 10:51:37
>>79
・ハードでなんとかするよ派
・・パソコン買い替えよう派(ブルジョワ思考)
・・ビデオカード勝ってみる派
・・・AGP or PCIExpress派
・・・PCI派(動けばスペックには目を瞑る派)
・ソフトでなんとかするよ派
・・ドライバがサポートしているDirectXを使うよ派(DirectX7や8はすばらしいよ派)
・・DirectX9の中でサポートしてる機能だけを使うよ派(初期化できなければあきらめるよ派)
・・ソフトウェアでエミュレーションすれば動くよ派(動けば速度は関係ないよ主義)

81 :デフォルトの名無しさん:2006/02/24(金) 10:58:44
>>80
色々とありがとうゴザイマス

82 :デフォルトの名無しさん:2006/02/24(金) 11:07:17
またまたスイマセンが
ソフトウエアでエミュレーションって何をどうすれば?まったくワカランです。

83 :デフォルトの名無しさん:2006/02/24(金) 11:11:59
リファレンスラスタライザ

84 :デフォルトの名無しさん:2006/02/24(金) 11:34:15
リファレンスラスタライザ って何ですか?

85 :デフォルトの名無しさん:2006/02/24(金) 11:35:39
仏の顔も三度(ry

86 :デフォルトの名無しさん:2006/02/24(金) 11:37:07
スイマセンまったくわかんないです。

87 :デフォルトの名無しさん:2006/02/24(金) 11:43:10
3Dデバイス作成時のヘルプを確認すべし。

88 :デフォルトの名無しさん:2006/02/24(金) 11:45:30
少しは検索エンジンで調べる努力をしろ低脳

89 :デフォルトの名無しさん:2006/02/24(金) 11:58:11
とりあえずグラフィックボード勝手恋
ソフトウェアだと、それなりのPCでも1秒間に1回か2回しか描画できないぞ

90 :デフォルトの名無しさん:2006/02/24(金) 12:00:50
>>79
「初心者」という免罪符を振り翳して自分では調べようとも
しないバカはどこへ行っても嫌われるって事を覚えような

91 :デフォルトの名無しさん:2006/02/24(金) 12:03:22
最近嫌味な奴増えたな

92 :デフォルトの名無しさん:2006/02/24(金) 12:17:27
最近、この手の話にいちいち怒っていたら、心の健康に悪いことに気がついた。
対処法は相手を対等の人間と考えないこと。
猿に言葉が通じないことを、いちいち怒っても仕方がないと思えばいい。

93 :デフォルトの名無しさん:2006/02/24(金) 17:17:43
↓の住人たちとはえらい違いだなw
http://pc8.2ch.net/test/read.cgi/isp/1130463762/196-

94 :デフォルトの名無しさん:2006/02/24(金) 17:20:55
これを嫌味と取る奴は、もう駄目だろうなぁ・・・

95 :デフォルトの名無しさん:2006/02/24(金) 17:36:02
>>90
その前にお前が>>1を読もうな。

96 :デフォルトの名無しさん:2006/02/24(金) 22:26:28
DirectX9が対応してないビデオカードって、どのぐらい昔なんだろう。

97 :デフォルトの名無しさん:2006/02/24(金) 22:36:47
Voodoo3とか

98 :デフォルトの名無しさん:2006/02/24(金) 22:43:37
いまだにLagunaが現役で動いてたりするがな。

99 :デフォルトの名無しさん:2006/02/24(金) 23:11:40
Voodoo3はほとんどのゲームが動かないんじゃないかな。
テクスチャが256x256の正方形までだっけ。

100 :デフォルトの名無しさん:2006/02/24(金) 23:50:59
昔はほとんどのゲームがVoodooじゃないと動かなかったのにっ

101 :デフォルトの名無しさん:2006/02/25(土) 04:33:39
>>78
はぁありがとうございます。
いろいろ調べたのですがどうやらリンクがされてなかったようです。
この問題は手動でリンクする事で解決されましたが今度は、d3d8.libは無効的なエラーを吐きやがりました。
いろいろ調べた結果VC用のlibファイルはボーランドのリンカでは流用できないようです。
この事はd3d8.dllからライブラリを作成して解決する事ができました。

VCですが検討してみます

102 :デフォルトの名無しさん:2006/02/25(土) 09:51:12
>>101
BCC自体に精通してないとソースをVCからBCCに書き換えたり
VC用のライブラリをBCC用に変換したり余計な手間が増えるから難易度はあがるよ

http://www.clootie.ru/cbuilder/index.html
もう出来たみたいだけど、BCC用に変換したものはここからダウンロード出来る

103 :デフォルトの名無しさん:2006/02/25(土) 13:48:11
BCCって事はフリー版なんだろうが、
何であんな古いコンパイラを使うのか理解に苦しむ
最適化も古いから速度も遅くなるぞ

104 :デフォルトの名無しさん:2006/02/25(土) 14:12:57
なんで2005ExpressあんのにわざわざBCC使うんだ?
タダなのに

105 :デフォルトの名無しさん:2006/02/25(土) 18:26:54
>>74
ディレクトエックス

106 :デフォルトの名無しさん:2006/02/25(土) 18:30:10
>>74
グゥレイトォエックス

107 :デフォルトの名無しさん:2006/02/25(土) 21:50:38
>>74
MSKKの表記はダイレクトエックス

>>104
まだ出たばかりで情報少ないからじゃね
VCTKはPSDKのインスコが嫌われてた
VCEも一年限定配布のせいであまり強力にプッシュする気にならん(´・ω・`)

108 :デフォルトの名無しさん:2006/02/25(土) 23:08:15
公開ダウソ期間が1年ってだけで永久に使えるワケだが何故嫌う?

109 :デフォルトの名無しさん:2006/02/26(日) 00:00:19
一年で消えるものに労力つぎ込むのが惜しい

110 :デフォルトの名無しさん:2006/02/26(日) 02:27:40
>>107
カンファレンスとかだとみんなディレクトエックスって言うとる。

111 :デフォルトの名無しさん:2006/02/26(日) 11:44:36
>>109
屁理屈付けて一生BCC使ってな

112 :デフォルトの名無しさん:2006/03/01(水) 03:31:52
「○○○(○)」
↑ってなんて読むんですか?

113 :デフォルトの名無しさん:2006/03/05(日) 21:16:37
DirectXと言うか、プログラミングのつくりに関する質問なのですが、
ゲームのモジュールとDirectX関連の機能のモジュールは分けるのが基本?
描画やキー受付などの入出力と、ゲーム本体の動作は同期はしても
依存はさせないのが行儀の良いプログラミングスタイルなのでしょうか?

114 :デフォルトの名無しさん:2006/03/05(日) 21:19:53
決まりなど無い、勝手に汁

115 :デフォルトの名無しさん:2006/03/05(日) 21:47:54
>>113
たとえば、DirectXとプログラミング設計手法の話は
別々のスレで行ったほうが閲覧性があがる。
だから分けたほうがいいんだ。
それができないなら抽象化して考える訓練が不足している。

変更に強いプログラムほどモジュールは独立しているはずだ。
「モジュール結合度」についてもっと調べればム板で議論するために
必要な基本的な知識を得ることができるだろう。

116 :デフォルトの名無しさん:2006/03/06(月) 22:32:13
すいません、DirectInputを使用してプログラムを作ろうとしたのですが、
DirectInputオブジェクト作成で躓いています。

DIRECTINPUT_VERSIONに0x8000を定義し、
DirectInput8Create関数を呼び出してDirectInputオブジェクトへのポインタを取得しようとした所
0x8007047e 指定されたプログラムは、新しいバージョンの Windows を必要とします。
と言うエラーコードが帰り、関数を失敗してしまいます。

OS:Windows2000SP4
DirectX:DirectX 9.0 SDK Update (October 2004)
開発環境:VisualStudio2005

DirectX9.0 (October 2004)はWindows2000に対応していたと思ったのですが、
記憶違いでしょうか?

どなたかよろしくお願いします。

117 :116:2006/03/06(月) 23:28:40
自己解決しました……入門書が間違っている

>>DIRECTINPUT_VERSIONに0x8000を定義し

上記処理を削ったら問題なく動作致しました。
『DirectX9プログラミング入門』に騙されました、いや鵜呑みにした自分が悪いんですけどね。

118 :117:2006/03/06(月) 23:47:04
うわ恥ずかしい、よくよく見ていくと全然違う所が原因だった!!
御免なさい『DirectX9プログラミング入門』あなたは正しかった!!

首吊って来ます……o.....rz

119 :デフォルトの名無しさん:2006/03/07(火) 15:38:27
寧ろどうやったらそんなエラーが出せるのか知りたいもんだが

120 :デフォルトの名無しさん:2006/03/08(水) 11:48:22
キャタピラの動作ってどうやってますか?
パターンでアニメ処理だと地面と同期しない。
CADの機構解析なみに計算させるわけ?
下面は地面固定、上面は速度の2倍スクロール、前後輪はタイヤ回転させて内側面半分非表示・・・が無難かな。
スクロールってのもやっかいだな。

121 :デフォルトの名無しさん:2006/03/08(水) 11:50:34
何がしたいのかわからない

122 :デフォルトの名無しさん:2006/03/08(水) 11:55:10
>120
プログラム以前の問題
つかスレ違い

123 :デフォルトの名無しさん:2006/03/08(水) 17:48:26
>>120
そういう人があまりやってなそうなことを自分で考えるのがおもしれーんじゃねーのか。

124 :デフォルトの名無しさん:2006/03/10(金) 08:12:00
ついにSDKがCDに入らなくなった
狂ってるぜMS

125 :デフォルトの名無しさん:2006/03/10(金) 14:29:09
悩んだ挙句にここで質問します
数々のサンプルで頻繁に使われる固定フレームレートのゲーム用のメッセージループ
(timeBeginPeriodで精度上げてPeekMessage使ってtimeGetTimeで空ループぶん回し時間調整。CPU使用率100%)
とDirect3D9のフルスクリーンモードについてなのですが…

この板内のどこぞの過去ログにCPU使用率を下げるためにtimeGetTime()空ループに
Sleep(1)を挟むと良いという話があったのでやってみたところ、確かに使用率は
下げつつそこそこの精度で固定フレームレートを実現できました。
…Windowモードだけでは。
D3D9でフルスクリーンモードにすると何故かタスクマネージャのCPU使用率が100%に張り付きます。

一応動作中にFullScreen表示とWindows表示を切り替えられるように書いていますが、
全く同じ処理をしてるのに、FullScreenにすると100%、Window表示にすると手持ちPCだと
8%前後になる状況です。
ぶっちゃけ原因が判りません。 orz

FullScreenにするとSleepが1ms待たずに制御を戻したりするんでしょうか?

126 :125 :2006/03/10(金) 14:30:13
書き忘れ
Sleep(1)の精度に関してはキニシナイ方向で

127 :デフォルトの名無しさん:2006/03/10(金) 14:30:27
http://pc8.2ch.net/test/read.cgi/gamedev/1137730564/352-

128 :125:2006/03/10(金) 15:40:37
切り分けてみた

一切描画しない完全空ループ 0〜1%
WindowモードでPresent()だけ回す 8%前後
FullScreenでPresent()だけ回す  100%張り付き

どうみてもPresentに渡すパラメータが問題のようです。
本当にありが(ry

…でもPresent(NULL,NULL,NULL,NULL);じゃ駄目なんだろうか?
それにWindowモード時でもPresent()だけで8%ってのも変…

>127
質問読んでないだろ

129 :デフォルトの名無しさん:2006/03/10(金) 20:14:03
メタセコイアでXファイルを作っています。
DirectXで使うXファイルの場合、作るときの大きさはどのくらいのものなんですか?
小数点から大きな実数まであるのでよく分かりません。
例えばゲームで使うキャラクターだったら、1.0,1.0,1.0の立方体に収まるくらいですか?

130 :デフォルトの名無しさん:2006/03/10(金) 22:22:53
>>129
質問とはまったく関係ないが君が求めてる本はこれだと思う
http://www.amazon.co.jp/exec/obidos/ASIN/4822282538/

131 :デフォルトの名無しさん:2006/03/10(金) 23:36:48
>>129
単位をmにして考えた寸法でいいでしょ。
舞台が宇宙で巨大戦艦とかいうんじゃないだろ?

132 :129:2006/03/11(土) 00:15:52
>>131
なるほど、bですね。
分かりました、ありがとうございます。

133 :デフォルトの名無しさん:2006/03/11(土) 11:06:53
すいません、DirectXでのXファイルの保存の仕方が分かりません。
検索しても出てこない、本屋で探しても見つからない、
だけどリファレンスには何かあるんです。
Direct3Dでメッシュを読み込んで、ポリゴンの頂点にUV座標を設定して、
それをまたXファイルに書き出したいのです。

/*
フリーのソフトには
モデリングはできてもテクスチャのUV座標までは設定できないものしかないようなので
このような方法で何とかしようと思いました。
*/

134 :デフォルトの名無しさん:2006/03/11(土) 11:08:32
>>133
D3DXのリファレンスを隅から隅まで読め

135 :デフォルトの名無しさん:2006/03/11(土) 11:29:54
>>133
六角大王ぐらいの出費は覚悟したほうがいいよ。
UV設定するツールなんて作ってたらそれだけで開発期間食っちまうぜ。
勉強もいいけど、君がそれを簡単にできるぐらいまで実力がついてからやってもいいと思う。

136 :デフォルトの名無しさん:2006/03/11(土) 16:55:39
メタセコイアのせいでフリーの3DCGソフト全般がダメだと思われてる

137 :デフォルトの名無しさん:2006/03/11(土) 17:00:35
( ゚д゚)ポカーン

138 :デフォルトの名無しさん:2006/03/11(土) 17:34:43
メタセコイアが凄すぎるせいで、って意味ならそうかもなぁ…

139 :デフォルトの名無しさん:2006/03/11(土) 17:47:17
つか、メタセコみてみたけど、
アニメーションができないだけでUVマップはできるじゃん。

140 :デフォルトの名無しさん:2006/03/11(土) 18:00:17
有料旧版→UVにバグ
無料(LE)版→UV不可
有料最新版→UV可能

無料版はゲーム製作には使い物にならんから有料版買え
できれば3dsMAXかMAYAを買え(個人的にはLW3Dを超オススメだ)
値段と性能のバランスが取れてるのはgameSpaceだが英語版しかない
無料で一番性能がいいのはBlender。だが回避しないといけない罠が多くて素人にはオススメできない
無料でバカでも安心して使えるようなソフトは現状では存在しない

141 :デフォルトの名無しさん:2006/03/11(土) 18:03:52
無償でよいソフトがあっても、馬鹿には使えない

142 :デフォルトの名無しさん:2006/03/11(土) 18:28:22
>>140
六角大王は?
旧版のフォーマットで出せばスキニングもできなかったっけ?

143 :デフォルトの名無しさん:2006/03/11(土) 19:42:34
カード情報抜かれるらしい

144 :デフォルトの名無しさん:2006/03/11(土) 19:57:05
>>143
スキンメッシュだ・・・orz
どうしちまったんだ・・・俺・・・orz

145 :デフォルトの名無しさん:2006/03/11(土) 22:47:44
DirectX8から9への移行で質問です

移行したらいきなりテクスチャが貼れなくなりますた orz
DX8の時は単純にSetTexture()してDrawPrimitive()したただけで表示されましたが、
DX9で同じ事しても貼られるべき所が緑に塗りつぶされてしまいます

DX9のチュートリアルとサンプルソースみても、いきなりテクスチャ座標変換の話から
入っていて単純に貼るだけの方法は見当たりません… ナンダヨソレ
なおサンプルソースのSetTextureStageStateや座標変換あたりのコードをベタで
取り込むとそれっぽい効果のかかったテクスチャは貼られます
俺がやりたいのはそんな高度な事じゃねえんだよ…>Microsoft

やったことはこんな感じ
(D3DFVF_XYZ|D3DFVF_TEX1)なuvを含んだ頂点を用意
SetTexture( 0, pTexture );でテクスチャ設定
SetSamplerState(0,D3DSAMP_MAGFILTER,D3DTEXF_NONE);
SetSamplerState(0,D3DSAMP_MINFILTER,D3DTEXF_NONE); //気休め

これだけで後はSetStreamSource()、SetFVF()、DrawPrimitive()です。
DX8の時はSetTextureStageStatedでフィルタ指定してただけで、DX9では
SetSamplerStateに変わったのでそこだけ書き換えました。
DX9では他に指定があるのでしょうか?

146 :145:2006/03/11(土) 22:56:50
激しくFVFコードの指定間違えてました
145は無かったことにして下さい

スンマセン orz


147 :133:2006/03/11(土) 23:04:04
>>134
はぁ。もう一回読み直して整理したらこんな感じになったのでこれで弄ってみます。
@D3DXFileCreate
AID3DXFile::CreateSaveObject
BID3DXFileSaveObject::GetFile
CID3DXFileSaveObject::Save

>>135-144
買うなら安いメタセコイアですかねぇ。
無償版LEは結構いい感じでした。
ちょびっとだけ購入を検討しています。

「3DACE」というフリーソフトがあるのですけれど、
UV設定できない以外はこれくらいの機能でいい感じでした。

ありがとうございました。

148 :デフォルトの名無しさん:2006/03/12(日) 01:17:49
>>147
なんでそんな金ないの?
六角大王にしとけって。
スキンメッシュもできるから。

149 :デフォルトの名無しさん:2006/03/12(日) 01:25:54
六角大王はそもそもモデリングしづらすぎるけどなw

150 :デフォルトの名無しさん:2006/03/12(日) 01:31:50
>>149
モデリングまではメタセコのフリーでやってUVから六角大王でやるとか・・・
ただ、

頂点〜面〜法線〜UV〜アニメーション〜スキンメッシュ〜その他シェーダ

ってモデルのコンバートサポート対象段階(笑)があるとして、
法線〜からいって怪しくなるからな。アニメーションまでいくとほとんどサポート無しって感じだし。
頂点と面ぐらいしか綺麗にコンバートの保障があるものってないよな。
つか、モデリングソフト作ってる奴って、あまりにヘタレが多すぎ。
本職でこの程度の腕なんて悲しすぎるにもほどがある。

151 :デフォルトの名無しさん:2006/03/12(日) 01:33:39
追記:頂点と面に関しても4角形以上のポリゴンが入ると駄目とか多い。
マジで給料泥棒にもほどがある。

152 :デフォルトの名無しさん:2006/03/12(日) 01:43:16
自分でできない奴程、他人に厳しい法則。

153 :デフォルトの名無しさん:2006/03/12(日) 01:56:13
>>152
いや、本当にそれほど大したもんじゃないし。
そりゃ各モデリングソフトごとに特殊な形式で値を計算しててそれ用に値を出すのは
それなりに困難なのかもしれねーけど。

ホントにこの程度じゃそんな不具合ないじゃん。
別に完璧を求めてるわけでもないし、フリーで組んでる人の重箱の隅を突いてるわけでもないし。

煽りレスもちゃんと問題を理解した上でつけないとただの馬鹿に見えるよ>>>152

154 :デフォルトの名無しさん:2006/03/12(日) 02:09:10
自分の出来る部分だけ見てるからだろ。
ヘタレでも一つぐらいは自分のがマシって部分は見つけられる。

155 :デフォルトの名無しさん:2006/03/12(日) 02:42:21
>>154
いや、なんでそんなに頑張るのかわからんけど、
会社でお金払って売ってるものでXXコンバート機能・・・○とかパッケに
書いちゃってんのに出来てないってもう詐欺だと思わん?
なんのいいわけにもならないよ。商品だし。

俺等、普通に「ああ、まあ、よくあるよね」って済ましちゃってるけど。
マジな話ただの詐欺罪だからね。

156 :デフォルトの名無しさん:2006/03/12(日) 02:44:27
ああ、だからもっと叩くべきだと俺は思うよ。
こういうことちゃんとやらないとちゃんとやってるメーカーが馬鹿をみることになるよ。
一覧だけ見せられて対応表が書いてあって、○とかついてたらできるって誰でも思うでしょ。
また、あいまいにしちゃって対応表すら出してないメーカーにも潰れてもらったほうが
住みやすい世の中になるでしょ?

157 :デフォルトの名無しさん:2006/03/12(日) 09:30:36
たった一回一言レスした俺がそんなに頑張ってるなら、
お前はどんだけ頑張ってるんだw

158 :デフォルトの名無しさん:2006/03/12(日) 10:42:17
大したものじゃなければこんなところでグチグチ言わず自分で作ればいい。
それだけ大口を叩いたんだから、大したことのないものくらい簡単に作れるだろう?

159 :デフォルトの名無しさん:2006/03/12(日) 11:08:25
口だけに決まってるだろ!

160 :デフォルトの名無しさん:2006/03/12(日) 14:37:47
>>158
だから作ってるだろ?
ゲーム会社ごとに似たようなモン再開発してんじゃねーか。

161 :デフォルトの名無しさん:2006/03/12(日) 14:44:38
( ゚д゚)ポカーン

162 :デフォルトの名無しさん:2006/03/12(日) 16:51:19
>>158
問題はそうじゃなくてモデリングソフト売ってる会社が
いい加減過ぎるのは問題でしょ。
ってことよ。
別に誰かができるできないを言っていたわけじゃないよ。

163 :デフォルトの名無しさん:2006/03/12(日) 17:08:06
文句あるならこんなところでうだうだ言ってないで、直接言うなり、
出るとこでて金返してもらえば?

164 :デフォルトの名無しさん:2006/03/12(日) 17:20:10
>>160
作ったのだったら、文句を言わずにそれを使えばいいだけだろ。
自分のものが優れていると思ったら、売り出したらどうだ?
どうせ全然使い物にならないと立派な評判を得ることになるだろうが。

165 :デフォルトの名無しさん:2006/03/12(日) 17:37:51
>>163-164
つか、論点ズレまくりで何を話してるのかわからない。
モデリングソフトを作ってる会社が詐欺行為を働いてることと
俺がそれ相応の機能が作れることとなんのつながりがあるんだ?

166 :デフォルトの名無しさん:2006/03/12(日) 17:46:38
口先だけの>>165がウザイという話をしているのに、
何を論点のずれた話をしているんだ?
だれも>>165が本気で相応の機能が作れるなんて思っていないし、
口先だけの詐欺師だってことは、みんなきちんと認めているから。

167 :163:2006/03/12(日) 17:49:52
>>165
ハァ?何言ってんの?
俺は作れとか作れるとか言って無いけど・・・
詐欺だと思うなら被害届けだせばいい。
言ってることがわからないなら、もうちょっと大人に出直そうね。

168 :デフォルトの名無しさん:2006/03/12(日) 17:55:18
>>モデリングソフトを作ってる会社が詐欺行為を働いてることと
>詐欺だと思うなら被害届けだせばいい。

以上、結論が出ました。

169 :デフォルトの名無しさん:2006/03/12(日) 18:10:52
ワラタ

170 :デフォルトの名無しさん:2006/03/12(日) 18:22:59
別に被害届けを出すだけが解決方法じゃないでしょ。
噂を広げて警告を発することも十分効果があるよ。

171 :デフォルトの名無しさん:2006/03/12(日) 18:25:11
(・∀・)ニヤニヤ

172 :デフォルトの名無しさん:2006/03/12(日) 18:31:58
>もうちょっと大人に出直そうね。 

173 :日本語すらまともに:2006/03/12(日) 18:32:45
紛れ込んでますね

174 :デフォルトの名無しさん:2006/03/12(日) 18:33:18
>別に被害届けを出すだけが解決方法じゃないでしょ。
じゃあ早く解決するために何かしたらどうだ?

175 :デフォルトの名無しさん:2006/03/12(日) 18:37:52
>>174
俺はこの方法がベストだと思ってるが?

176 :デフォルトの名無しさん:2006/03/12(日) 18:42:15
>>175
私もベストだと思います。


177 :デフォルトの名無しさん:2006/03/12(日) 18:42:15
↓例のプニプニAAで場を和ませて!

178 :デフォルトの名無しさん:2006/03/12(日) 18:42:47
>>175
それでいいと思うよ

179 :デフォルトの名無しさん:2006/03/12(日) 18:43:18
>>175
禿同

180 :デフォルトの名無しさん:2006/03/12(日) 18:51:35
口先縛りにより、それ以外に方法はない。

181 :133:2006/03/12(日) 19:21:48
>>148,>>150
何か色々とお金がかかって、普段財布の中に\1000円入ってるか入ってないかです。

スキンメッシュについて調べてみたのですが、よく分かりませんでした。
よく分からなかったので今の俺には必要ないみたいです。

どうせ買うならLightWave3Dが欲しい気もします。
学生版で\60,800くらいらいいですがorz

182 :デフォルトの名無しさん:2006/03/12(日) 19:30:29
金が無いなら、頭使え、
頭が無いなら、金使え。

183 :デフォルトの名無しさん:2006/03/12(日) 19:31:34
>>181
普通にゲームで人間が動くと肘とか膝とか曲がってもポリゴンがバリバリ割れないっしょ。
皮膚が伸びるみたいに。アレ。
っていうかDirectXのSDKのサンプルでスキンメッシュってあるじゃん。

184 :133:2006/03/12(日) 19:37:02
>>182
できれば頭のほうを使いたいです。

>>183
なるほど!
バリバリ割れないのはすごいことなんですね。
何か別に普通だと思って見てました。

とりあえず春休みはDirectXでxファイルのUV情報を変更して保存するのを頑張ってみます。

185 :デフォルトの名無しさん:2006/03/12(日) 19:46:14
>>184
>とりあえず春休みはDirectXでxファイルのUV情報を変更して保存するのを頑張ってみます。
その程度の技術でUVに挑戦するのか?
極上の馬鹿だなw
身の程を知れw

186 :133:2006/03/12(日) 19:52:47
>>185
UVは終わってます。
保存が問題です。

187 :133:2006/03/12(日) 20:18:14
「w」とか使って必死で妄想している方が出てこられたので、
質問は一旦保留とさせていただいて、もう少し頑張ってみます。
回答してくださった皆様、ありがとうございました。

188 :デフォルトの名無しさん:2006/03/12(日) 20:28:32
>>187
ギャハハハハハ!バーカw

189 :デフォルトの名無しさん:2006/03/14(火) 23:50:01
質問です、Windows標準の仮想キーコードと、DirectInput独自のキーコードの
相互変換表みたいなものは存在しないのでしょうか?
アプリケーション側からのキーコンフィグで、VK_〜を受信してキーコンフィグを行いたいのですが、上手くいかない気がしてきました。


190 :デフォルトの名無しさん:2006/03/18(土) 08:45:22
---------------------------
Tutorial01.exe - コンポーネントが見つかりません
---------------------------
d3d10.dll が見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。
---------------------------
OK
---------------------------

d3d10.dll ってどこで入手できますか?

191 :デフォルトの名無しさん:2006/03/18(土) 12:27:45
スレ初心者なのですが、くだすれってどういう意味ですか?



192 :デフォルトの名無しさん:2006/03/18(土) 12:35:44
"くだ"らない質問する奴は"去れ"。
を2ch風の言い回しにしたもの。

193 :http://www.vector.co.jp/soft/win95/util/se072729.html:2006/03/18(土) 18:40:17
TextSS の64bit化おながいします

もしくは64bitにネイティブ対応した置換ソフトないですか?

194 :デフォルトの名無しさん:2006/03/19(日) 23:33:20
 

195 :デフォルトの名無しさん:2006/03/27(月) 11:24:50
キーコンフィグ用のアプリもDirectInput使って処理すればいいと思うんだがどうか。
何が押されたかを検出するAPIもあるんだし。

196 :デフォルトの名無しさん:2006/03/27(月) 14:19:28
>>190をお願いします
サンプルのビルドは出来たのですが実行できません

197 :デフォルトの名無しさん:2006/03/27(月) 14:22:57
>>196は何故DirectX10をインストールするという
基本かつ誰でも分かる事を試さないで居るのかが最大の論点。

198 :デフォルトの名無しさん:2006/03/28(火) 08:55:36
キャラの座標は
左上と真ん中
どちらのポイントを保持して使うべきですか

199 :デフォルトの名無しさん:2006/03/28(火) 09:08:58
やべぇ、すげぇこと思いついちまった。DirectX10ってDirectXXだな!
さて遅刻か…。

200 :デフォルトの名無しさん:2006/03/28(火) 09:57:34
ランブルローズIOIO

201 :デフォルトの名無しさん:2006/03/31(金) 10:50:22
>>199
そんなの10年も前から、ロックマンX=ロックマン10だったさ!
だからいつまでたってもロックマン9が出ないのさ!
出すと完結させなきゃいけないから

202 :デフォルトの名無しさん:2006/04/21(金) 00:52:28
>>201
うわーロックマンXってそういう意味だったんだー。
始めて気づいた!
記念あげ

203 :デフォルトの名無しさん:2006/04/22(土) 12:13:37
DirectXって単語は書けるようになったんですが、なんて読むのかわかりません!


204 :デフォルトの名無しさん:2006/04/22(土) 12:19:04
ダーエクトクス

205 :デフォルトの名無しさん:2006/04/22(土) 12:21:16
スロート・ウォブラー・マングローブ

206 :デフォルトの名無しさん:2006/04/23(日) 18:44:48
>>203
ディレクトエックス












と前に先輩が読んでた。
ちなみに、VisualStudioは、ビジュアルストゥゥーーーーディオだって

207 :デフォルトの名無しさん:2006/04/27(木) 08:00:25
DirectXSDKをインストールしましたが
VCのウィザードに追加されません。

なんでだろう…

208 :デフォルトの名無しさん:2006/04/27(木) 23:19:50
>>207
VC6だからw

209 :デフォルトの名無しさん:2006/05/05(金) 14:24:38
DirectInputでキー入力処理をしてるプログラムで
チャットメッセージの入力なんかにIMEを使わせてあげたい場合の処理って
どこかにまとまった情報のあるWebページありますか?

DXUTguiのソース読んだほうが早い?

210 :デフォルトの名無しさん:2006/05/05(金) 14:34:22
ぶっちゃけると、IMEを使うゲームはキーボード周りはDirectInputを
使っていないのが多い。
っていうか、俺はDirectInputを使っているのを見たことがない。

だからほとんどのネトゲでPostMessageでWM_KEYDOWNを送って
マクロが作れる。

211 :デフォルトの名無しさん:2006/05/05(金) 14:56:11
そもそもキーボードの処理でDirectInputを使う必要性が皆無。
キーボードに関してはWin32APIの方が圧倒的に機能が優れているのに、
わざわざDirectInputを使って無い無い言っている奴は何がしたいんだ?

212 :デフォルトの名無しさん:2006/05/05(金) 15:21:18
DirectInput IME の検索結果のうち 日本語のページ 約 350 件
DirectInput IME の検索結果 約 699 件

という検索結果はそういう事だったのねorz...
ていうかDXUTguiもDirectInput使ってないぽ?
DirectInputはマウスとジョイスティックだけにしときますわ

213 :デフォルトの名無しさん:2006/05/05(金) 15:40:20
自分のPCのDirectXの情報を知るにはどうすればいいのですか?
ちなみに機種は「VAIO TYPE V VGC-VA171B」です

214 :デフォルトの名無しさん:2006/05/05(金) 16:35:13
>>213
ファイル名を指定して実行 dxdiag

215 :デフォルトの名無しさん:2006/05/05(金) 20:50:34
ありがとうございます。

216 :209:2006/05/06(土) 01:44:00
ってウィンドウズメッセージじゃNumpadと普通のEnter区別つかないじゃん…
AltとかF10の挙動を抑制するのもややこしいし、
やっぱIME必要な時だけUnacquireするようにDirectInputで組むかぁ

217 :デフォルトの名無しさん:2006/05/06(土) 19:39:26
回答を引き出すための上手い書き方だなw
普通に質問すれば答えるのに

218 :デフォルトの名無しさん:2006/05/07(日) 19:18:40
Visual C++ 2005 Express Edition使ってDirect3dのプログラムを作りたいんですが
自分で書こうとしてもエラーが出て失敗します。
いい入門のページないかな・・。

219 :デフォルトの名無しさん:2006/05/07(日) 19:33:16
CreateDevice.cppの中身をそのままコピーして
別のプロジェクト作って実行すると大量にエラーがエラーが出るのはなぜだろう?
i:\dx9sdk\include\d3d9types.h(1385) : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(43) : error C2275: 'D3DPRESENT_PARAMETERS' : この型は演算子として使用できません
i:\dx9sdk\include\d3d9types.h(1474) : 'D3DPRESENT_PARAMETERS' の宣言を確認してください。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(43) : error C2146: 構文エラー : ';' が、識別子 'd3dpp' の前に必要です。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(43) : error C2065: 'd3dpp' : 定義されていない識別子です。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(45) : error C2224: '.Windowed' : 左側が構造体または共用体型ではありません。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(46) : error C2224: '.SwapEffect' : 左側が構造体または共用体型ではありません。
c:\documents and settings\裕\my documents\visual studio 2005\projects\win01\win01\winmain.c(47) : error C2224: '.BackBufferFormat' : 左側が構造体または共用体型ではありません。

---省略

220 :デフォルトの名無しさん:2006/05/07(日) 19:38:50
裕君、必用なヘッダファイルはきちんと呼び出しているかね?

221 :デフォルトの名無しさん:2006/05/07(日) 19:40:49
いい入門ページの前に、並みの頭が必要。

222 :デフォルトの名無しさん:2006/05/07(日) 19:46:50
裕!
パソコン触る前に宿題しなさいって言ってるでしょ!

223 :デフォルトの名無しさん:2006/05/07(日) 20:22:29
早乙女といい裕といい、チンカスが多いなぁ。

224 :デフォルトの名無しさん:2006/05/07(日) 22:18:26
>>196
超遅レスだが、同じ問題にぶち当たったので解決策

最新のSDKのチュートリアルはDirectX10を使用しているが、
WinXP用のDirectX10は出ないようなので、Vistaが出るまで動かすことは不可能

解決策は過去Ver.のSDKからサンプルだけインスコして、それを使う
Oct 2005のチュートリアルで試したところ、実行できた

225 :デフォルトの名無しさん:2006/05/08(月) 16:51:16
------ ビルド開始: プロジェクト: directxtest, 構成: Debug Win32 ------
コンパイルしています...
createdevicemy.cpp
i:\dx9sdk\include\d3d9types.h(1385) : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
c:\documents and settings\裕\my documents\visual studio 2005\projects\directxtest\directxtest\createdevicemy.cpp(13) : warning C4083: ')' が必要です。識別子 'C4819' が見つかりました。
リンクしています...
createdevicemy.obj : error LNK2019: 未解決の外部シンボル _Direct3DCreate9@4 が関数 "long __cdecl InitD3D(struct HWND__ *)" (?InitD3D@@YAJPAUHWND__@@@Z) で参照されました。
C:\Documents and Settings\裕\My Documents\Visual Studio 2005\Projects\directxtest\Debug\directxtest.exe : fatal error LNK1120: 外部参照 1 が未解決です。

226 :デフォルトの名無しさん:2006/05/08(月) 16:54:02
>>225
何そのひと目で原因が分かるエラーの数々

227 :デフォルトの名無しさん:2006/05/08(月) 17:06:32
------ ビルド開始: プロジェクト: directxtest, 構成: Debug Win32 ------
リンクしています...
マニフェストを埋め込んでいます...
ビルドログは "file://c:\Documents and Settings\裕\My Documents\Visual Studio 2005\Projects\directxtest\directxtest\Debug\BuildLog.htm" に保存されました。
directxtest - エラー 0、警告 0
========== ビルド: 1 正常終了、0 失敗、0 更新、0 スキップ ==========

228 :デフォルトの名無しさん:2006/05/11(木) 00:34:56


裕君、こんにちは


229 :デフォルトの名無しさん:2006/05/12(金) 12:11:50
>>228
なんだ、何か用?

230 :デフォルトの名無しさん:2006/05/12(金) 20:12:04
ネットに接続していないPCに、DirectX9.0cをゲーム等のCDからインストールしようと思ったのですが…
セットアップを実行、次へを押したらすぐにインストール完了画面に移行して、インストールされた様子が全くありません。
実際に9.0cが必要なゲームはプレイできないし…診断ツールではバージョンは9.0cと表示されているのですが
どうにかなりませんかね?

231 :デフォルトの名無しさん:2006/05/12(金) 20:20:31
>>230
お母さんに新しいPCを買ってもらいなさい。

232 :デフォルトの名無しさん:2006/05/12(金) 20:39:45
>>230
ゲームの名前とビデオカードの種類をまず書け。
話はそれからだ。

233 :デフォルトの名無しさん:2006/05/12(金) 21:05:32
>>230
DirectXは描画用ハードウェアなどを動かすためのもの。
だからDirectXがいかに最新でも、
ハードウェアがDirectX9.0cに対応していなければ当然動かない。

そしてここはDirectXを使ってゲームを作る人を対象にしたスレなので、
君の質問はスレ違い。

234 :デフォルトの名無しさん:2006/05/12(金) 22:24:58
>>230
予想:ノートPCのオンボード

235 :デフォルトの名無しさん:2006/05/13(土) 03:59:22
DirectInputのサンプルをコンパイル&実行したのですが、
エラー及び警告は出なかったがQueryInterfaceメソッドで
DirectInputDevice2に拡張する事に失敗し初期化を完了できず
実行しても入力が受け取れませんでした。
サンプルに添付していた実行ファイルは正常に動作するのですが・・
ソースは要約するとこんな感じなんですが、

#define DIRECTINPUT_VERSION 0x0800

static LPDIRECTINPUT Dinp = NULL;
static LPDIRECTINPUTDEVICE2 Dinp_stick = NULL;

HRESULT res;
LPDIRECTINPUTDEVICE tdid;

res = DirectInput8Create(hInst,DIRECTINPUT_VERSION,IID_IDirectInput8,(void**)&Dinp,NULL);
res = Dinp->CreateDevice(pdInst->guidInstance,&tdid,NULL);
res = tdid->QueryInterface(IID_IDirectInputDevice2,(LPVOID*)&Dinp_stick);
//ここでresにE_NOINTERFACEが返る

使用しているSDKはApril2006,コンパイラはVC++2005Express(VC++6.0でも同じでした)です。
どなたかよろしくお願いします。

236 :デフォルトの名無しさん:2006/05/13(土) 04:38:07
>>234
馬鹿が何も考えずにノートPCなんて買って「開発できない」なんてほんと死ねってのにもほどがありますなw

>>235
いまの時代に8なんかつかうんだから、そんなことぐらいひとりで解決しろ。
他の人間が使っていないものを使うっていうことはそういうことだ。

237 :デフォルトの名無しさん:2006/05/13(土) 04:52:41
>>236
君、235よりも恥ずかしいこと言ってるよ。

238 :デフォルトの名無しさん:2006/05/13(土) 04:54:37
>>237
あれ?キレちゃった?w

239 :デフォルトの名無しさん:2006/05/13(土) 05:44:49
イタイタシイ

240 :デフォルトの名無しさん:2006/05/13(土) 05:48:36
>>238
もっと分かりやすく言ってやろうか?
DirectX9SDKのヘルプでDirectInputのReferenceを見ろ。
そしたら236でどんな恥ずかしい事を言ってるのか分かるから。

241 :235:2006/05/13(土) 06:13:35
ども、235です。恥など百も承知っす。
>>236
レス有難うございます。
DirectInputはまだ8止まりという事でよかったですよね?
いろいろ試したんですが、この部分でもう1週間ほど詰まってるので
もう試すことも無くなってこのスレに流れ着いたんですけどねー。
何か気が付くことがあればまたお願いします。

242 :デフォルトの名無しさん:2006/05/13(土) 06:24:19
>>241
http://msdn.microsoft.com/library/ja/DirectX9_c/directx/input/ref/ifaces/idirectinputdevice9/idirectinputdevice9.asp
>QueryInterface を使って以前のインターフェイスを取得することはできない。

DirectInputDevice2を使いたいなら、7以下を使わないと駄目。

243 :235:2006/05/13(土) 06:39:03
>>242
なるほど、今はDirectInputDevice8が現行だったんですねー
おかげで何とかなりました。助かりました、ほんとに有難うございます。

244 :デフォルトの名無しさん:2006/05/13(土) 09:27:49
>>240
1年で
>>235-236
のレスを何度みたことか・・・w
また、ヘルプを見てもいないくせに鬼の首をとったかのような態度をとる>>235ももはや定番となりつつあるなw

245 :デフォルトの名無しさん:2006/05/13(土) 09:30:53
ところでなんでDirectInputを急に使う奴がふえたん?

246 :デフォルトの名無しさん:2006/05/13(土) 21:39:45
質問です。

ちょっとした波形を描画するのに、DirectXだと遅い、という話を聞いたことが
あるのですが、そんなこと無いですか?

別に3D空間上において、変なことをやりたいとかではなく、単に2D上に
描画したいだけです。

波形自体はとりあえず最大で10万点程度で、現行の普通のマシンで、
秒間20回程度は描画したいのですが、可能ですか?


247 :デフォルトの名無しさん:2006/05/13(土) 21:45:26
点をうつだけなら何とかなる。

248 :246:2006/05/13(土) 21:52:25
>> 247
点だけ、ってことはやっぱり遅いんでしょうか。
あと、線を引いたりすると、どうなりますか?

249 :デフォルトの名無しさん:2006/05/14(日) 00:58:47
>>248
やってみりゃいいじゃん。
クソ楽だし。
多分30分もあればできるよ。
スペック的にも余裕だと思う。

250 :デフォルトの名無しさん:2006/05/14(日) 01:25:03
>>246
DirectX使うならハードウェア機能に依存する。
つまり、グラフィックカード何よ?て話になる。
まあ、今時なら10万ポリでも余裕ですから、点も大丈夫じゃね?

251 :デフォルトの名無しさん:2006/05/14(日) 10:24:47
DirectX9とVC++.NET2003で作成してます。
DirectXをDebugバージョンにすると、エラーになってしまいます。
頂点数が多いのかと減らしてみても同じです。
Retailバージョンだとエラーもなく動きます。
わかる方がいれば、是非解決方法を教えてください。

Direct3D9: (ERROR) :Invalid primitive count

a.exe の 0x7c81eb33 で初回の例外が発生しました : Microsoft C++ exception: long @ 0x0012ed6c。
Direct3D9: (ERROR) :DrawPrimitive failed.

D3D9 Helper: IDirect3DDevice9::DrawPrimitive failed: D3DERR_INVALIDCALL


252 :デフォルトの名無しさん:2006/05/14(日) 10:37:06
用意した頂点数に対してDrawPrimitiveに渡すプリミティブ数が多すぎるとかじゃね?

253 :デフォルトの名無しさん:2006/05/14(日) 11:22:48
>>252
ありがとうございます。
解決しました。

こちらもその辺を疑ってチェックしていたんですが、もう一度チェックしたら
頂点0の時に呼び出してしまっていて、エラーになっていました。
逆に少なすぎたようです。

254 :デフォルトの名無しさん:2006/05/14(日) 12:00:01
意味ワカンネ。
こいつぜってぇろくなプログラム組んでねぇだろ。

255 :デフォルトの名無しさん:2006/05/14(日) 13:29:27
VC++ .NET 2005、DirextX 9.0 です。
くだらない質問で申し訳ありませんが、D3DXVECTOR4 型のベクトルと
D3DXMATRIXA16 型の行列の積を計算する演算子/関数はありますでしょうか?
よろしくお願いします。


256 :デフォルトの名無しさん:2006/05/14(日) 13:46:54
リファレンスをお読みください。

257 :255:2006/05/14(日) 14:34:00
リファレンスを見ているのですが、
ベクトルとスカラーの乗算、行列とスカラーの乗算、行列と行列の演算などは見つかりました。
ところが、ベクトルと行列の乗算が見つかりません。
オーバーロードされた演算子、Multiple っぽい関数、の両方を探しているのですが、どうにも・・・。

もう少しヒントをお願いします。


258 :デフォルトの名無しさん:2006/05/14(日) 14:47:30
>>257
D3DXVec4Transform

259 :255:2006/05/14(日) 14:50:35
>>258
Transform か・・・ありがとうございました。

260 : ◆yU/FRb8iaI :2006/05/14(日) 19:06:28
TRIP

261 :246:2006/05/14(日) 22:04:58
>>249
>>250
ありがとうございます。参考になりました。

262 :デフォルトの名無しさん:2006/05/15(月) 22:24:48
Direct3D のサンプルの SkinnedMesh を参考にスキンアニメーションをしていて、
動作はするのですが、3Mぐらいのメモリリークが起こって困っております。

原因は ボーンの名前配列が解放されない事でした。

1.AllocateName関数でボーンの名前の領域を取って malloc で名前を代入しています。
2.解放処理で delete[](名前配列) とやってもメモリが解放されない。

一応やってみた事として、
・AllocateName関数の中で生成のあとすぐに、解放をしてみたら解放できました。
・名前の生成をやめてみたら、DrawMeshContainer関数の中でエラーが起きました。
・NULLを入れても同じくダメでした。

自分のプログラムを疑うべきですが、AllocateName関数も解放処理もサンプルと同じです。
これはサンプル自体メモリリークしているのでしょうか?

263 :デフォルトの名無しさん:2006/05/15(月) 22:56:22
malloc して delete [] か・・・

264 :デフォルトの名無しさん:2006/05/15(月) 23:10:34
痺れるね

265 :262:2006/05/16(火) 01:39:27
間違えました。
malloc ×
memcpy ○

メモリ確保は newでやってます。

266 :デフォルトの名無しさん:2006/05/16(火) 23:04:58
質問です。環境は XP、.NET 2005、DirectX9.0 です。

バックバッファのピクセルデータに直接書き込みたいので、以下のような処理を組みました。
頂点処理などが終わったのち、バックバッファを取得して書き込み、
後に Present でフロントに持ち込んでいます。

ところが、LockRect に失敗し、D3DERR_INVALIDCALL が返ってきてしまいます。
第2、第3引数があやしいのですが、ダーティ領域の意味がつかめず、リファレンスを読んでもうまく理解できませんでした。


プレゼントパラメータは以下です。

ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed = TRUE;// ウィンドウモード
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;// 最適なバックバッファ
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;

(つづく)


267 :266:2006/05/16(火) 23:05:40
以下がソースの一部です。
よろしくお願いします。


g_pD3DDevice->Clear( 0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(0,0,255), 1.0f, 0 );
if ( SUCCEEDED( g_pD3DDevice->BeginScene() ) )
{

 /* ここで頂点処理などをした後、DrawPrimitive */

 HRESULT hr;

 LPDIRECT3DSURFACE9 pBackBuffer;
 hr = g_pD3DDevice->GetBackBuffer(0, 0, D3DBACKBUFFER_TYPE_MONO, &pBackBuffer);
 if (SUCCEEDED(hr)){
  D3DLOCKED_RECT bbRect;
  hr = pBackBuffer->LockRect(&bbRect, NULL, D3DLOCK_DISCARD); // ←ここでエラー: D3DERR_INVALIDCALL
  if (SUCCEEDED(hr)){
   *((BYTE *)bbRect.pBits + 0) = 0;
   *((BYTE *)bbRect.pBits + 1) = 0;
   *((BYTE *)bbRect.pBits + 2) = 0;
   *((BYTE *)bbRect.pBits + 3) = 0;
   pBackBuffer->UnlockRect();
  }
 }
 g_pD3DDevice->EndScene();
}
g_pD3DDevice->Present( NULL, NULL, NULL, NULL );


268 :デフォルトの名無しさん:2006/05/17(水) 00:11:18
>>266
D3DPRESENTFLAG_LOCKABLE_BACKBUFFER

269 :266:2006/05/17(水) 00:23:01
>>268
おお、そんなところに。ありがとうございます。


270 :デフォルトの名無しさん:2006/05/17(水) 14:51:07
すみませんが質問よろしくお願いします。
HTMLベースの研修用資料に一部DirectXを使いたいのですがJavascript等を使って
DirectX上の3Dを制御したいのですができますでしょうか?

例えばHTML上のボタンをクリックしたらDirectX上の3Dを動かすなどをしたいです
またその逆でDirectX上のボタンを押したらHTML上で別ページを読み込む等です

DirectXのことを調べ始めたばかりなのでとんでもない勘違いをしているかもしれません
がご回答お願いします。


271 :デフォルトの名無しさん:2006/05/17(水) 15:42:41
自分でHTMLレンダラを実装すれば可能です。
がんばって作ってください。

272 :デフォルトの名無しさん:2006/05/17(水) 20:38:48
>>270
ActiveXかなんかと勘違いしてね?
DirectXはゲーム向け3Dグラフィクスの制御に特化したライブラリ(のAPI)。
んでその認識が間違ってないならHTMLで、Javascriptで、と言い出したら
OpenGLの方が扱いやすい。

273 :デフォルトの名無しさん:2006/05/18(木) 00:48:18
質問です。XP、.NET 2005、DirectX9.0 です。

あらかじめ用意されたカラーバッファ?(例えば、800×600 の 32bit なら、BYTE* myBuffer = new BYTE[800*600*4]; ) に、
Direct3D を使って3Dシーンを書き込む必要があります。

考えた方法は、CreateRenderTarget でターゲットとなるサーフェスを作成し、
SetRenderTarget でターゲットを移してそのサーフェスにカラーデータを書き込み、
後にサーフェスを LockRect し、memcpy なりなんなりで myBuffer にカラーデータをコピーする方法です。
が、毎フレームこの処理を行うと考えると、無駄が多い気がします。

書き込み先を直接 myBuffer にする方法はありますでしょうか?
よろしくお願いします。



274 :デフォルトの名無しさん:2006/05/18(木) 02:21:12
>>273
ありません。

275 :デフォルトの名無しさん:2006/05/18(木) 02:23:45
>>273
>Direct3D を使って3Dシーンを書き込む必要があります。
まずまちがいなくこの必要がありません。
ホントは何がしたいの?

276 :デフォルトの名無しさん:2006/05/18(木) 04:03:45
>>275
パラメータ画像とか抜いた3Dシーンだけの絵を加工してプリンターからカラー印刷したいんです。

277 :デフォルトの名無しさん:2006/05/18(木) 04:25:24
毎フレームプリンタから印刷?
Lockして自前のバッファにコピーするのに無駄を感じる前に、
そっちの無駄の方が深刻だろう。

273で毎フレームやるって言ってるんだから、そういうことだろ?

278 :デフォルトの名無しさん:2006/05/18(木) 04:49:11
>>277
いえ、毎フレームやるのはバッファの確保だけでプリンタに印刷するのは指定された1回だけです。

最終的なイメージはこんな感じです。

□□□□
□□□□  ← これをプリンタに出力
□□□□


□←1フレーム分

279 :デフォルトの名無しさん:2006/05/18(木) 05:45:48
ガーと取っておいて、選んで印刷するのか。
ロックして自前で転送しかないと思う。
ちょっとメモリ帯域を喰う程度でこれといった無駄も無いでそ。

280 :273:2006/05/18(木) 08:28:57
えっと・・・質問以降のレスは偽者ですorz

今作っているのは、他のアプリケーションが呼ぶ dll です。
カラーバッファ領域の確保や、最終的な画面への転送などはそのアプリケーションが行い、
こちらは、カラーバッファの先頭アドレスと幅、高さのみ、そのアプリケーションに渡されています。
そのアプリケーションは他の方が作ったもので、こちらから改造することはできません。

とりあえずはサーフェスに書き込んで、memcoy なりで領域に転送することにしてみます。
ありがとうございました。


281 :デフォルトの名無しさん:2006/05/18(木) 19:28:00
DirectInput ゲームパッド 振動 使い方 説明 ページ どこ

282 :デフォルトの名無しさん:2006/05/18(木) 20:55:15
質問です。
DirectXで全画面を描画している時に、テキストを入力できるウィンドウを作る場合、
Win32APIだけならばCreateWindowで新しいウインドウを作ればいいようなものなのですが、
どこから調べていけばいいか分かりません。
そういうチップ的な解説をしているHPや本はないでしょうか?

283 :デフォルトの名無しさん:2006/05/18(木) 21:10:18
>>209が関係あるかと思ったけど関係ないようだな

284 :デフォルトの名無しさん:2006/05/20(土) 17:21:37
質問です。XP、.NET、DirectX 9.0c です。

フルスクリーンに切り替えようとしているのですが、IDirect3DDevice9::Reset に失敗し、
D3DERR_INVALIDCALL が返ってきます。
原因が不明で困っています。

リセットする前に、たとえばスプライトなら、OnLostDevice() を呼び出す必要があります。
D3DXCreateTextureFromFile で作成したテクスチャに対しては、サンプルなどでも特別な処理をしていないのですが、
何か特別な処理が必要なのでしょうか?

Reset に渡す D3DPRESENT_PARAMETERS 構造体ですが、
同じものを CreateDevice に渡した場合は、うまくフルスクリーンで動作します。

よろしくお願いします。


285 :デフォルトの名無しさん:2006/05/20(土) 17:35:29
リソースは開放した?
というかそれ以前にヘルプは読んだ?

286 :デフォルトの名無しさん:2006/05/20(土) 17:48:05
managedってショボいですか?

287 :デフォルトの名無しさん:2006/05/20(土) 17:48:12
読んでません

288 :デフォルトの名無しさん:2006/05/20(土) 18:03:35
構造体のパラメータに無効な値が設定されているというエラーでしょ
何処かのパラメーターにグラボが非対応な値が入ってるんじゃね


289 :デフォルトの名無しさん:2006/05/20(土) 19:37:49
>>286
VS .NETにDirectX9は入れてみたんだが、どうしたらManaged DirectXのプログラムと
普通のDirectXのプログラムを書き分けられるのかわからん・・・
.NETの場合は特に意識しないで参照からDirectXの各コンポーネントを参照していったら
全部Managed DirectXになるんだっけ?

290 :デフォルトの名無しさん:2006/05/21(日) 23:19:06
ちょっと質問です。
D3DFVF_XYZRHW を含む頂点で構成されるポリゴンが表示されなくて困ってます。

例えば、x=0.0f, y=0.0f, z=1.0f, rhw = 1.0f の頂点は、
SetTransform に何を突っ込んでも、ビューポートなどの設定をどういじっても、
必ずウィンドウの (0,0) に描画されると考えてよろしいでしょうか?
(あくまで座標の話です。色やアルファ値などについては考えないでください。また、カリング処理なども行っていません。)


291 :デフォルトの名無しさん:2006/05/22(月) 00:30:26
頂点一つだけでは何も表示されない。

292 :290:2006/05/22(月) 00:35:57
>>291
言い方が悪かったです。
頂点の最終的な表示位置が (0,0) になる、といえばいいのでしょうか?

293 :デフォルトの名無しさん:2006/05/22(月) 00:53:16
z=1.0fはビデオチップによっては、描画されなかったような気がする

294 :290:2006/05/22(月) 01:06:14
z=0.0f にしたら描画されました!
座標変換無視するって言ってるのに、射影座標変換で投影範囲が 0.1f 〜 100.0f だから・・・とか考えてしまい、
z 座標をいじってませんでした。

ありがとうございます。

295 :デフォルトの名無しさん:2006/05/22(月) 12:28:51
3Dのアニメーションを作ろうとしています。
x形式ファイルから読んだ形状を平行移動、回転移動するアニメーションはできたのですが、
tinyのような動くx形式ファイルからアニメーションを読み込むにはどうすればいいでしょうか。
そのまま読んでもx形式ファイルの最初の状態のままです。
VC++で作っています。
ttp://www.interq.or.jp/aquarius/ikeda3dr/game/html/skinnedmesh.htm とか
ttp://tpot.jpn.ph/t-pot/program/44_motion/motion.html とか見ましたが、さっぱり分かりません。
これよりわかりやすいサイトをおしえてください。もしくは解説をおねがいします。

296 :デフォルトの名無しさん:2006/05/22(月) 12:47:56
さっぱり分からないなら、まだ早いということだ。
ビオレで洗顔して出直して来い。

297 :デフォルトの名無しさん:2006/05/22(月) 12:51:37
よくみたらdirectXのバージョンが違っていました。
サイトは8で僕が使っているのは9でした。
9で分かりやすいサイトがあれば教えてください。

298 :デフォルトの名無しさん:2006/05/22(月) 15:12:15
何でもどこかのサイトに答えがあると思うな。自分でも考えてみろ。

どこかのサイトに答えがあるなら、そのサイトを作った人は
それをどうやって知ったのだ?

299 :デフォルトの名無しさん:2006/05/22(月) 19:50:33
超初心者用というスレタイが泣いてるな。

300 :デフォルトの名無しさん:2006/05/22(月) 19:57:02
このスレ、説教オヤジを避けるために、わざわざ初質スレから分離したんだけどな
また説教ですか、昼間からw

301 :デフォルトの名無しさん:2006/05/22(月) 19:58:25
教えてクン必死だなw

302 :デフォルトの名無しさん:2006/05/22(月) 19:59:06
>>301
うるさい黙れ!

303 :デフォルトの名無しさん:2006/05/22(月) 20:00:14
>>301
テンプレ嫁やボケ

304 :デフォルトの名無しさん:2006/05/22(月) 20:00:54
>>301
氏ね

305 :デフォルトの名無しさん:2006/05/22(月) 20:03:51
301の自演による印象操作中です、しばらくお待ち下さい

306 :デフォルトの名無しさん:2006/05/22(月) 20:13:00



     ∧_∧
    ( ・∀・)  マッテマス
    ( つ日)
    と__)__)




307 :デフォルトの名無しさん:2006/05/22(月) 20:23:02
301の印象操作だと301が自分の首を絞めてることにならないか?

308 :デフォルトの名無しさん:2006/05/22(月) 20:34:30
>>307は馬鹿なのか、それとも純粋なのか。

309 :デフォルトの名無しさん:2006/05/22(月) 20:45:38
>>308が純粋な子ってことはよくわかる

310 :デフォルトの名無しさん:2006/05/22(月) 20:46:39



     ∧_∧
    ( ・∀・)  マダァ?
    ( つ日)
    と__)__)





311 :デフォルトの名無しさん:2006/05/22(月) 20:51:06
現在当人が誤魔化している最中です>>307 >>309
もう少々お待ち下さい

312 :デフォルトの名無しさん:2006/05/22(月) 20:53:42
実は311が301でないかと疑ってしまう俺マジピエロ

313 :デフォルトの名無しさん:2006/05/22(月) 20:55:55
301=308

314 :デフォルトの名無しさん:2006/05/22(月) 20:56:12
>>312
ハズレ

315 :デフォルトの名無しさん:2006/05/22(月) 20:59:18
混乱を誘うため、イコール厨が発生していますが、もうしばらくご辛抱下さい
この後301が、301以降初めて書き込むような顔でレスしたら終了です

316 :301:2006/05/22(月) 21:01:57
やぁ!ヒサシブリ!

317 :デフォルトの名無しさん:2006/05/22(月) 22:09:06
終了?

318 :デフォルトの名無しさん:2006/05/23(火) 00:46:13
MSDNのドキュメントがずっと古いままなのですが、どうやったらドキュメント担当者に電流を流せますか?

319 :デフォルトの名無しさん:2006/05/23(火) 06:57:22
>>318
スポンジをちゃんと濡らせ。

320 :デフォルトの名無しさん:2006/05/23(火) 07:01:23
止めてグリーンマイル
グリーンマイル止めて

321 :295:2006/05/23(火) 11:18:29
>>298
きっとサイト作った人が天才だから公式ページやサンプルから解読したんだと思う。
頭が悪い自分ではわかりません。

322 :デフォルトの名無しさん:2006/05/23(火) 20:21:34
サンプル見て理解できたらきっと何でも作れる

323 :281:2006/05/24(水) 19:20:46
(((((((((((((((((゚д゚))))))))))))))))))))))

324 :デフォルトの名無しさん:2006/06/02(金) 18:17:10
はじめまして。
今、DXUTを使用したサンプルプログラム『Empty Project』をいじくっているのですが、
単なるポリゴンの表示が出来なくて困っています。
コールバック関数OnFrameRender内で
 DrawPrimitive(〜)
系の関数を使えばいいと思うのは馬鹿な勘違いなのでしょうか・・・

どうすればポリゴン表示されるか、アドバイス頂けたら幸いです。

尚、描画部分のソースは以下の通りです。

// Render the scene
if( SUCCEEDED( pd3dDevice->BeginScene() ) )
{
CUSTOMVERTEX g[3];
WORD i[] = {0,1,2};
g[0].x = 0.0f; g[0].y = 1.0f; g[0].z = 0.0f; g[0].color = 0xffffffff;
g[1].x = 1.0f; g[1].y = 0.0f; g[1].z = 0.0f; g[1].color = 0xffffffff;
g[2].x = -1.0f; g[2].y = 0.0f; g[2].z = 0.0f; g[2].color = 0xffffffff;

V(pd3dDevice->SetFVF(D3DFVF_CUSTOMVERTEX));
V(pd3dDevice->DrawIndexedPrimitiveUP(D3DPT_TRIANGLELIST, 0, 3, 1, i, D3DFMT_INDEX16, g, sizeof(CUSTOMVERTEX)));

V( pd3dDevice->EndScene() );
}


325 :デフォルトの名無しさん:2006/06/02(金) 18:18:38
ポリゴン使ってるサンプル見ろよ・・・
なんで理解もできてないのに「Empty Project」なんだよ

326 :デフォルトの名無しさん:2006/06/02(金) 18:31:28
そのサンプルはMeshを使っているじゃないですか。
Meshを使わずにポリゴン表示させたいんです。

327 :デフォルトの名無しさん:2006/06/02(金) 20:02:48
変換済み頂点なのかどうかすら不明なのにどうしろと。
変換済みなら数値がアホ。
そうでないならカメラやマテリアルやライトの設定はどうした。

更に言うならサンプルを見るのもまだ早い。
高額社の本でもみてお勉強しなさい。

328 :デフォルトの名無しさん:2006/06/02(金) 21:16:30
DrawIndexedPrimitiveUP ってインデックスバッファはどこに行った

329 :デフォルトの名無しさん:2006/06/02(金) 21:48:59
まずはチュートリアルを終わらせろ。

330 :デフォルトの名無しさん:2006/06/02(金) 23:14:04
なぁ。
色々と聞いて返答まってるよりチュートリアルを読みながら進めてったほうが速いよ。

331 :デフォルトの名無しさん:2006/06/02(金) 23:17:05
読むの('A`)マンドクセ。
よくわからん単語がいっぱい出てくるし。

332 :デフォルトの名無しさん:2006/06/02(金) 23:47:20
>>331
それがはじめの一歩ってやつよw
ここで苦しむのは当り前でしょ。

とりあえず、わからない単語は無視してサンプルコードだけひたすら入力。
実行してみて結果を確認してからわからん単語をもう一度眺めてみる。
「さっぱりわからん」から「なんとなくこんなとこか?」ぐらいの印象にはなってるよ。多分。

それでもわからんのは飛ばして次のステップにいく。
プログラムはショッパナは「テキトー」なのが大事だぜ。
だから日本人はいつまでたってもプログラミングに関してはアメリカ人に勝てないんだwと俺は思ってるw

333 :デフォルトの名無しさん:2006/06/03(土) 21:14:28
DirectXって

ディレクタックスって読めばいいってやふーの検索ででました

334 :デフォルトの名無しさん:2006/06/07(水) 10:03:52
DirectXで表示されている画面を、
フリーとかシェアのソフトでキャプチャーしましたが、
真っ黒です。
何か設定要るのでしょうか?
それとも自分でプログラム作るしかない?

335 :デフォルトの名無しさん:2006/06/07(水) 10:51:11
自分で作るならここ、
そうでないなら板違い。

336 :デフォルトの名無しさん:2006/06/07(水) 11:13:50
>>335
いや、それくらい分かってます。
先ずはキャプチャーできない原因と解決方法分からないと、
コーディング出来ないお。

337 :デフォルトの名無しさん:2006/06/07(水) 12:15:31
>>336
つ「Fraps」

もうくんな。

338 :デフォルトの名無しさん:2006/06/07(水) 12:37:59
>>337
FrapsでF9(もちろんMovie設定画面で設定しているキー)押しても、
録画されないんだけど、
このソフトってゲーム(なんてフラグはWinアプリに無いと思うが...)専用?

339 :デフォルトの名無しさん:2006/06/07(水) 12:42:51
http://ishizuka.net/ei/

340 :デフォルトの名無しさん:2006/06/07(水) 13:03:22
自分で作ったプログラムならサーフェイスの内容をロックして書き出せば解決。
他のソフトを使う必要性は皆無。

341 :デフォルトの名無しさん:2006/06/07(水) 13:10:31
>>340
つ >>336

342 :デフォルトの名無しさん:2006/06/07(水) 13:12:38
ロックして書き出せるんだから原因を知る必用はないし、コーディングも可能。

343 :デフォルトの名無しさん:2006/06/07(水) 13:20:03
>>340
つ >>336

>先ずはキャプチャーできない原因と解決方法分からないと、

344 :デフォルトの名無しさん:2006/06/07(水) 13:22:11
>>342
つ >>336

>先ずはキャプチャーできない原因と解決方法分からないと、

345 :デフォルトの名無しさん:2006/06/07(水) 13:30:55
だから自分のプログラムならスクリーンキャプチャなんて回りくどい方法など必要ない。
スクリーンに出力する前のサーフェイスを取り込めばいいだけの話。
解決方法は示しているんだから、グダグダやってないでコーディングしろよ。

346 :デフォルトの名無しさん:2006/06/07(水) 13:32:13
>>345
つ >>336

>先ずはキャプチャーできない原因と解決方法分からないと、

347 :デフォルトの名無しさん:2006/06/07(水) 13:33:38
>>346
つ >>340

348 :デフォルトの名無しさん:2006/06/07(水) 13:35:05
>>347
つ >>336

>先ずはキャプチャーできない原因と解決方法分からないと、

349 :デフォルトの名無しさん:2006/06/07(水) 13:35:42
>>348
つ >>340

350 :デフォルトの名無しさん:2006/06/07(水) 13:37:22
>>349
ええ、あなた程度でも思いつくような事はさすがにやってます^^;;;

351 :デフォルトの名無しさん:2006/06/07(水) 13:42:51
以上、大団円にて解決。

352 :デフォルトの名無しさん:2006/06/07(水) 13:47:56
ソフト名は「もめ!乳姉妹かていきょうし11人」です。
どうしてもキャプチャーしたいんだお。
本当に困ってます、遊んでないで教えてくれ。

353 :334:2006/06/07(水) 14:19:12
何だか非常に荒れてますね。
自分がカキコしたのは343まで何ですが、
なりすましが2、3人居る悪寒。

354 :デフォルトの名無しさん:2006/06/17(土) 05:52:40
流れをぶった切って質問させていただきたい。

DXUT使用のサンプルだと、デバイスの消失やら回復やらについて
ほぼ完全と思える実装が施されてると思えるのだけど、
3000行からのDXUT本体+取り巻きのコンポーネントの多さに
頭クラクラです。

一応自前でもDXUTからかいつまんで大体の処理は仕込めたんだけど、
マルチディスプレイ環境で2つ同時にデバイスを起動中、片方を解像度変えて
全画面化すると片方のデバイスがロスト(そしてリセット不可)になったりします。

DXUTをもっと読み解くべきなんだろうけど、デバイスのロストが起きる状況、
起きた場合の対処法について、がっつり頼りになる情報は無いもんでしょうか。

Iconic時は当然リセットの必要は無い、アクティブ化時には
TestCooperativeLevel() して必要ならリセット、云々かんぬん、
勘に任せてどうにかなるもんじゃないし、DXUT読み解き尽くすには結構時間
かかっちゃいそうで鬱ですよ…。

355 :デフォルトの名無しさん:2006/06/22(木) 17:17:33
VC++2005EEを使ったDXゲームの制作方法について詳しく書かれた日本語のサイトは無いでしょうか?

356 :デフォルトの名無しさん:2006/06/22(木) 17:18:11
ないよ

357 :デフォルトの名無しさん:2006/06/22(木) 17:36:40
じゃあ、VC++2005EEでゲーム作るのに必要な本は何がお勧めですか?(プログラム全般も初心です)

358 :デフォルトの名無しさん:2006/06/22(木) 17:51:07
本は必要じゃないよ

359 :デフォルトの名無しさん:2006/06/22(木) 19:23:42
初心者は金を出して開発環境を買え。

360 :デフォルトの名無しさん:2006/06/22(木) 19:36:56
Lunaでも使えば?正式に対応してたと思うぞ。


361 :デフォルトの名無しさん:2006/06/23(金) 01:29:27
DXライブラリもな

362 :デフォルトの名無しさん:2006/06/25(日) 14:46:51
正規のウィンドウズでないためダウンロードできませんorz
エロイ人うpお願いします

363 :デフォルトの名無しさん:2006/06/25(日) 14:49:35
OSはPCショップで売ってるよ。

364 :デフォルトの名無しさん:2006/06/25(日) 16:38:02
よく調べるんだな
非正規のWindowsでもMSから落とすことは出来る
だから誰かが転載などしてネットワーク資源を無駄に消費する必要は無い

365 :デフォルトの名無しさん:2006/06/25(日) 16:49:13
でもOSはPCショップで売ってるよ。

366 :デフォルトの名無しさん:2006/06/26(月) 11:23:04
そもそも割れOS使うようなやつがソフトウェアに手を出そうってのが滑稽。

367 :デフォルトの名無しさん:2006/06/26(月) 19:29:55
ソフトウェア開発だろ。
同意。

368 :デフォルトの名無しさん:2006/06/26(月) 19:34:20
ソフトウェア販売は良いのですか?

369 :デフォルトの名無しさん:2006/06/26(月) 22:15:16
割ったOS売ってるんじゃなければ情状酌量の余地はあるんじゃないだろうか。
ねえよ。

370 :デフォルトの名無しさん:2006/08/13(日) 10:11:03
DirectXのサンプルのライセンスってどうなってるの?
勝手にDLLにしたり組み込んだりして使ってもいい?

371 :デフォルトの名無しさん:2006/08/19(土) 01:49:32
DirectX9を使ってプログラムを組もうとしているのですが
どうやら僕のPCにはデバイスが無いみたいです。
あれやこれや調べていたらどうやら設定を変えるなり
ドライバをインストールすればどうにかなりそうな情報を得ました。が方法がわかりません。

私SOTECのS2120Cを使っております。XPです。

デバイスを入れるって言うのでしょうか?
をしてDirectXを組めるようにするにはどういった
設定が必要でしょうか?

372 :デフォルトの名無しさん:2006/08/19(土) 01:58:36
>>371
マルチポスト乙

373 :デフォルトの名無しさん:2006/08/19(土) 02:00:57
マルポ

374 :デフォルトの名無しさん:2006/08/19(土) 02:21:26
メーカーに聞け
メーカーのHPで探せ
WindowsUpdateの存在を知らんとか言ったら、貴様の尻子玉をいただく。

375 :デフォルトの名無しさん:2006/08/19(土) 02:29:14
設定はイラン、デバイスを入れて、ドライバを入れろ!

376 :デフォルトの名無しさん:2006/08/19(土) 02:32:49
うはwww、更に別のサイトにまでマルポ

377 :デフォルトの名無しさん:2006/08/19(土) 11:09:57
DirectXの勉強を始めようと サンプルで学ぶDirectx9プログラミングテクニック
というのをamazonで購入してみましたが、ソースが基本的にMFCの知識前提のようで挫折しそうです
皆さんDirectX学習の最初のステップにはどんな本やサイトを使いましたか?教えてください。
あと前提知識としてはC,C++,WIN32APIの基本部分でなんとかなるでしょうか?

378 :デフォルトの名無しさん:2006/08/19(土) 11:42:37
四の五の言わずにチュートリアルを全部もれなく手抜きせずやれ。

379 :デフォルトの名無しさん:2006/08/19(土) 11:43:21
>>377
俺はひたすらMSDNを見るなりググるなりした。
DirectXは本やサイトに則って勉強していって身につくものではない。
Win32APIはそんなに勉強しなくてもいいだろうけど
C/C++はちゃんと勉強しておけ。

380 :デフォルトの名無しさん:2006/08/19(土) 18:09:18
>>378-379
レスありがとうございました。とりあえずSDK付属のチュートリアルを
やってみることにします(正直言ってSample Browserの存在に気づいてませんでした)
C/C++も初心者段階なので進めておきます。

381 :デフォルトの名無しさん:2006/08/19(土) 19:07:49
DirectXで描画したシーンの上に、エディットボックスやリストなどの
WindowsのGUI部品を配置したいのですが、
DirectXの描画がGUI部品を上書きしてしまいます。
どうやったらGUI部品を配置できるんでしょうか。
または、どこかに良いサンプルはありませんか?

382 :デフォルトの名無しさん:2006/08/19(土) 19:17:38
自分で描画しているから上書きされるんだろう。
部品があるところには描画しなければいいだけ。

383 :381:2006/08/19(土) 19:26:27
部品のある領域だけ描画しないようにするには、どうしたらいいんでしょうか?
マスクをかけたりとかできるんですか?

384 :デフォルトの名無しさん:2006/08/19(土) 19:40:24
転送するときに描画したくないところを避けるだけ。
疑問に思うようなところは何もない。

385 :381:2006/08/19(土) 19:47:37
できればもう少し具体的に、
どういう関数にどういうパラメータをセットするとかで説明してもらえないでしょうか。
転送というのはD3DDeviceのPresent()ですか?

386 :デフォルトの名無しさん:2006/08/20(日) 08:09:01
無色指定って素敵な言葉だよな

387 :デフォルトの名無しさん:2006/08/25(金) 10:19:32
D3DXCreateTextureFromFileEx()関数がエラーを吐くのですが、原因がわかる方いらっしゃいませんか?
状況
1.メインスレッドとは別のスレッドでテクスチャを作成(Direct3Dの初期化などはメインスレッドで行っている)
2.エラーコードは E_OUTOFMEMORY
3.PCのメモリは十分にある(1GB)
関数の呼び出しは以下の形で、DirectX9.0bを使用しています。
D3DXCreateTextureFromFileEx( m_pd3dDevice , fileName , width , height ,
1 , 0 , D3DFMT_A8R8G8B8 , D3DPOOL_MANAGED ,
D3DX_FILTER_NONE , D3DX_FILTER_NONE , 0 , &imageinfo ,
NULL , &texture );
width , height はあらかじめデバイスの能力とテクスチャのファイル情報を読み、必要なサイズを設定しています。
(180*180の画像ならば、256*256、など)

以前シングルスレッドで動作させていたときはこのような問題は起こらなかったのですが、
やはりマルチスレッド化に問題があるのでしょうか?

388 :デフォルトの名無しさん:2006/08/25(金) 10:23:14
Direct3Dの初期化を完全に行ってから呼び出しているか?

389 :デフォルトの名無しさん:2006/08/25(金) 11:16:14
IDirect3D9::CreateDevice();の呼び出しは完了してからスレッドを起動してます。
それと、100%の再現性があるわけではなく、大抵は正常にテクスチャを読み込めてしまいます。
また、1つのテクスチャの読み込みに失敗すると、連続して複数失敗するケースが多いようです。
メモリ確保のプログラムにミスがあるとかでメモリエラーが起きているんでしょうか・・・?

390 :デフォルトの名無しさん:2006/08/25(金) 16:39:46
それどっか無限ループしてんじゃね?
読み込むファイルの指定はメインスレッドからしてるの?
メインスレッドはファイルが読み込み終わったのをどうやって判定してるの?

391 :デフォルトの名無しさん:2006/08/26(土) 12:08:06
>>388>>390
ありがとうございます。
>>388を見て、もう一度初期化処理を見直してみたところ、
CreateDevice()呼び出し時にD3DCREATE_MULTITHREADEDフラグが設定されていませんでした。
初歩的ミスで申し訳ないです。

392 :デフォルトの名無しさん:2006/08/27(日) 01:18:43
>>391
すまん、そんなオチだろうとは思ってた。

393 :デフォルトの名無しさん:2006/08/30(水) 00:37:07
c:\program files\microsoft directx sdk (december 2005)\include\d3d9types.h(1385) : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。

このエラーの解決方法分かる方、ご指南願えないでしょうか?

394 :デフォルトの名無しさん:2006/08/30(水) 00:45:10
>データの損失を防ぐために、ファイルを Unicode 形式で保存してください。

395 :デフォルトの名無しさん:2006/08/30(水) 00:48:44
>>939
素のままだと出るんだ、それは。
保存しなおすか、warningを4819限定で切っとけ。

396 :デフォルトの名無しさん:2006/08/30(水) 01:09:55
>>394-395
解決しました。ありがとうございます!

397 :デフォルトの名無しさん:2006/09/04(月) 10:00:46
240X240のbmp描画をTextureを使って描画すると、
どうしてもぼやけてしまいます。
何か解決方法など、教えていただけないでしょうか

あと、それならばスプライト描画を使おうと思い、

RECT SrcRect, DestRect;
SetRect( &SrcRect, 0, 0, 240, 240 );
SetRect( &DestRect, 0, 0, 240, 240 );
m_lpD3DDevice->StretchRect( m_lpSurface, &SrcRect, m_lpBackBuffer, &DestRect, D3DTEXF_NONE);

と書いたのですが、なぜか拡大処理されてしまいます。

398 :デフォルトの名無しさん:2006/09/04(月) 10:33:57
DirectXにスプライト機能など無い。

399 :デフォルトの名無しさん:2006/09/04(月) 19:18:02
DirectX9.0c入ってるのにdxdiag.exeが無いです・・・。

どなたかうpお願いします。

400 :デフォルトの名無しさん:2006/09/04(月) 19:30:45
SDKのバージョンは?


401 :デフォルトの名無しさん:2006/09/04(月) 21:36:35
>>399
dxdiag.exeが無いというのは、スタートメニューに無いという
意味とは違うよな?

「スタート→ファイル名を指定して実行」でdxdiag.exeを
指定しても実行できないか?

402 :デフォルトの名無しさん:2006/09/04(月) 23:20:36
>>399
エロゲームに付いてきてんだろが?www

403 :デフォルトの名無しさん:2006/09/05(火) 00:32:40
>>397
>> 240X240のbmp描画
テクスチャサイズのルールと該当しないサイズのテクスチャを
読み込んだ時の挙動についてはちゃんと理解しているのか?

ついでにStretchRectはスプライト転送などではないだろう。

404 :399:2006/09/05(火) 13:15:54
>>401
はい。ファイル検索をかけても見つからないのです。

405 :デフォルトの名無しさん:2006/09/05(火) 13:26:21
だからSDKのバージョンを書けと。

406 :399:2006/09/05(火) 15:31:39
August 2006です。

407 :デフォルトの名無しさん:2006/09/05(火) 16:11:36
前にスプライト云々言っていた者です。

// 描画開始
m_lpD3DDevice->BeginScene();
m_lpD3DXSprite->Begin(D3DXSPRITE_ALPHABLEND);// スプライト描画開始


// スプライト描画
RECTRect = { 0, 0, 256, 256 };// 描画範囲
D3DXVECTOR2 Scaling( 1.0f, 1.0f );// 拡大縮小
D3DXVECTOR3 Center( 0, 0, 0);// 回転時の中心座標
D3DXVECTOR3 Translation( 0.0f, 0.0f, 0.0f );// 描画位置
INTnDegree = 0;// 角度
m_lpD3DXSprite->Draw( m_lpD3DTexture,// 描画するテクスチャ
&Rect,// 描画範囲
//&Scaling,// 拡大縮小
&Center,// 回転時の中心座標
// D3DXToRadian( nDegree % 360 ),// 回転角度をラジアン単位で指定
&Translation,// 描画位置
0xffffffff );


// 描画終了
m_lpD3DXSprite->End();
m_lpD3DDevice->EndScene();

これでなんとか描画はできたんですが、やはり「ぼけて」しまいます。

色々調べて、フィルタをはずせば良い事が分かったのですが、
SetTextureStageStateを使ってどうはずせば良いものか・・・。
どなたか教えていただけませんか?

408 :デフォルトの名無しさん:2006/09/05(火) 16:55:37
助けてください。

Xファイルに頂点2点設定して
SDKのサンプルViewerでその線分を見ることは可能ですか?

409 :デフォルトの名無しさん:2006/09/05(火) 19:34:52
デバイスコンテキストを使ってテクスチャ(のレベル0のサーフェス)に
丸やラインなどを描画したいのですが、
どういうわけか1ピクセル左にずれてしまいます。
RADEON9800ではうまくいったのですが、古いRAGEIIというビデオカードだとこの現象が発生します。
解決方法の分かる方いましたら、教えてください。

410 :デフォルトの名無しさん:2006/09/05(火) 20:16:13
古いビデオカードをあきらめる

411 :409:2006/09/05(火) 20:53:47
DrawPrimitiveUPの代わりにID3DXSpriteのDrawを使ったところ、
ずれはなくなりましたが、今度はにじんだようになってしまいました。
アンチエイリアスがかかっているような感じです。

412 :デフォルトの名無しさん:2006/09/05(火) 23:08:17
>>407,411
どっちも、ID3DXSprite::Beginの直後に
IDirect3DDevice9::SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_NONE)
IDirect3DDevice9::SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_NONE)
の二つを入れれば解決。
ちなみにSetTextureStageStateではないし、アンチエイリアスでもない。

413 :409:2006/09/05(火) 23:17:45
解決しました。過去ログのこの辺が参考になりました。
http://bbs.gamdev.org/test/read.cgi/gamedev/1054109966/897-908

一応やり方としては、
1.0f / 横幅 / 2 を、テクスチャUV座標のUにプラスする。
1.0f / 高さ / 2 を、テクスチャUV座標のVにプラスする。

幅や高さは画像の実サイズではなく、2の累乗に矯正されたテクスチャのサイズです。
最近のグラボは2の累乗でなくても扱えるのもあるみたいですが、
こういう現象が発生するようなのはたいてい古いやつでしょうから。

まあみなさんも保険と思って、テクスチャで2DやるときはUV座標を0.5ピクセル分
ずらしてやるのがよいかと。

414 :409:2006/09/05(火) 23:21:05
>>412
ありがとうございます!
ID3DXSpriteがぼやけるのはそれで直りました。

415 :デフォルトの名無しさん:2006/09/06(水) 01:40:35
>>413
それだと一部のカードで問題が起きるぞ。
動かすのはUVでなくてピクセル座標の方がいい。
ピクセルとテクセルが一対一の場合、テクスチャの幅で除算してるUV座標は
桁が割れちまうカードがあるんだ。
UVは元に戻して、XY座標の方を0.5マイナスするのを試してみ?

416 :デフォルトの名無しさん:2006/09/06(水) 08:53:10
>>412
回答ありがとうございます。
なんとか解決したのですが、原因は、D3DXCreateTextureFromFileにありました。
自動でD3DX_FILETER_LINEARがかかっていたようなので、
D3DXCreateTextureFromFileEXを使って、D3DX_FILTER_NONEをセットすることで解決しました。

417 :デフォルトの名無しさん:2006/09/06(水) 21:59:39
ゲーム製作技術板でも話題になったけど
マップチップ使ってないならクランプテクスチャアドレッシングモードが完璧。

418 :デフォルトの名無しさん:2006/09/10(日) 14:29:37
最近だとリピートとかほとんど使わないんだよなー。
レンガの壁ですら丸々一枚持っちゃったりするし。

419 :デフォルトの名無しさん:2006/09/10(日) 17:31:35
>>418
リピート使うとリピートした分だけ遅くならない?w
そんなわけないんだけど、なんか遅くなった希ガスw

420 :デフォルトの名無しさん:2006/09/10(日) 17:43:34
自分で3Dエンジン組んでみれば分かると思うが、
サンプリングの時はリピートが一番処理が速い。
UVがどうなってようが&演算1つで済むからな。

421 :デフォルトの名無しさん:2006/09/10(日) 17:45:37
質問です。

DirextX 9.0 SDK に入っている、DirectX Texture Tool が起動しません。
起動しようとすると、以下のようなエラーがでます。

Unable to create Direct3D Device. Please make sure your desktop color depth is 16bit or 32bit.

ですが、デスクトップの設定は間違いなく 32bit になっており、試しに 16bit にしても、同様のエラーがでます。
環境は XP SP2、DirectX 9.0c、RADEON 9600 と、特に不自由のない環境で、SDK の他のツールは正常に動きます。
何か原因に心当たりはないでしょうか・・・。
よろしくお願いします。


422 :421:2006/09/10(日) 17:53:18
SDK のバージョンの確認方法がわからず・・・
D3D_SDK_VERSION 定数の値は 31 です。

423 :デフォルトの名無しさん:2006/09/10(日) 18:12:23
>>418
いや、流石にそれは無い。
ただ、テクスチャキャッシュに乗りきらんほどでかいテクスチャ使ってると
大した違いは出ない可能性は無いでもない。

424 :デフォルトの名無しさん:2006/09/10(日) 20:41:49
メッシュをふたつ以上使うにはどうすればいいでしょうか?
SDKのチュートリアル読んだだけではわかりませんでした

425 :デフォルトの名無しさん:2006/09/10(日) 22:17:29
インスタンスを二つ作って、それぞれ描画すればいい。

426 :デフォルトの名無しさん:2006/09/10(日) 23:22:58
すみません
インスタンスって何ですか?

427 :デフォルトの名無しさん:2006/09/10(日) 23:31:54
非常に基本的な用語。

428 :デフォルトの名無しさん:2006/09/10(日) 23:51:06
具体的にどこのことですか?
自分の無知と無礼は重々承知していますが今は時間が無いんです
どうか教えてください

429 :デフォルトの名無しさん:2006/09/10(日) 23:53:45
実体。
要は2個作ってそれぞれで描画しろって話。

同じメッシュを二重に作る必要は実のところ殆ど無いのだが、
その調子だとまずは2つ作るところからはじめた方がいいだろう。
幸運を祈る。

430 :デフォルトの名無しさん:2006/09/10(日) 23:54:03
高速なエディタ作りたいのですが描画部にはDirectXを使えばよろしいですか?

431 :デフォルトの名無しさん:2006/09/10(日) 23:58:30
別に構わないが、必要性はない。

432 :デフォルトの名無しさん:2006/09/11(月) 00:09:29
>>429
何を2個作るのかがわかりませんorz
あと同じメッシュではないです
違うメッシュです

433 :デフォルトの名無しさん:2006/09/11(月) 00:17:43
>>432
大丈夫か・・・?
PGやるまえにもって根本的な部分の勉強した方がいいんじゃ・・・。

モデル2つを読み込んで別々に描画すればいいだけってコトだろ。


434 :デフォルトの名無しさん:2006/09/11(月) 00:29:15
読み込み方がわかりません
2個目以降はどうすればいいのでしょうか?

>PGやるまえにもって根本的な部分の勉強した方がいいんじゃ・・・。
チュートリアルだとこれが限界です。
お勧めの本とかがあればついでに教えていただけるとありがたいです

435 :デフォルトの名無しさん:2006/09/11(月) 00:34:54
Xファイル読み込むチュートリアルを理解したのなら、
それを複数読み込むようにするのは容易いと思うんだが・・・・・

そのレベルからDirectXを習熟するには年単位で時間かかるし、
ゲーム目的なら素直に既存のライブラリに手を出す方がいいよ。


436 :デフォルトの名無しさん:2006/09/11(月) 01:16:19
初期化

while(){
  画面クリア

  座標設定
  モデル1描画

  画面切り替え
}

後始末

チュートリアルってみたいな流れになってね?
これを↓のような感じに変えてみぃ!

初期化

while(){
  画面クリア

  座標設定
  モデル1描画
  座標設定
  モデル2描画

  画面切り替え
}

後始末



437 :デフォルトの名無しさん:2006/09/11(月) 01:51:43
そもそも2つ目のモデルの読み込み方が分からないと推察

438 :デフォルトの名無しさん:2006/09/11(月) 02:02:38
そうです
その通りです

439 :デフォルトの名無しさん:2006/09/11(月) 02:48:57
1つ目を読み込んでいるところをコピペして2回かけばいいじゃない

440 :デフォルトの名無しさん:2006/09/11(月) 06:25:01
そしたら一つ目が上書きされて消えるんですけど・・・

441 :デフォルトの名無しさん:2006/09/11(月) 06:39:25
>>438
違う。
モデルの読み込みは1回でいいの。
あくまで描画を2回する必要があるだけ。
そのときに座標を変える必要があるってだけ。
そのための

  座標設定
  モデル1描画
  座標設定     ←これ
  モデル2描画

なわけ。

442 :デフォルトの名無しさん:2006/09/11(月) 07:45:41
座標設定しないとデフォルトで原点(0,0,0)に描画されちまうからね
それぞれのモデルに異なる座標を設定してやんなよ

443 :デフォルトの名無しさん:2006/09/11(月) 08:20:49
モデル一つで一気にマップ表示するより
インスタンスごとに描画した方が早いのだろうか。

ていうか、初心者スレなのにインスタンスは難解な用語だろうYO
でも、インスタンスって何って聞かれてもうまく説明できないな。。。

>>438
CMesh meshes[2];
meshes[0].Loading( "model1.x" );
meshes[1].Loading( "model2.x" );

while(1) {
meshes[0].DrawMesh();
meshes[1].DrawMesh();
}


444 :デフォルトの名無しさん:2006/09/11(月) 09:10:36
ttp://www.plustarnet.com/aspil/Programming/2d00.htm
ここを参考にDirectX SDKと日本語ドキュメントをインストールしたのですが、
最新版でバージョンが違うせいかプログラムにもコントロールパネルにも
DirectXのプロパティが見つかりません。
こういう場合何処を探したらいいのでしょうか?

445 :デフォルトの名無しさん:2006/09/11(月) 09:45:40
>>441
別々のモデルを読みたいと言ってなかったか?

446 :デフォルトの名無しさん:2006/09/11(月) 13:46:42
立方体を表示したり、テクスチャをくっつけたりできるレベルから
例えば、3Dアクションゲームの様な仮想空間が作れるまでの
道のりを教えてください。
重要なキーワードとかあると、独学しやすいです。

447 :デフォルトの名無しさん:2006/09/11(月) 15:08:28
ひたすら自分で調べて試すの繰り返し。

448 :デフォルトの名無しさん:2006/09/11(月) 19:15:58
重要なキーワードというか、鮮明な目標が必要だな。

だらだら何となくでは身に付かない。
どうしても表現したいものに向かって徐々にクリアしていけ。


449 :デフォルトの名無しさん:2006/09/11(月) 21:36:25
>>446
ゲームなんて体系化されてねぇからそんなのねぇよ。
探すだけ無駄。
みんな自分のやり方が最善だと思ってるし、
衝突したら性質の悪い事この上無しw

XXシェーダってどうやるの?
とかそういうのはあるんだけど、
アクションゲームってどうやって作るの?
なんていうと1000人いたらそれこそ1000とおりみたいな感じ。

450 :デフォルトの名無しさん:2006/09/12(火) 00:52:37
>>446
やり方は千差万別だからなんともいえないところだが・・・

ポリゴン描画・コリジョン・サウンド・入力周りが整った3Dライブラリを使うなら早ければ半年くらいで出来るんじゃない?
0からDirectX叩くっていうなら安定したものが出来あがるまでに数年かかりそうだけどw


451 :デフォルトの名無しさん:2006/09/12(火) 00:56:37
一人でそんだけできれば、大抵の現場で食いっぱぐれないな。

452 :デフォルトの名無しさん:2006/09/12(火) 00:58:21
ライブラリを使うにしても最低限チュートリアルぐらいは終わらせること。
これだけはやっておかないと本当にどうしようもない馬鹿が出来上がる。

453 :デフォルトの名無しさん:2006/09/13(水) 06:15:19
DirectX7 の日本語ヘルプってどっかにまだ落とせるとこありますか?

454 :デフォルトの名無しさん:2006/09/13(水) 21:04:34
>>453
ググレカス

455 :デフォルトの名無しさん:2006/09/14(木) 01:34:32
ありますよ

456 :デフォルトの名無しさん:2006/09/14(木) 08:45:14
うpローダーにありました。

457 :デフォルトの名無しさん:2006/09/14(木) 21:19:09
ある日突然、「DirectSoundの作成に失敗しました」とでるようになってエロゲーが起動できなくなった・・・・・・orz

458 :デフォルトの名無しさん:2006/09/14(木) 22:06:52
>>457
いたちがい

459 :デフォルトの名無しさん:2006/09/15(金) 00:51:06
directplayのチュートリアルをMFCを作り直すという課題を与えられたのですが。
何をどうすればいいのか全くわかりません。
ヘルプを参照して理解してからMFCを作れば良いと言われたのですが
理解ができません。
何から勉強すればいいのでしょうか?


460 :デフォルトの名無しさん:2006/09/15(金) 00:58:41
なぜ捨てられたDirectPlayをしかもMFCなんぞで・・・
MFCならCWinSockとか標準でつかえんかったっけ・・・?

461 :デフォルトの名無しさん:2006/09/15(金) 02:13:09
課題として与えられたんだから、しょうがないだろうw
自分の知らないライブラリを使いこなすのもプログラマに必要な能力だしね。

462 :デフォルトの名無しさん:2006/09/15(金) 07:51:07
基本というかそれ以前の質問をします
シェーダプログラミングをしたいのですが、始め方がわかりません
visual studio.net2003を使ってます


463 :デフォルトの名無しさん:2006/09/15(金) 09:18:55
DirectXSDKをダウンロードする
インストールする
シェーダーを使ってるサンプルを見る

おしまい。

464 :デフォルトの名無しさん:2006/09/15(金) 12:36:18
すんません、ちょっと質問です。

キーボードの↑を押したら画面の上に移動する3Dのキャラがいるとして
キャラ中心でカメラを回転させた時に常に画面の上に移動するような式が

移動方向=カメラの焦点(キャラの中心)ーカメラの位置

ってのはわかってるんですけど横に移動する場合はどうすればいいんでしょうか?

465 :デフォルトの名無しさん:2006/09/15(金) 13:06:04
位置ではなくベクトルで考えろ。

466 :デフォルトの名無しさん:2006/09/15(金) 15:19:04
はじめまして。
C++でCUIのプログラムを結構作ってて
そろそろグラフィカルになろうかなと思ってます。

とりあえず、やってみたいのですが、
MSDN以外に解説サイトなどありませんか?
というか、DirectXの知識が全くないので、
そういうのに詳しいサイトあったら
教えてください。


467 :デフォルトの名無しさん:2006/09/15(金) 15:25:09
その質問をする前にチュートリアルはどこまでやった?

468 :デフォルトの名無しさん:2006/09/15(金) 15:57:13
すこーしww
出直してきます。お手数かけました。

469 :デフォルトの名無しさん:2006/09/15(金) 16:50:41
>>463
そういうことでなくて・・・
なんと言えばいいのか・・・VSでどういう操作をすればHLSLプログラミングの画面にいけるのですか?

・・・なんか言ってること変ですが何とか汲み取ってもらえるとありがたいです

470 :デフォルトの名無しさん:2006/09/15(金) 18:35:26
>>469
おまいにやるタン麺はねぇ

471 :デフォルトの名無しさん:2006/09/15(金) 18:35:29
>>469
いろいろな意味を込めて、サンプルを見たほうがいいってアドバイスじゃないか?

激しく勘違いしてるんだがHLSLのプログラミング画面なんかないぞ。
あれは単なるテキストファイルだ。それをプログラム中にロードしてコンパイル
して使ってるだけなんだよ。


472 :デフォルトの名無しさん:2006/09/15(金) 20:39:37
>>471
そのテキストファイルはメモ帳で作ったものでもいいのでしょうか?
解説書では拡張子が.fxとなっているファイルを使っていたのですが・・・

473 :デフォルトの名無しさん:2006/09/15(金) 20:46:10
テキストファイルだかrら、テキストエディタでつ(ry

474 :デフォルトの名無しさん:2006/09/15(金) 22:09:17
メモ帳でいいやん

475 :デフォルトの名無しさん:2006/09/15(金) 23:07:44
>>472
メモ帳だと問題があるので秀丸つかった方が良い。

ナンテナ。何でも人に聞くのは止めろよ。

476 :デフォルトの名無しさん:2006/09/16(土) 00:02:01
ってか、「ファイル」ってもんを知らないんだろう。
拡張子ってのは別になんでも付けることができる。
ただ、わかりやすいように付けてるだけだ。
ファイルの中身はまた別の話。
例えば、.bmpとついているからといって必ずビットマップの構造でなくてもいい。
名前の変更でテキストファイルの拡張子を.bmpとつけられる。
ただ、中身はただのテキストファイルだから当然ペイントで開くことはできない。
じゃあ拡張子ってなんなのよ?
って言われれば

ダブルクリックしたときに拡張子と結び付けられたアプリが勝手に起動する。
拡張子がちゃんとついてるとユーザがそのファイルの種別がわかりやすい。
場合によっては拡張子=ファイル種別と判断するアプリも「稀に」ある。

ってところだろう。
別に変更したからといってファイルの構造まで変えてしまうような働きは拡張子には無い。

477 :デフォルトの名無しさん:2006/09/16(土) 00:09:02
スマンここ超初心者用スレだった。

.fxってファイルの編集はメモ帳でもVSでも何でもいい。
プログラムでそのファイルをロードするので、
実行するまではHLSLの記述が正しいかは分からない。

HLSLの記述に不安がある場合は、コマンドプロンプトでコンパイルしてみて
エラー等を確認できる。(例:fxc /T fx_2_0 /Fo hlsl.bin hlsl.fx)
コマンドプロンプトってのが分からなかったら、この方法は忘れてよし。

.fxファイルのロード&コンパイル時にエラー情報が帰ってくるので
それをMessageBoxとかで出力すれば、エラーの内容を確認できる。

478 :デフォルトの名無しさん:2006/09/16(土) 11:53:11
DXライブラリで画像をバックスクリーンに描画する(SetDrawScreen(DX_SCREEN_BACK);)と
動作がおかしくなるんだけどどうすればいい?
具体的には、ウィンドウ自体は画面中央付近にあるのに表示する画像が
ウィンドウの外側に描画されてしまう(『バックスクリーンだけ』がデスクトップの左上の角にあるような感じ)
DirectX診断ツールではファイルもDirectDrawも以上なし

479 :デフォルトの名無しさん:2006/09/16(土) 12:37:24
DXライブラリ作ってる人のサイトに行って聞けよ。

480 :デフォルトの名無しさん:2006/09/16(土) 14:03:36
サクーシャめっちゃ親切だよなあそこ

481 :デフォルトの名無しさん:2006/09/16(土) 15:53:41
暇なんじゃない?

482 :デフォルトの名無しさん:2006/09/16(土) 16:05:12
プロのPGなんでないの?

483 :デフォルトの名無しさん:2006/09/16(土) 16:27:26
プロのPGが暇だったらいけませんか
そうですか

484 :デフォルトの名無しさん:2006/09/16(土) 17:10:43
プロやってるけど普段は暇。
たまーに忙しくなる。
暇なときないと、いろいろできないし。

485 :デフォルトの名無しさん:2006/09/17(日) 18:35:48
VBScript や JScript 等、WSH から DirectX の API を直接呼ぶことは可能ですか?

<根拠になっている勘違いしているかも知れない内容>

・DirectX は COM に基づいているらしい
・VBScript や JScript 等は COM オブジェクトを使ってプログラミングできる
・じゃあ、もしかして VBScrip や JScript から DirectX を使える?

</根拠になっている勘違いしているかも知れない内容>

486 :デフォルトの名無しさん:2006/09/17(日) 18:44:06
COMを使う前にAPIからインタフェイスを取得する必用があるので、
COMを利用しているが完全なCOMではない。

487 :485:2006/09/17(日) 18:50:04
>486
そうですか、完全ではないというのが
DirectX側の事かWSH側の事か判りませんが
とりあえず直接は無理そうですね

レス感謝です

488 :デフォルトの名無しさん:2006/09/18(月) 18:35:12
DirectX プログラミングだけをするなら
・VCExpress2005
・VCToolkit2003
はどちらが良いでしょうか?

489 :デフォルトの名無しさん:2006/09/18(月) 18:40:50
どっちでも問題ない。

490 :488:2006/09/18(月) 18:44:16
>489
では、今使ってるPCが割と貧弱なので
何となく軽そうなVCToolkit2003選んでおきます。
ありがとうございました。

491 :デフォルトの名無しさん:2006/09/18(月) 22:00:21
…と思ったら2003配布してないですね。
大人しく2005Express使います

492 :デフォルトの名無しさん:2006/09/19(火) 01:10:02
MFCに用が無いならEEでもいいけど、もう少しお金出してStandard買った方がいいぞ。
苦労の手間で釣りが来る。

493 :デフォルトの名無しさん:2006/09/19(火) 01:20:05
リソース使えねぇよワロスw

494 :デフォルトの名無しさん:2006/09/19(火) 01:34:58
リソース使えないがいやで2005ProのMSDNサブスクリプション買った

495 :デフォルトの名無しさん:2006/09/19(火) 02:16:56
そりゃまた剛毅だなw

496 :デフォルトの名無しさん:2006/09/19(火) 03:12:18
DirectXスレでリソースエディタが無いと騒ぐのもなんだな
つか一人でやるなら、コモンコントロールはCreateWindowで作った方がやりやすいぞ

497 :デフォルトの名無しさん:2006/09/19(火) 03:17:27
>>492
DirectX で MFC って使いますか?

498 :デフォルトの名無しさん:2006/09/19(火) 03:23:11
>>497
各種コントロール類の出番は少ない(つーかまずない)かもしれないが、
コレクションクラス類の利用価値は低くない。
STL使えば大半お払い箱だが。

わかり辛いことこの上ないWin32APIをラップしてくれてるので、
基礎知識のある人にしてみれば、それなりに使いでもある。

まあ、普通に全画面系のシンプルな構造のアプリを作る分には
まったく出番は無いかもだけれど。

499 :デフォルトの名無しさん:2006/09/19(火) 03:36:21
>>498
自分は普段Delphiや各種スクリプト言語を使ってるので
VCで扱うのはDirectXに特化するつもりです。
GUIは今のところDelphiで事足りてますし。
あの会社には不安を覚えますけどねw

500 :デフォルトの名無しさん:2006/09/19(火) 09:23:35
Delphiが悪いというつもりは毛頭ないんだが、
それこそ
>あの会社には不安を覚えますけどねw
これ、十分切る材料にならないか?

いや、好き好きだからいいんだけどね。


501 :デフォルトの名無しさん:2006/09/22(金) 16:13:10
> あの会社には不安を覚えますけどねw
みんなそう思ってるからw

502 :デフォルトの名無しさん:2006/09/23(土) 17:14:38
すみません、質問させていただきます。

DirectXの勉強をしようと思い、DX9.0cSDKをインストールしたのですが
VisualStudioのプロジェクト新規作成で「DirectXアプリケーション」が表示されません。
VC++からJ#、その他まで全て確認しましたが表示されていないようです。

使用しているVisualStudioは2003.NetSP1(theSpoke)と2005(Pro)です。
2003のほうでは起動画面でDirectXのロゴが表示されているのですが…

DX9.0cSDK以外にはPlatformSDK、.NetSDKの1.1と2.0が入っています。
OSはWindowsProfessionalSP2です。
他に不足している情報があれば指摘して頂ければ、可能な限り提供します。

DirectXプログラミング始める前の超初心者質問ですが、どうかお願いします。

503 :デフォルトの名無しさん:2006/09/23(土) 17:17:32
普通にWindowsアプリを選んで、そこから呼び出せばいい。

504 :デフォルトの名無しさん:2006/09/23(土) 23:24:09
>>502
SampleBrowser を起動してベースにしたいサンプルのプロジェクトをコピー。

505 :デフォルトの名無しさん:2006/09/26(火) 17:25:42
Direct8使用してます。
GetDevice()->SetTexture(0, pTexture);
GetDevice()->SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
GetDevice()->SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
GetDevice()->SetTexture(1, pToonTexture);
GetDevice()->SetTextureStageState(1,D3DTSS_COLOROP, D3DTOP_MODULATE);
GetDevice()->SetTextureStageState(1,D3DTSS_COLORARG1, D3DTA_TEXTURE);
GetDevice()->SetTextureStageState(1,D3DTSS_COLORARG2, D3DTA_CURRENT);
これで動かしているのですが、ステージ0と1の合成が行われずにステージ0だけしか表示されません。
色々試してみるとSetTextureStageStateに何を設定しても無視されてしまうんですが何が原因なんでしょう?
テクスチャを入れ替えてもステージ0に設定されたテクスチャは期待通りに貼れてます。

506 :デフォルトの名無しさん:2006/09/26(火) 21:40:38
そもそもサポートしてるステージが1つしかない
過去の遺物みたいなビデオカード使ってる可能性は?

ちゃんとCAPS調べた?

ついでにそれだと頂点カラー反映されないけどいいのん?

507 :デフォルトの名無しさん:2006/09/26(火) 22:45:39
>>506
8まで使える事は確認しました。
カラーは反映されなくても良いです。

508 :デフォルトの名無しさん:2006/09/26(火) 23:39:29
FVFでもテクスチャ2つ使う設定してる?
UV2種類用意してる?

509 :505:2006/09/27(水) 13:11:35
すみません自己解決しました
ピクセルシェイダーに問題があったようで、ピクセルシェイダー切ると正常に動きました。

510 :デフォルトの名無しさん:2006/09/27(水) 19:53:51
>>509
それで本当に解決してるのか?w

511 :デフォルトの名無しさん:2006/09/27(水) 21:48:56
つーかピクセルシェーダーつかってるなら
SetTextureStageState()
関係は全部意味がないと思うんだがw

512 :デフォルトの名無しさん:2006/09/27(水) 22:33:20
黙って見守るのが漢の中の漢

513 :デフォルトの名無しさん:2006/10/03(火) 15:18:34
プログラムの話ではありませんが、
市販の3DゲームのポリゴンデータはXファイルみたいなもので管理されているのでしょうか?


514 :デフォルトの名無しさん:2006/10/03(火) 15:20:28
そりゃ、なんらかのデータ形式は使ってるだろ。

515 :デフォルトの名無しさん:2006/10/03(火) 15:53:53
独自の3DファイルからDrawPrimitiveで一枚一枚描いているでしょうね。

516 :デフォルトの名無しさん:2006/10/03(火) 17:05:38
初めてモデリングするんだけど
3Dでマップをモデリングする時、例えば街を作るとして、

@家や道路なんか全部を一つとしてモデリングする。
A各パーツごと(家、道路を分けて)モデリングしてプログラム側で構成する。

どっちが良いのか教えてくんろ

517 :デフォルトの名無しさん:2006/10/03(火) 20:42:37
>>516
当然A

518 :デフォルトの名無しさん:2006/10/03(火) 21:36:49
壊れたり無くなったりするのでないなら、@のデータを細分化して
オクトツリーで描画からコリジョンまでやるのもアリだろう。

519 :デフォルトの名無しさん:2006/10/03(火) 22:36:03
パーツでファイル作っておいて、配置用のファイル読んで描画。

520 :デフォルトの名無しさん:2006/10/03(火) 23:51:54
そこらのゲームみれば1なのは一目瞭然だけど
みんな良くないと思ってやってるのかね…

521 :デフォルトの名無しさん:2006/10/04(水) 01:36:24
2は

・使いまわしは結局モロバレになる
・モデリングツール以外にレベルエディタ等の支援が必要な場合多し
・ある程度写実的な表現に移ると、そもそも使いまわせるモデルなんてほとんどない

で、デザイナ的には大して嬉しくなかったりもするしな。
複数オブジェで構成されるコリジョンメッシュの解決も面倒っちゃ面倒だし。
カリングがちゃんとしてて、消費リソースが飲める量に収まるなら、きょうびは1でいいんでね。

522 :デフォルトの名無しさん:2006/10/04(水) 02:06:11
FF12は使いまわしモロバレなのを割り切って後者でやってたね
メモリ少ないからそうするしかなかったんだろうな

523 :デフォルトの名無しさん:2006/10/04(水) 02:11:57
DirectXSDKの最新版ってメッシュビューワーは入っていないのでしょうか…

524 :デフォルトの名無しさん:2006/10/04(水) 02:14:11
いないのです。

525 :デフォルトの名無しさん:2006/10/04(水) 09:48:12
街ではなくフライトシミュレータの様な膨大な地形の場合はどうなってるんだろう。

526 :デフォルトの名無しさん:2006/10/04(水) 09:54:49
>>525
(2) + 大域的なタイル管理

527 :デフォルトの名無しさん:2006/10/04(水) 15:00:47
>>525
要するに、実現したいものに最適な方法でやるってことだよ。

528 :デフォルトの名無しさん:2006/10/08(日) 00:53:48
SDKをインストールするときに選択できるDirectX Redistributable Filesって
いったい何なのでしょうか?

529 :デフォルトの名無しさん:2006/10/08(日) 01:16:23
そのまんまだろ。

530 :デフォルトの名無しさん:2006/10/08(日) 01:28:13
再配布可能ファイル
自分のアプリばらまく時に入れといて構わないもの。

つーかマジまんまだぞ。

531 :デフォルトの名無しさん:2006/10/08(日) 02:13:59
>>529
>>530
開発には無関係で、配布するときに同梱するためのものなのですね
安心して勉強できます。ありがとうございました

532 :デフォルトの名無しさん:2006/10/15(日) 17:42:19
質問です。XP、2005、9.0c です。

Direct3D を用いて、ビデオメモリの容量を取得するにはどうすればいいのでしょう?
DirectDraw のときは、DDCAPS の dwVidMemTotal、dwVidMemFree を調べればOKでしたが、
Direct3D でこれ相当の値が見つからなくて困っています。

533 :デフォルトの名無しさん:2006/10/15(日) 19:19:47
リファレンスに普通に書いてあるだろ・・・。
せめてリファレンスくらいは読んでこいと。



IDirect3DDevice9::GetAvailableTextureMem メソッド
使用可能なテクスチャ メモリの量の推定値を返します。


534 :532:2006/10/15(日) 19:25:14
テクスチャメモリ=ビデオメモリ(?)という考えがなかったので、スルーしていました。
ありがとうございます。


535 :デフォルトの名無しさん:2006/10/15(日) 20:54:19
んなわけない。

536 :デフォルトの名無しさん:2006/10/15(日) 22:23:36
初心者スレがマヌアル嫁ばかりになったから、このスレが出来たんだけどな

537 :デフォルトの名無しさん:2006/10/15(日) 22:37:33
使い方ならともかく有無を聞くのもなんだと思うが

538 :532:2006/10/15(日) 23:51:10
あれ・・・

ビデオメモリの容量を正確に取得することはできず、
できるだけ正確な値を取得する方法が、GetAvailableTextureMem
って認識は間違いなのでしょうか。

また、ビデオメモリの最大容量を知りたい場合、
Direct3D のデバイス作成直後に GetAvailableTextureMem を使おうと思ったのですが、
他のアプリケーションがビデオメモリを使用していた場合、どうするのでしょうか。

DirectDraw で実際に行っていたことなので、ハードウェア的に無理だということはないと思うのですが・・・。


539 :デフォルトの名無しさん:2006/10/16(月) 03:41:05
>>538
> ビデオメモリの容量を正確に取得することはできず、
>>533 にもちゃんと「推定値」って書いてあるよね?

> 他のアプリケーションがビデオメモリを使用していた場合、どうするのでしょうか。
試してみたら良くね?

っつーか、今時ビデオメモリの容量とか気にするのも問題ない?
最近はメインメモリにもテクスチャ置けるんだけど、それも加算して良い?
それとも純粋にVRAMだけ欲しいの?

ビデオメモリを潤沢に使ってよいとは言わないけど、おそらくテクスチャを
ロードした時に使うメモリ量とか、自動的に作られるZバッファの量とかが
計算できないだろうから、ビデオメモリの残量とか気にしても意味ないと思うんだが。

540 :デフォルトの名無しさん:2006/10/16(月) 03:47:25
Vistaでは、VRAMにもシステムメモリからのスワップがあるらしいが、
そもそももう物理的な量を気にする時代じゃないのかも。

541 :デフォルトの名無しさん:2006/10/16(月) 08:42:01
デバッグ段階で、VRAM の消費量を見ておきたかったのです。
アプリケーションの必須スペックを計るのにも必要ですし、バグ発見にも助かるからです。

読み込み方法などにもよりますが、例えばテクスチャを大量に作成した場合、
VRAM にのらなくなったあたりで、がくんとフレームレートが下がりました。
おそらく、毎フレーム、メインメモリとのスワップが発生するためと思われますが、
そーいうのを発見するためにも、表示する価値はかなり大きいと思ってます。

542 :デフォルトの名無しさん:2006/10/16(月) 09:48:58
>>541
それこそ純粋にビデオカードにつんであるVRAMだけでは語れないよ。
DYNAMICフラグを指定して作成したものはAGPメモリに展開されるんだし。

VRAMに乗らなくなった時点で動作しないっていうならまだしも、
メインメモリからの転送に処理を食われるようになるだけなら、
おおよその値だけ算出して、それを推奨環境って事にして落ち着けるくらいかと。

543 :デフォルトの名無しさん:2006/10/16(月) 12:28:02
541が言ってることは変じゃないけどな。
ただ、俺は別のアプリケーションでチェックしてる。
ウィンドウモードでないと確認できないけどね。

544 :デフォルトの名無しさん:2006/10/16(月) 15:25:27
>>541
それらは基本的にハード及びドライバ直結の話。
どうしても細かく面倒みたいなら、nVidiaに専用の支援環境がある。
ttp://developer.nvidia.com/object/nvperfhud_home.html

だが初心者ほど振り回される罠。
一回使って打ち返されてくると良い。

545 :デフォルトの名無しさん:2006/10/20(金) 20:37:24
まーでも、動作環境に、VRAM何M必要、ってかかなくちゃいけないもんな。
なんとかして調べたいのはわかる。

546 :デフォルトの名無しさん:2006/10/20(金) 22:36:27
VRAMの容量はあてにならんだろ。
ドライバが勝手にロード・アンロードしてるんだから、
リソース容量=VRAM使用容量にならんし。

俺は動作環境のときに気にするのはシェーダーのバージョンくらいだな。

547 :デフォルトの名無しさん:2006/10/21(土) 20:53:33
ピクセルを格納した配列からイメージを生成して、
textureにしたい のですが どうすればよいでしょうか?


548 :デフォルトの名無しさん:2006/10/21(土) 20:54:12
普通に空のテクスチャ作って、普通にロックして、普通に書き込むよろし

549 :デフォルトの名無しさん:2006/10/21(土) 20:54:27
作成したテクスチャのフォーマットに合わせて変換しつつ転送。

550 :547:2006/10/22(日) 02:53:14
>>548,549
回答どうもです

具体例や方法等、参考になるサイトはないでしょうか?


551 :http://ura2ch.s6.x-beat.com/ :2006/10/22(日) 03:06:40
 ura2ch ura2ch 

552 :デフォルトの名無しさん:2006/10/22(日) 04:08:42
>>547

553 :デフォルトの名無しさん:2006/10/22(日) 04:10:42
>>547
CreateTextureでテクスチャ作ってみて。

>>549
自前のイメージをテクスチャにするのに、変換する必要あるか?
普通イメージに合ったフォーマットのテクスチャ作るだろw

554 :デフォルトの名無しさん:2006/10/22(日) 07:28:59
>>553
必ずしも希望のフォーマットが使えるとは限らない。
まぁ、いまどきそんなビデオカードないがw

555 :デフォルトの名無しさん:2006/10/22(日) 13:15:02
> 必ずしも希望のフォーマットが使えるとは限らない。

自前のイメージなんだから、普通に考えたらそっちを合わせるだろ?
わざわざ転送時に変換してステップ増やすなんてどうかしてるよ。

556 :デフォルトの名無しさん:2006/10/22(日) 13:30:54
普通はメジャーなフォーマット用に一通り変換ルーチンを用意しておくもの。

557 :デフォルトの名無しさん:2006/10/22(日) 16:54:48
ARGB8888が使えないカードはまずないんだし、
そこだけサポートしてればあとはどうにでもなりそうな。

558 :デフォルトの名無しさん:2006/10/23(月) 00:09:18
>>556
全然普通じゃないよ。
あんたラッパーライブラリとか作ってない?w

559 :デフォルトの名無しさん:2006/10/23(月) 01:43:28
フォーマット変換くらい俺も一通り用意してあるよ。
入力はA8R8G8B8だけだが。

560 :デフォルトの名無しさん:2006/10/23(月) 01:49:35
>>559
必要ならば変換も厭わないけど、どっちにしろ変換向き逆じゃね?
入力形式任意で出力ABGR32 なら分かるんだが。

561 :デフォルトの名無しさん:2006/10/23(月) 08:10:07
>>555 >自前のイメージなんだから、普通に考えたらそっちを合わせるだろ?
これと
>>559 >入力はA8R8G8B8だけだが。
これが繋がるのだと思われ

562 :デフォルトの名無しさん:2006/10/23(月) 16:04:33
>>561
入力がA8R8G8B8限定なら変換する意味がないって話になるんだが。

563 :デフォルトの名無しさん:2006/10/25(水) 19:30:35
d3dx9_30.libのライセンスについてお聞きしたいのですが、なんかredist以下
のフォルダも配布しなくちゃいけないって書いてあるっぽいんですけど、
ベクターとかで落としたゲームってそんなの同梱してないですよね。
みなさんどうしてます?

564 :デフォルトの名無しさん:2006/10/25(水) 19:36:12
1) 使用者にMS公式ページから DirectX をアップデートさせる
2) Redistable runtime を同封する

565 :デフォルトの名無しさん:2006/10/25(水) 19:40:26
Redistable runtimeって>>525が言ってたやつですか?

566 :デフォルトの名無しさん:2006/10/25(水) 21:41:51
3) October 2004まで戻る

567 :デフォルトの名無しさん:2006/10/26(木) 01:55:46
> ベクターとかで落としたゲームってそんなの同梱してないですよね。

していないのは、プレイヤー環境にすでにランタイムがインストールされていると仮定しているから

568 :デフォルトの名無しさん:2006/10/26(木) 10:42:55
>>566
Win2k の Oct2004 縛りは 開発環境の都合だけ?
ランタイムならそれ以降でも大丈夫なような気がするけど…
# でも Oct2004 で止めている弱きな奴

569 :デフォルトの名無しさん:2006/10/26(木) 21:44:57
基本的にコア部分は変更されていないから
たんいD3DXの都合だけ。

570 :デフォルトの名無しさん:2006/11/01(水) 14:12:18
頂点シェーダーでインデックス付き頂点ブレンディングを行う場合
定数レジスタ96個を全部使用したとしても30個程度のインデックスしか使用できないのでしょうか?

571 :デフォルトの名無しさん:2006/11/01(水) 18:35:03
>>570
96ってことは1.1使うの?
2.0以降なら定数レジスタは最低256あるけど。

572 :デフォルトの名無しさん:2006/11/01(水) 21:09:14
>>571
訳ありでDirectX 8.0を使用してます
20〜60程のボーンを使用したいのですが・・

573 :デフォルトの名無しさん:2006/11/01(水) 22:51:36
>>572
DX8.1でボーン使うならシェーダーをあきらめろ。
ソフトウェアスキニングやるか、対応してるなら固定機能でやるかのどっちか。

574 :デフォルトの名無しさん:2006/11/01(水) 23:51:35
VS1.1でスキニングやる場合は、行列パレットはほとんど無理だね。
素直にソフトウェアで実装した方がいい。

575 :デフォルトの名無しさん:2006/11/02(木) 02:22:41
ソフトウェア・・というのは頂点ブレンディングを自力で一つ一つ計算して頂点バッファを使用せずに・・と言う事でしょうか?
速度的にはどうなんでしょう?
一応試してみます。

576 :デフォルトの名無しさん:2006/11/02(木) 02:36:34
ディスプレイ S3 Graphics ProSavageDDRg
ドライバ s3gnb.dll

ディスプレイ ドライバがサポートしていないため、
ハードウェア アクセラレータを使った Direct3D 9+ は利用できません。
ハードウェアの製造元から新しいドライバを入手できるかもしれません。

と出るんですが新しくドライバをDLすれば利用出来るようになるんですか??
それとも何か購入しないと無理なんでしょか。
超初心者ですいません。

577 :デフォルトの名無しさん:2006/11/02(木) 02:47:18
> 訳ありでDirectX 8.0を使用してます
> 20〜60程のボーンを使用したいのですが・・
メチャクチャ環境と合ってないことをしようとしてるんだな・・
DirectX8が動かせないならボーン減らせばいいのに。

> ソフトウェア・・というのは頂点ブレンディングを自力で一つ一つ計算して頂点バッファを使用せずに・・と言う事でしょうか?
> 速度的にはどうなんでしょう?
シェーダがない時代は皆ソフトでやってた訳だから
全然遅いってことはないと思うけど、DirectX8縛りが低スペックPCも対象に
してのことだったら、低スペックPCでは厳しいのかもね。
60ものボーンがあるアニメ再生はね。(多すぎ。何かの研究?)

578 :デフォルトの名無しさん:2006/11/02(木) 02:50:51
やってから聞け。
そしてザ・スレ違い。

579 :デフォルトの名無しさん:2006/11/02(木) 02:56:23
>>576
検索してみたら似たような質問があったよ。
http://pcq.furu.org/thread.php?thread=50318

一昨年の書き込みだけどな・・・( ´Д`)y─┛~~

580 :デフォルトの名無しさん:2006/11/02(木) 02:59:42
>>576
こっちでは解決したみたい。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1928567

DirectX9cまでOKだってさ。

581 :デフォルトの名無しさん:2006/11/02(木) 03:16:12
シェーダがあってもクロスシムやIKの関係でソフトウェアで
スキニング処理してるソフトの方が多いんじゃないかな?

582 :デフォルトの名無しさん:2006/11/02(木) 03:20:49
クロスシムはともかく、IKとスキニングは分離できる気がするが。
まあ、頂点処理は無理にGPUにやらせなくてもCPUでやっちまった方が
楽だったり速かったりするのは往々にしてある罠。

583 :576:2006/11/02(木) 03:36:36
できましたーーーーーーー嬉しいです。
ありがとうございました!

584 :デフォルトの名無しさん:2006/11/02(木) 09:00:14
さすがに今のハードでスキニングがGPUのが遅いってこたーねぇだろぉ

585 :デフォルトの名無しさん:2006/11/02(木) 09:51:22
ボーンが多すぎる場合はモデルの分割とボーンの複製を行うって手もあるみたい。
ConvertToIndexedBlendedMeshなんかは勝手にやってくれる。
具体的なアルゴリズムは知らんけど。

586 :デフォルトの名無しさん:2006/11/03(金) 00:40:40
>>584
今のハードと普及ハードは違うのことよ…

587 :デフォルトの名無しさん:2006/11/03(金) 00:46:01
普及ハードというとGeForce2MXぐらいのレベルと考えればいいのか

588 :デフォルトの名無しさん:2006/11/03(金) 00:47:16
4MXくらいでね?

589 :デフォルトの名無しさん:2006/11/03(金) 01:46:38
もまえらもちつけ。
すくなくともボーン使うようなゲームをPCでやる奴らを前提にしたら
最低でもGeForce5800くらいは使ってるよ。
GeForce6600程度でも今6000円くらいで買えるんだし。

エロゲしかやらない奴らをターゲットにしてるなら別だけど・・・。
そんな低スペック層相手にスキニング使うようなゲーム作るとも思えん。

590 :デフォルトの名無しさん:2006/11/03(金) 02:03:30
>>589
作るんだよ。
作るんだってばよ。
おまいは世のカジュアルゲーム事情をもっと知るべきだ。
ノートPCでも楽勝で動くがアバターは3Dなんてゲームも結構あるんだよ。

591 :デフォルトの名無しさん:2006/11/03(金) 03:16:03
てかげふぉの2とか4なんてそもそもVS2.0積んでないんだから、
結局CPUスキニングしかないじゃないか。

592 :デフォルトの名無しさん:2006/11/03(金) 04:00:01
最近は、カジュアルでも普通に3Dが多いよな
Flashの方が圧倒的におおいけど・・・

593 :デフォルトの名無しさん:2006/11/05(日) 16:30:36
あの・・・ 本当に初心者なのですが、もう1台の古いパソコンに98SEを
インストールして富士通からドライバを入手したのですが、DIRECTX6を
インストールしてくださいと言われたのですが、まだネットに接続できてなくて
どうしたら、もう1台のパソコンにDIRECTX6をインストールさせられますか?

594 :デフォルトの名無しさん:2006/11/05(日) 16:35:50
DirectX6のランタイムを焼いたCD-Rを使えば解決。

595 :デフォルトの名無しさん:2006/11/05(日) 16:45:34
すいません。DirectX6のランタイムは、どこから入手できますか?
本当に初心者ですみません。よろしくです。


596 :デフォルトの名無しさん:2006/11/05(日) 17:10:27
Microsoftに決まってる。
動いてるほうのPCでダウンして焼けばいいだろ。

ちなみにランタイム的にはDx9いれても問題はないぞ。

あと初心者ですみません、は意味不明。

初心者だから調べて分かるようなことでも調べなくても仕方ないよね?
みたいな態度をする奴が悪いだけの事。


597 :デフォルトの名無しさん:2006/11/05(日) 17:13:27
正規の製品じゃないのでダウンロード出来なかったんですが、他で入手できないのでしょうか?
色々と調べてるのですが、解らなくて。

598 :デフォルトの名無しさん:2006/11/05(日) 17:19:28
…帰れ。

599 :デフォルトの名無しさん:2006/11/05(日) 17:30:08
色々と調べてるのです=何も調べていない

これ基本ね。

600 :デフォルトの名無しさん:2006/11/05(日) 17:51:29
> 正規の製品じゃないのでダウンロード出来なかったんですが、他で入手できないのでしょうか?
氏ね

601 :デフォルトの名無しさん:2006/11/05(日) 18:02:07
何だか、不機嫌にさせてしまったようで、申し訳ありませんでした。
自分で解決します。

602 :デフォルトの名無しさん:2006/11/05(日) 18:43:36
> 正規の製品じゃないのでダウンロード出来なかったんですが
これはつまり、「私は違法コピー品を正々堂々つかってるんですよ、ハハハ」
と言ってるんだぜ?

603 :デフォルトの名無しさん:2006/11/05(日) 18:51:19
>>601
お前下手すると逮捕されるぞ。

604 :デフォルトの名無しさん:2006/11/05(日) 20:48:23
違法公言キター

605 :デフォルトの名無しさん:2006/11/05(日) 21:31:26
まあ、最初は誰でもアキバで見つけたmaya,xsi,max,photoshopの入った
ゴールドディスクを手にして喜ぶもんさw

606 :デフォルトの名無しさん:2006/11/05(日) 21:42:32
ゴキブリ追加か

607 :デフォルトの名無しさん:2006/11/05(日) 22:17:24
yahooで「以上、のような商品ですので御理解いただける方・・・」とかもうあまりみなくなったけどね。

608 :デフォルトの名無しさん:2006/11/05(日) 22:19:31
この手の初心者に多いのは、友人から貰ったとかじゃない?

609 :デフォルトの名無しさん:2006/11/05(日) 22:23:54
いるねー。
ネットゲー・エロゲー配ることを生きがいにしてる奴。
常時winny起動しっぱなしで絶えずなにかを流さなければ気がすまないっぽい奴。
もう、病気としか思えない。
なんでそんなことするの?って聞いても趣味だとかそんな言葉しか返ってこなかったな。
もうそこに意味はないんだと思う。

610 :デフォルトの名無しさん:2006/11/05(日) 22:42:02
Direct3D.Deviceの初期化中に
「System.IO.FileNotException: 指定されたモジュールが見つかりません。(HRESULTからの例外: 0x8007007E)」
のエラーが出たのですがどうすれば不足ファイルを用意できますか?
DirectX9.0cのSDKは入れているのですが、不足ファイルは壊れているのでしょうか?

611 :デフォルトの名無しさん:2006/11/05(日) 23:26:29
そもそも何のファイルがないのかわからぬ

612 :デフォルトの名無しさん:2006/11/07(火) 19:01:35
最近本当にダウソに過剰反応する香具師が増えたよな。
スレ違いだから叩かれてるってのもあるのかも知れんが、
俺は>>597だけを見てOSが割れ物だとは断定できないと思うんだが。
DirectX6は古すぎて公式からはDLできないって解釈もできないか?
実際Direct6でぐぐってみた結果↓に行くと404だし。
www.microsoft.com/msdownload/directx/dxf/enduser6.0/dx6dosv.asp

ちなみに俺は>>190と同じ問題にぶつかって"d3d10.dll"でぐぐって
ここしかヒットしなかったのでここにたどり着いただけなんだが
それに対するまともな答えが>>224なのだとしたら
本当に終わってるとしか思えんな、DirectXつーかM$っつーかその信者も。

613 :610:2006/11/07(火) 19:15:18
HELP ME!回答プリーズ!!

614 :デフォルトの名無しさん:2006/11/07(火) 20:11:43
>>612
新しいランタイム入れれば大丈夫だって書いてあるレスのあとに
正規の製品じゃないのでダウンロード出来ない発言に対してその解釈?
優しいね。
ところで>>224の何が終わっているの? 
Direct3D10の実行にはVista CTPが必要だとはドキュメントにも書いてあるけど。

>>613
情報少ねェって……。
とりあえずインストールしているDirectX SDKのバージョンと
プロジェクトが参照しているアセンブリのバージョンを明記。
Managed DirectXのスレで聞いた方が良いかもね。


615 :デフォルトの名無しさん:2006/11/07(火) 20:51:57
>>612
犯罪者を叩くのは当たり前だろ。
氏ね、ボケ。

616 :デフォルトの名無しさん:2006/11/07(火) 21:17:02
>>614
回答どうもです。

617 :デフォルトの名無しさん:2006/11/07(火) 21:28:32
OSが割れてようがKTHなら余裕でDirectX落とせますが何か?
自宅で落とせないならネカフェにでも行って落とせばいいだけですが何か?
そしてまさかWGAみたいなスパイウェア仕込むのは犯罪じゃないとでも?
つーかDirectXに関係ない著ゴロのプロパガンダしてる時点で
完全にスレ違い板違いなんですがその点について自覚・反省はありますか?

618 :デフォルトの名無しさん:2006/11/07(火) 21:49:56
空気嫁。
言い方は悪いが本人が悪いといってるわけではない、
感じからして、違法品と知らずに使ってるみたいだから警告をしているだけ。

プロパガンダもなにも違法なものは違法。
少なくとも既に質問に対しての明確な回答は出てるだろ。

619 :デフォルトの名無しさん:2006/11/08(水) 12:47:16
質問させていただきます
http://www.forest.impress.co.jp/article/2002/12/16/fraps.html
ここのFrapsってソフトみたいに
DirectXのソフトの画面を動画としてキャプチャーして
AVI形式で無音の動画ファイルとして録画する機能を実現するのに
何か良い方法はないでしょうか?

620 :デフォルトの名無しさん:2006/11/08(水) 13:30:26
ウィンドウモードなら、GDI経由でキャプチャできるかと。
Frapsは落としてないから詳しくは知らないが、DirectXをフックしてるか
ドライバレベルで介入しているんじゃないかね。

っていうか、Frapsと同じことしたいなら、それを使えばいいじゃない。

621 :デフォルトの名無しさん:2006/11/08(水) 13:55:25
>>620
レスありがとうございます。
CG作成系のソフトを作っててその中の機能として組み込みたいんですよ。
それ用のAPIとかあればなあと思ったんですが・・

622 :デフォルトの名無しさん:2006/11/08(水) 14:27:23
なんだ、自分のソフトに組み込む話だったのか。
それなら、普通にAVI出力するだけじゃん。
Video for Windowsあたりを使えば簡単。

623 :610:2006/11/08(水) 15:09:53
アプリケーション構成ファイルの<bindingRedirect>をコメントにすれば問題なかったです

624 :570:2006/11/08(水) 20:31:03
なんとか上手く行きそうです。
遅くなりましたが皆様ありがとうございます。

625 :デフォルトの名無しさん:2006/11/09(木) 01:04:50
正規の製品じゃないって発言だけであれだけこっ酷く叩いた上に
関係ない話題まで出してグチグチ延々叩き繰り返してるわけだからねぇ
そりゃその空気破ってやろうって勢力も出てくる罠
しかし>>618俺もフォルダ法やらDLL法やら解説してやれとまで
言う気はないが「質問に対しての明確な回答」って何よ?ネカフェ池か?
そもそも回答が出てることとスレ違いに何の関係があると?
違法も何もスレ違いなものはスレ違い。


626 :デフォルトの名無しさん:2006/11/09(木) 01:14:21
>>625
>>614

627 :619, 621:2006/11/09(木) 15:57:58
>>622
変な例を挙げて混乱を招いてしまった用で申し訳ありません。
DirectShowにも似たような機能があるようで
Videos for Windowsあたりの「あたり」の部分に含まれていると推察したのですが
あってますでしょうか?
その場合Videos for Windowsの方が良い理由もしくは逆があれば
解説いただけるとありがたいです。

628 :デフォルトの名無しさん:2006/11/09(木) 17:24:41
>>627
Video for Windowsの方がDirectShowよりも
シンプルで扱うのが簡単。それだけ。

629 :619, 621, 627:2006/11/09(木) 19:23:47
>>628
確かにDirectShowはちょっとややこしそうな印象でしたね。

それではどうもありがとうございました。

630 :デフォルトの名無しさん:2006/11/11(土) 22:31:51
朝起きたら業者が俺の家の下からジィーっと見てて
母親が台所で血だらけでたおれていたから「今日、弁当いらない」って言って
学校行ったら先生刺されてて友達とかみんな大爆笑してるから俺もみんなに合わせて適当に笑って
昼に早退したら胎児とかいっぱい落ちてて踏んじゃって靴がすげー汚れた
家についたら母親がスゲー冷たくなってるから暖房つけてやって
冷凍のピザ食べようと思ったら父親が冷凍庫に入ってて、たまらずに笑った。友達にメールで教えたら凄いうけた
隣の家に忍び込んでやっと歩けるようになったくらいのガキ盗んできてマンションの屋上から落として何秒で落ちるか計って理科の宿題終わり
そろそろ寝ようとおもったらガキの家族が騒いでるからガキの死体放り込んで大爆笑
眠れないから妹でカツラとか骨で武器とか作って遊んでた、そしたら朝になって
ちょっと臭い母親に「弁当いらない」って言ってから学校に行った
業者はその日死んだマンションの住人を精肉所へ運んで行った

631 :デフォルトの名無しさん:2006/11/11(土) 22:34:48
ワッフルワッフル

632 :デフォルトの名無しさん:2006/11/11(土) 23:12:28
>>630
何にしろハッピーエンドでホッとした。

633 :デフォルトの名無しさん:2006/11/12(日) 02:54:39
全文読んだのかw

634 :デフォルトの名無しさん:2006/11/16(木) 04:18:05
WindowsXP、Visual studio 2005、DirectX 9.0c
C、C++は1年半前から始めた初心者です。
教本買って最近DirectXを使い始め、スプライトとかポリゴンの表示とかまでは出来たのですが、
Releaseにするとコンパイルでerror LNK2028 とかのエラー出まくりで詰まりました・・・

仕方なくDebugでexeファイル作るんですが、このPCでは起動するのに
他のPC(WindowsXP、DirectX 9.0c(VS 2005は入っていない))で起動すると、

「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。
アプリケーションを再度インストールする事により問題が解決する場合があります。」
と怒られて起動出来ませんorz...

d3d9.dll、d3dx9.dll、d3d9.h、d3dx9.h ... みたいな関係ありそうなファイルを
同じフォルダに入れても起動しませんでした。


リンク、dllとかいうその辺の事がどうなっとるか分かりません。
その辺を解説されているHPや教本を知っていたら教えてもらえませんか?
あと、上記のエラーの対処法分かる方いたら教えて下さい_| ̄|○|||


635 :デフォルトの名無しさん:2006/11/16(木) 08:17:31
DLLへの依存性はDependencyWalkerで確認しる。
多分、Debug版ランタイムDLLが見つからなくてエラーが出たと見た。
とりあえずスタティックリンクしてお茶を濁せ。

D3DXのDLLにも注意。
同じDX9.0でも随時新しいのが提供されるので、
リンク時に参照していたのと同じものが必要。

LNK2028は判らん。
エラーメッセージ全体を書かないと何ともいえない。

636 :デフォルトの名無しさん:2006/11/16(木) 13:36:44
>>634
>「このアプリケーションの構成が正しくないため、アプリケーションを開始できませんでした。
>アプリケーションを再度インストールする事により問題が解決する場合があります。」
>と怒られて起動出来ませんorz...
例えば、samというプロジェクトだったら、
Alt+F7 -> 構成プロパティ -> C/C++ -> コード生成 ->ランタイムライブラリをマルチスレッド(/MT)
にする。
これで、他のパソコンでも動く。

Link2028はエラー書かないとわからんけど、エスパーするとSTLつかってる?
使ってるなら、上記設定をデバッグビルドなら/MTdに、リリースビルドなら/MTにする。
まあ、わからんけど。

637 :634:2006/11/17(金) 03:07:23
>>635 >>636
ありがとうございます。解決しましたヽ(´ー`)ノ

STLは使ってませんが、
Alt+F7 -> 構成プロパティ -> C/C++ -> コード生成 ->ランタイムライブラリをマルチスレッド(/MT)
にしてからDebugビルドで、exeと同じフォルダにd3dx9_30.dllを入れたら他のPCでも起動しました。
d3dx9_30.dllが入っていないと起動しなかったです。


あとReleaseビルドの方もできるようになりました。

1>Scene.obj : error LNK2028: 未解決のトークン (0A00005D) "extern "C" struct D3DXMATRIX * __stdcall D3DXMatrixPerspectiveFovLH(struct D3DXMATRIX *,float,float,float,float)"
(?D3DXMatrixPerspectiveFovLH@@$$J220YGPAUD3DXMATRIX@@PAU1@MMMM@Z) が関数 "public: void __thiscall Scene::Transform(struct IDirect3DDevice9 *)"
(?Transform@Scene@@$$FQAEXPAUIDirect3DDevice9@@@Z) で参照されました。
コンパイルで出たエラーはこんなのです。似たようなエラーで LNK2019、LNK2001ってのも出てましたが、ソースに
#pragma comment( lib, "d3d9.lib" )
#pragma comment( lib, "d3dx9.lib" )
を書いたら全部通りました。


638 :デフォルトの名無しさん:2006/11/17(金) 11:16:49
>>637
>exeと同じフォルダにd3dx9_30.dllを入れたら
それはライセンス違反。

639 :デフォルトの名無しさん:2006/11/17(金) 12:22:44
何故か小さい頃、サッカーボールはパンダの卵だと本気で思っていた。
だから3歳の誕生日に無理を言って買ってもらった。
卵はあたためれば赤ちゃんが生まれる、という中途半端に正解な知識をもっていたため、買ってきたサッカーボールをストーブの上にのせた。


爆発した。



>>637
古い SDK入れるといい
というか、
>>5とか見とけ

640 :デフォルトの名無しさん:2006/11/17(金) 17:02:28
まだライセンス云々ウダウダ言ってやがる。
しかも今度はDLLたった一つで。失笑物もいいところ。
M$信者ってホント脳の隅々まで侵されきってるんだね。


641 :デフォルトの名無しさん:2006/11/17(金) 17:33:48
redist.exeの保存先はどこにすればいいんでしょうか

642 :デフォルトの名無しさん:2006/11/17(金) 21:24:14
>>640
こういうやつはBSDライセンスすら守ることが出来なさそうだ

643 :デフォルトの名無しさん:2006/11/18(土) 09:03:31
Linuxにエロゲーインストールして喜んでいるやつがいるけど、そういうやつは
エロゲーも割れ物なんだろうな。

644 :デフォルトの名無しさん:2006/11/18(土) 12:28:43
信者の痛さここに際まれり!!
M$の悪徳ライセンスだからこそ無視するんだよ
なんで良心的なBSDライセンスまで守らないとか
Linux使いはゲームが割れ物だとか
言う話に飛躍するんだよ

いいから信者は黙って黙々DirectXの布教に勤しんでろ。

645 :デフォルトの名無しさん:2006/11/18(土) 12:35:39
悪徳らいせんすwとやらがどんなもんかしらんが、
個人的にはGPLが一番嫌い。

646 :デフォルトの名無しさん:2006/11/18(土) 12:37:37
>>644
こんなとこに居ないでGLのスレいけよ。

647 :デフォルトの名無しさん:2006/11/18(土) 14:36:08
際まれり?で、感感俺俺かよ。

648 :田中 正造:2006/11/18(土) 15:07:26
このまえナイトオンラインというオンラインゲームを起動したら、
check DirectXとなりました。そして、ヘルプをつかってDirectX診断ツール
を開きました、するとDirect3Dが動作していないようでした。
そして、「ドライバが正造元によって提供されている最新のものであること
を確認してください」ってでたんですけど
どうすればいいんですか?

649 :デフォルトの名無しさん:2006/11/18(土) 15:20:57
ドライバが正造元によって提供されている最新のものであることを確認すればいいよ

650 :田中 正造:2006/11/18(土) 15:45:52
そのやり方が分からないんです;;


651 :デフォルトの名無しさん:2006/11/18(土) 15:48:46
ドライバの製造元に聞けばいいと思うよ。

652 :田中 正造:2006/11/18(土) 15:57:06
ドライバってなんですか?

653 :デフォルトの名無しさん:2006/11/18(土) 16:03:09
何でこの板にいるの?

654 :田中 正造:2006/11/18(土) 16:13:05
DirectX(超初心者用)ってかいてあったからです。

655 :デフォルトの名無しさん:2006/11/18(土) 16:39:56
それはもはやドライバの問題であって、DirectXの問題ではないのでお引取りください。

656 :デフォルトの名無しさん:2006/11/18(土) 20:24:03
ついでにプログラムとも関係ないな。スレの前に板違い。

657 :デフォルトの名無しさん:2006/11/18(土) 20:50:35
>>648
ここは、プログラミングをするプログラマー向けのスレッド、板ですので、板違いになります。
こちらへどうぞ

PC初心者
http://pc7.2ch.net/pcqa/

658 :デフォルトの名無しさん:2006/11/19(日) 20:50:09
質問です。
dxdiag診断ツールにDirect3Dアクセラレータが利用出来ないって書いてあるんですけど、
どうすればD3D使えるようになりますか?D3Dのテストさえさせてくれません。

659 :デフォルトの名無しさん:2006/11/19(日) 20:59:36
>>658
ノートPCじゃね?
デスクトップPCを買わなかった時点でシボンヌw
グラボを買う必要があるんだけどな・・・

660 :デフォルトの名無しさん:2006/11/19(日) 21:05:11
ハイ、ノートPCです!ってダメなんですねorz
お手数おかけしました。。。

661 :デフォルトの名無しさん:2006/11/19(日) 21:07:23
...それはネタですか?ま、ここで質問しても答えは出てこない希ガス

662 :デフォルトの名無しさん:2006/11/19(日) 21:23:53
ノートでもものによりだろ。
オレの使ってるノートはRadeon9700のと、X1400のヤツだが
どっちもVertex/PixelShader2.0は使えるし。

663 :デフォルトの名無しさん:2006/11/19(日) 21:54:34
>>662
vistaが発売されたらゴミになるってわかってて人柱になるんだから
おじさんまいっちゃうよwホントw

664 :デフォルトの名無しさん:2006/11/19(日) 22:16:55
PS2.0がうごけば、Aeroは動くんじゃないか?

665 :デフォルトの名無しさん:2006/11/19(日) 22:18:20
>>664
お前何回騙されるのかと?
普通に頭悪いだろ?

666 :デフォルトの名無しさん:2006/11/19(日) 22:34:55
>>664
いや普通にAero切ればいいだけだがw
RC1で動作確認済み。

667 :デフォルトの名無しさん:2006/11/19(日) 22:40:04
>>665
VistaならGeForce6600でも十分動くぞ。

Vistaに標準搭載のDirectX10がGeForce8800でしかフルに動かないだけであって、
Aero自体はそれほど高度なことしてないよ。
MSDNにRC2も公開されてるんだからちょいとダウンしてインスコしてみればいーじゃない。

そもそもSM4.0でしか動かないOSなんて誰も買わないだろ・・・。

668 :デフォルトの名無しさん:2006/11/20(月) 06:24:45
Visataが発売されたらXPが動かなくなるわけじゃないから
ゴミにはならないだろう。
いまだにWindows98使ってるような人もいるし。

669 :デフォルトの名無しさん:2006/11/20(月) 07:02:55
98SE使ってる俺はセフセフ

670 :デフォルトの名無しさん:2006/11/20(月) 09:55:28
98の初期型でもDx9.0cって動くから何気にスゴイ

671 :デフォルトの名無しさん:2006/11/26(日) 09:49:05
スプライトの中心に2D絵を描画したいのですが
ID3DXSprite::Drawメソッドの第二引数に設定するテクスチャ(サイズが動的)のサイズの半分を得る方法がわかりません
どうすればよいでしょうか?
よろしくお願いします。

672 :デフォルトの名無しさん:2006/11/27(月) 01:51:14
FVFのディフューズとスペキュラの色成分は0〜255の値で設定するのに
D3DMATERIAL9の色成分は0〜1の値で設定しなければならないよね

なんで別々になってるんだろう
両者の間で値のやり取りをする場合は255倍したり255で割ったりしてるんだけど
これでいいのか不安です。何か根本的に勘違いしてたりするんでしょうか?

673 :デフォルトの名無しさん:2006/11/27(月) 20:14:46
メモリデバイスコンテキストに結びつけたビットマップをテクスチャとして読み込むことはできる?
例えばデスクトップのスクリーンショットをポリゴンに貼り付ける、みたいな

674 :デフォルトの名無しさん:2006/11/27(月) 20:31:00
ごめん
くだらんことを聞いた

675 :デフォルトの名無しさん:2006/12/02(土) 13:47:48
VisualC++ 2005 Express Edition で
libのリンク設定てどこでやるんでしたっけ?
一年放って置いたら忘れてしまいまして…。

676 :デフォルトの名無しさん:2006/12/02(土) 13:53:00
>>675
2005 ライブラリの追加 とか組み合わせて検索すれば上手くいくんじゃない?

677 :675:2006/12/02(土) 14:03:27
>>676
ありがとうございます。

自己解決しました。
昔のプロジェクトをコピーしてそのまま使おうとしたらエラーで。
ライブラリのリンクが原因かと思っていたのですが、
DirectXが使えない状態になっていただけでした…。

678 :デフォルトの名無しさん:2006/12/02(土) 19:08:30
どのスレで質問すればいいのか分からないですが、DirectX使っているのでこのスレで質問させてください。
本当にくだらない質問だと思うのですが、
timeGetTimeを用いた正しいFPS処理を教えて頂けないでしょうか?
よろしく御願いします。

679 :デフォルトの名無しさん:2006/12/02(土) 19:18:07
>>678
そりゃ、どこにでもあるから検索かけるか、DirectXのサンプルみてくんねー?
そりゃあんまりなんにもやる気無さ過ぎじゃねぇ?

680 :デフォルトの名無しさん:2006/12/02(土) 19:22:00
確かに、ぐぐればたくさん出てきますよ。
でも、正しいやり方を知りたいんです。

681 :デフォルトの名無しさん:2006/12/02(土) 19:23:57
そもそもFPS処理という言葉がおかしいし、正しいとか正しくないの定義も分からん。

682 :デフォルトの名無しさん:2006/12/02(土) 19:25:10
分からないなら分からないと言えよ
低脳

683 :デフォルトの名無しさん:2006/12/02(土) 19:32:54
>>680
マイクロソフトのやり方でいいじゃない?なんで駄目なの?
DirectXのサンプルだよ?
違うことやってたら、速攻で各国から叩かれるだろ?

684 :デフォルトの名無しさん:2006/12/02(土) 19:35:06
つか正しいのイミわかんね。
timeGetTime()なんて使ったところで正確に60frame維持できるわけでもないし。
結局のところ、大体60だよね、程度にしかならんよ?

685 :デフォルトの名無しさん:2006/12/02(土) 19:43:00
そうですよね。正確に計るのは無理ですよね。
DirectXのサンプルって言うのは、SDKインストールした時に出来たsampleフォルダにあるプログラムですよね?
これは、timeGetTime使ってませんがどのような処理しているのですか?

686 :デフォルトの名無しさん:2006/12/02(土) 19:45:03
それ以前に「FPS処理」なんて他人に通じるような言葉ではないが。
FPSをどうにかする処理なんて色々あるんだから、述語が無かったら
何をしたいのか意味不明。

687 :デフォルトの名無しさん:2006/12/02(土) 19:51:35
そうだな。
可変フレームレートの実装がしたいのか、
タイマーによる固定フレームレートの実装がしたいのかも分からん。
VSYNC待ちによるフレーム制御もあるが・・・

はてさて。

688 :デフォルトの名無しさん:2006/12/02(土) 19:53:58
たんにfpsを求めたいだけかもしれんが。
制御したいんじゃなくて。

689 :デフォルトの名無しさん:2006/12/02(土) 20:06:16
これもう駄目かもわからんね。

690 :デフォルトの名無しさん:2006/12/02(土) 21:38:53
まだテクスチャーとか分からんけど、その俺ですら駄目だと思うよ

691 :デフォルトの名無しさん:2006/12/03(日) 01:05:05
太郎君と政夫君を足すと何になりますか。正しい解を求めなさい。

692 :デフォルトの名無しさん:2006/12/03(日) 02:44:38
3D風に考えると
太郎君と政夫君はそれぞれお腹のあたりでz-indexが交わり前後が入れ替わる

693 :デフォルトの名無しさん:2006/12/03(日) 09:25:37
>>683
たしかに作者ブログが火吹いてたなw

694 :デフォルトの名無しさん:2006/12/17(日) 23:48:44
Error creating process <D:\msdownld.tmp\IXP000.TMP\dxsdk.exe>. Reason: 無効なアドレスにアクセスしようとしています。

と出てDirectX October 2006 SDKがインストール出来ません。
Extracting dxsdk.exe...が終わったあとこのメッセージが出ます。
何故?

695 :デフォルトの名無しさん:2006/12/23(土) 17:45:44
質問失礼します。
D3DXCreateTextureFromFileInMemoryEx D3DPOOL_MANAGED でテクスチャーを作成・描画を行っています。
Alt + TAB でデバイスが消失、再度 Alt + TAB でデバイスが復帰するわけですが、
デバイス復帰後、再度 D3DXCreateTextureFromFileInMemoryEx で作り直す必要があるのでしょうか?
現在デバイス復帰後、テクスチャーが真っ白になり困っています。

D3DPOOL_MANAGED は、システム メモリにバックアップされるので、デバイスが消失したときに作成し直す必要がない。
とヘルプに書いてあるので、作り直す必要があるとも思えません。

分かる方お願いします。

696 :デフォルトの名無しさん:2006/12/23(土) 21:37:59
>>695
俺の知識が古かったらすまないとあらかじめ謝っといた上で言っとくw

とりあえず、俺がいじってたときのDirectXのデバイスロストには2種類あって、
1つは3Dデバイスが吹っ飛ばないデバイスロストこれはMANAGEDで復帰可能。
もう1つは3Dデバイスごと噴き飛ぶデバイスロスト、これは3Dデバイスから全部作り直す必要がある。

って感じになってたはずw
まちがってたら、すまんこ。

697 :695:2006/12/23(土) 22:59:02
>>696
返答ありがとうございます。

すいません。環境を書き忘れました。
VC2003 DirectX9.0 です。
サンプルの EmptyProject を利用しています。

698 :デフォルトの名無しさん:2006/12/23(土) 23:24:23
俺は3Dデバイスが吹き飛んだら例外で強制終了させてる。
んなドライバやウィンドウズのバグ仕様の面倒までいちいちみてられない。

699 :デフォルトの名無しさん:2006/12/23(土) 23:29:31
俺も俺も。
でも、695は本当にデバイスが吹き飛んでるのかな。

700 :デフォルトの名無しさん:2006/12/23(土) 23:32:20
経験上、3Dデバイスが噴き飛ぶことの方が多いと思ったけどな。
つまり、Alt+Tabの復帰処理は3Dデバイスを作り直す用に統一しておいた方が楽。
そうしないとスクリーンセーバーが3D仕様になってるだけで終了。

701 :デフォルトの名無しさん:2006/12/23(土) 23:36:47
ハードディスクの電源OFFとかはどうだったかな・・・。

702 :デフォルトの名無しさん:2006/12/23(土) 23:40:08
動的テクスチャの使用中にデバイスが飛んだら復旧はかなり難しい。

703 :デフォルトの名無しさん:2006/12/23(土) 23:46:01
>>702
それってはじめの1フレームだけの話じゃね?
秒間30フレームぐらいで動いてるなら対応しなくてもいい気がする。
たしか俺が対応したときは1フレームだけフロントバッファには描画しないで2フレーム目から表示することで回避した気がする。
取っておくことはしなかったな。無駄だし。

704 :デフォルトの名無しさん:2006/12/23(土) 23:49:17
>>703
それは静的テクスチャ。

705 :デフォルトの名無しさん:2006/12/23(土) 23:52:17
>>704
え?光学迷彩に使うようなテクスチャを想定して言ってるんだけど、
それも静的テクスチャに分類されるの?

706 :デフォルトの名無しさん:2006/12/24(日) 03:10:19
動的テクスチャはDYNAMICフラグ指定して作る
動画用テクスチャとかのコトだろう。

707 :デフォルトの名無しさん:2006/12/24(日) 04:16:00
>>706
そんなのなおさら保持っとく意味がねぇじゃねぇかw

708 :デフォルトの名無しさん:2006/12/24(日) 07:00:13
まあまあ。
DirectX10からデバイスロストは原則廃止されるそうだし僕ら
プログラマ側は頭を痛めなくても良くなるんじゃね?

709 :デフォルトの名無しさん:2006/12/24(日) 10:58:53
ところでVista対応って何をもってVista対応になるんだ?
Vistaの特長ってよく知らんな。

調べてみたらふつーのバージョンアップだな。
特に激的な変更もなく。
マジでデバイスロストが起こらないのか怪しい。
(Win32APIの変更ないやんけw)
32BitOSなところも変わらんっぽいな。

710 :デフォルトの名無しさん:2006/12/24(日) 14:13:52
一番のポイントはD3D10じゃね?

D3D10対応のビデオカードと謳うにはD3D10で決められた
全ての機能を完全にサポートしなければならないってM$が決めたから。

D3D10で作る場合ならいちいちCAPSで機能の有無をチェックして
分岐コード書かなくてもすむようになるわけ。

貧相なグラボ用にオプションで機能のON/OFFは必要だろうけど
デバイス生成にいちいちMIXED_VERTEXとか指定してシェーダーバージョンごとに、
頂点バッファをシステムに作ったりVRAMに作ったり切り替えなくて済むじゃん。

711 :デフォルトの名無しさん:2006/12/24(日) 19:35:05
便利そうだけど、地デジみたいに普及に時間掛かりそうな・・・

712 :695:2006/12/25(月) 13:38:54
返答ありがとうございます。
すいません。まだ良く理解できていません。

まず、EmptyProjectを利用しているのですが「3Dデバイスから全部作り直す作業」というのは、必要なのでしょうか?
OnResetDevice
OnLostDevice
上記のコールバックの場所で、ただ単にリソース解放とリソース再作成を行えば良い。
「3Dデバイスが吹っ飛ばないデバイスロスト」であろうが「3Dデバイスごと噴き飛ぶデバイスロスト」であろうが、
勝手にD3DFrame側でやってくれるものと漠然と考えていたのですが。。。

D3DPOOL_MANAGED でテクスチャーを作ったが、デバイス復帰後テクスチャーが真っ白になった。
これはデバイスごと吹き飛んだ現象を指しているのでしょうか?

確証が持てませんが、
D3DPOOL_DEFAULT は、OnLostDevice 時にリリースして、OnResetDevice 時に再作成をする必要があり、
D3DPOOL_MANAGED は、OnLostDevice 時に何もしなくても良く、OnResetDevice 時に再作成をする必要がある。(←3Dデバイスごと吹き飛んだ時の対策として)
と考えています。
認識合ってますでしょうか?


713 :高校生:2006/12/25(月) 13:49:37
ちょっと板違いかもしれませんが高校の時点でほとんどPCの知識がなくても大学や社会で情報工学やっていけますか?

714 :デフォルトの名無しさん:2006/12/25(月) 14:29:50
>>713
大学はOK。
社会は無理(小さい企業なら努力次第でなんとかなるかもね)

715 :デフォルトの名無しさん:2006/12/25(月) 16:38:05
DirectX9.0 SDK December2002
をインストールしてデバッグ出力レベルを設定しようと思い、
コントロールパネルからDirectXのプロパティを開こうとしたんですが、
コントロールパネルにDirectXのプロパティが見つかりません

デバッグ出力レベルの設定を行うプログラムはどこにあるんでしょうか?

716 :デフォルトの名無しさん:2006/12/25(月) 19:48:00
>>713
若いころなら努力したら1週間で基礎はできる。

717 :デフォルトの名無しさん:2006/12/25(月) 20:54:50
>>713
高校デビューのヤツは少なくない
死ぬ気でがんばったら本当に死ぬ業界だからほどほどにがんばれ

小さい企業はOJTや独学などという名目で放置プレイだから大企業目指せ
そうすれば愛のある放置プレイが体験できるぜ

718 :デフォルトの名無しさん:2006/12/25(月) 22:06:26
すみません
DirectX9.0をダウンロードするときの確認コードってなんですか

719 :デフォルトの名無しさん:2006/12/25(月) 22:51:09
>>713
俺も高校からはじめた

720 :デフォルトの名無しさん:2006/12/26(火) 02:12:10
>>718
正規版Windowsかどうかのチェック。
ようはコピー品だったはじくと言うわけだ。

721 :デフォルトの名無しさん:2006/12/26(火) 11:02:34
PSPではダウンロードむりなんですか

177 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)