debugging

Warp3D Nova Tutorials: Another Subtle Boo-Boo

Yes, I’ve discovered another bug in one of the Warp3D Nova tutorials. The tutorial itself has been corrected already, but let’s take a closer look at this bug. The problem is with this line of code: // Transform the normal normal = normalize(NormalMatrix * vec4(vertNormal, 1.0)).xyz; Can you see the mistake? It’s a really subtle […]

StarBoxDemo

What StarBoxDemo Can Teach You About Shaders

The author of AmiCraftNova recently released a new demo called StarBoxDemo. While everyone has been posting new fps benchmarks with it, how it uses shaders should be of greater interest to aspiring developers. So download the demo (if you haven’t already), and take a look in the Shaders directory.The big advantage of shaders is that you […]

debugging 2

GLSL Debugging Tips for AmigaOS

Recently, the AmiCraftNova author was having issues with GLSL shaders, which got me thinking about how to debug them. Shaders need debugging, but standard debugging tools can’t be used. So here are a few tips (for both OpenGL and Warp3D Nova). Check the Compiler Logs Both OpenGL and Warp3D Nova provide compilation logs. So check […]

film countdown 1

Warp3D Nova – The Basics of Animation

The previous tutorial’s source-code included animation, but I said that would be a topic for another day. Well, today is that day. I’m going to go through the code I added to animate the cube. IMPORTANT: While this tutorial is about Warp3D Nova, the animation code below is almost 100% generic. You could reuse it to […]

W3DNovaTutorial6 screenshot 1

Warp3D Nova: 3D Lighting – Part 2

Time to put the theory learnt last time into practise. This means turning the phong model into shader code, and feeding the GPU the extra data required (surface normals, light/material properties, etc.).Step 1: Copy the Previous Tutorial’s CodeAs usual we’ll kickstart the process by reusing the previous tutorial’s code. So download the code now, and […]

Phong Lighting 1

Warp3D Nova: 3D Lighting – Part 1

Simulating lighting is critical to realistic 3D rendering. After all, light is what allows us to see the real world. Our first 3D rendering in Warp3D Nova looked pretty flat due to the complete lack of lighting. It’s time to fix this by adding light to the scene.IMPORTANT: 3D lighting calculations involve vector algebra. If […]

oops 1

Warp3D Nova Gotchas

Like other Application Programmers Interfaces (APIs), Warp3D Nova has little “gotchas” that catch programmers out. These are common pitfalls that new programmers fall into. Even experienced programmers can make these mistakes; yes, even the API’s designer (i.e., me).Binding Vertex Arrays to the Wrong Shader InputsSetting up vertex arrays is a multi-step process and there are […]

Shopping Cart
Scroll to Top