bjorn
1946fbb540
Reduce default near plane;
...
I feel like we've (un)done this before...
2022-07-17 11:05:24 -07:00
bjorn
5d3e1f93cd
Add d32fs8;
2022-07-17 11:03:00 -07:00
bjorn
7aab5ce79b
Fix errhand;
2022-07-17 09:55:27 -07:00
bjorn
32346796ef
Tally/Readback cleanup;
2022-07-17 09:50:15 -07:00
bjorn
faa690b7f0
Material API;
...
Just returns everything as a table. Some sort of key-value thing would
be nice but complicates the implementation.
2022-07-17 09:29:13 -07:00
bjorn
35d8a4c49c
Tally API;
2022-07-17 09:05:39 -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
3bfd9ca0e1
gpu: improve wait functions;
...
- gpu_finished -> gpu_is_complete
- add gpu_wait_tick -> can wait for specific tick to finish (fence)
- gpu_wait -> gpu_wait_idle
2022-07-14 00:04:38 -07:00
bjorn
c54a587590
gpu: fix read scratchpad destruction;
2022-07-14 00:04:21 -07:00
bjorn
4909a1963b
Fix clear alpha;
2022-07-14 00:03:58 -07:00
bjorn
f5ec2e9158
Don't encode Images upside down anymore;
2022-07-13 23:59:35 -07:00
bjorn
bca10c9e98
Make info structs const;
2022-07-13 00:07:15 -07:00
bjorn
0b76ab7e96
Add a few Tally things;
2022-07-12 19:59:12 -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
ae87abc7bb
gpu: fix allocator;
2022-07-11 19:53:53 -07:00
bjorn
a4e4181489
Error screen;
2022-07-10 21:37:52 -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
698977c5be
Better default torus segments;
2022-07-10 18:02:31 -07:00
bjorn
e8ebb17796
Fix hexcode render pass clear;
2022-07-10 17:07:04 -07:00
bjorn
cfa5613db4
gpu: render pass cache uses correct resolve layout;
2022-07-10 17:06:43 -07:00
bjorn
f23ae4009f
gpu: Fix render pass cache eviction;
2022-07-10 17:06:20 -07:00
bjorn
dacd17066d
luax_checkendpoints;
...
Allows drawing a sphere/capsule using 2 endpoints.
2022-07-10 13:11:47 -07:00
bjorn
4e8fe82f94
Font:getVertices;
2022-07-10 12:49:47 -07:00
bjorn
889b1d8271
Improve Buffer length estimation;
2022-07-10 12:49:11 -07:00
bjorn
f89b1811aa
Adjust default Buffer field locations;
...
I guess it's better to match them up with the default attributes.
In most cases you're going to want to manually specify them with names
or numbers anyway.
2022-07-10 12:35:02 -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
72dd7ee0f2
Fix compute shader compilation;
2022-07-09 23:39:20 -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
f9c07f852b
gltf: KHR_texture_basisu; Only load active images;
2022-07-06 20:24:02 -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