skillfed

panda3d-simplepbr

A straight-forward, easy-to-use, drop-in, PBR replacement for Panda3D's builtin auto shader

panda3d-simplepbr v0.13.1 117.9K downloads/30d#12,145 on PyPI69
Permissive license BSD-3-Clause AGING released

What it is and what it does

panda3d-simplepbr is a drop-in PBR rendering pipeline for Panda3D that replaces the engine's default auto-shader. It implements forward-rendered metal-rough physically-based materials with support for all Panda3D light types (point, directional, spot, ambient), normal maps, emission and occlusion maps, shadow mapping for directional and spot lights, filmic tonemapping, and image-based lighting. The shader design is inspired by the Khronos glTF Sample Viewer and targets OpenGL 2.1+ hardware for broad compatibility.

The package is designed for game developers and graphics programmers working with Panda3D who need modern material rendering without writing custom shaders. It integrates via a single init() call and provides configuration options for typical use cases. The project has been in active development since its first release in 2019 and reached beta status, though recent maintenance activity has slowed.

Use it for:

  • Build a Panda3D game or interactive application with realistic material rendering using PBR workflows.
  • Render models with proper metal-rough material appearance in Panda3D projects.
  • Add image-based lighting and shadow mapping to an existing Panda3D project without custom shader code.
  • Prototype graphics-heavy applications on mid-range hardware with OpenGL 2.1+ support.
  • Integrate normal, emission, and occlusion maps into Panda3D scenes for enhanced visual fidelity.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a physically-based rendering (PBR) shader pipeline for Panda3D that replaces the engine's built-in auto-shader with support for metal-rough materials, multiple light types, and image-based lighting.

Yes, if you are building a Panda3D application that needs modern PBR rendering. The package is stable, permissively licensed, installs cleanly, and has no known vulnerabilities. The aging maintenance status (502 days since last release) is a minor concern for long-term compatibility, but the codebase appears solid. Start with it if you need PBR in Panda3D; monitor the repository for compatibility issues with future panda3d releases.

Install

panda3d-simplepbr on PyPI

pip

pip install panda3d-simplepbr

uv

uv add panda3d-simplepbr

poetry

poetry add panda3d-simplepbr

Installing panda3d-simplepbr

Before you install

Installs with minimal friction—pure Python wheel with only panda3d and typing_extensions as runtime dependencies. Maintenance is aging (502 days since last release, last commit March 2025), so expect slower response to issues but the codebase appears stable.

License in practice

BSD-3-Clause (permissive) allows commercial and private use with attribution; no restrictions on modification or distribution.

Quickstart

pip install panda3d-simplepbr

import simplepbr

simplepbr.init()

Requires Python 3.9 or later; panda3d must be installed separately.

Verify before relying

  • Whether the aging maintenance status (502 days since last release) affects compatibility with recent panda3d versions.
  • Performance characteristics and hardware support breadth beyond the stated OpenGL 2.1+ minimum.
  • Specific configuration options available via the init() function beyond typical defaults.

Package facts

License BSD-3-Clause (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 2 — panda3d, typing_extensions
Maintenance aging — 502 days since the last release
Last repo commit
First released
Downloads 117,855/month — #12,145 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: panda3d_simplepbr-0.13.1-py3-none-any.whl

Keywords: panda3d, gamedev, pbr

Development Status :: 4 - BetaLicense :: OSI Approved :: BSD LicenseProgramming Language :: Python :: 3

Tags

panda3d pbr shaderphysically based rendering panda3dpanda3d material pipelinepanda3d gamedev graphicspanda3d auto-shader replacementpanda3d ibl lightingpanda3d pbr rendering
panda3dpbr-renderinggamedev

More Graphics packages