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 happens when the Key is […]

Website blocked in several countries and broken links.

I’ve known for a while that users from at least the following countries have been blocked access to my website. That was driving me nuts. Probably you’ve been having difficulties until yesterday if you’re from: Australia Israel Malaysia Other Middle East countries. Probably other countries as well. You would just get a time out while […]

“We don’t care really how long it takes” 2

This post is addressed to all the software dev. managers with this mentality, where a (probably manager) was honest in that they don’t care about Data Oriented Design (or any performance optimization strategy that requires some dev time, for that matter). A transcipt ensues: – We worry not so much about the time, because it’s […]

Is everything ok, Nvidia?

I don’t normally post personal business opinions, but I’m going to make an exception here. Yesterday NVIDIA announced they’ve initiated a patent lawsuit against major mobile vendors, claiming these vendors are profiting from their decade-long R&D. Christophe Riccio tweeted this move is a confirmation the Tegra K1 is commercial failure, so they went the lawsuit […]

Ogre 2.0 Final FAQ

Q: I’m concerned that dropping D3D9 will cause me to lose a significant market share. Steam stats reveals that D3D9 Hardware is sitting around 1% of the market share. That hardware is more than 10 years old. However, there a lot of machines that are D3D10 or D3D11 level hardware running on Windows XP. Specially […]


The green triangle. 2

Behold our latest creation! The marking between a before and after in the life of Ogre! But it’s a bit… disappointing, isn’t it? Just two static triangles and a moving one.   What’s the deal about those green triangles anyway? There is a story flying around the net about a black triangle. If you don’t […]

What I wish I’d knew about Android from start

Android docs suck. There are a few rare exceptions. But overall, it sucks. This makes dealing with Android a lot harder than it should be. Many examples cover useless cases while real-world cases are nowhere to be mentioned. Once in a while you get lucky on Stack Overflow, but most of the time you end […]

Dealing with persistent mapping, cross-platform 5

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, and you only have to […]

A glimpse of what’s coming to Ogre 2.0 Final 6

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 define the material and start […]

The Sorted Vector pattern Part I

This is Part I, you can find Part II is here After talking with a few fellow Ogre team members, other colleagues, and even with community, I’ve realized that many are not familiar with the sorted vector pattern as a replacement for an std::map. Normally, C++’s std map (a Dictionary in Python terms) would be […]