Ogre


Frustum vs Pyramid intersection (also Frustum vs Frustum)

I couldn’t find much (helpful) info about this online, other than “just use SAT” in a sentence with no code or explanation. Maybe my Google-Fu failed me. But considering Emil Persson labelled this a hard problem, perhaps it isn’t only me (note: Hard here does not refer to Hard NP. […]


Clustered Forward vs Deferred Shading

So… this is a highly discussed topic these days. Many engines already do Deferred Shading. Doom 2016 decided to go Forward at 60 FPS with 1080p, thus making popular that big AAA titles with high demands can do Forward just fine (although it’s not the first nor only AAA title that […]


OgreMeshy 1.6 released!

It has caught my attention that Ogre Meshy was unable to load 1.10 meshes. It was time for a maintenance release. As a bonus, I ported the tool to wxWidgets 3.0 and compatibility with Ubuntu 14.04 was improved. RTSS support was a community addition. It doesn’t seem to be working […]


Direct3D11 vs OpenGL4.4 in 2015, an experience review

In Ogre 2.1 we’ve modernized the whole engine. We started by adopting OpenGL 4.4 as our main API, and then we adopted D3D11 as well. It’s been an enlightening experience. From a performance point of view there is no definitive answer “OpenGL is always faster” or “D3D11 is always faster”, because the […]


The Sorted Vector pattern Part II

This is a continuation of Part I In Part I, we learned about the Sorted Vector as a replacement for map where iteration, lookups and memory overhead per element matter, while we cared little about insertions and removals. However the examples were rather simple: Keys are strings or integers. What […]


Dealing with persistent mapping, cross-platform

OpenGL’s persistent mapping comes in two flavours: Coherent and Incoherent. Coherent mapping puts more burden on the developer as you have to track whether the region you’ve already written to has already been consumed by the GPU or is still in use. Incoherent mapping takes that burden away from you, […]


A glimpse of what’s coming to Ogre 2.0 Final

So, the HLMS is not finished, but it will be the main method for using materials in Ogre 2.0 Final; and writing about how it works helps me stay on track, while documenting for others. HLMS stands for “High Level Material System”, because for the user, the HLMS means just […]