Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.1 ) |
- 名前:管理人 日時:2024/06/07 21:46
DXライブラリで使用している FBX SDK のバージョンと異なるためにエラーが発生しているようです
DXライブラリで現在使用している FBX SDK のバージョンは 2020.2 なので、よろしければ
FBX SDK のページから 2020.2 の SDK をダウンロードして使用してみてください m(_ _)m
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.2 ) |
- 名前:double型 日時:2024/06/08 08:45
返信ありがとうございます。
言われた通りバージョンを2020.2に変更してビルドしてみた結果、次は
'DxDrawFunc_vs2015_x64_MDd.lib' を開くことができません。
とエラーが発生したのですが、どうしたらいいでしょうか。
(このエラー1つだけです。)
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.3 ) |
- 名前:管理人 日時:2024/06/09 02:07
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.4 ) |
- 名前:double型 日時:2024/06/09 22:41
ありがとうございます。エラーの内容解決しました。
どうやらFBXSDKのlibファイルの場所を指定した際に消えてしまっていたようです。
ですがビルドした際にモデルハンドルに-1が入ってしまいます。
もし、考えられる原因がございましたら、教えていただけますでしょうか。
----ファイル構成-----
FbxTestProject┳FbxTestProject━FbxTestProject.vcxproj
┃ FbxTestProject.vcxproj.filters
┃ FbxTestProject.vcxproj.user
┃ Log.txt
┃ main.cpp
┃ test.fbx
┃
┗FbxTestProject.sln
----コード----
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
ChangeWindowMode(TRUE);
// DXライブラリ初期化処理
if (DxLib_Init() == -1)
{
return -1;
}
int modelHandle = MV1LoadModel("test.fbx");
SetDrawScreen(DX_SCREEN_BACK);
MV1DrawModel(modelHandle);
DrawBox(0, 0, 100, 100, GetColor(255, 255, 255), TRUE);
ScreenFlip();
WaitKey();
// DXライブラリ使用の終了処理
DxLib_End();
// ソフトの終了
return 0;
}
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.5 ) |
- 名前:管理人 日時:2024/06/09 23:20
ビルドエラーは解決したようで何よりです
> ですがビルドした際にモデルハンドルに-1が入ってしまいます。
>
> もし、考えられる原因がございましたら、教えていただけますでしょうか。
プログラム実行時に Log.txt が作成されるのですが、何かエラーに関する出力はされていないでしょうか?
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.6 ) |
- 名前:double型 日時:2024/06/10 14:31
L
Log.txtです。
////////////////////////////////////////////////////////////////////////////////////
Log.txt
////////////////////////////////////////////////////////////////////////////////////
0:ChangeWindowMode実行
0:ウインドウモードフラグが立てられました
1:DXライブラリの初期化処理開始
3: システムの情報を出力します
3: DXライブラリ Ver3.24d
4: 論理プロセッサの数 : 20
4: OS Windows11 ( Build 22631 )
104: 現時点のCPU動作速度:大体2.68GHz
104: MMX命令を使用します
104: SSE命令が使用可能です
105: SSE2命令が使用可能です
105: CPUベンダ:GenuineIntel
106: CPU名:12th Gen Intel(R) Core(TM) i7-12700H
108: COMの初期化... 成功
112: 非同期読み込み処理の初期化...成功
113: ファイルアクセス処理の初期化...成功
114: メモリ総量:16093.49MB 空きメモリ領域:2616.30MB
114: タイマーの精度を検査します
115: 精度結果 更新回数 マルチメディアタイマー:0 パフォーマンスカウンター:60
115: パフォーマンスカウンターを使用します タイマー精度 : 10000.000000 KHz
115:
115: ソフトの二重起動検査... 二重起動はされていませんでした
116: ウインドウクラスを登録します... 登録に成功しました
117: ウインドウモード起動用のウインドウを作成します
117: ディスプレイ情報のセットアップ開始
118: モニターの数:2 ディスプレイデバイスの数:8
118: No.0 モニター名:\\.\DISPLAY5 1920x1080 32bit 60Hz 96x96dpi
118: No.1 モニター名:\\.\DISPLAY1 1920x1080 32bit 144Hz 96x96dpi
131: ディスプレイ情報のセットアップ完了
131: ウインドウ矩形 ( 624, 249 )-( 1280, 768 )
135: ウインドウの作成に成功しました
135: ウインドウを表示します
157: IMEを無効にしました
157: ウインドウスタイルをウインドウモード用に変更します... 完了
185: XInput DLL の読み込み中... 成功
188: DirectInput関係初期化処理
188: DirectInput8 の取得を試みます...成功
197: 引き続き初期化処理... 初期化成功
198: ジョイパッドの初期化...
199: XInput 対応コントローラーのチェックを開始します
199: XInput 対応コントローラー No.0 をチェック
199: XInput 対応コントローラー No.0 の接続は確認できませんでした
199: XInput 対応コントローラー No.1 をチェック
199: XInput 対応コントローラー No.1 の接続は確認できませんでした
200: XInput 対応コントローラー No.2 をチェック
200: XInput 対応コントローラー No.2 の接続は確認できませんでした
200: XInput 対応コントローラー No.3 をチェック
200: XInput 対応コントローラー No.3 の接続は確認できませんでした
200: XInput 対応コントローラーのチェック完了
201: DirectInput 対応ジョイパッドの列挙を開始します
215: DirectInput 対応ジョイパッドの列挙終了
215: ジョイパッドの初期化は正常に終了しました
215: マウスデバイスの初期化... 初期化成功
216: キーボードデバイスの初期化... 初期化成功
220: DirectInput 関連の初期化は正常に終了しました
223: WASAPI の初期化を行います
227: デバイス名 : スピーカー (Realtek(R) Audio)
232: デフォルト遅延時間 : 10.000 ms
232: 最小遅延時間 : 3.000 ms
232: 遅延時間 : 10.000 ms
233: チャンネル数 : 2 ch
233: 量子化ビット深度 : 32 bit
233: 有効ビット深度 : 32 bit
233: サンプリングレート : 48000 Hz
233: データ形式 : 浮動小数点型
245: 動作モード : 共有モード
245: WASAPI の初期化は正常に終了しました
249: d3d11.dll の読み込み.... 成功
252: dxgi.dll の読み込み.... 成功
253: API CreateDXGIFactory2 のアドレスを取得します.... 成功
253: IDXGIFactory2 を作成します.... 成功
260: API CreateDXGIFactory6 のアドレスを取得します.... 成功
260: IDXGIAdapter を列挙
261: Adapter No.0 Desc:NVIDIA GeForce RTX 3060 Laptop GPU VRAM:5996MB
261: Output Device No.0 Name:\\.\DISPLAY5 ( 0, 0 )-( 1920, 1080 )
261: Adapter No.1 Desc:Intel(R) Iris(R) Xe Graphics VRAM:128MB
261: Output Device No.0 Name:\\.\DISPLAY1 ( 1920, -135 )-( 3456, 729 )
262: Adapter No.2 Desc:Microsoft Basic Render Driver VRAM:0MB
262: API D3D11CreateDevice のアドレスを取得します.... 成功
262: IDXGIAdapter を取得します.... 成功
263: IDXGIAdapter1 を取得します.... 成功
263: IDXGIAdapter2 を取得します.... 成功
264: IDXGIAdapter3 を取得します.... 成功
264: IDXGIAdapter4 を取得します.... 成功
265: Direct3D 11 FeatureLevel 11_0 以上を対象とします
265: ID3D11Device オブジェクトを取得します.... 成功
382: IDXGIDevice1 を取得します.... 成功
383: IDXGIDevice1->SetMaximunFrameLatency( 1 ); を実行しました
383: [ウインドウモード 640x480 ( 640, 287 )-( 1280, 767 )]
383: IDXGISwapChain2 を作成します.... 成功
386: IDXGIFactory2->CreateSwapChainForHwnd の戻り値:0x00000000
386: IDXGIOutput を取得します.... 成功
387: Graphics Device:NVIDIA GeForce RTX 3060 Laptop GPU
387: 画面のフォーマットは DXGI_FORMAT_R8G8B8A8_UNORM です
387: 16bit Zバッファフォーマットは DXGI_FORMAT_D16_UNORM です
388: 24bit Zバッファフォーマットは DXGI_FORMAT_D24_UNORM_S8_UINT です
388: 32bit Zバッファフォーマットは DXGI_FORMAT_D32_FLOAT です
388: 16bit カラーフォーマットは DXGI_FORMAT_B5G6R5_UNORM です
388: 32bit カラーフォーマットは DXGI_FORMAT_B8G8R8X8_UNORM です
388: アルファ付き 16bit カラーフォーマットは DXGI_FORMAT_B4G4R4A4_UNORM です
389: アルファ付き 32bit カラーフォーマットは DXGI_FORMAT_R8G8B8A8_UNORM です
389: アルファテスト用 16bit カラーフォーマットは DXGI_FORMAT_B5G5R5A1_UNORM です
389: アルファテスト用 32bit カラーフォーマットは DXGI_FORMAT_R8G8B8A8_UNORM です
389: DXT1テクスチャフォーマットは DXGI_FORMAT_BC1_UNORM です
390: DXT2テクスチャフォーマットは使えません
391: DXT3テクスチャフォーマットは DXGI_FORMAT_BC2_UNORM です
391: DXT4テクスチャフォーマットは使えません
392: DXT5テクスチャフォーマットは DXGI_FORMAT_BC3_UNORM です
392: BC7_UNORM テクスチャフォーマットは DXGI_FORMAT_BC7_UNORM です
392: BC7_UNORM_SRGB テクスチャフォーマットは DXGI_FORMAT_BC7_UNORM_SRGB です
392: ABGR 整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16B16A16_UNORM です
392: ABGR 浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16B16A16_FLOAT です
393: ABGR 浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32G32B32A32_FLOAT です
393: 1チャンネル整数 8 ビット型カラーフォーマットは DXGI_FORMAT_R8_UNORM です
393: 1チャンネル整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16_UNORM です
393: 1チャンネル浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16_FLOAT です
394: 1チャンネル浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32_FLOAT です
394: 2チャンネル整数 8 ビット型カラーフォーマットは DXGI_FORMAT_R8G8_UNORM です
394: 2チャンネル整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16_UNORM です
394: 2チャンネル浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16_FLOAT です
394: 2チャンネル浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32G32_FLOAT です
395: 描画用 16bit カラーフォーマットは DXGI_FORMAT_B5G6R5_UNORM です
395: 描画用 32bit カラーフォーマットは DXGI_FORMAT_B8G8R8X8_UNORM です
395: 描画用アルファ付き 32bit カラーフォーマットは DXGI_FORMAT_R8G8B8A8_UNORM です
395: 描画用 ABGR 整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16B16A16_UNORM です
396: 描画用 ABGR 浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16B16A16_FLOAT です
396: 描画用 ABGR 浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32G32B32A32_FLOAT です
396: 描画用1チャンネル整数 8 ビット型カラーフォーマットは DXGI_FORMAT_R8_UNORM です
397: 描画用1チャンネル整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16_UNORM です
397: 描画用1チャンネル浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16_FLOAT です
397: 描画用1チャンネル浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32_FLOAT です
397: 描画用2チャンネル整数 8 ビット型カラーフォーマットは DXGI_FORMAT_R8G8_UNORM です
398: 描画用2チャンネル整数 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16_UNORM です
398: 描画用2チャンネル浮動小数点 16 ビット型カラーフォーマットは DXGI_FORMAT_R16G16_FLOAT です
398: 描画用2チャンネル浮動小数点 32 ビット型カラーフォーマットは DXGI_FORMAT_R32G32_FLOAT です
398: 使用する機能レベル:D3D_FEATURE_LEVEL_11_1
399: 同時にレンダリングできるバッファの数:8
399: 最大テクスチャサイズ 幅:16384 高さ:16384
399: 標準描画用の頂点バッファの作成.... 成功
400: シェーダーコード関係の初期化.... 成功
414: 各種シェーダー用定数バッファの作成.... 成功
415: 各種 ID3D11InputLayout の作成.... 成功
432: 画像の単純転送処理の初期化... 成功
434: 深度バッファを作成します.... 成功
437: フォントの初期化を行います
440: フォントの初期化は正常に終了しました
533: 文字コードバッファの初期化を行います... 完了しました
551:DXライブラリの初期化処理終了
568:VMD Load Error : 対応していない VMD バージョンです
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.7 ) |
- 名前:管理人 日時:2024/06/10 22:06
Log.txt の貼り付けありがとうございます
> 568:VMD Load Error : 対応していない VMD バージョンです
読み込みを試された test.fbx がFBXファイルと判定されず、他の形式の判定が行われ
最終的に VMDファイルでもないと判断されたエラー出力のようです
最新の FBX SDK ではないのが test.fbx が読み込めない原因である可能性が高い気がしますが、
断言はできません
お手数で申し訳ありませんが、よろしければ読み込みに試された test.fbx をzipなどで圧縮して
BQE00322(あっとまーく)nifty.com
( (あっとまーく) を @ に置き換えてください )
↑
こちらのメールアドレスに送って頂けないでしょうか?
私の方で読み込めない原因を調べてみたいと思います m(_ _)m
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.8 ) |
- 名前:double型 日時:2024/06/10 22:26
先ほどメールの方送らせていただきました。
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.9 ) |
- 名前:管理人 日時:2024/06/10 23:01
メールありがとうございます
添付していただいた fbxファイルは手元では問題なく読み込むことができました( DxLibModelViewer.exe で読み込めました )
となると、fbxファイル読み込み機能が有効になっていないのかもしれません
DxLib.lib を別プロジェクトでコンパイルして使用するよりDXライブラリのソースを直接コンパイルして使用する方が確実ですので
お手数で申し訳ありませんが よろしければこちらのDXライブラリのソースを直接コンパイルして使用する
プロジェクトで fbxファイル読み込み機能を有効にして( //#define DX_LOAD_FBX_MODEL のコメントアウトを外して )
test.fbx を読み込む処理を実行してみてください m(_ _;m
https://dxlib.xsrv.jp/temp/DxLibSourceTest_WithUseCLib.zip
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.10 ) |
- 名前:double型 日時:2024/06/14 18:55
見落としの設定がないように最初から確認を繰り返し
設定しビルドして、サンプルを実行しましたが結果は失敗でした。
エラー内容は
未解決の外部シンボル xmlCleanupParser が関数 "void __cdecl fbxsdk::Close3rdPartyLibraries(void)"
(?Close3rdPartyLibraries@fbxsdk@@YAXXZ) で参照されました
等のエラーが多数出ました。
fbxsdkのバージョンも2020.2です。
VisualStudio等のバージョンが関係しているんでしょうか?
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.11 ) |
- 名前:管理人 日時:2024/06/15 19:26
すみません、FBXファイル読み込みを有効にする場合はインクルード設定の他にリンカー設定も行う必要があります
参考にされたスレッドのこちらの手順を行うことでエラーは解消されると思います
-----------------------------------------------------------------------------------------------------------
12.プロジェクトのプロパティダイアログの左側から「構成プロパティ」→「リンカー」→「全般」を選択して、
右側の「追加のライブラリティレクトリ」に FBX SDK の該当する Visual Studio のバージョン用の lib フォルダを追加する
( 例: VisualStudio2010 を使用していて、
32bit版 Debug ビルド用の lib ファイルを作成する際は C:\FbxSdk\2015.1\lib\vs2010\x86\debug
32bit版 Release ビルド用の lib ファイルを作成する際は C:\FbxSdk\2015.1\lib\vs2010\x86\release )
13.同じくプロジェクトのプロパティダイアログの左側から「構成プロパティ」→「リンカー」→「入力」を選択して、
右側の「追加の依存ファイル」に「libfbxsdk-mt.lib」という記述を追加して、「OK」ボタンを押してプロパティダイアログを閉じる
-----------------------------------------------------------------------------------------------------------
ただ、上記の説明では libfbxsdk-mt.lib のみ記載されていますが、2020.2 では
libfbxsdk-mt.lib;libxml2-mt.lib
の2つを記述する必要があるようです( 因みに 2020.3.7 の場合は alembic-mt.lib;libfbxsdk-mt.lib;libxml2-mt.lib の3つになります )
よろしければお試しください m(_ _)m
|
Re: 現最新バージョンでのFBXファイルの読み込みについて ( No.12 ) |
- 名前:double型(解決済み) 日時:2024/06/19 07:24
なるほど.....必要なlibファイルが増えていたのですね。
libファイルを増やしてみると、
無事FBXファイルの読み込みを行うことができました。
ありがとうございます。
|