2.4.3 • Published 5 years ago
pure3d v2.4.3
Pure3D
WORK-IN-PROGRESS: There will be breaking changes and what's there is sometimes purposefully broken too ;)
DEMO
Remaining Features
See Issue Tracker
What it is:
- For DIY renderers - a generic abstraction to make working with WebGL a bit more more fun and simple, without sacrificing any power.
- Or, batteries included - a GLTF renderer with super easy API surface and functional paradigm.
How it works
See Wiki for more details
- Generic layer automatically optimizes and skip unnecessary low-level webgl calls.
- Gltf layer has strong separation of concerns and to make interop with functional frameworks, workers, and wasm a bit more organic.
- Gltf layer also uses an immutable pipeline throughout, with a diffing thing to automagically handle scene changes
- Some pure functional helpers to drive transform updates and animations (not forced into render pipeline)
- Fully exported Typescript definitions
What it probably won't be:
- A full game engine (bring your own physics, sound, input, particle emitters, etc.)
- Bleeding edge / state of the art (e.g. GLTF extensions at the proposal stage are not on the radar)
- An absolute performance beast on the GLTF side (small sacrifices are made to support the immutable approach)
What it hopes to be later:
- WebGL 2 added functionality / speed gains
- Supporting more GLTF extensions, lighting and shadow techniques, post-processing filters, etc.
- Some more simple helpers to make piecing together an engine easier (e.g. get bounding boxes, drawInstanced, etc.)
Story behind it
It's a rite of passage to make your own WebGL renderer while learning it. This is my attempt :D I also wanted something that can work more organically with declarative languages and immutable data
Acknowledgements
- Khronos, Slack ppls, and all the other hackers out there who have made this stuff possible!
2.4.3
5 years ago
2.4.2
5 years ago
2.4.1
5 years ago
2.4.0
5 years ago
2.3.2
6 years ago
2.3.1
6 years ago
2.3.0
6 years ago
2.1.0
6 years ago
2.0.0
6 years ago
1.2.0
6 years ago
1.1.2
6 years ago
1.1.1
6 years ago
1.1.0
6 years ago
1.0.2
6 years ago
1.0.1
6 years ago
1.0.0
6 years ago
0.1.4
6 years ago
0.1.3
6 years ago
0.1.2
6 years ago
0.1.1
6 years ago
0.1.0
6 years ago
0.0.7
6 years ago
0.0.6
6 years ago
0.0.5
6 years ago
0.0.4
6 years ago
0.0.3
6 years ago
0.0.2
6 years ago
0.0.1
6 years ago