Spellcaster Studios

Make it happen…

OpenGL 3.2, Part “I don’t even know anymore”

So continuing on the work to port the game to OpenGL 3.2…

I fixed the issue with my Ubuntu (the upgrade screwed up the owner of a .XAuthority file, and reset my nVidia drivers, so a chown and a download later, I was back in business)…

Then the game decided to crash on “glGenSamplers”… But asking for the extension said the extension was there…

After some hunting around, it seems I have to activate a flag called “glewExperimental”, since the system on Linux sometimes queries the wrong driver, and returns the wrong value…

So, the game is working more or less fine on Linux again:

screen659

That stuff in the corner seems to be trash in one of the render targets, which I’m fairly sure I clear, so I’m not sure what happens there, but I’ll get to it soon…

Also have a problem with multi-threading… Sometimes a thread will crash because it tries to call a NULL virtual function… I think the problem is that the thread is starting too fast, so the rest of the setup of the object hasn’t happened yet (since it goes from lower in the class hierarchy to higher)… I’ll look at it later as well… It’s on the to-do… Smile

Now, back to the Mac, let’s see how it goes…

…and it doesn’t… Initialization went nicely, but I then had a crash because I forgot to change one thing on Recast (the navigation library)… I have to set the library to use virtual functions… So I set that (just change a #define macro), but then I can’t compile the game anymore:

Undefined symbols for architecture x86_64:
  "typeinfo for dtQueryFilter", referenced from:
      typeinfo for Recast_ScanPoint in ScanPoint.o
      typeinfo for Recast_EnemyQueryFilter in HostileSprite.o
      typeinfo for Recast_QueryFilter in PlanetArea.o
      typeinfo for Recast_RobotQueryFilter in Robot.o
      typeinfo for SandwormNavmeshQueryFilter in Sandworm.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Last time I had this error, the problem was a mismatch between the library and the code… In this case, I have no idea what this actually means… If I remove the virtual function, it works, if I keep it, it doesn’t… So I’m linking with the right library/includes (things change when I change those), but it seems the library is missing something…

Oh well, once more into the breach!

Now listening to “The Heroine Diaries Soundtrack” by “Sixx AM”

Comment