Optimizations and improvements to our renderer

Posted on


Last week we did an important fix for glTF skinned animation combined with normalmaps. It fixed the problem with incorrect lighting, but also made the code a little slower in case of skinned animation + normalmaps (we had to turn “off” one optimization). To counteract this, I’m reworking a relevant part of CGE renderer, to not only bring the old optimization back, but also optimize it even more, and bring other small improvements.

It’s a work-in-progress, but we already have:

  1. Colors per vertex passing optimized (faster copy, 3/4 less data for RGB colors).

  2. Custom shader attribute passing optimized (faster copy) and fixed for non-indexed primitives (see demo file).

  3. Tangents and bitangents passing optimized (pass 2/3 less data due to not duplicating normal info).

Notable Replies

Continue the discussion at Castle Game Engine Forum