Commit Graph

117 Commits

Author SHA1 Message Date
jnmartin84
0cd447dbcf don't waste a full byte on mirror/flip setting
moved MIRROR bits into bits 2 and 3 of what used to be `uv_clamp` member of TextureObject
renamed `uv_clamp` member to `uv_wrap`
updated and commented code accessing `uv_wrap` for both clamp and mirror settings
2025-07-13 00:16:43 -04:00
jnmartin84
708566af72 initial support for GL_MIRRORED_REPEAT 2025-07-12 12:07:04 -04:00
Luke Benstead
f09760dda3 Merge branch 'tnl_effects' into 'master'
Add support for texture and colour matrices

See merge request simulant/GLdc!157
2025-05-24 20:19:01 +00:00
T_chan
ca8ebf7fc0 Change all ifdefs to support both DC & Naomi 2025-02-22 14:42:00 +01:00
UnknownShadow200
ff942e804e Add texture/color matrix sample 2025-02-22 10:52:09 +11:00
UnknownShadow200
e3f61f3c78 Initial work on texture and colour matrix support 2025-02-22 09:33:08 +11:00
UnknownShadow200
ebdb454a75 Simplify T&L effect code 2025-02-22 08:46:58 +11:00
UnknownShadow200
9ca7c002be Slightly optimise matrix code to a single pointer lookup 2025-02-22 08:17:56 +11:00
UnknownShadow200
93c81739ba WIP on a separate T&L effects file 2025-02-22 06:43:44 +11:00
David Reichelt
08b2d58b4e Add support for glGetIntegerv(GL_MATRIX_MODE,...)
(cherry-picked from commit 52011fe9efeb2e997637876be8a3f600bf91df25)

Co-authored-by: David Reichelt <freakdave@hotmail.com>
2025-02-09 19:13:38 +00:00
UnknownShadow200
b7ac22ec34 Fix lighting using some values calculated for last vertex, instead of the current vertex 2025-02-08 12:23:43 +11:00
Luke Benstead
9100660c78 Merge branch 'attribute_speedup' into 'master'
Move attribute parsing into separate file and avoid recomputing parse/read functions unless necessary

See merge request simulant/GLdc!143
2025-02-02 08:32:06 +00:00
UnknownShadow200
e2fc2da055 Move error handling code into the cold path 2025-02-01 19:58:22 +11:00
UnknownShadow200
5318f11f11 Defer recomputing attributes state when possible 2025-02-01 18:17:28 +11:00
UnknownShadow200
bdecf90d64 Calculate read attribute functions when attribute states changes, instead of at every draw call 2025-02-01 15:38:59 +11:00
UnknownShadow200
2b06418fed Fix not compiling on desktop due to relying on KOS specific frsqrt 2024-10-02 20:27:28 +10:00
UnknownShadow200
4513b040e2 Don't inline less optimal primitive modes 2024-10-02 20:07:36 +10:00
UnknownShadow200
19a76cbefd Fix lines 2024-10-02 19:00:05 +10:00
UnknownShadow200
d570030070 Try to fix not being able to use GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR as destination blend factor 2024-09-06 22:13:31 +10:00
UnknownShadow200
2f26574a44 Combine projection transform and viewport transform together 2024-08-03 15:52:56 +10:00
Luke Benstead
77531ca347 Drastically refactor glTexImage2D 2023-08-26 20:34:11 +01:00
Luke Benstead
026bdeff09 Fix infuriating memory corruption bug 2023-05-20 07:47:39 +01:00
Luke Benstead
1a678d2c8d Undo some bad changes 2023-04-23 21:00:01 +01:00
Luke Benstead
0923b5c601 Further optimisations 2023-04-23 20:16:15 +01:00
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
6ee9a823c1 Don't update lights unnecessarily 2023-03-23 20:01:41 +00:00
Luke Benstead
300f2a611e Optimise state management 2023-03-17 20:40:45 +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
a9f3e3a744 Fix alignments 2023-03-06 13:44:17 +00:00
Luke Benstead
8ca70a2920 Initialize submission target on boot to save runtime cost 2022-11-04 19:23:50 +00:00
Luke Benstead
0b62ac8673 Clean ups and optimisations 2022-08-25 21:24:08 +01:00
Luke Benstead
3d69003c5f Allow disabling near-z 2022-06-13 20:16:37 +01:00
OzzyOuzo
1a456cb1a7 16bit palette color format support, extended 64 shared palette slots (4bpp), GL_OES_compressed_paletted_texture support
GL_ERROR generated when texture size > 1024
2021-12-03 09:32:53 +02:00
Luke Benstead
adce2c7538 Perf tweaks 2021-09-13 12:57:52 +01:00
Luke Benstead
66d09e7d77 Error cleanup and immediate mode perf improvements 2021-09-13 10:29:04 +01:00
Luke Benstead
4adc49cd40 Optimisations 2021-09-12 15:04:52 +01:00
Luke Benstead
a79c1dd753 Set the right depth mode when autosort is on 2021-05-23 13:19:54 +01:00
Luke Benstead
06529d4fe7 Perf tweaks 2021-05-08 14:38:55 +01:00
Luke Benstead
e67f1fb8f9 Don't transform the vertex again incorrectly. Optimise 2021-04-30 07:58:57 +01:00
Luke Benstead
fcbb6418d2 Perf improvements 2021-04-26 16:16:25 +01:00
Luke Benstead
40678836e0 Refactor viewport handling 2021-04-25 13:05:56 +01:00
Luke Benstead
ea25251944 Optimisations 2021-04-20 16:08:58 +01:00
Luke Benstead
a3c4aaac8f Don't set a zero zclip value 2021-04-19 20:51:22 +01:00
Luke Benstead
f03f0e8f04 Implement glScissor correctly 2021-04-14 21:38:33 +01:00
Luke Benstead
fe616028bb X86 2021-04-09 15:24:47 +00:00
Luke Benstead
f9b7cd7985 Add a custom extension to query and defragment texture memory 2021-02-19 21:28:31 +00:00
Luke Benstead
9bfb0c6eea Fix bug from last commit, don't apply lights at all if none are enabled 2020-05-22 07:20:08 +01:00
Luke Benstead
2b9d8520bc Lighting perf improvements 2020-05-11 20:34:09 +01:00
Luke Benstead
ab6725c5e3 Restore MAX_LIGHTS to 8 2020-05-08 10:00:03 +01:00