Commit Graph

330 Commits

Author SHA1 Message Date
bjorn 60867925e4 Move unused header includes; 2017-08-08 22:34:23 -07:00
bjorn d849f2429c Everything is probably broken; 2017-08-08 21:10:56 -07:00
bjorn 76f94e8ade Rename primitive data structures; 2017-08-08 18:57:41 -07:00
bjorn 88a32fd951 Simplify Skybox stuff; 2017-08-08 18:52:28 -07:00
bjorn 45618f819e Fix Skyboxes; 2017-08-08 18:24:29 -07:00
bjorn 58931f01e2 Allow lovr.graphics.setFont(nil); 2017-08-08 18:01:39 -07:00
bjorn abbe5e36d0 Canvas state is internal; 2017-08-08 02:20:55 -07:00
bjorn c89301c284 Texture is internal state; 2017-08-08 02:14:50 -07:00
bjorn fe570e19f1 Diff vao, vbo, and ibo; 2017-08-08 02:13:07 -07:00
bjorn dfd0926fab Diff framebuffer; 2017-08-08 02:05:30 -07:00
bjorn ef58eea4b8 Projection is transform state; 2017-08-08 01:37:23 -07:00
bjorn 6077cae95a Font state; 2017-08-08 01:36:29 -07:00
bjorn 80c9d7f4d8 Shader state; 2017-08-08 01:33:52 -07:00
bjorn 03c01cb97a Use access bits better when mapping Meshes; 2017-08-08 01:33:52 -07:00
bjorn 3da48027ce Use struct for shape state; 2017-08-08 01:33:52 -07:00
bjorn b65673bc3f Color object; 2017-08-08 01:33:52 -07:00
bjorn 9efa89768c Organize graphics state; 2017-08-08 01:33:52 -07:00
bjorn ef06a19fa4 Refactor texture filter structure; 2017-08-08 01:33:52 -07:00
bjorn bb2ec5b49c No pointers for CanvasState; 2017-08-08 01:33:52 -07:00
bjorn f649a50264 rm lovrGraphicsSetPerspective; 2017-08-08 01:33:52 -07:00
bjorn 38c5342d8a Private lovrGraphicsEnsureFont; 2017-08-08 01:33:52 -07:00
bjorn 7f80a8577f Mesh cleanup; 2017-08-08 01:33:52 -07:00
bjorn ce0d2746fd State diff for Mesh:setTexture; 2017-08-08 01:33:52 -07:00
bjorn 1402213029 Clean up system limits; 2017-08-08 01:33:52 -07:00
bjorn fd176a608a Private graphics primitive functions; 2017-08-08 01:33:52 -07:00
bjorn 0e474ad6af Reorganize lovrFontPrint; 2017-08-08 01:33:52 -07:00
bjorn 6b0f903b2e rm lovr.graphics.getColorMask; rm lovr.graphics.setColorMask; 2017-08-08 01:33:52 -07:00
bjorn ed25eef2d3 rm lovr.graphics.getScissor; rm lovr.graphics.setScissor; 2017-08-08 01:33:52 -07:00
bjorn 146d037cae Simplify lovrGraphicsClear; 2017-08-01 13:11:32 -07:00
bjorn 48733f87c4 Just use EMCSRIPTEN instead of LOVR_WEB; 2017-08-01 12:16:09 -07:00
bjorn 94355db2b5 Remove font shader discard; 2017-07-31 02:43:04 -07:00
bjorn 416f6f7216 Default to LEQUAL CompareMode; 2017-07-31 02:42:44 -07:00
bjorn 6a13ac5ee1 Don't include glad on web; 2017-07-31 02:41:44 -07:00
bjorn 8464463d4e Set default texture filter before creating texture; 2017-07-31 02:41:13 -07:00
bjorn 059c5d3ef2 Fix bugs with font textures; 2017-07-23 23:22:51 -07:00
bjorn 6a8e22f5be Don't check for ubiquitous extension; 2017-07-23 16:24:43 -07:00
bjorn a1007a1545 Add anisotropy system limit; 2017-07-23 16:24:43 -07:00
bjorn 7d31410c8c New Texture filter modes; lovr.graphics.setDefaultFilter; 2017-07-23 16:24:43 -07:00
bjorn f1141664b6 Mipmap generation; 2017-07-23 16:24:43 -07:00
bjorn b25d345e72 Add compressed texture formats; 2017-07-23 16:24:43 -07:00
bjorn 2a05fb4033 Refactor TextureFormat; 2017-07-23 16:24:43 -07:00
bjorn 12700f9785 Fix font shader in WebGL; 2017-07-22 16:57:09 -07:00
bjorn abaecb7f60 Font fixes; 2017-07-18 21:48:08 -07:00
bjorn d8047cdeff rm FORMAT_LUMINANCE_ALPHA; 2017-07-19 07:00:11 +09:00
bjorn c750b64b1b Cleanup; 2017-07-19 07:00:11 +09:00
bjorn 8ad3e64a2d Font shader; 2017-07-19 07:00:11 +09:00
bjorn 93c286afb6 Glyph padding; 2017-07-19 07:00:11 +09:00
bjorn 800d07a0de Use msdfgen; 2017-07-19 07:00:11 +09:00
bjorn 41210b1bd0 lovr.graphics.plane takes regular transform; 2017-07-19 05:07:18 +09:00
bjorn b2feefe98a Fix Model:getAABB more; 2017-06-25 04:16:47 -07:00
bjorn 7843e24028 Fix Model:getAABB; 2017-06-25 01:30:19 -07:00
bjorn e5a311af09 Add glad for windows; 2017-06-23 19:35:49 -07:00
bjorn 83118a5012 lovr.graphics.sphere; 2017-06-21 23:10:45 -07:00
bjorn dd1db4c86f lovr.graphics.box; Better non-uniform scale; 2017-06-21 19:42:34 -07:00
bjorn a13c793769 Model:getAABB; 2017-06-21 18:53:11 -07:00
bjorn 3744706ade Fix zero scale; 2017-06-20 22:56:11 -07:00
bjorn dfd6c91dec lovr.graphics.cylinder; 2017-06-20 20:54:22 -07:00
bjorn ca95fa0df0 Handle texture formats better; 2017-06-18 17:28:15 -07:00
bjorn 52b203240d Fix mapped buffers for WebGL 2; 2017-06-18 16:19:26 -07:00
bjorn 8beac66db0 OpenGL ES3; Remove glad;
Stop using OpenGL extensions and drop support for OpenGL ES2,
WebGL 1, and OpenGL 2.  Remove glad.
2017-06-18 15:55:01 -07:00
bjornbytes 5f3ce18fcd Fix mesh mapping; 2017-06-13 22:59:27 -07:00
bjornbytes 9f097e64e2 Add lovrNormalMatrix; 2017-06-13 20:04:51 -07:00
bjorn b84ef967e6 Fix integer attribute test; 2017-06-11 16:48:46 -07:00
bjorn 613b1ea67f Refactor GL extension code; 2017-06-10 16:25:46 -07:00
bjorn 265a81c411 Add window title; Improve initial error handling; 2017-06-10 15:34:35 -07:00
bjorn 24a980446a Add extra room to transform stack;
Currently the transform stack doesn't take into account the fact that internal functions use
transforms.  Performing error checking for the transform stack in the internal functions is kind of
difficult (right now we just segfault), so it's easier to just reserve a few of the transforms for
internal use.
2017-06-10 14:44:04 -07:00
bjorn 616e4b9488 Clean up Mesh IBO properly; 2017-06-10 14:06:55 -07:00
bjorn 10ddc06c13 No resizable window; 2017-06-01 23:52:37 -07:00
bjorn ef89de2b5f Cleanup; 2017-05-17 13:10:37 -06:00
bjorn 08a5259aec Minor lovr.graphics.clear optimization; 2017-05-16 23:43:47 -06:00
bjorn a2400e9876 WebVR fixes; 2017-04-29 13:33:59 -07:00
bjorn 520227aa87 Fix meshes; 2017-04-22 10:34:44 -07:00
bjorn 6acebc221e Fix mesh attributes; 2017-04-22 00:12:32 -07:00
bjorn 4537e17894 Fix typo; 2017-04-20 21:20:43 -07:00
bjorn 0f1acae42a WIP; 2017-04-16 16:56:49 -07:00
bjorn 9eb4d7b393 Move all window code into graphics module; 2017-04-12 19:48:47 -07:00
bjorn 25e6f3ce4e Fix Mesh unmapping; 2017-04-09 13:40:20 -07:00
bjorn 7f687f9732 No game screen; 2017-04-02 05:55:21 -07:00
bjorn 3977db7249 Don't mess with depth test when rendering fonts; 2017-04-01 15:33:32 -07:00
bjorn a04e5013ad lovr.graphics.getSystemLimits; 2017-03-31 04:22:18 -07:00
bjorn 9d89ea5634 Allow custom fullscreen shaders; 2017-03-30 18:56:51 -07:00
bjorn fbc9805ab1 Allow custom skybox shaders; 2017-03-30 18:54:39 -07:00
bjorn 847a01b76f Fix skyboxes; 2017-03-30 18:48:03 -07:00
bjorn 6cc5a036e8 Fix Font:getWidth; 2017-03-25 18:41:25 -07:00
bjorn 7077d89a22 Font metrics; 2017-03-16 01:12:32 -07:00
bjorn 0b57b48702 Font pixel densities; 2017-03-15 20:51:16 -07:00
bjorn 390220f945 Font alignment; 2017-03-15 20:46:01 -07:00
bjorn 22526552dc Use correct texture for fonts; 2017-03-14 02:32:01 -07:00
bjorn 37c2a11172 Fix panorama Skyboxes I promise; 2017-03-12 17:31:06 -07:00
bjorn 5bd364f65f Fix skybox math; 2017-03-12 17:13:50 -07:00
bjorn a4257378f0 Panorama Skybox fixes; 2017-03-12 16:57:27 -07:00
bjorn 4feeb4d4ab Equirectangular Skybox rough draft; 2017-03-12 16:45:50 -07:00
bjorn 062086991e Blend modes; 2017-03-12 04:03:36 -07:00
bjorn c6b635a2ec rm lovr.graphics.setProjection; 2017-03-11 21:19:26 -08:00
bjorn 94a5dab7b5 Meshes use mapped buffers; 2017-03-11 17:27:18 -08:00
bjorn d1a8a5b156 Make Mesh attribute binding more intelligent; 2017-03-11 15:15:00 -08:00
bjorn 7648bffda7 Mesh:isAttributeEnabled; Mesh:setAttributeEnabled; 2017-03-11 14:47:13 -08:00
bjorn faad61614f Change Mesh isRangeEnabled to int; 2017-03-11 14:30:39 -08:00
bjorn 1abbdc5779 Missed some instances of buffer; 2017-03-11 14:28:44 -08:00
bjorn a2e1fd8972 Rename Buffer to Mesh; 2017-03-11 14:13:49 -08:00