Skip to main content

9 posts tagged with "helios"

View All Tags

Layer Abstraction initiated

· One min read

This time, there will be no Feature Creep - I promise!

From Vertex to MeshData to device-specific Meshes - over the weekend, I took a sidestep from the math lib to focus on the architectural planning and development of the underlying rendering layer, accompanied by the scene layer that is responsible for abstracting scene graphs away from the actual rendering process.

Inb4 Clip Space

· 2 min read

Updates from the commit log

helios now implements core vector operations, including subtraction for directional calculations, dot product for scalar projections, and cross product for normal vector computation and creating orthonormal bases, respectively. The cross product implementation utilizes constexpr specifications for compile-time evaluation when operands are constant expressions. The lookAt function constructs view matrices for camera-space transformations following standard computer graphics methodology. The implementation creates an orthonormal basis from eye, target, and up vectors, then formulates the change-of-basis matrix with integrated translation components for camera positioning to the origin.

Establishing the Transformation Library

· 2 min read

This weekend's development on the helios engine centered on finalizing transformation logic within helios.math.

The transformation functions translate, rotate, scale were implemented within helios.math.transform. A key decision was to standardize on post-multiplication (M' = M * T) for all transformations, to provide parity with glm: This convention ensures that new transformations are applied in the local space of a model matrix M.

Model Matrix: Transformations

· One min read

As I was working on porting the rotation matrices for the helios.math.transform library, I took a detour to formalize the underlying linear algebra. My goal was to move beyond treating the rotational part of the model matrix as just a black box and instead understand it from a coordinate system perspective.

Sundays are for constexpr

· 3 min read

For a game engine, the first step isn’t rendering a scene or simulating complex physics - it’s laying the foundational bricks. This weekend, I eased dove headfirst into that foundation for my personal C++ engine project, Helios, and it was a fantastic journey through the nuances of modern C++ design.

Lost in Translation

· 2 min read

My background is in the web world - I've spent years wrangling Java, JavaScript (and countless frameworks based on it), PHP (from Zend to Laravel over Symfony and self-written solution), and the closest I ever got to the metal was writing C, of which I thought it would give me a head start for a game engine project. In a way, it did: I wasn't scared of pointers. But it also gave me a false sense of security.