Commit Graph

709 Commits

Author SHA1 Message Date
Luke Benstead
c5ce81a38d WIP: Restructure clipping to be much MUCH faster in the visible case
This currently only works with triangles, anything more and it crashes
due to me not queuing subsequent vertices in the strip correctly
2023-04-19 20:57:44 +01:00
Luke Benstead
25d215dad3 Add some compiler flags for lolz 2023-04-11 20:46:44 +01:00
Luke Benstead
307d371c55 Various store queue shinanigans 2023-04-11 20:46:31 +01:00
Luke Benstead
4ad58bea89 Optimise glLoadMatrixf 2023-04-11 20:46:12 +01:00
Luke Benstead
8e60b18f29 Merge branch 'add-new-cubes-sample' into 'master'
Add new cubes sample

See merge request simulant/GLdc!103
2023-04-08 20:32:18 +00:00
David Reichelt
190b4ecfb7 Add include for printf 2023-04-08 20:07:21 +00:00
David Reichelt
a4b778063a Make sure ZNEAR_CLIPPING_ENABLED is defined in software renderer 2023-04-08 20:00:33 +00:00
Dave Reichelt
df9a12bbd6 Added new cubes sample
- A button toggles between glDrawElements and glDrawArrays
- B button toggles glBlend
- Start quits the sample
- Every 10 seconds a log with stats will be sent to the terminal
2023-04-08 21:42:03 +02:00
Luke Benstead
6ee9a823c1 Don't update lights unnecessarily 2023-03-23 20:01:41 +00:00
Luke Benstead
0c5f941098 Optimise nearz clipping 2023-03-17 20:40:55 +00:00
Luke Benstead
300f2a611e Optimise state management 2023-03-17 20:40:45 +00:00
Luke Benstead
e810d2567d Merge commit 'e5c6fefcd92cb6e877e8501c4b43cbf75460409d' 2023-03-16 21:24:22 +00:00
Luke Benstead
e5c6fefcd9 Optimisations 2023-03-16 21:24:12 +00:00
Luke Benstead
0cf006ebce Merge branch 'bug-fixes' into 'master'
Fix elf extension and compilation with GCC4.7

See merge request simulant/GLdc!100
2023-03-07 21:40:54 +00:00
Luke Benstead
8789d6557e Huge refactor of internal state 2023-03-07 21:27:48 +00:00
Luke Benstead
8beb295c6b Refactor state management 2023-03-07 10:19:09 +00:00
Luke Benstead
c195d471e1 Faster memcpy 2023-03-06 14:05:14 +00:00
Luke Benstead
be4c1bc14c Add missing header 2023-03-06 13:54:31 +00:00
Luke Benstead
a9f3e3a744 Fix alignments 2023-03-06 13:44:17 +00:00
Luke Benstead
f0a3465486 Use Moops memcpy 2023-03-05 21:16:12 +00:00
Luke Benstead
b08bbebf12 Mipmap fix 2023-03-05 20:26:15 +00:00
falco
e27c276daa Fixed poly/tri/quadmarks to build with GCC12
"start" is a reserved symbol within KOS, per crt1.s. Not sure why the old toolchains let us use this symbol name elsewhere, but the new GCC12 toolchain rightfully complains about duplicate symbols.

- Renamed "start" timestamp to "begin."
2023-03-04 17:35:17 -06:00
Colton Pawielski
5bb2691b91 Change CMakeLists.txt to add -mfsrra and -mfsca only if supported by compiler
GCC4.7 does not support these flags and cause a failure to build
2023-03-04 16:13:44 -06:00
Colton Pawielski
ac6914398c Fix .elf extension on C example executables 2023-03-04 16:11:11 -06:00
Colton Pawielski
8481fd05cc Add dcbuild & pcbuild folders to .gitignore 2023-03-04 16:10:34 -06:00
Luke Benstead
19288918f0 Merge branch 'Declare_glFogiv' into 'master'
declare glFogiv()

See merge request simulant/GLdc!95
2023-02-02 11:58:35 +00:00
Luke Benstead
8fff6ee1aa Treat GL_CLAMP_TO_EDGE the same as GL_CLAMP 2022-12-09 20:17:46 +00:00
Luke Benstead
ac86504549 Clean up 2022-12-03 20:01:43 +00:00
Luke Benstead
d78c6275bb Increase tri-strip length 2022-12-03 14:00:24 +00:00
Luke Benstead
69a2310a3c Default to small culling to avoid artifacts 2022-12-03 13:46:08 +00:00
Luke Benstead
5296f5c79c Optimise perspective divide assuming W is always positive 2022-11-05 20:28:24 +00:00
Luke Benstead
aa875ae4d1 Fix compiler flags 2022-11-04 19:34:42 +00:00
Luke Benstead
7db15a0e03 Fix PC build 2022-11-04 19:25:50 +00:00
Luke Benstead
b6593acc83 Switches instead of if ladders 2022-11-04 19:24:12 +00:00
Luke Benstead
8ca70a2920 Initialize submission target on boot to save runtime cost 2022-11-04 19:23:50 +00:00
Luke Benstead
4d8c507706 Fix a bug where glXPointer functions would do unnecessary work 2022-11-04 19:23:06 +00:00
Luke Benstead
a248f3a50c Faster inversion 2022-11-03 20:24:38 +00:00
Luke Benstead
6be3e6185d Faster inversion 2022-09-14 19:20:24 +01:00
Luke Benstead
3caaf798e7 Undo double transform 2022-08-25 21:25:52 +01:00
Luke Benstead
0b62ac8673 Clean ups and optimisations 2022-08-25 21:24:08 +01:00
Luke Benstead
4edf8ce04d Use the direct texture path for vbuffer uploads 2022-08-25 20:01:54 +01:00
Luke Benstead
c793e1f35d Don't submit empty lists 2022-08-24 20:31:55 +01:00
Luke Benstead
9b9db31f30 Merge branch 'super-clip' into 'master'
Super clip

See merge request simulant/GLdc!99
2022-06-13 19:26:55 +00:00
Luke Benstead
9d9a502e96 Remove old clipping 2022-06-13 20:16:46 +01:00
Luke Benstead
3d69003c5f Allow disabling near-z 2022-06-13 20:16:37 +01:00
Luke Benstead
99ae70a72b Make the software implementation use the same clipping code 2022-06-13 20:06:04 +01:00
Luke Benstead
6fb15ee4c7 Fix some winding issues 2022-06-13 20:05:54 +01:00
Luke Benstead
b17104afea Add a missing header 2022-06-13 20:05:39 +01:00
Luke Benstead
16f6100afa Fix issues and optimise 2022-06-12 19:53:26 +01:00
Luke Benstead
4827fd4c5b Fix various clipping glitches 2022-06-11 21:27:09 +01:00