New hope for one of my abandoned projects :D.
Because I really had this one bug, who killed all enthusiasm about the project…
I just found the solution yesterday, the reason behind 15 minutes ago:
I was calculating matrices always transformation by transformation while matrices are calculated to the vector to transform from the right to the left.
It worked for the transformation itself, because you simply had to transpose (mirror on the diagonal) the matrix to make the projection and rotation work. I didn't saw that directly, because I had to flatten the matrix somehow to upload it to the OpenGL shader; and just mirroring the base projection matrix worked out fine.
However when calculating a ray trace, it was always wrong somehow, didn't want to work; solution: transpose (mirror) that matrix as well, because I always worked with the transposed ones. Now my ray tracing works :D.
To give you a kind of little clue was I was doing, here a picture from my developing time of that old project (five months ago!). It was also at that time a little bug I already fixed: if you had zoomed in further, the game crashed because of not enough memory (RAM).
As you might notice I somehow needed a way to discover this: I wrote a kind of similar app, one that does need ray tracing, and now found the solution. That new app is secret a little as well :P ; also because of the minor use of my old projects, I just might give a fuck on copy right and don't publish it (because my programs aren't used by anyone else but me anyways).
25730540s ago, by Antonio