跳转到内容

Blender 3D:从新手到专业/制作exe

来自维基教科书,开放世界开放书籍

本教程将向您展示如何为在 Blender 中制作的游戏制作可执行文件。

注意:“Windows”和“GNU/Linux 或 Mac OS X”部分列出的方法仅适用于您创建文件时所在的系统。要使其跨平台,请使用“BlenderPlayer”方法。

首先创建一个文件夹来保存所有游戏信息。将其命名为有意义的名称,例如“Yo Frankie!”。

该文件夹必须包含四个文件,您可以从 Blender 安装目录中复制这些文件。(在 Windows 中,它应该是“C:\Program Files\Blender Foundation\Blender”)它们是

  1. SDL.dll
  2. python24.dll (或其他相关的 python 文件;python25.dll,python26.dll 等)
  3. pthreadVC2.dll
  4. zlib.dll

(有时您还需要以下内容…

  1. avformat-51.dll
  2. avutil-49.dll
  3. avcodec-51.dll

它们在同一个文件夹中。)

不是新手注意:如果您使用的是最新版本的 Blender,您将需要以下文件。)

我在运行 windows xp media edition 和 blender 2.46,这是我需要的完整文件列表

  1. avcodec-51.dll
  2. avformat-52.dll
  3. avutil-49.dll
  4. libfaac-0.dll
  5. libfaad-0.dll
  6. libmp3lame-0.dll
  7. libx264-59.dll
  8. pthreadVC2.dll
  9. python25.dll
  10. SDL.dll
  11. swscale-0.dll
  12. vcomp90.dll
  13. xvidcore.dll
  14. zlib.dll

在 Blender 2.48a(Windows XP Media Center 2002,SP3)上,还需要以下 .manifest 文件

  1. blender.exe.manifest
  2. blenderplayer.exe.manifest
  3. Microsoft.VC90.CRT.manifest
  4. Microsoft.VC90.OpenMP.manifest

如果您在游戏中使用了随机 Python 模块,则需要向游戏目录添加一个文件。对于 Blender 2.49,它应该是 python26.zip,您可以在 Blender 主目录(blender.exe 所在的位置)中找到它。否则,在没有安装 Python 的系统中执行游戏时可能会出现一些错误。

从 Blender 2.56 开始,您需要启用“保存为运行时”;首先使用您创建的游戏打开 Blender,然后打开文件菜单。单击用户首选项,然后选择附加组件,然后选择游戏引擎,选中游戏引擎保存为运行时框,然后返回文件菜单。“保存为运行时”将作为导出菜单中的一个选项出现,然后保存到您创建的新文件夹中,并将其重命名为 yourgamename.exe,

然后就可以运行游戏了!

如果您在“保存为运行时”过程中遇到错误(我在 Windows 7 上),您可以右键单击 Blender 图标,然后选择“以管理员身份运行”。这样您将拥有新的 .exe 文件,您可以将其与您最喜欢的意大利辣香肠披萨一起传播。

制作屏幕保护程序(仅限 Windows)

[编辑 | 编辑源代码]
  1. 首先,通过文件->保存游戏为运行时保存您的运行时(即上面提到的 .exe)。(在旧版本中为“保存运行时”)
  2. 现在,转到您的 .exe 游戏,将其重命名为 .scr - 例如,如果您的游戏是 NotMyGame.exe,将其重命名为 NotMyGame.scr。您现在可以右键单击进行安装,然后像使用任何其他屏幕保护程序一样使用它(右键单击桌面,属性……您知道该怎么做。)

屏幕保护程序不是游戏,因此它们不应接受输入。最多,它们应该显示您游戏功能的视频。如果您只是将您的常规游戏重命名为 .scr,它会非常无聊,因为您的游戏需要输入,而屏幕保护程序则不需要。

英特尔屏幕保护程序错误

[编辑 | 编辑源代码]

许多笔记本电脑中都存在英特尔集成显卡驱动程序的一个问题。出于某种不明原因,显卡驱动程序会关闭屏幕保护程序的 OpenGL 加速。解决此问题的方法是将.scr 扩展名重命名为.sCr,因为驱动程序的算法依赖于区分大小写的字符。如果您的屏幕保护程序的帧速率非常低,您应该尝试此修复,它经过测试并报告有效。

GNU/Linux 或 Mac OS X

[编辑 | 编辑源代码]

使用您创建的游戏打开 Blender,然后打开文件菜单。单击保存游戏为运行时,然后保存到您创建的新文件夹中,并将其重命名为 yourgamename...

然后就可以运行游戏了!

BlenderPlayer

[编辑 | 编辑源代码]

上面显示的方法只为您的操作系统创建可执行文件。好吧,BlenderPlayer 可以解决这个问题。

  1. 创建一个新文件夹来存储所有游戏数据。
  2. 然后将您的 .blend 文件保存到该目录。
  3. 如果您不想要 Windows 版本,可以跳过此步骤和下一步。对于 Windows 用户,从 Windows 版本的 Blender 中将 blenderplayer.exe 复制到新文件夹。然后,将所有用于 Blender 的 DLL 文件(如上面为 Windows 提到的)复制到该文件夹。
  4. 接下来,您需要创建一个 MS-DOS 批处理文件(对于 UNIX 用户,这是 shell 脚本的等效文件)。在简单的文本编辑器中,如果可用,请使用 CR-LF 模式(记事本始终处于此模式,而不是文字处理器!),复制并粘贴此文本
    blenderplayer.exe yourgamename.blend
    在您的游戏文件夹中将其保存为 YourGameName-Windows.bat。
  5. 如果您不想要 UNIX(基本上是 Mac OS X 和 GNU/Linux)端口,可以跳过此步骤。对于 GNU/Linux(至少),创建一个 shell 脚本。(shell 脚本是 UNIX 中批处理文件的术语。)在简单的文本编辑器中,以 LF 模式(不幸的是,记事本不能使用),复制并粘贴此文本
    #!/bin/bash
    ./blenderplayer.app/Contents/MacOS/blenderplayer yourgamename.blend

    在您的游戏文件夹中将文件保存为 YourGameName-UNIX.sh。您需要将 BlenderPlayer 放在与 .blend 游戏文件相同的目录中。
  6. 为您的程序编写一个自述文件。这最好使用简单的文本编辑器(如记事本或 gedit)完成,但使用哪个模式并不重要。您应该包含游戏名称、描述、可能的演练或提示,以及如果您制作了 *NIX 端口,请提及它需要 BlenderPlayer,Blender 提供了该端口。
[编辑 | 编辑源代码]

Blender 和 BlenderPlayer 属于 GNU 通用公共许可证。Blend 文件对其各自所有者拥有版权,只要它们没有打包在 BlenderPlayer 中,就无需遵守 GPL。如果用户不希望 Blend 文件遵守 GPL,建议不要使用“保存游戏为运行时”功能。换句话说,用户必须将 Blend 文件和 BlenderPlayer 保存在不同的文件中。更多信息可以在 http://www.blender.org/education-help/faq/gpl-for-artists/ 中找到。(Blender 2.4 现在具有从文件启动器运行游戏的选项。)

专有 Blend 文件

[编辑 | 编辑源代码]

Blender 没有内置功能来“锁定”或保护用户生成的内容。因此,任何拥有 Blender 的人都可以打开和/或修改 Blend 文件。但是,仍然可以锁定 Blend 文件。常见的方法包括加密 Blend 文件,然后在运行时临时解密。这可以通过使用 Python 脚本或使用外部第三方应用程序来实现(这些应用程序在 GPL v2 下是可行的)。


华夏公益教科书