Commit Graph

96 Commits

Author SHA1 Message Date
bjorn ee27af1a85 graphics: forward declarations; 2019-04-05 04:59:14 -07:00
bjorn d31dca5520 Free objects in their destructors; 2019-04-05 03:56:10 -07:00
bjorn 6fdeda9e61 Make lovrRelease non-generic;
We know what type we're releasing 99% of the time, we don't need to
play a guessing game in lovrRelease, just have the caller say which
destructor to use.

There is lovrGenericRelease for situations where we need it, which
does the slower lookup of the destructor.
2019-04-05 03:41:03 -07:00
bjorn 85c51399a6 Fix MSVC warnings; 2019-03-17 00:58:13 -07:00
bjorn a02d4eb659 rm VertexData; 2019-02-13 15:10:52 -08:00
bjorn 6291a5ad5a Always check malloc result; Less calloc;
Some more questions:

- Should there be some kind of allocation helper so you don't need
  to always check the result?
- Throwing an error on OOM is convenient and is probably correct 90%
  of the time, it even provides a nice error message instead of a
  nil dereference somewhere.  But it's inflexible.  Is it the right
  thing to do?
2019-01-29 16:53:01 -08:00
bjorn cb9f166234 Revert "Replace sprintf with stb version;"
This reverts commit 8f9d24c51f.
2019-01-24 17:39:27 -08:00
bjorn 8f9d24c51f Replace sprintf with stb version; 2019-01-18 08:55:29 -08:00
bjorn ea3a77a73a Many batching improvements; Refactoring; 2019-01-04 18:01:01 -08:00
bjorn 709a91ac56 rm Shader.dirty; 2019-01-04 18:01:01 -08:00
bjorn c87645e8ef Put non-opengl-specific stuff in their own files; 2019-01-04 18:01:01 -08:00
bjorn 8bf60b73ec Add opengl header; Migrate relevant object implementations; 2018-07-17 17:21:14 -07:00
bjorn c86bb419f1 Use indirection for graphics object access;
This will make it easier to move stuff around.
2018-07-17 17:21:14 -07:00
bjorn 89c8ee3d06 Begin OpenGL quarantine; 2018-07-17 17:21:14 -07:00
bjorn f903b6014c Use arrays for enums instead of maps; 2018-07-04 20:11:52 -07:00
bjorn 56ea2d43d0 Bones are ints; 2018-07-04 15:02:25 -07:00
bjorn bcd4d74f13 Use compound literals a bit more; 2018-07-04 14:46:52 -07:00
bjorn 57c8dfe146 Clean up includes; 2018-07-04 13:51:35 -07:00
bjorn 6ff7292333 Mostly remove instanced stereo rendering; 2018-06-03 17:18:42 -07:00
bjorn b2e16fa87d Fix OpenGL crash on Windows;
glGetActiveAttrib doesn't like NULL pointers for its arguments on windows.
2018-04-10 23:56:41 -07:00
bjorn 988d8c7d23 Rename blit to fill; 2018-03-22 09:57:44 -07:00
bjorn 8a408cd45b Ignore uniform blocks when inspecting shader uniforms; 2018-03-22 09:57:44 -07:00
bjorn 8b201838b6 Add lovr.graphics.blit for fullscreen quads; 2018-03-22 09:57:44 -07:00
bjorn 4915ca41cc Make skyboxes really cool; 2018-03-22 09:57:44 -07:00
bjorn 1f1232505e Uniform buffer objects for matrices;
Still hacky.
2018-03-22 09:57:44 -07:00
bjorn 87d5cb6456 Cache shader attribute IDs; 2018-03-21 15:36:02 -07:00
bjorn 4463bd00c8 Load tangents from models; 2018-02-26 02:54:35 -08:00
bjorn 4df836727c Simplify refcounting; 2018-02-26 00:59:03 -08:00
bjorn f54d1c1e03 rm containerof; 2018-02-25 23:19:39 -08:00
bjorn 67d3c49a76 Add support for 3d textures; 2018-02-20 17:57:47 -08:00
bjorn f75530b9e1 Add support for 2d array textures; Improve mipmaps;
lovr.graphics.newTexture has been changed.
2018-02-20 17:15:47 -08:00
bjorn 4a2cc56fef Move shaders into resources; 2017-12-10 12:41:43 -08:00
bjorn da0afb487c Small fixes for WebVR; 2017-12-01 19:59:55 -08:00
bjorn 659a2899e6 Allow partial uniform updates; 2017-11-20 21:13:06 -08:00
bjorn 69b5569f9e Model computes bone transforms from Animator; 2017-11-06 20:25:08 -08:00
bjorn cc019e5783 Improve Shader error messages; 2017-10-31 01:44:39 -07:00
bjorn ecde864ec4 Use spooky BOOleans everywhere; 2017-10-31 01:14:09 -07:00
bjorn 8db7290ed3 Add vertex color attribute; 2017-10-23 19:24:29 -07:00
bjorn 076b378b80 Report correct line numbers for shader errors; 2017-10-22 15:39:21 -07:00
bjorn 54533351bb Generalize Shader to support more types of uniforms; 2017-10-21 13:39:50 -07:00
bjorn b82ed7fd56 Put shaders in their own file; 2017-10-21 13:21:30 -07:00
bjorn 6c3abad9f4 Fix crash in OpenVR mirror texture; 2017-09-18 00:39:47 -07:00
bjorn 6d85f512e3 Shoo tabs; 2017-09-17 17:38:22 -07:00
bjorn d6aad1faba Fix RGB texture size; 2017-08-26 19:31:03 -07:00
bjorn 22a8152eb5 Fix normal matrix; 2017-08-26 18:36:30 -07:00
bjorn 3f875118a9 Fix shader issues; 2017-08-13 21:03:11 -07:00
bjorn 0311232ae1 Add lovrModel and lovrView matrices; 2017-08-10 22:23:19 -07:00
bjorn 74f585ca8d Use lovrAssert and lovrThrow for better errors; 2017-08-10 01:05:04 -07:00
bjorn b94bc558fc Fix fullscreen quads; 2017-08-09 00:59:04 -07:00
bjorn 6c316c7587 Fix Shader bugs; 2017-08-09 00:56:13 -07:00