トップページ > 記事閲覧
DxLibにてXファイルを読み込む....
名前:Aozora0630 日時: 2015/06/02 07:43

質問をするのははじめてですが、3Dゲームに挑戦してみようと思い、六角大王という3Dモデリングソフトでモデルを作りました。 そして、それを保存して早速DxLibでロードしようとしたところ、可能形式に六角大王の.rokが無い為、.DXFでエクスポートしたのですが、其の形式も未対応とのことなのでこちら(ttp://(だぶりゅーx3).vector.co.jp/soft/win95/art/se363414.html)のソフトを使用してXファイルへと変換したのですが、何故か上手く読み込めません。 モデルのロードの部分で-1が返されてしまっているみたいです。 誰か原因を教えてください! ttp://dixq.net/forum/viewtopic.php?f=3&t=16671 上での質問でも解決できなかった為こちらに来ました。
メンテ

Page: 1 |

Re: DxLibにてXファイルを読み込む.... ( No.1 )
名前:Aozora0630 日時:2015/06/02 07:46

xファイルです xof 0303txt 0032 Header { 1; 0; 1; } Mesh { 14; 0.140845;-0.098592;0.000000;, 0.140845;0.140845;0.000000;, 0.000000;0.145540;0.262911;, 0.000000;-0.098592;0.262911;, -0.140845;-0.098592;0.000000;, -0.140845;0.140845;0.000000;, -0.059150;-0.040097;-0.021718;, -0.057680;0.076817;-0.022618;, 0.057680;0.076817;-0.022618;, 0.059150;-0.040097;-0.021718;, 0.032864;-0.014085;-0.093897;, 0.032864;0.051643;-0.093897;, -0.032864;0.051643;-0.093897;, -0.032864;-0.014085;-0.093897;; 9; 4;0,1,2,3;, 4;4,5,1,0;, 4;3,2,5,4;, 3;3,4,0;, 3;5,2,1;, 4;6,7,8,9;, 4;9,8,7,6;, 4;10,11,12,13;, 4;13,12,11,10;; MeshMaterialList { 3; 9; 0, 0, 0, 0, 0, 1, 1, 2, 2; Material { 0.313726;0.749020;0.749020;1.000000;; 0.000000; 0.000000;0.000000;0.000000;; 0.000000;0.000000;0.000000;; } Material { 0.874510;0.035294;0.035294;1.000000;; 0.000000; 0.000000;0.000000;0.000000;; 0.000000;0.000000;0.000000;; } Material { 0.847059;0.847059;0.847059;1.000000;; 0.000000; 0.000000;0.000000;0.000000;; 0.000000;0.000000;0.000000;; } } MeshNormals { 34; 0.881480;0.000000;0.472221;, 0.000000;0.000000;-1.000000;, 0.000000;-1.000000;0.000000;, 0.881480;0.000000;0.472221;, 0.000000;0.000000;-1.000000;, 0.000000;0.999841;-0.017854;, 0.881480;0.000000;0.472221;, -0.881480;0.000000;0.472221;, 0.000000;0.999841;-0.017854;, 0.881480;0.000000;0.472221;, -0.881480;0.000000;0.472221;, 0.000000;-1.000000;0.000000;, 0.000000;0.000000;-1.000000;, -0.881480;0.000000;0.472221;, 0.000000;-1.000000;0.000000;, 0.000000;0.000000;-1.000000;, -0.881480;0.000000;0.472221;, 0.000000;0.999841;-0.017854;, 0.000000;-0.007701;-0.999970;, 0.000000;0.007701;0.999970;, 0.000000;-0.007701;-0.999970;, 0.000000;0.007701;0.999970;, 0.000000;-0.007701;-0.999970;, 0.000000;0.007701;0.999970;, 0.000000;-0.007701;-0.999970;, 0.000000;0.007701;0.999970;, 0.000000;0.000000;1.000000;, 0.000000;0.000000;-1.000000;, 0.000000;0.000000;1.000000;, 0.000000;0.000000;-1.000000;, 0.000000;0.000000;1.000000;, 0.000000;0.000000;-1.000000;, 0.000000;0.000000;1.000000;, 0.000000;0.000000;-1.000000;; 9; 4;0,3,6,9;, 4;12,15,4,1;, 4;10,7,16,13;, 3;11,14,2;, 3;17,8,5;, 4;18,20,22,24;, 4;25,23,21,19;, 4;26,28,30,32;, 4;33,31,29,27;; } }
メンテ
Re: DxLibにてXファイルを読み込む.... ( No.2 )
名前:Will 日時:2015/06/02 10:56

参照先の掲示板では読み込みに成功しているようですね。 あなたの環境でのみ失敗するのであれば、実行時のログを提示したほうが良いかと思います。
メンテ
Re: DxLibにてXファイルを読み込む.... ( No.3 )
名前:Aozora0630 日時:2015/06/02 21:34

すみません、良く分かりませんが読み込みには成功しました。が、肝心の表示が出来ません。 以下ログファイルです。 32:システムの情報を出力します 33: DXライブラリ Ver3.13b 33: 論理プロセッサの数 : 1 34: OS WindowsXP ( Build 2600 Service Pack 3 ) 134: 現時点のCPU動作速度:大体2.19GHz 134: MMX命令を使用します 135: SSE命令が使用可能です 135: SSE2命令が使用可能です 135: CPUベンダ:GenuineIntel 137: CPU名:Intel(R) Celeron(R) CPU 900 @ 2.20GHz 137:COMの初期化... 成功しました 146:メモリ総量:953.11MB 空きメモリ領域:349.12MB 147:タイマーの精度を検査します 147:精度結果 更新回数 マルチメディアタイマー:0 パフォーマンスカウンター:60 148: パフォーマンスカウンターを使用します タイマー精度 : 3579.545000 KHz 148: ソフトの二重起動検査... 二重起動はされていませんでした 168:ウインドウクラスを登録します... 登録に成功しました 169:ウインドウモード起動用のウインドウを作成します 174:ウインドウの作成に成功しました 175:ウインドウを表示します 218:IMEを無効にしました 218:ウインドウスタイルをウインドウモード用に変更します... 完了 239:DirectInput関係初期化処理 239: XInput DLL の読み込み中... 失敗、XInputは使用しません 241: DirectInput7 の取得中... 成功 248: 引き続き初期化処理... 初期化成功 251: ジョイパッドの初期化... 253: ジョイパッドの初期化は正常に終了しました 253: マウスデバイスの初期化... 初期化成功 254: キーボードデバイスの初期化... 初期化成功 257:DirectInput 関連の初期化は正常に終了しました 259:XAudio2 の初期化を行います 259: XAudio2 インターフェースの取得を行います.... XAudio2インターフェースの取得に失敗しました 280: DirectSound の初期化を行います 280: DirectSound インターフェースの取得を行います.... 成功 283: 引き続きインターフェースの初期化処理... 成功 362: DirectSound デバイスを列挙します 365: モジュール名: ドライバ記述:プライマリ サウンド ドライバ 366: モジュール名: RtkHDAud.sys ドライバ記述:Realtek HD Audio output 366: モジュール名: tivsound.sys ドライバ記述:TiVSound Wave 366: 最大サンプリングレート:192.00KHz 最小サンプリングレート:8.00KHz 367: 総サウンドメモリ領域:0.00KB 空きサウンドメモリ領域:0.00KB 367: 利用可能サンプリング精度 367: プライマリ 16bit = OK 8bit = OK 368: セカンダリ 16bit = OK 8bit = OK 368: 利用可能チャンネル 368: プライマリ MONO = OK STEREO = OK 369: セカンダリ MONO = OK STEREO = OK 369: DirectSound の初期化は正常に終了しました 371: DirectDraw オブジェクトの取得を行います.... 成功 373: 引き続き初期化処理... 初期化に成功しました 375: IDirect3D9Ex オブジェクトを取得します.... IDirect3D9 オブジェクトを取得します.... 成功 382: IDirect3DDevice9 オブジェクトを取得します.... ハードウエア頂点演算を使用します 730: 成功 731: Driver:igxprd32.dll Description:Mobile Intel(R) 4 Series Express Chipset Family 731: 画面のフォーマットは D3DFMT_X8R8G8B8 です 732: 16bit Zバッファフォーマットは D3DFMT_D16 です 732: 24bit Zバッファフォーマットは D3DFMT_D24X8 です 733: 32bit Zバッファフォーマットは D3DFMT_D24X8 です 733: 16bit カラーフォーマットは D3DFMT_R5G6B5 です 734: 32bit カラーフォーマットは D3DFMT_X8R8G8B8 です 734: アルファ付き 16bit カラーフォーマットは D3DFMT_A4R4G4B4 です 735: アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 735: アルファテスト用 16bit カラーフォーマットは D3DFMT_A1R5G5B5 です 735: アルファテスト用 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 736: DXT1テクスチャフォーマットはD3DFMT_DXT1 です 736: DXT2テクスチャフォーマットはD3DFMT_DXT2 です 737: DXT3テクスチャフォーマットはD3DFMT_DXT3 です 737: DXT4テクスチャフォーマットはD3DFMT_DXT4 です 737: DXT5テクスチャフォーマットはD3DFMT_DXT5 です 738: 描画用 16bit カラーフォーマットは D3DFMT_R5G6B5 です 738: 描画用 32bit カラーフォーマットは D3DFMT_X8R8G8B8 です 739: 描画用アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です 739: 描画用ABGR整数16ビット型カラーフォーマットは D3DFMT_A16B16G16R16 です 739: 描画用ABGR浮動小数点16ビット型カラーフォーマットは D3DFMT_A16B16G16R16F です 740: 描画用ABGR浮動小数点32ビット型カラーフォーマットは D3DFMT_A32B32G32R32F です 740: 描画用1チャンネル整数8ビット型カラーフォーマットは D3DFMT_A8R8G8B8 です 740: 描画用1チャンネル整数16ビット型カラーフォーマットは D3DFMT_G16R16 です 741: 描画用1チャンネル浮動小数点16ビット型カラーフォーマットは D3DFMT_R16F です 741: 描画用1チャンネル浮動小数点32ビット型カラーフォーマットは D3DFMT_R32F です 742: 描画用2チャンネル整数8ビット型カラーフォーマットは D3DFMT_A8B8G8R8 です 742: 描画用2チャンネル整数16ビット型カラーフォーマットは D3DFMT_G16R16 です 743: 描画用2チャンネル浮動小数点16ビット型カラーフォーマットは D3DFMT_G16R16F です 743: 描画用2チャンネル浮動小数点32ビット型カラーフォーマットは D3DFMT_G32R32F です 743: 一度に描画できるプリミティブの最大数:1048575 744: 対応している最大頂点インデックス:16777215 744: 同時にレンダリングできるバッファの数:4 744: 最大テクスチャサイズ 幅:4096 高さ:4096 745: テクスチャステージテンポラリレジスタ:使用可 745: 減算合成のハードウェア対応:ネイティブ 746: ハードウェア頂点シェーダーバージョンコード:300 746: エミュレーション頂点シェーダーバージョンコード:エミュレーション無し 746: ピクセルシェーダーバージョンコード:300 764: バックバッファロック転送の時間:3144nsec 一時的な描画可能バッファを使用した転送の時間:1772nsec 764: バックバッファロックを使用しません 764: Zバッファを作成します.... 成功 815: プログラマブルシェーダーを使用します 917: フォントの初期化を行います 960: フォントの初期化は正常に終了しました 977: 文字コードバッファの初期化を行います... 完了しました 9143: フォントの初期化を行います 9143: フォントの初期化は正常に終了しました 9146: Direct3DDevice9 の解放 2 9172: d3d9.dll の解放 1 9175: DirectInput 関連の終了処理... 完了 9191: DirectSound の終了処理は正常に終了しました 9194: ウインドウを閉じようとしています 9232: ウインドウが破棄されようとしています 9233: ソフトを終了する準備が整いました 9318: 9318: Alloc memory dump 9318: Total size:0(0.000kb) Alloc num:0 9319:
メンテ
Re: DxLibにてXファイルを読み込む.... ( No.4 )
名前:管理人 日時:2015/06/03 01:30

モデルが非常に小さいので、デフォルトのカメラ設定では小さすぎて見えないようです モデルが見えるようにカメラの設定を行うと以下のようになります #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { int ModelHandle ; // ウインドウモードで起動 ChangeWindowMode( TRUE ) ; // DXライブラリの初期化 if( DxLib_Init() < 0 ) return -1 ; // モデルの読み込み ModelHandle = MV1LoadModel( "baster.x" ) ; // カメラの設定 SetCameraPositionAndTarget_UpVecY( VGet( 0.0f, 0.16f, -0.25f ), VGet( 0.0f, 0.0235f, 0.0845f ) ) ; SetCameraNearFar( 0.00714f, 1.785f ) ; // モデルの描画 MV1DrawModel( ModelHandle ) ; // キー入力待ち WaitKey() ; // DXライブラリの後始末 DxLib_End() ; // ソフトの終了 return 0 ; }
メンテ
Re: DxLibにてXファイルを読み込む.... ( No.5 )
名前:Aozora0630 日時:2015/06/03 07:31

すみません。画面外から外れているだけなんて私のミスでした。 管理人さん、Willさん、ありがとう御座いました。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存