Commit Graph

187 Commits

Author SHA1 Message Date
bjorn 392962eb2b Remove unused lovrGraphicsSetShapeData; 2017-01-13 02:01:56 -08:00
bjorn a8b7af311e Improve graphics primitives; 2017-01-13 01:59:00 -08:00
bjorn af3957d3c3 Perspective projection textures; 2017-01-12 01:26:44 -08:00
bjorn 09fdb72d5c Start texture projections; 2017-01-11 23:38:28 -08:00
bjorn eba3996984 Improve CanvasState; 2017-01-11 20:26:08 -08:00
bjorn 9f43f84577 Fix Texture dimensions; 2017-01-11 18:45:01 -08:00
bjorn b05e2630dd CanvasState; 2017-01-11 09:25:43 -08:00
bjorn 1ad0ac557b Basic framebuffers; 2017-01-08 22:51:43 -08:00
bjorn 2a8d40abd6 Deprecate Buffer Textures; 2017-01-08 21:29:16 -08:00
bjorn 724e0dd6eb Shader arrays; 2016-12-30 11:57:15 -08:00
bjorn 83fb958ac0 Simplify rotations; 2016-12-01 17:32:58 -08:00
bjorn b7d1b1e5dc Style; 2016-11-30 20:32:14 -08:00
bjorn 40eeeabcff Optimize matrix stack; 2016-11-27 10:57:36 -08:00
bjorn cf6c862aaa TextureType; 2016-11-27 10:34:22 -08:00
bjorn d44cbfa5e7 Clean up textures; 2016-11-27 02:06:47 -08:00
bjorn 9b0712bb66 Add default texture; 2016-11-26 18:58:58 -08:00
bjorn 006221b7fd TextureData; 2016-11-25 23:54:45 -08:00
bjorn 3d18eb99e6 Refactor model loader; 2016-11-25 23:15:04 -08:00
bjorn 316893d132 Start loaders directory; 2016-11-25 17:13:26 -08:00
bjorn 9602a3af2f ModelFace always has 3 indices; 2016-11-25 03:16:11 -08:00
bjorn 83af2cacd7 Fix Model texture binding; 2016-11-25 03:15:13 -08:00
bjorn 7ce7c589bb Fix naming error in buffer format; 2016-11-25 03:14:48 -08:00
bjorn 172ecbbd56 Refactor Model constructor; 2016-11-25 00:49:19 -08:00
bjorn 9f4a441bf1 Allow disabling of depth test; 2016-11-24 15:45:59 -08:00
bjorn 08d63ca19c Model texture rendering; 2016-11-23 00:02:19 -08:00
bjorn cbcaef4e77 Standardize shader uniforms;
All built in uniforms are prefixed with "lovr".
Added helper functions "position" and "color" to improve general use case.
This is a breaking change.
2016-11-22 22:17:49 -08:00
bjorn a5fd7962f4 Organize lovr.graphics; 2016-11-22 21:16:13 -08:00
bjorn f18ee761cd lovr.graphics.setWireframe; 2016-11-22 21:07:33 -08:00
bjorn 15174b8299 lovr.graphics.setDepthTest; 2016-11-22 20:59:11 -08:00
bjorn 3d89338fec lovr.graphics.triangle; 2016-11-22 20:43:22 -08:00
bjorn 87a49b1903 size->count; 2016-11-20 15:53:36 -08:00
bjorn 0eea694bdd Small reference count fixes; 2016-11-19 18:26:10 -08:00
bjorn d014daaa53 Fix texture reference counting; 2016-11-19 14:21:17 -08:00
bjorn 00656b928e Buffer texture reference counting; 2016-11-19 14:14:42 -08:00
bjorn c41204f876 Shader reference counting; 2016-11-19 14:06:41 -08:00
bjorn a743cfd3b6 Initial reference counting system; 2016-11-19 13:33:40 -08:00
bjorn 7e4e9a6108 Clean up includes; 2016-11-19 01:28:01 -08:00
bjorn 3813e0b9ce Increase max shader length; 2016-11-18 02:08:49 -08:00
bjorn 67b55ac7f6 Fix Shader memory leaks; 2016-11-18 02:08:36 -08:00
bjorn 3c2fc33f1c Fix Model memory leaks; 2016-11-18 02:03:50 -08:00
bjorn 0ec31f3625 Texture:refresh; 2016-11-17 23:12:30 -08:00
bjorn 027c0db032 Fix BUFFER_INT access in shaders; 2016-11-17 23:11:58 -08:00
bjorn 7b81618198 BUFFER_INT; 2016-11-14 21:31:17 -08:00
bjorn 69ecfc550e Optimize switching Buffer vertex maps a lot; 2016-11-14 15:56:05 -08:00
bjorn 954592d8bd Refactor graphics state, especially shaders;
This should improve performance, if not then I have failed.
2016-11-14 15:48:17 -08:00
bjorn 06c71ed07c Allow loading shaders from files;
The first argument is always the vertex shader.
The second argument is always the fragment shader.
2016-11-14 14:42:40 -08:00
bjorn 21aba100a1 Refactor lovr.graphics.getDimensions and friends; 2016-11-14 13:47:15 -08:00
bjorn acde08228c Bind texture after setting buffer;
The `buffer` field was not being initialized to 0, so sometimes
the texture was binding to the wrong target.
2016-11-14 01:00:06 -08:00
bjorn daa942d932 Support BufferTextures; 2016-11-13 17:28:22 -08:00
bjorn 11f35763b7 Fix Buffer attribute indices; 2016-11-13 02:35:26 -08:00
bjorn c0db50b6ae Buffer:setVertices; 2016-11-12 23:18:53 -08:00
bjorn 11d96f1826 lovr.graphics.setPointSize; 2016-11-12 17:38:49 -08:00
bjorn ffde873299 Oh no; 2016-11-12 15:20:04 -08:00
bjorn 811bf67071 Windows fixes; 2016-11-12 01:19:47 -08:00
bjorn 7550da44d8 Model textures; 2016-11-08 14:55:16 -08:00
bjorn 8267733a42 Texture filters; 2016-11-08 14:55:16 -08:00
bjorn b69a7be1ba Better malloc error handling; 2016-11-08 14:55:07 -08:00
bjorn 17601e237b Buffer:getTexture; Buffer:setTexture; 2016-11-08 03:14:50 -08:00
bjorn 136d6b1da7 Texture; lovr.graphics.newTexture; 2016-11-08 03:14:33 -08:00
bjorn a22b158b0c Fix Buffer bug; 2016-11-08 03:13:32 -08:00
bjorn 49761a789a Add loadImage to util; 2016-11-08 01:42:31 -08:00
bjorn 48ff1fa93c lovr.graphics.points; 2016-11-07 23:16:33 -08:00
bjorn 91f46929fe Normalize rotation axis vectors; 2016-11-07 22:03:13 -08:00
bjorn fff1638414 Fix Skybox paths; 2016-11-05 16:17:29 -07:00
bjorn 5188e5d830 Fix Model paths; 2016-11-05 16:17:29 -07:00
bjorn 38c46106da Model normals; 2016-11-01 21:52:32 -07:00
bjorn 45d4029f6a Math is hard; 2016-11-01 21:52:19 -07:00
bjorn 93c13c8593 Model.draw transform; 2016-11-01 20:56:29 -07:00
bjorn 94a9c0e8cb lovrGraphicsTransform; 2016-11-01 20:48:04 -07:00
bjorn 7c5a9585fd Clean up Model better; 2016-10-31 17:35:43 -07:00
bjorn fb6c1c28ed Model; 2016-10-31 13:54:32 -07:00
bjorn 703b0c2af0 Skybox; 2016-10-24 15:02:23 -07:00
bjorn 125e2d0e13 Skybox rough draft; 2016-10-23 19:03:10 -07:00
bjorn 406eab420c lovrGraphicsSetShapeData; 2016-10-23 19:01:27 -07:00
bjorn 4afc3841d8 Fix lovrGraphicsPrepare; 2016-10-23 19:01:00 -07:00
bjorn 79397fc0e6 Fix shader uniforms; 2016-10-18 15:29:26 -07:00
bjorn 53409920c6 Skybox texture parameters; 2016-10-16 21:21:26 -07:00
bjorn 15f69d1d8a Start Skybox; 2016-10-15 20:11:54 -07:00
bjorn 7cd168aa46 Custom Buffer vertex attribute formats; 2016-10-09 17:40:02 -07:00
bjorn d35287499f Use constants for shader attributes; 2016-10-07 18:30:37 -07:00
bjorn aa5e9943ef Use explicit generic attribute indices; 2016-10-07 18:28:09 -07:00
bjorn a6df0c58c7 Rework shape internals; 2016-10-06 23:34:35 -07:00
bjorn 78f0c2d947 Clean up, clean up;
Everybody everywhere!
2016-10-04 15:13:57 -07:00
bjorn 3aa079b531 Start Model; Reorganize constructors; 2016-10-03 21:54:27 -07:00
bjorn 8ac95f4038 lovr.graphics.plane; 2016-10-03 20:56:45 -07:00
bjorn 5ef7a6a588 Graphics culling; 2016-10-03 12:02:49 -07:00
bjorn 2e48c00876 ColorMask is char; 2016-10-03 11:41:31 -07:00
bjorn c93630dd4c Fix default color; 2016-10-03 11:39:23 -07:00
bjorn 809c71d5b4 lovr.graphics.setLineWidth; 2016-10-01 13:48:31 -07:00
bjorn 9ece6c6c2c Cube rotation;
Angle-axis
2016-10-01 13:39:38 -07:00
bjorn 36cd7887f7 Filled cube basically work; 2016-10-01 12:53:15 -07:00
bjorn 82916b373b Set up draw modes; 2016-10-01 12:10:38 -07:00
bjorn 1e1acfbbd9 Fix cube rendering; 2016-09-29 23:54:31 -07:00
bjorn 5f884710e6 lovr.graphics.cube test; 2016-09-29 23:18:51 -07:00
bjorn d4f20c8379 lovr.graphics.line; 2016-09-29 19:39:25 -07:00
bjorn 8ab7c06612 Improve Vive rendering; 2016-09-29 00:21:38 -07:00
bjorn 93f007f329 Shape infrastructure; 2016-09-29 00:00:02 -07:00
bjorn 4679696288 lovr.graphics.getDimensions and friends; 2016-09-28 22:10:03 -07:00
bjorn 44b19b4e37 Use framebuffer size for scissor; 2016-09-28 22:09:57 -07:00
bjorn 7c707d9d6e Scissor; 2016-09-28 21:47:36 -07:00