A Python package to help bootstrap and manage Panda3D applications
pman is a Python package to help bootstrap and manage Panda3D applications.
- Project quick-start
- Automatic asset conversion
- Automatically adds export directory to the model path
- Convenient CLI for running and testing applications
Use pip to install the
pip install panda3d-pman
Quick start a project with
If you already have a directory for your project:
cd my_awesome_project pman create .
pman can also create the directory for you:
pman create my_awesome_project
In addition to the
pman has the following commands:
- update - re-run project creation logic on the project directory
- help - display usage information
- build - convert all files in the assets directory and place them in the export directory
- run - run the application by calling
pythonwith the main file
- test - run tests (shortcut for
python setup.py test)
- dist - create distributable forms of Panda3D applications (requires Panda3D 1.10+)
- clean - remove built files
Primary configuration for
pman is located in a
.pman file located at the project root.
This configuration uses TOML for markup.
.pman configuration file is project-wide and should be checked in under version control.
Another, per-user configuration file also exists at the project root as
This configuration file stores user settings and should not be checked into version control.
.pman.user take precedence over settings in
.pman. Settings defined in neither
.pman.user will use default values as defined below.
||The project name. For now this is only used for naming the built application in the default
||The directory to look for assets to convert.|
||The directory to store built assets.|
||A case-insensitive list of patterns. Files matching any of these patterns will not be ignored during the build step. Pattern matching is done using the fnmatch module|
||A list of hooks to perform conversions. Any files not associated with a converter will simply be copied (assuming they do not match an item in
||The entry-point to the application.|
||A string of extra arugments that are append to the invocation of
To extend functionality, pman has supports for "hooks." There are currently hooks available for conversion (converters) and project creation (creation extras). These hooks are specified in config via Setuptools entry points. Hooks that ship with pman and their configuration options are described below.
Support file formats:
Loads the file into Panda and saves the result out to BAM. This relies on Panda's builtin file loading capabilities.
Supported file formats:
Converts Blender files to BAM files via blend2bam.
||Specify whether to use the default Panda materials ("legacy") or Panda's new PBR material attributes ("pbr"). This is only used by the "gltf" pipeline; the "egg" always uses "legacy".|
||The physics engine that collision solids should be built for. To export for Panda's builtin collision system, use "builtin." For Bullet, use "bullet." This is only used by the "gltf" pipeline; the "egg" pipeline always uses "builtin."|
||The backend that blend2bam uses to convert blend files. Go here for more information.|
First install the project in editable mode along with
pip install -e .[test]
Then run the test suite with
pip install --upgrade build
python -m build
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for panda3d_pman-0.14-py3-none-any.whl