构建OpenGL范例

最終更新: 2021年12月9日

此页面适用于Cubism 4.2及更早版本的旧版本。 点击此处查看最新页面

本页说明在Windows环境下在Visual Studio中编译Live2D Cubism SDK for Native中包含的OpenGL范例项目的步骤。

* 文章内容使用Cubism 4 SDK for Native R1。
方法和步骤可能因Cubism SDK的版本而异。 

必要的项目

·Live2D Cubism SDK for Native

这是SDK本体。从“官方下载页”下载。

·Visual Studio

这是本次使用的开发环境。该语言使用C++。
另外,请使用Visual Studio 2013或更高版本。

·CMake

用于生成项目文件。

·GLFW

它是OpenGL的辅助工具库,具有输入和视窗管理功能。
您可以从Cubism SDK范例中包含的批处理文件中下载。

·GLEW

OpenGL的扩展工具库使调用OpenGL扩展功能变得更容易。
您可以从Cubism SDK范例中包含的批处理文件中下载。

本文中GLFW和GLEW是从Cubism SDK范例中包含的批处理文件中下载的,因此无需提前下载。

此外,对于CMake、GLFW和GLEW等工具和工具库,请参考范例SDK的ZIP内
[根]Samples/OpenGL”中“README.md”中描述的步骤和版本。

安装作业

Visual Studio

安装集成开发环境。
请进行设置以便可以编译C++。

CMake

安装CMake。
由于CMake作业是从批处理文件中使用的,因此请设置CMake路径,以便用户可以参考它。

* 图片可能与实际画面不同。 

GLFW和GLEW的部署

关于GLFW和GLEW的部署,请查看“Samples/OpenGL”中的“README.md”中描述的步骤。
在Windows上,请执行“Samples/OpenGL/thirdParty”中的“setup.bat”,下载GLFW和GLEW。

批量提取完成后,文件夹结构如下。

* 如果您手动下载了GLFW和GLEW,则需要将它们解压到“Samples/OpenGL/thirdParty”文件夹中。

执行CMake

CMake也可以从GUI中使用,但这次我们将使用范例中包含的批处理文件。
在Windows上,“Samples/OpenGL/Demo/proj.win.cmake/scripts”中有一个批处理文件。
Windows用批处理文件从多个设置的组合中选择。

·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)
·Full Demo

输出的
[根]/Samples/OpenGL/Demo/proj.win.cmake/build/proj_msvc2015_x64_md”中的“Demo.sln”通过Visual Studio打开,并执行构建。

执行

如果构建成功,请在调试中执行它。

如果能在大画面和命令提示符下看到记录输出,即为成功。
* 在最小范例中,不显示背景和模型切换的齿轮图标等UI。

如果要调整视窗大小,请变更“/Sample/OpenGL/Demo/proj.win.cmake/src/LAppDelegate.cpp”的
LAppDelegate::Initialize()中使用的glfwCreateWindow()的第1参数、第2参数的值。

_window = glfwCreateWindow(RenderTargetWidth, RenderTargetHeight, "SAMPLE", NULL, NULL);

* RenderTargetWidth、RenderTargetHeight在“/Sample/OpenGL/Demo/proj.win.cmake/src/LAppDefine.cpp”中定义实际的值。

执行文件的输出目的地

此次从CMake创建的项目与通常项目不同,
文件的输出目的地将与项目文件夹在相同层次结构中。

具体来说,当项目文件夹为“[根]/Samples/OpenGL/Demo/proj.win.cmake/build/proj_msvc2015_x64_md”时,
执行文件输出到与项目文件夹相同的位置。

在构建时生成“[根]/Samples/OpenGL/Demo/proj.win.cmake/build/proj_msvc2015_x64_md/Release”等,但是请注意这里没有输出文件。

请问这篇文章对您有帮助吗?
关于本报道,敬请提出您的意见及要求。