Move the camera with 'w' 'a' 's' 'd' 'q' 'e' and mouse, release the capture with space. Activate lightspot with '1' and '2'.
I used tinyxml https://github.com/vmayoral/tinyxml, parts of stb https://github.com/nothings/stb in particular stb_image.c, glm https://glm.g-truc.net/0.9.9/index.html and parts of https://github.com/emargollo/OpenGL-Animator for the project 13ColladaViewer-animation and do not own the copyright. The cowboy model is from "ThinMatrix" https://github.com/TheThinMatrix/OpenGL-Animation and the dragon model from "Imphenzia" https://www.youtube.com/watch?v=otiEQZr2idM I also do not own the copyright.
Output from 13ColladaViewer-animation
The next image shows my export options: To avoid the use of the CORRECTION Matrix a change of the Y and Z axis is neccesary. Furthermore renaming the armature to "Armature", shown in the blue rectangle, is neccesary. Otherwise this simple parser will crash. I also add the .blend files, they represent some special cases. At mushroom.blend the "bone chain" of the animation is holding a gap. At dragon.blend the "bone.chain" doesn't start with the root. At the moment I ignore the weights and there is still a lot of cleaning up to do :).
Output from 07OBJViewer-normalMap
Output from 08OBJViewer-relief
I expand the sss shader form https://github.com/jhaberstro/subsurface-scattering for the project 10OBJViewer-subsurface-scattering and do not own the copyright. In particular I add projective texture mapping to use the shader in relation with perspective projection. Output:
The project 11OBJViewer-translucency is a refactoring of https://github.com/tatsy/FastTranslucentShader