bjorn
bf3ed3ed1f
Texture improvements;
...
Textures no longer keep references to their TextureData.
lovrTextureAllocate can now be used to allocate texture storage,
and isn't weirdly coupled to lovrTextureReplacePixels.
Better error messages for textures.
2018-08-09 16:12:57 -07:00
bjorn
175de8924f
Ensure uniform count is always positive;
2018-08-06 13:25:04 -07:00
bjorn
70b27bd846
Use new table shorthand for newShaderBlock formats;
...
Also luax_checkuniformtype and error message improvements.
2018-08-06 10:34:12 -07:00
bjorn
1b7261de5c
lovr.graphics.getSupported;
2018-08-03 11:46:21 -07:00
bjorn
f6f322fc7f
Treat UBOs and SSBOs more similarly to reduce duplication;
2018-08-03 11:34:11 -07:00
bjorn
7d9b728669
Remove 32 uniform limit;
2018-08-02 16:13:27 -07:00
bjorn
b8faff6986
Add writable and usage flags to ShaderBlock;
2018-08-02 05:04:40 -07:00
bjorn
2b093b5828
ShaderBlock:send; Helper function for reading uniforms;
2018-08-02 05:04:40 -07:00
bjorn
a4052430a4
Shader:getBlock; Shader:setBlock;
2018-08-02 05:04:40 -07:00
bjorn
854431c9ea
Rebase;
2018-08-02 05:04:40 -07:00
bjorn
a372abb810
Reorganize uniform/block data structures;
2018-08-02 05:04:40 -07:00
bjorn
85ff844d24
lovrShaderBlockCreate;
2018-08-02 05:03:28 -07:00
bjorn
823886f03f
Start newShaderBlock;
2018-08-02 05:03:28 -07:00
bjorn
d6daa885c8
Simplify luax_checktype and inheritance;
2018-07-24 21:15:07 -07:00
bjorn
83ddb82162
Simplify Lua object management;
2018-07-24 20:13:54 -07:00
bjorn
66ca77abd1
Texture:replacePixels supports mipmap;
2018-07-22 20:37:27 -07:00
bjorn
98e0522c4f
Add more texture formats;
2018-07-20 17:45:25 -07:00
bjorn
c46cff496e
Fix minor issue with texture flag defaults;
2018-07-19 19:30:37 -07:00
bjorn
5641afee13
Remove isDefault flag from Material;
2018-07-18 00:34:21 -07:00
bjorn
f1f2c7b401
Yay all opengl is in opengl.c;
2018-07-17 17:21:15 -07:00
bjorn
2cf0e15eb0
Morganization; Fix some Canvas issues;
2018-07-17 17:21:15 -07:00
bjorn
56bbf1cf56
Organization;
2018-07-17 17:21:15 -07:00
bjorn
4239bc46ea
Refactor graphics stats;
2018-07-17 17:21:14 -07:00
bjorn
fe75c666a9
Simplify lovr.graphics.getWidth/Height;
2018-07-17 17:21:14 -07:00
bjorn
b64489b020
Pipeline stack for graphics state; Simplify clearing;
2018-07-17 17:21:14 -07:00
bjorn
322c0bdef7
GpuStats;
2018-07-17 17:21:14 -07:00
bjorn
e3b2a4d974
lovr.graphics.newShader accepts Blobs;
2018-07-06 01:35:00 -07:00
bjorn
f444809f0f
Assert is the bessstt;
2018-07-06 01:25:08 -07:00
bjorn
371551ca42
Add lineloop constant;
2018-07-05 23:44:45 -07:00
bjorn
f903b6014c
Use arrays for enums instead of maps;
2018-07-04 20:11:52 -07:00
bjorn
183f6003e9
rm mapped buffers mostly;
2018-06-03 19:00:31 -07:00
bjorn
6ff7292333
Mostly remove instanced stereo rendering;
2018-06-03 17:18:42 -07:00
bjorn
7273811120
Some extra graphics state diffing;
2018-06-02 15:30:26 -07:00
bjorn
8783d36183
luax_readvertices returns vertex count correctly;
2018-04-11 00:26:26 -07:00
bjorn
40c363fff4
lovr.data.newVertexData accepts a vertex table;
2018-04-01 21:57:16 -07:00
bjorn
823b7000da
Texture:getDepth; Also change Texture:getDimensions;
2018-04-01 20:54:05 -07:00
bjorn
1911d5b90e
Make depth test more flexible;
2018-03-24 12:50:09 -07:00
bjorn
bdc9b63b8a
Fix lots of memory leaks;
...
Especially when restarting or using threads.
2018-03-23 19:31:45 -07:00
bjorn
1ad00328c1
Add a flag for autogenerating Canvas mipmaps;
2018-03-22 10:58:53 -07:00
bjorn
95da07d165
Stereo canvases;
...
Canvases can be created with the "stereo" flag to make it a stereo
Canvas. If a Canvas is stereo, everything rendered to it will be
rendered to the left and right halves of it, using left/right
view and projection matrices. Headset drivers will use stereo
Canvases to improve performance.
2018-03-22 09:57:44 -07:00
bjorn
988d8c7d23
Rename blit to fill;
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
e6a76e2a61
rm MatrixType;
2018-03-22 09:57:44 -07:00
bjorn
5a74b8765b
Change default window size;
2018-03-22 09:57:44 -07:00
bjorn
1cd1b5e11d
Use a Mesh for primitives;
2018-03-22 09:46:26 -07:00
bjorn
d77b139d21
Make Mesh more lightweight;
2018-03-21 15:36:00 -07:00
bjorn
fdb3a29a05
Add separate x/y scale to lovr.graphics.plane;
2018-03-19 13:09:03 -07:00
bjorn
6fb977b5bb
Improve Mesh VAO state diffing;
...
Also permit empty tables for vertex formats.
2018-03-13 16:12:12 -07:00
bjorn
c0d4d33d47
lovr.graphics.newMesh accepts VertexData;
2018-03-11 11:24:11 -07:00
bjorn
cb7b99f9a6
Optimize skybox rendering;
...
- Fix winding order of skybox cubemaps.
- Fix skybox image ordering in lovr.graphics.newTexture.
- Change skybox shader to allow rendering cubemap skyboxes last for
early z rejection.
- Remove overriding of depth write and depth test state for cubemap
skyboxes.
2018-02-26 02:10:53 -08:00