Extropian Render

Type:Modular repository
Category:Visualization & Interaction
Status:alpha

Modular ECS rendering engine for the Extropian ecosystem — PBR, NPR, particles, volume, and built-in interaction.

Extropian Render is the rendering backend of the ecosystem: a reusable, ECS-based 3D rendering framework that consumes plain ECS entities and draws them through a multi-pass pipeline. It depends only on extropian-core and extropian-app, and treats everything submitted as ECS state identically — direct scene entities, external models, or spatial-ui widgets — with no UI, app, or orchestration coupling.

A platform-agnostic RenderSystem drives passes for sky, opaque, Phong, PBR, four NPR styles, reflective, transparent, particles, volume ray-march, highlight, gizmo overlay, and a 2D orthographic UI layer. GPU resource managers handle upload, hot-reloadable shaders, and instanced draw-call batching, while an IRenderer interface targets OpenGL 4.6 today with WebGL 2.0 and Vulkan as committed targets.

Built-in tooling supports scientific and engineering visualization: a unified camera (FPS/orbit/walk/ortho-2D with runtime FOV), CPU raycast and GPU ID-buffer picking, hover/selection highlighting, and a 3D transform gizmo. Default shaders include PBR metallic-roughness with optional IBL and NPR cel/technical/hatch/blueprint styles; meshes import from OBJ, STL, FBX, and STEP with optional diffuse textures.

Core capabilities

  • Multi-pass ECS-driven rendering: sky, opaque, PBR, NPR, particles, volume, highlights, and a 2D UI overlay
  • Default hot-reloadable shader library: Lambert/Phong, PBR metallic-roughness with IBL, and four NPR styles
  • Unified camera system — FPS, orbit, walk, and ortho-2D modes with runtime FOV
  • Built-in interaction: CPU raycast picking, GPU ID-buffer picking, hover/selection highlighting, and a 3D transform gizmo
  • GPU resource managers with instanced draw-call batching and external mesh import (OBJ/STL/FBX/STEP)

Technical foundation

  • Built on extropian-core (ECS, math, SceneGraph) and extropian-app (window, input, OpenGL context)
  • Systems scheduled by core::SystemGraph; renderer owns no registry, no UI semantics
  • IRenderer abstraction across OpenGL 4.6, WebGL 2.0, headless Null, and a committed Vulkan slot

Ecosystem connections

Licensing & customization

Source Available (PolyForm Shield)Binary Distribution (Proprietary)Internal Use (Proprietary)

Licensing is negotiated around the software, deployment model, scope, and ownership requirements of each project — whether Extropian Render is used as-is, customized for your workflows, or embedded in a larger system you are building. I prefer perpetual licenses per major version: one fee licenses the version you chose for as long as you use it, with maintenance updates included within that major version.

Source Available (PolyForm Shield): view and build from the source under terms that prevent offering it as a competing product or service — no license fees or royalties.

Binary Distribution (Proprietary): one-time license to use and distribute the software in binary form, including inside products you sell.

Internal Use (Proprietary): one-time license for ongoing internal use of the software as delivered — no distribution, no recurring fees.

Start a conversation

Tell me about your workflow and deployment — I respond within 24 hours.