7 tips to optimize visual performance in games - Marcelo’s Tips
In casino game development, every visual decision is also a technical one. Whether it’s a button, an animation, or a lighting effect, everything impacts performance and ultimately shapes the player's experience. For Marcelo Silva, Technical Artist at Fabamaq, optimizing a casino game’s art is just as important as writing clean code.
At Fabamaq, a software house and casino game company based in Porto, visual detail goes hand in hand with efficiency, which is why performance is always a priority. That’s where the Technical Artist comes in. This role requires a deep understanding of the game engine’s limitations (in this case, Godot), translating visual needs into technical solutions, and helping to balance quality, efficiency, and performance.
In this article, we share good practices that help ensure visual quality without compromising game flow.

1. Prioritize power-of-two texture sizes
- Textures with dimensions like 256×256px, 512×1024px, or 1024×1024px are processed more efficiently and are easier to compress in the memory. These are called power-of-two textures and follow proportions that game engines handle more easily.
- Irregular resolutions (e.g., 241x387px) should only be used when strictly necessary.
2. Be mindful of blend modes and visual effects
- Blend modes are ways of visually combining two elements. For example, adding brightness, darkening an image, or applying light effects over another. These tools are widely used in graphic design and game engines to create visual interactions between different layers.
- In Godot, using custom blend modes between separate elements usually requires shaders (small scripts that control the real-time look of each object).
- Shaders have a performance cost and can break batching, meaning the engine can no longer group multiple visuals into a single draw call, which makes rendering less efficient.
- Avoid relying on blend modes across multiple separate elements. If possible, bake the effect directly into the texture or use alternatives that don’t require real-time processing.

3. Use texture atlases to improve batching
- Batching is a rendering optimization where the engine groups visual elements that share properties (like texture and material) and sends them to the GPU/CPU all at once. This reduces draw calls (the number of times the engine asks the GPU/CPU to render something).
- Fewer draw calls lead to better performance.
- Group visuals into texture atlases. If several icons, buttons, or sprites use the same atlas, the engine can render them in a single batch, greatly improving performance.
4. Use transparency wisely
- Using transparency requires additional pixel-level calculations, especially when multiple semi-transparent layers overlap. This can negatively affect performance, especially in user interfaces or animated elements.
- Avoid transparency where it's not essential. In many cases, pre-composed images with the desired effect are more efficient.
5. Set up strategies to pause or disable unnecessary animations
- Continuous animations, like glows, arrows, or UI effects, may seem light, but when left running (even offscreen), they add up in cost.
- Plan strategies to pause or simplify animations when elements aren't visible or active. This is particularly important in interfaces with many components onscreen at once.

6. Reduce the number of nodes whenever possible
- In Godot, every visual element is a node, like Sprite2D, Label, or Control. Even idle nodes consume memory and are processed by the engine.
- Group visual elements whenever possible. Use tools like TileMap, AtlasTexture, or composite sprites to keep node count down.
7. Total control on z index
- The z index determines the draw order of elements. The higher the value, the higher it appears on the screen. But scattered z index values can break batching, forcing the engine to issue separate draw calls.
- Group elements with matching z index and textures whenever possible. Define clear visual layers, especially for elements that share the same atlas.
Smoother, lighter, more effective
Ensuring performance isn’t just an engineering task, it starts with the art.
At Fabamaq, a tech company based in Porto, we build casino games that strike the right balance between visual impact and technical efficiency, because we know every decision matters.
If you're starting out in tech art or looking to improve the fluidity of your games, these practices are a solid starting point.
If you found these visual performance tips useful, don’t miss Hélder Santos’ tips, Fabamaq’s Lead Graphic Designer, and discover how smart design choices can elevate the player experience through strategy, emotion, and usability.