如何在 Python 中使用 Panda3D 和 Pyinstaller 制作可执行文件?

How to make a executable using Panda3D and Pyinstaller in Python?

我正在尝试使用此代码制作可执行文件(仅用于测试):

from panda3d.core import loadPrcFile
from direct.showbase.ShowBase import ShowBase


class Game(ShowBase):

    def __init__(self):
        ShowBase.__init__(self)


def main() -> None:

    loadPrcFile('file.prc')

    Game().run()


if __name__ == '__main__':
    main()

当我尝试用 pyinstaller 弥补时,我得到了这个:

Warning: unable to auto-locate config files in directory named by "<auto>etc".

不要使用 pyinstaller,Panda3D 是为 setuptools 配置的。

创建一个requirements.txt文件,在该文件中添加:Panda3D

然后创建一个setup.py文件,在此文件中添加以下代码:

from setuptools import setup

setup(
    name="tester",
    options = {
        'build_apps': {
            'include_patterns': [
                '**/*.png',
                '**/*.jpg',
                '**/*.egg',
            ],
            'gui_apps': {
                'tester': 'main.py',
            },
            'log_append': False,
            'plugins': [
                'pandagl',
                'p3openal_audio',
            ],
            'platforms':['win_amd64']
        }
    }
)

requirements.txt 和 setup.py 两个文件都应该在您的 Panda3D 文件所在的文件夹中。

不要忘记在 setup.py 文件中更改 tester: to_your_file_name.py

在 setup.py 文件所在的文件夹中打开命令 window。

运行 在您的 cmd 中执行此命令:

python setup.py build_apps

这将在构建文件夹中从您的 Panda3D 应用程序创建一个 windows 64 位可执行文件。在那里你会找到 tester.exe 文件。

如果您使用的是带有纹理的 3D 模型,请确保它们也被复制到可执行文件旁边。

如果您想了解更多信息,请查看文档:https://docs.panda3d.org/1.10/python/distribution/index