bjorn
816fda2177
Fix everything and merge;
2018-09-27 18:38:44 -07:00
bjorn
238af0064f
Add missing lovr.filesystem.unmount function;
2018-09-27 18:38:44 -07:00
bjorn
3e2259fc99
version/os refactor;
2018-09-27 18:38:44 -07:00
bjorn
cee3c28f4e
luax_atexit; rm lovrDestroy;
...
Modules register themselves in the registry for destruction at
lua_close instead of having a hardcoded list in lovrDestroy.
2018-09-27 18:38:44 -07:00
bjorn
92e6ad93cb
Dynamically load modules;
2018-09-27 18:38:44 -07:00
bjorn
e02d22365f
api: refactor;
2018-09-27 18:38:44 -07:00
bjorn
792834623c
api: more modular helper functions;
2018-09-27 18:38:44 -07:00
bjorn
1f12717357
Canvas creates Textures with clamp filter;
2018-09-27 18:37:13 -07:00
bjorn
cfac548e7b
Add flag to make Canvas depth texture readable;
...
- DepthFormat is now just TextureFormat.
- Canvas:getDepthTexture instead of Canvas:getDepthFormat.
2018-09-27 18:34:43 -07:00
bjorn
148a2bdb45
Error system no longer relies on Lua;
2018-09-26 10:39:17 -07:00
bjorn
5a9cd5187c
Make CMakeLists more modular;
...
- Enable/disable individual modules, including enet/json
- Enable/disable different "backends" (audio/headset)
- Choose to use system vs. source versions of different libraries
2018-09-21 19:25:48 -07:00
bjorn
72158f103a
Update for stereo rendering and new headset API;
2018-09-11 15:30:31 -07:00
bjorn
924eb5fa0a
Shader:send: Add a missing break;
...
opps
2018-09-05 10:13:04 -07:00
bjorn
7a8abc80a2
Copy Transform objects more safely in Shader[Block]:send;
2018-09-05 04:22:12 -07:00
bjorn
a5b9d267d0
Ensure int attributes are signed;
2018-09-05 03:25:13 -07:00
bjorn
7e1687ce6b
Fix Shader:sendImage;
2018-09-04 06:58:54 -07:00
bjorn
4e1757210e
Load cubemap images better;
2018-09-03 20:59:12 -07:00
bjorn
fbd294f76d
Empty textures default to linear instead of sRGB;
2018-09-02 21:15:59 -07:00
bjorn
3cc1b60fd8
Better default for anonymous texture depth;
2018-09-02 21:11:48 -07:00
bjorn
064adef0bb
Transform:getMatrix accepts target table;
2018-09-01 02:52:16 -07:00
bjorn
ea331a12be
Fix bugs;
2018-08-31 23:24:59 -07:00
bjorn
dca52ee967
Improve newCanvas API;
2018-08-31 16:37:30 -07:00
bjorn
a5256aaa27
Happy little graphics refactors;
2018-08-31 06:03:35 -07:00
bjorn
f872a5f094
Re-enable threads for emscripten;
...
They don't appear to work very well but this simplifies code a lot.
2018-08-30 22:09:54 -07:00
bjorn
7e889a564a
Emscripten fixes;
2018-08-30 20:56:08 -07:00
bjorn
7c21d77a6e
rm singlepass conf flag; Viewports; getSupported.singlepass;
2018-08-30 04:02:58 -07:00
bjorn
a97c8e2266
Fix skybox texture mapping;
2018-08-30 00:06:29 -07:00
bjorn
1f4fee9b28
Fix newTexture flags;
2018-08-29 21:45:08 -07:00
bjorn
4215ea2e24
Canvas getters;
2018-08-29 21:22:13 -07:00
bjorn
e287cee1c9
Canvas:newTextureData;
2018-08-29 21:22:12 -07:00
bjorn
74fec01e60
Canvas mipmaps flag;
2018-08-29 21:22:12 -07:00
bjorn
3fb1b49549
MSAA canvases/textures but no resolving yet;
2018-08-29 21:22:12 -07:00
bjorn
6b87a71261
Allow Canvases to be used as Textures sometimes;
2018-08-29 21:22:11 -07:00
bjorn
590668a8d6
lovrGraphicsBlit;
2018-08-29 21:21:38 -07:00
bjorn
671f0835c0
Fix lovr.headset.getDisplayWidth/Height;
2018-08-29 21:19:07 -07:00
bjorn
ee0f75484d
newCanvas stereo flag;
2018-08-29 21:18:33 -07:00
bjorn
329668eb39
Additional Canvas validation;
2018-08-29 21:18:33 -07:00
bjorn
68d66f3f98
Canvas:renderTo;
2018-08-29 21:18:33 -07:00
bjorn
4cc8bd7582
Canvas depth buffer;
2018-08-29 21:18:33 -07:00
bjorn
e8ec73657d
lovrCanvasBind;
2018-08-29 21:18:33 -07:00
bjorn
7e74441afd
getCanvas; setCanvas; Canvas attachments;
2018-08-29 21:18:33 -07:00
bjorn
d39e9f1687
Depth texture formats;
...
I hope I don't hate myself for calling them d16, d32, etc.
2018-08-29 21:18:32 -07:00
bjorn
f09f0d9424
newTexture takes w/h/format;
2018-08-29 21:18:32 -07:00
bjorn
e9ebdc2d58
Rework TextureData creation functions;
2018-08-29 21:18:32 -07:00
bjorn
7795bb9276
I came in like a wrecking ball;
2018-08-29 21:18:32 -07:00
bjorn
7569b7934f
conf flag for singlepass; Shader fixes;
2018-08-23 12:52:18 -07:00
bjorn
b50c2d018a
Texture is optional in lovr.graphics.fill;
2018-08-23 11:44:00 -07:00
bjorn
7a866552e9
Fix remaining physics leaks;
2018-08-22 09:29:34 -07:00
bjorn
1f00948da0
Fix world/collider memory leaks;
2018-08-18 21:16:19 -07:00
bjorn
d2b6def5c2
Shader:sendImage;
...
Can be used to bind images with specific slices, mipmap levels,
and access hints.
2018-08-17 19:53:54 -07:00
bjorn
cab12ba945
Shader:setBlock accepts access hint;
2018-08-17 19:53:54 -07:00
bjorn
198400828d
Source:getType;
2018-08-17 19:53:54 -07:00
bjorn
b5d7c0742f
Fix Texture:setFilter;
2018-08-17 19:53:54 -07:00
bjorn
96cfeedc94
Add rg16f and rg32f texture formats;
2018-08-16 14:54:37 -07:00
bjorn
a30fdc9749
Texture:getFormat;
2018-08-16 14:27:45 -07:00
bjorn
7f158a3473
Tiny fix for headset msaa default;
2018-08-15 17:57:05 -07:00
bjorn
a18540a934
Proper validation of uniform texture types;
2018-08-13 17:03:39 -07:00
bjorn
cc440c9784
Support format parameter in newTextureData;
2018-08-11 00:09:47 -07:00
bjorn
9ce462a67f
Image uniforms;
2018-08-11 00:08:34 -07:00
bjorn
d961614184
Attempt automatic glMemoryBarrier;
2018-08-11 00:08:34 -07:00
bjorn
c3823a6f9a
ARB_shader_image_load_store; rm opengl es from glad;
...
This means we had to remove rgb565 and FRAMEBUFFER_INCOMPLETE_DIMENSIONS.
2018-08-11 00:08:34 -07:00
bjorn
902239c017
lovr.graphics.wait; Barrier;
2018-08-11 00:08:34 -07:00
bjorn
5c65fc811f
Change "drawing" to "rendering" in comments;
2018-08-11 00:08:33 -07:00
bjorn
98e518683a
Add computeshaders to lovr.graphics.getSupported;
2018-08-11 00:08:33 -07:00
bjorn
3b51056870
lovr.graphics.compute;
2018-08-11 00:08:33 -07:00
bjorn
2cb6de47f2
Compute shader creation;
2018-08-11 00:08:33 -07:00
bjorn
b1079f5ce8
Separate initialization for graphics/compute shaders;
2018-08-11 00:08:33 -07:00
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 Swenson
06379f33ee
Merge pull request #49 from bjornbytes/shader-block
...
ShaderBlock
2018-08-07 15:17:06 -07:00
bjorn
78d9cc0031
Actually set shader uniforms;
2018-08-06 13:44:46 -07:00
bjorn
175de8924f
Ensure uniform count is always positive;
2018-08-06 13:25:04 -07:00
bjorn
bdf130800e
ShaderBlock:getShaderCode;
2018-08-06 11:46:42 -07:00
bjorn
f95685ba80
ShaderBlock:send(blob);
2018-08-06 10:42:23 -07:00
bjorn
86380e7694
ShaderBlock:getOffset;
2018-08-06 10:42:19 -07:00
bjorn
e3e17bc84c
ShaderBlock:isWritable;
2018-08-06 10:41:57 -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
a713a3d14f
Use 4 for default msaa instead of max;
...
Turns out msaa of 32 is really really slow
2018-08-04 18:44:36 -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
7e3f256ba2
Spacing;
2018-08-02 05:04:40 -07:00
bjorn
ce19599fec
Improve uniform error messages;
2018-08-02 05:04:40 -07:00
bjorn
4589ce66d0
luax_checkuniform supports samplers;
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
e5fd9c7412
Fix SoundData leaks;
2018-08-02 03:27:16 -07:00
bjorn
2acc4761b7
Fixes for WebGL; rm sharpness from texture filter;
2018-08-02 01:31:23 -07:00
bjorn
785913fd45
Add conf.headset.msaa config;
...
For separate window/headset msaa settings. Currently only applies
to OpenVR since the other drivers render directly to the window.
2018-07-28 18:12:57 -07:00
bjorn
9e494cae46
Make custom events work;
2018-07-26 19:38:01 -07:00
bjorn
156c0cde5d
Condense event code a bit;
2018-07-26 19:38:01 -07:00
bjorn
693766cf3b
Hmm, byte vertex attributes can have more than 1 component;
2018-07-25 00:01:22 -07:00
bjorn
0b922a9703
rm Variant type name tracking;
2018-07-24 21:21:37 -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
eb45b6f04f
Add the ability to set Texture LOD bias;
2018-07-22 20:37:27 -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
5f06ca44c9
Improve error messages for bad vertex formats;
2018-07-20 15:53:53 -07:00
bjorn
686f621928
That error message was such a liar;
2018-07-20 15:51:58 -07:00
bjorn
c46cff496e
Fix minor issue with texture flag defaults;
2018-07-19 19:30:37 -07:00
bjorn
11a3937a5d
Improved mipmap support;
...
- Texture dimensions functions take an optional mipmap level.
- Add Texture:getMipmapCount.
- Fix issue where textures always allocated mipmap storage.
2018-07-19 19:28:27 -07:00
bjorn
c19d69cfdd
Fix dll/so loading; Respect hyphens;
2018-07-18 17:09:47 -07:00
bjorn
d4c28f5770
Texture:replacePixels accepts x/y offset;
2018-07-18 01:36:29 -07:00
bjorn
8cc795aa9d
Material:getTransform; Material:setTransform;
2018-07-18 01:17:16 -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
f57810cd7a
Morganization;
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
0ee5d0b8f2
Anonymous materials for draw calls;
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
e0063995b3
More data driven primitives;
2018-07-17 17:21:14 -07:00
bjorn
e6e8e137c0
Clean up drawing;
2018-07-17 17:21:14 -07:00
bjorn
322c0bdef7
GpuStats;
2018-07-17 17:21:14 -07: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
b1b9dc734d
Woops make sure to use cross platform dlsym;
2018-07-07 13:57:32 -07:00
bjorn
0214c7605e
Support requiring dll/so files;
...
Still WIP
2018-07-07 13:55:22 -07:00
bjorn
22f6e7831b
Support C require paths;
2018-07-06 21:21:07 -07:00
bjorn
fedab9e46f
lovr.math.noise;
2018-07-06 18:39:34 -07:00
bjorn
b650f2b770
Add Microphone objects for audio capture;
2018-07-06 17:57:31 -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
fdef90b7bc
Add AudioStream:decode;
2018-07-05 23:30:37 -07:00
bjorn
4e146197b4
Remove AudioStream:seek;
2018-07-05 22:51:52 -07:00
bjorn
a670435239
Load static and stream Sources;
2018-07-05 22:08:14 -07:00
bjorn
bc61e02f84
SoundData:getSample; SoundData:setSample;
2018-07-05 20:45:09 -07:00
bjorn
764f6eb595
Basic SoundData objects;
2018-07-05 20:23:46 -07:00
bjorn
f903b6014c
Use arrays for enums instead of maps;
2018-07-04 20:11:52 -07:00
bjorn
94c432b4b4
rm length parameter from lovrRandomGeneratorSetState;
2018-07-04 14:07:48 -07:00
bjorn
57c8dfe146
Clean up includes;
2018-07-04 13:51:35 -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
bjornbytes
c68d65441c
Draw the rest of the fucking owl;
2018-05-27 19:05:10 -07:00
bjorn
781a5a7688
Rename luax_stubnil to luax_emptymodule;
2018-05-27 19:05:10 -07:00
bjorn
7ffd3fc25d
Use more primitive getControllers signature;
2018-05-27 19:05:10 -07:00
bjorn
a3e4b9b2b3
Change mat4_transform signature;
2018-05-27 19:05:10 -07:00
bjorn
498a1843ad
Work on WebVR pose input;
2018-05-27 19:05:10 -07:00
bjorn
859251d020
Start WebVR rewrite;
2018-05-27 19:05:10 -07:00
bjorn
c767e9c165
Simplify headset structure;
2018-05-27 19:05:10 -07:00
bjorn
93e082c8cc
WebVR;
...
- Add FORCE_FILESYSTEM
- Handle THREAD_ERROR event with noop case
- Remove hopefully redundant lovr.graphics.clear in errhand
- Finally use correct type signature for assimpFileTell
2018-05-27 19:05:10 -07:00
bjorn
8702d7422f
Rewrite boot.lua, main.c, and exception handling;
...
There are breaking changes:
- lovr.step is removed.
- lovr.run is expected to return a main loop wrapped in a function. The
returned function is run as a coroutine to facilitate a cooperative
main loop.
- lovr.errhand should return a loop function instead of while true-ing.
2018-05-27 19:05:10 -07:00
bjorn
275006847d
Prepend @ to loaded Lua chunks for better errors;
2018-05-27 19:05:10 -07:00
bjorn
012ba07063
Disable threads in WebVR;
...
Browser/emscripten support is currently unstable.
2018-05-27 19:05:10 -07:00
bjorn
8783d36183
luax_readvertices returns vertex count correctly;
2018-04-11 00:26:26 -07:00
bjorn
8b3fcc94b8
Event module is thread safe;
2018-04-01 22:43:54 -07:00
bjorn
40c363fff4
lovr.data.newVertexData accepts a vertex table;
2018-04-01 21:57:16 -07:00
bjorn
b180b28037
Mesh:getVertexMap with tables and Blobs;
2018-04-01 21:25:48 -07:00
bjorn
25a267acd1
ModelData:getTriangle;
2018-04-01 21:00:20 -07:00
bjorn
823b7000da
Texture:getDepth; Also change Texture:getDimensions;
2018-04-01 20:54:05 -07:00
bjorn
be67da4c09
Rename Blob:getFilename to Blob:getName;
2018-03-24 13:16:08 -07:00
bjorn
1911d5b90e
Make depth test more flexible;
2018-03-24 12:50:09 -07:00
bjorn
fe47104869
More memory stuff;
2018-03-24 01:17:36 -07:00
bjorn
bdc9b63b8a
Fix lots of memory leaks;
...
Especially when restarting or using threads.
2018-03-23 19:31:45 -07:00
bjorn
f9ce6d3425
Mesh:setVertexMap accepts a Blob for fast updates;
2018-03-22 11:22:06 -07:00
bjorn
471540433c
Add Canvas:newTextureData;
2018-03-22 11:15:17 -07:00
bjorn
1ad00328c1
Add a flag for autogenerating Canvas mipmaps;
2018-03-22 10:58:53 -07:00
bjorn
5fd20cc955
Fix lovr.filesystem.setRequirePath;
2018-03-22 10:39:31 -07:00
bjorn
adee0a3012
Replace dots with slashes instead of question marks;
...
In filesystem loader.
2018-03-22 10:07:19 -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
c0ea3240c3
Organize drawing code;
2018-03-22 09:57:44 -07:00
bjorn
988d8c7d23
Rename blit to fill;
2018-03-22 09:57:44 -07:00
bjorn
5feb47c5b7
Remove eye argument from lovr.draw;
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
ddb22aef0e
Refactor headset offset;
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
4b82a12b15
Add lovr.filesystem.getWorkingDirectory;
2018-03-19 16:52:17 -07:00
bjorn
fdb3a29a05
Add separate x/y scale to lovr.graphics.plane;
2018-03-19 13:09:03 -07:00
bjorn
05413adf74
Make detaching attributes more flexible;
2018-03-13 17:53:09 -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
dd3644bafd
Add bounds checking to Shader:send with Blobs;
2018-03-12 13:27:14 -07:00
bjorn
d8c18f1535
Shader:send supports Blobs;
2018-03-12 11:25:28 -07:00
bjorn
8be201c040
Add default lovr.threaderror callback;
2018-03-12 10:37:45 -07:00
bjorn
a8545f75dc
Rename getShapeList to getShapes; Fix getJoints;
2018-03-12 10:10:10 -07:00
bjorn
399544cf9d
lovr.filesystem.getRequirePath; setRequirePath;
2018-03-11 16:25:21 -07:00
bjorn
c0ebb8f873
Mesh:setVertices accepts VertexData;
2018-03-11 11:43:01 -07:00
bjorn
c0d4d33d47
lovr.graphics.newMesh accepts VertexData;
2018-03-11 11:24:11 -07:00
Bjorn Swenson
9eeca62b78
Merge pull request #41 from mcclure/attach-mesh
...
Implementation of mesh:attachAttributes(), with instance divisor
2018-03-11 11:05:19 -07:00
bjorn
86ce6bc44a
lovr.data.newBlob accepts Blobs to clone them;
2018-03-10 21:37:05 -08:00
bjorn
6916137dc6
VertexData and TextureData properly extend Blob;
...
...He hates it!
2018-03-10 21:28:22 -08:00
bjorn
22cda40163
Fix Collider:getJointList;
2018-03-10 21:02:43 -08:00
mcc
1732384262
Implementation of mesh:attachAttributes(), with optional instance divisor
...
Some features remain to be implemented, these are marked with TODOs.
Currently it is not allowed to attach a mesh which itself has attachments.
2018-03-04 17:07:54 -05: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
bjorn
4df836727c
Simplify refcounting;
2018-02-26 00:59:03 -08:00
bjorn
ac582890fc
Resurrect lovr.audio.getDopplerEffect and setDopplerEffect;
2018-02-25 22:07:14 -08:00
bjorn
272cce65a2
Weird compile fixes;
2018-02-25 21:41:02 -08:00
bjorn
3a36bcceae
lovr.mount; lovr.headset.isMounted; isPresent changes;
...
Remove lovr.headset.isPresent.
Replace Controller:isPresent with Controller:isConnected.
Add lovr.headset.isMounted and lovr.mount callback.
2018-02-25 16:42:31 -08:00
bjorn
8fb3421658
Fix everything on windows;
2018-02-23 18:38:53 -08:00
bjorn
9d42d7737a
Finish Channel API;
2018-02-23 18:38:53 -08:00
bjorn
b5534c37b7
Release Channels in thread.getChannel;
2018-02-23 18:38:53 -08:00
bjorn
bf88ddb575
Release thread lua state;
2018-02-23 18:38:53 -08:00
bjorn
c92604859a
Start Channel;
2018-02-23 18:38:53 -08:00
bjorn
4cca193fcb
lovr.threaderror callback;
2018-02-23 18:38:52 -08:00
bjorn
583afc9f16
Reorganize main/lovr separation;
2018-02-23 18:38:34 -08:00
bjorn
109b40bcb4
Thread:wait; Thread:getError; Thread:isRunning;
2018-02-23 18:38:34 -08:00
bjorn
5c9f234075
Basic working threads;
2018-02-23 18:38:34 -08:00
bjorn
f010a0ffc2
Basic module setup;
2018-02-23 18:38:33 -08:00
bjorn
d4b8274879
Push nil instead of 'unknown' for unknown buttons;
2018-02-21 22:12:38 -08:00
bjorn
67d3c49a76
Add support for 3d textures;
2018-02-20 17:57:47 -08:00
bjorn
07af705e37
Texture:getType;
2018-02-20 17:27:35 -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
5493a980ff
Move Blob to lovr.data;
...
Keep lovr.filesystem.newBlob though...
2018-02-19 21:04:53 -08:00
bjorn
7cecc1489e
getCanvas; setCanvas; MRT; MULTICANVAS define;
2018-02-15 19:58:35 -08:00
bjorn
cca1f32d10
PBR material properties;
2018-02-11 19:16:40 -08:00
bjorn
d5a1928b3d
Rename a bunch of files;
2018-02-11 15:22:04 -08:00
bjorn
ece5bf2f9c
Node and material accessors for ModelData;
2018-02-11 13:03:52 -08:00
bjorn
d7bf96f952
ModelData:getVertexData;
2018-02-10 17:33:45 -08:00
bjorn
8ad882e7a4
Add VertexData object;
2018-02-10 17:27:29 -08:00
bjorn
18be34a903
Expose depth write setting;
2018-02-08 21:50:47 -08:00
bjorn
3fd6f27768
Allow custom values when clearing color, depth, and stencil buffers;
2018-02-08 21:26:53 -08:00
bjorn
c538474339
TextureData:encode;
2018-02-08 20:17:50 -08:00
bjorn
9205663d69
Texture:replacePixels;
2018-02-08 19:46:24 -08:00
bjorn
964614c3fd
Move TextureData assertions into constructors;
2018-02-08 19:22:30 -08:00
bjorn
eab8b8a354
lovr.data.newTextureData can create empty textures;
2018-02-08 19:21:33 -08:00
bjorn
c8e1e3ffd9
TextureData:getPixel; TextureData:setPixel;
2018-02-07 09:08:16 -08:00
Bjorn Swenson
55ba402fd2
Merge pull request #35 from mcclure/audio-crash
...
Error message instead of crash on invalid audio.newSource call
2018-02-03 07:24:46 -08:00
mcc
b1cbb4bb1e
Error message instead of crash on audio.newSource with non-understood file
2018-02-03 09:34:30 -05:00
bjorn
14a54fa7b0
rm MaterialData;
2018-01-29 21:44:32 -08:00
bjorn
4a68067e28
rm AnimationData;
2018-01-29 20:30:13 -08:00
bjorn
e859350e25
TextureData:getDimensions;
2018-01-29 19:15:58 -08:00
bjorn
78774d65be
Actually hold off on node APIs for now;
2018-01-29 19:09:43 -08:00
bjorn
b5b58f9d56
Start node API;
2018-01-27 17:26:11 -08:00
bjorn
3ed5419005
ModelData vertex accessors;
2018-01-27 13:43:20 -08:00
bjorn
032788003a
VertexData; IndexData;
2018-01-27 12:51:41 -08:00
bjorn
84de048fa3
Fix warnings;
2018-01-26 19:11:42 -08:00
bjorn
66d0e42908
Refactor VertexFormat;
2018-01-26 19:11:40 -08:00
bjorn
dc801d8590
luax_pushvertex;
2018-01-26 19:01:41 -08:00
bjorn
ea7f3d48a2
Refactor MeshFormat;
2018-01-26 19:01:41 -08:00
Bjorn Swenson
1f3deae6ec
Merge pull request #32 from mcclure/reload-support-2
...
Restart-without-quit support: lovr.event.quit("restart")
2018-01-25 19:08:30 -08:00
mcc
8052896b33
Restart-without-quit support: lovr.event.quit("restart") and return-from-run() both support the string "restart" in place of an exit code. When this happens, the program reruns itself in a new, isolated environment. In Emscripten, no reboot occurs and the program only quits.
2018-01-25 21:32:16 -05:00
bjorn
b549688c44
Add a bunch of Rasterizer functions;
2018-01-22 18:49:45 -08:00
bjorn
3cce5fd991
ModelData;
2018-01-22 18:24:39 -08:00
bjorn
a2e0f592a3
Create Fonts from Rasterizers;
2018-01-22 08:46:09 -08:00
bjorn
99a302ff38
Rasterizer;
2018-01-22 08:40:47 -08:00
bjorn
a22740084c
Rename FontData to Rasterizer;
2018-01-22 08:28:33 -08:00
bjorn
89891811b7
Create Sources from AudioStreams;
2018-01-22 08:14:24 -08:00
bjorn
e5a17a4160
Create Textures from TextureData;
2018-01-22 08:14:18 -08:00
bjorn
1b9f81b57f
Fix refcounting in lovr.data;
2018-01-22 08:08:47 -08:00