构建DirectX 11范例
最終更新: 2024年12月19日
本页说明Windows环境下在Visual Studio中编译Live2D Cubism SDK for Native中包含的DirectX 11范例项目的步骤。
* 文章内容使用Cubism 4 SDK for Native R1。
方法和步骤可能因Cubism SDK的版本而异。
下载什么
这是SDK本体。从“官方下载页”下载。
这是本次使用的开发环境。该语言使用C++。
用于生成项目文件。
这是DirectX 11的工具库。
您可以从Cubism SDK范例中包含的批处理文件中下载。
对于CMake和DirectXTK等工具库,请确认范例SDK的ZIP中“[根]Samples/D3D11”的“README.md”中描述的步骤和版本。
安装作业
Visual Studio
安装集成开发环境。
请进行设置以便可以编译C++。
另外,请使用Visual Studio 2015或更高版本。
CMake
安装CMake。
由于CMake作业是从批处理文件中使用的,因此请设置CMake路径,以便用户可以参考它。
* 图片可能与实际画面不同。
DirectXTK
安装DirectXTK。
请从“/Samples/D3D11/thirdParty/scripts”中的“setup_msvcxxxx.bat”中执行描述要使用的Visual Studio的项目,并下载DirectXTK。
批处理完成后,将在“/Samples/D3D11/thirdParty”中创建一个名为“DirectXTK”的文件夹。
执行CMake
CMake也可以从GUI中使用,但这次我们将使用范例中包含的批处理文件。
“Samples/D3D11/Demo/proj.d3d11.cmake/scripts”中有一个批处理文件。
此批处理文件从多个设置组合中进行选择。
·NMake、还是Project?
NMake从命令提示符构建并生成可执行文件。请使用以nmake_开头的批处理文件。
如果要从Visual Studio编辑代码等,请使用以proj_开头的批处理文件。
·Visual Studio版本
请选择已安装的Visual Studio版本。
在本例中,由于选择包含Visual Studio 2015解决方案文件的项目,因此执行“proj_msvc2015.bat”。
执行时会显示如下图所示的选项,请输入对应的半角数字。
·架构选择
选择x86(Win32)或x64(Win64)。
请根据您的使用环境酌情选择。
·Cubism Core模块选择
选择要使用的Cubism Core运行时工具库。
关于MD、MT等的含义,请查看Microsoft官方文档。
·项目内容的选择
选择要生成的项目的内容。
选择Full Demo时:将生成一个使用Cubism SDK for Native所有功能的范例项目。
选择Minimum Demo时:将生成一个最小项目,显示重复单个动态的模型。该项目中使用了以下功能:
- 导入和显示Cubism模型
- 循环播放一个动态的功能
- 拖动鼠标跟踪视线
- 物理模拟
- 呼吸
- 姿势
如果输入正常,将开始通过CMake生成。
* 如果开始生成后出现错误,请检查CMake的版本和指定的Visual Studio版本。
构建
通过CMake生成完成后,从生成的文件中打开解决方案文件。
在这个例子中,执行
·proj_msvc2015.bat,
于选项中选择
·x64(Win64)
·use the multithread-specific and DLL-specific version of the run-time library (MD)
输出的
“[根]/Samples/D3D9/Demo/proj.d3d11.cmake/build/proj_msvc2015_x64_md”中的“Demo.sln”通过Visual Studio打开,并执行构建。
如果构建成功,请在调试中执行它。
如果显示大画面,即为成功。
* 在最小范例中,不显示背景和模型切换的齿轮图标等UI。
如果要调整视窗大小,请变更“/Sample/D3D11/Demo/proj.d3d11.cmake/src/LAppDelegate.cpp”的LAppDelegate::Initialize()中使用的SetRect()的第4参数、第5参数的值。
SetRect(&rect, 0, 0, RenderTargetWidth, RenderTargetHeight);
* RenderTargetWidth、RenderTargetHeight在“/Sample/D3D11/Demo/proj.d3d11.cmake/src/LAppDefine.cpp”中定义实际的值。
执行文件的输出目的地
此次从CMake创建的项目与通常项目不同,文件的输出目的地将在与项目文件夹相同层次结构中创建的“bin”下。
具体来说,当项目文件夹为“[根]/Samples/D3D11/Demo/proj.d3d11.cmake/build/proj_msvc2015_x64_md”时,执行文件输出到“[根]/Samples/D3D11/Demo/proj.d3d11.cmake/build/proj_msvc2015_x64_md/bin/[Configurations]/”。
例:“[根]/Samples/D3D11/Demo/proj.d3d11.cmake/build/proj_msvc2015_x64_md/bin/Release/”