bjorn
5d3e1f93cd
Add d32fs8;
2022-07-17 11:03:00 -07:00
bjorn
32346796ef
Tally/Readback cleanup;
2022-07-17 09:50:15 -07:00
bjorn
430f687add
Projection updates;
...
- Rename/reorder some projection matrix functions.
- Make perspective functions flip Y and use 0-1 NDC range.
- Flip winding and font vertices based on handedness.
This stuff is really confusing
2022-07-17 09:02:53 -07:00
bjorn
1bc31b7751
Revert accidental winding change;
2022-07-15 21:42:31 -07:00
bjorn
e2bfff1b0a
Tally/Readback fixes;
2022-07-14 19:23:02 -07:00
bjorn
45135899a1
Readback, mostly;
2022-07-14 00:05:58 -07:00
bjorn
4909a1963b
Fix clear alpha;
2022-07-14 00:03:58 -07:00
bjorn
bca10c9e98
Make info structs const;
2022-07-13 00:07:15 -07:00
bjorn
1c571001e7
Finish Model API;
2022-07-12 19:35:23 -07:00
bjorn
cd65e8d34c
Cache only rebinds vertex/index buffers when needed;
2022-07-12 17:19:30 -07:00
bjorn
83245afae6
Fix Font:getLines;
2022-07-11 22:43:42 -07:00
bjorn
4e92a4e503
Super ultra cool geometry cache;
...
Pass stores a small 16-bucket cache of vertices/indices it recently
generated. Draws that have relatively predictable geometry can provide
a hash along with their draw. The Pass will reuse vertices based on the
hash, when possible, and return a NULL vertex pointer to let the draw-er
know they don't need to generate any vertices.
This provides a dramatic speedup when drawing the same shape many times
in a row. The overhead is negligible, with benefits kicking in with
just a small handful of repeated draws (3-5 for cubes, less for more
complex shapes).
2022-07-11 20:52:35 -07:00
bjorn
a0cd36a77b
Fix torus winding;
2022-07-10 18:02:49 -07:00
bjorn
0a251495bc
Fix normal matrix;
2022-07-10 18:02:44 -07:00
bjorn
4e8fe82f94
Font:getVertices;
2022-07-10 12:49:47 -07:00
bjorn
f7d7281e70
Add index16/index32 FieldTypes;
...
Similar to u16/u32 but are 1-indexed when written using tables.
2022-07-10 12:18:31 -07:00
bjorn
8e89026678
Shader:getLocalWorkgroupSize;
2022-07-09 23:39:03 -07:00
bjorn
886bfe18c1
Shader "improvements";
2022-07-09 23:09:02 -07:00
bjorn
c7f4e11b0b
Improve shader errors;
2022-07-09 21:39:31 -07:00
bjorn
e8a5f02e7b
Start stats;
2022-07-09 21:19:51 -07:00
bjorn
159352770f
Model:getTriangles;
...
Doesn't 100% work, Buffers are kind of a mess, ugh.
2022-07-09 18:30:36 -07:00
bjorn
40cbb18346
Ugly Pass:capsule;
2022-07-09 16:38:25 -07:00
bjorn
b0c1dd5f12
Put nogame in its own file;
2022-07-06 23:50:43 -07:00
bjorn
f2cfb19d4d
Material textures must be sample-only;
...
Tracking every material's texture would add a lot of overhead, probably
2022-07-06 23:00:39 -07:00
bjorn
3bf5ec5744
Shader improvements;
...
Mostly renaming things and adding helper functions.
2022-07-06 22:54:56 -07:00
bjorn
5f19c2e1be
Model:getBoundingBox; Model:getBoundingSphere;
2022-07-06 19:22:02 -07:00
bjorn
516ac2a925
Fix validation issue when first draw uses empty vertex format;
2022-07-06 16:43:42 -07:00
bjorn
a44ab9bcfa
Fix presentation sequence issue;
...
Fixes crash on error inside lovr.draw.
2022-07-05 21:58:54 -07:00
bjorn
dbc34c0fdc
Update internal resource limit caps;
2022-07-04 15:54:43 -07:00
bjorn
dd8d8fe67e
Adjust;
2022-07-04 15:22:54 -07:00
bjorn
b7e5bd1d67
Require 64KB uniform buffers;
...
64KB is near-ubiquitous, and the per-draw UBO needs this much space.
2022-07-04 15:21:43 -07:00
bjorn
b934fac1df
Pass:skybox;
2022-07-04 00:18:38 -07:00
bjorn
8aa14ba42b
Shader:hasAttribute;
2022-07-03 23:04:56 -07:00
bjorn
2c339dd944
Shader:hasStage;
2022-07-03 22:59:49 -07:00
bjorn
4f15e7e34a
Fix plane winding;
2022-07-03 20:07:00 -07:00
bjorn
de090971f7
rm erroneous union;
2022-07-03 19:59:51 -07:00
bjorn
0d23d10e43
Animate normals; Use material color;
2022-07-03 19:20:30 -07:00
bjorn
d088c5471d
Model;
...
Does not include some of the fancier accessors yet.
2022-07-03 17:26:31 -07:00
bjorn
e8e9e7fd57
Fix leaks;
2022-07-03 12:59:51 -07:00
bjorn
56a9d81254
Fix push constants;
2022-07-01 18:34:31 -07:00
bjorn
d9d54ce348
Pass:copy(tally, buffer);
2022-06-30 18:51:03 -07:00
bjorn
8b37b25e54
TIME WIZARD;
2022-06-30 18:47:01 -07:00
bjorn
a521f11a44
lovrPassCopyTallyToBuffer;
2022-06-30 18:46:47 -07:00
bjorn
c327eb103f
Tally;
2022-06-30 17:34:29 -07:00
bjorn
9e7bd34ab1
Font:getWidth;
2022-06-30 17:25:47 -07:00
bjorn
4125b1dc7e
mv getWrap getLines; Include bearing/advance in width;
2022-06-30 17:07:47 -07:00
bjorn
8e968cecd0
Fixes;
2022-06-30 00:29:52 -07:00
bjorn
1f8d37a160
Font:getKerning;
2022-06-29 21:49:55 -07:00
bjorn
078b54a7a5
Font:getWrap doesn't return width;
2022-06-29 21:33:39 -07:00
bjorn
7711fe8b65
Font:getWrap; Simplify Font internals;
2022-06-29 20:17:26 -07:00