Home » Developing U++ » UppHub » XForm3D library for U++ (A lightweight, software-based 3D transformation library for U++)
| XForm3D library for U++ [message #61654] |
Sun, 20 April 2025 13:19  |
Oblivion
Messages: 1273 Registered: August 2007
|
Senior Contributor |
|
|
Hi,
I hereby announce the immediate availability of Xform3D package.
What is Xform3d?
Xform3D is a software-based, lightweight 3D transformation library for U++, focused on providing essential matrix math and geometric tools for 3D graphics applications.
It includes a templated 4×4 matrix class and basic support for 3D point manipulation, with a design optimized for row-major, left-handed coordinate systems.
## Features
- Templated Matrix Class (`Matrix4_`): A generic 4×4 matrix supporting translation, scaling, rotation (axis-aligned), perspective, and frustum projection.
- Row-Major Layout with Left-Handed Coordinates:** Matches typical 3D rendering setups for clarity and compatibility.
- Basic 3D Geometry (`Point3_`, `Point4_`): Simple 3D point/vector classes with support for `Null` value handling and homogeneous coordinates.
## Examples
|:-----------------|:---------------------------------------------------------------------------------|
| `Teapot3D` | Example code rendering the famous Utah teapot model, using Xform3D and Painter. |
As a side note: I created this library to be the base of Upp::Sculptor, a Painter-based 3D rendering library I was planning to release. (It is in queue.)
Therefore it is best utilized by Painter. If you look at the example code, you'll see that the Painter integration can be amazingly simple (for simple stuff, of course).
I also plan to vectorize (simd/avx1-2) the matrix math.
Screenshot from Teapot3D:

Best regards,
Oblivion
Github page: https://github.com/ismail-yilmaz
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
TerminalCtrl package https://github.com/ismail-yilmaz/Terminal
[Updated on: Sun, 20 April 2025 13:20] Report message to a moderator
|
|
|
|
|
|
|
|
| Re: XForm3D library for U++ [message #62037 is a reply to message #61654] |
Tue, 21 July 2026 15:07  |
Oblivion
Messages: 1273 Registered: August 2007
|
Senior Contributor |
|
|
Hi,
A small (but big) update:
Starting from August 2026, Xform3D package will be part of Sculptor package, A soft-3d rendering and rasterizing package, that will include Sculptor, and EscSculptor (Esc bindings for Sculptor) libraries.
It will still be an independent package, but since Sculptor is being built on XForm3D, they will all be available in the same UppHub nest.
As for the Sculptor:

Best regards,
Oblivion
Github page: https://github.com/ismail-yilmaz
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
TerminalCtrl package https://github.com/ismail-yilmaz/Terminal
[Updated on: Tue, 21 July 2026 15:09] Report message to a moderator
|
|
|
|
Goto Forum:
Current Time: Sat Aug 01 01:39:42 GMT+2 2026
Total time taken to generate the page: 0.00797 seconds
|