Luke Benstead
31676d9dc8
Merge branch 'sq_fix' into 'master'
...
Use direct render APIs instead of manually locking/unlocking store queues
See merge request simulant/GLdc!129
2024-10-04 14:29:12 +00:00
Luke Benstead
98577ebb31
Merge branch 'twid_speedup' into 'master'
...
Only check whether twiddle table needs updating once instead of every pixel
See merge request simulant/GLdc!130
2024-10-04 14:28:16 +00:00
UnknownShadow200
6f0acd5218
Only check whether twiddle table needs updating once instead of every pixel
...
Based on checking disassembly output in Release mode
2024-10-04 22:11:42 +10:00
UnknownShadow200
ea56577ca9
Use direct render APIs instead of manually locking/unlocking store queues
...
This ensures that GLdc works in both 2.1.0 and latest matter
2024-10-04 19:51:33 +10:00
UnknownShadow200
c30b16b97b
Fix points/lines being improperly culled
2024-10-03 08:08:33 +10: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
165eb9d5c8
Add primitive modes sample, quad strips partially work
...
Although the second triangle is wrongly culled
2024-10-02 19:28:02 +10:00
UnknownShadow200
19a76cbefd
Fix lines
2024-10-02 19:00:05 +10:00
UnknownShadow200
a47f331cee
Initial work on supporting missing primitive modes
2024-10-02 07:48:44 +10:00
UnknownShadow200
d978e3187c
Fix array drawing mode not rendering properly in non-fast mode.
...
Also move vertex transform to be done inline in non-fast path, instead of all entirely at the end
2024-10-01 07:13:02 +10:00
Luke Benstead
75b992f52e
Fix multiple bugs in the allocator
2024-09-14 07:51:13 +01:00
Luke Benstead
42786f775e
Fix a bug in the allocator#
2024-09-14 07:46:11 +01:00
Luke Benstead
dc07cbc4d2
Merge branch 'blend2' into 'master'
...
Try to fix not being able to use GL_SRC_COLOR and GL_ONE_MINUS_SRC_COLOR as destination blend factor
See merge request simulant/GLdc!125
2024-09-06 13:26:55 +00: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
5f28cae804
Tidy up textures table and add some missing formats
2024-09-04 21:26:46 +10:00
Luke Benstead
ab24e2db35
Make GL_MULTISAMPLE not throw an error
2024-08-28 22:39:05 +01:00
Falco Girgis
b6995edc66
Merge branch 'master' of https://gitlab.com/simulant/GLdc
2024-08-11 09:19:59 -05:00
Unknown Shadow
d737961e88
Merge branch 'master' into 'FasterImmediate'
...
# Conflicts:
# GL/immediate.c
2024-08-11 11:11:25 +00:00
UnknownShadow200
92ec1db643
Only update attribute pointers at end instead of per vertex
2024-08-11 19:39:27 +10:00
Falco Girgis
0f3be24cec
Merge branch 'master' of https://gitlab.com/simulant/GLdc into pvr_direct
2024-08-11 01:21:06 -05:00
Luke Benstead
ba76d67154
Merge branch 'ViewportTransform' into 'master'
...
Refactor viewport transform
See merge request simulant/GLdc!120
2024-08-04 20:18:41 +00:00
UnknownShadow200
d4fc57cab2
Fix not working properly, defer matrix calculation until needed
2024-08-03 16:40:23 +10:00
UnknownShadow200
2f26574a44
Combine projection transform and viewport transform together
2024-08-03 15:52:56 +10:00
Falco Girgis
812ed4a1ee
Fixing PC build.
2024-07-31 23:29:09 -05:00
Falco Girgis
b920855b57
Micro optimizations and clean-up.
2024-07-31 23:08:37 -05:00
Falco Girgis
873372995a
More cleanup.
2024-07-31 22:59:43 -05:00
Falco Girgis
49f2f0917b
Nehe20 Build Fix + Warnings cleanup for GCC14.1.0.
...
Newest toolchain is bitchier, so I wanted to go ahead and clear up all
of the warnings from building GLdc and the various examples...
1) Set CMake CXX standard to 14 instead of 11, since CXXFLAGS were
enforcing that language standard anyway.
2) Fixed a bunch of strict aliasing violations in immediate.c: glVertex3f.
3) Removed or commented out lots of unused variables.
4) Fixed some "suggested inner braces on initializer" crap.
5) Fixed a bunch of signed vs unsigned pointer assignments.
6) Fixed several printf() warnings from using %d with int32_t (needs to
be %ld for long int).
7) Fixed build issue with Nehe20 from not including kos.h for the
KOS_ROMDISK macro.
8) Fixed some signed vs unsigned comparison mismatches in C++ template
instantiations within clipping tests.
9)
2024-07-31 20:35:34 -05:00
Falco Girgis
a68c4bf6ac
Merge branch GLdc:master into master
2024-07-31 19:10:27 +00:00
Luke Benstead
60773e9db8
Fix alpha values
2024-07-21 10:28:13 +00:00
UnknownShadow200
6722e14b93
Simplify RGBA interpolation by avoiding a multiply and division by 255
2024-06-07 21:36:59 +10:00
Bkacjios
f06c72ff14
Should be GL_BGRA
2024-04-27 11:05:40 -04:00
Bkacjios
0facbd16b2
Add conversion from argb1555 to argb4444
2024-04-27 09:53:03 -04:00
Falco Girgis
5fd6e51028
Readded prefetching.
2024-04-10 01:09:29 -05:00
Falco Girgis
54e46822bd
Merge remote-tracking branch 'origin/master' into HEAD
2024-04-10 00:40:37 -05:00
Luke Benstead
572fa01b03
Fix edge case
2024-04-06 21:13:17 +01:00
Luke Benstead
6a6d229e4c
Fix bug with multiple strips
2024-04-04 06:30:37 +01:00
Luke Benstead
77f4b59aea
Fix off-by-one
2024-04-03 22:30:41 +01:00
Luke Benstead
5299badf58
Only submit trailing vertices if the previous triangle was visible
2024-04-03 22:09:35 +01:00
Luke Benstead
f8d1fa3439
Fix some issues with clipping
2024-04-03 21:19:36 +01:00
Luke Benstead
a8f3d86705
Start cleaning up the zclip code
2024-04-02 22:28:36 +01:00
Luke Benstead
d4f6a9636b
Fix more freezes and clipping issues
2024-03-19 20:14:01 +00:00
Luke Benstead
d6ac295d18
Fix more potential freezes
2024-03-19 08:14:38 +00:00
Luke Benstead
b353151dca
Fix freeze due to bad clipping
2024-03-18 20:56:15 +00:00
Luke Benstead
cf4a557489
Fix CLIP_DEBUG
2024-03-18 20:18:58 +00:00
Luke Benstead
c85aed2d28
Set the opb counter
2024-03-11 19:11:35 +00:00
darcagn
eef1548914
Update matrix.c
2024-02-18 23:34:59 +00:00
darc
d92a5b1b07
Fix GL/matrix.c to work properly on -m4-single
2024-02-17 02:45:37 -06:00
T_chan
bd17c995ea
Naomi: don't call flashrom_get_region, as KOS Naomi does not include flashrom functions
2024-02-03 11:42:39 +00:00
T_chan
58f5f52eac
avoid reading the flashrom if we know we are in VGA mode
2024-02-02 20:08:04 +00:00
Falco Girgis
04c2fcceae
Getting rid of prefetching.
2024-01-31 14:59:58 -06:00
Falco Girgis
d4a83ff235
Fixed a double promotion, put back prefetching.
2024-01-31 14:46:49 -06:00
Falco Girgis
8d1ce547f5
Screwed up prefetch macro.
2024-01-31 02:51:51 -06:00
Falco Girgis
313341f93d
Trying without prefetching.
2024-01-31 02:50:01 -06:00
Falco Girgis
4033e9c23a
Submitted wrong size to sq_fast_cpy()
2024-01-31 01:59:46 -06:00
Falco Girgis
3420f0d0c6
Adjusting vertex buffers.
2024-01-31 01:56:01 -06:00
Falco Girgis
e8a60bc94a
Fixing build issues
2024-01-30 20:43:30 -06:00
Falco Girgis
0be2911e0b
Trying to batch shit better.
2024-01-30 20:41:34 -06:00
Falco Girgis
9586eefee9
Next attempt.
2024-01-30 19:55:05 -06:00
Falco Girgis
c25a5cddcb
Next attempt.
2024-01-30 19:52:56 -06:00
Falco Girgis
b9cdfb2e35
next try
2024-01-30 19:45:17 -06:00
Falco Girgis
32ecb843a2
next try.
2024-01-30 19:44:40 -06:00
Falco Girgis
709942e69d
test.
2024-01-30 19:40:40 -06:00
Luke Benstead
9f3f638a46
Add missing conversion, fixes #77
2024-01-16 22:05:43 +00:00
darc
c314a0ec3a
Fix GLdc failing to build on GCC 9.x
2023-12-18 18:53:37 -06:00
Luke Benstead
2b3c083de3
Fix issue with texture twiddling and RGB565 untwiddled textures
2023-11-29 11:25:32 +00:00
Spencer Elliott
79172452f2
Convert GL_SHORT to proper float on conversion
2023-09-26 18:51:29 +00:00
Spencer Elliott
202f546848
Fixed alignment for matrix passed into UploadMatrix4x4 in gluLookAt
2023-09-20 10:18:55 -05:00
Luke Benstead
d054dde785
Fix paletted texture glitch
2023-09-12 21:11:05 +01:00
Luke Benstead
00b4468928
Remove unused function
2023-09-11 20:42:09 +01:00
Luke Benstead
43d64a4957
Fix twiddling issues
2023-09-11 17:27:04 +01:00
Luke Benstead
61e5a7a2a6
More twiddling work
2023-09-10 19:41:25 +01:00
Luke Benstead
3308a57e59
Implement defragmenting the memory
2023-09-08 17:49:46 +01:00
Luke Benstead
db9e1cd424
Fall back to unaligned if there's no more aligned spaced
2023-09-08 09:13:33 +01:00
Luke Benstead
6eb079228e
Fix infinite loop
2023-09-06 21:01:37 +01:00
Luke Benstead
7ce01ad93f
Fix up paletted textures
2023-09-06 08:01:01 +01:00
Luke Benstead
12bd6f474f
Fix issues with the allocator
2023-09-06 07:59:40 +01:00
Luke Benstead
e5a4f4f716
Continue fixing up paletted texture issues
2023-09-03 21:12:11 +01:00
Luke Benstead
4d39e19ed5
Start repairing paletted textures
2023-09-02 21:10:42 +01:00
Luke Benstead
9cedc81850
Fix broken merge
2023-09-01 20:29:24 +01:00
Luke Benstead
5e7b33797d
Perf improvements and fixes
2023-09-01 20:25:27 +01:00
Luke Benstead
b19b9d498a
Clean up the allocator code
2023-09-01 20:25:21 +01:00
Luke Benstead
36de063756
Allow configuring automatic texture twiddling in glKosInitEx
...
Defaults to enabled.
2023-09-01 20:23:55 +01:00
Luke Benstead
cfbaea4a46
Don't calculate things twice
2023-09-01 08:52:01 +01:00
Luke Benstead
4b47f6878f
Remove yalloc
2023-09-01 08:34:48 +01:00
Luke Benstead
3248499d5a
Switch to the new allocator
2023-08-31 21:21:14 +01:00
Luke Benstead
f49a98ab54
Fix allocate and free
2023-08-31 20:49:34 +01:00
Luke Benstead
f278777c0e
WIP: Start implementing new allocator
2023-08-31 08:47:00 +01:00
Luke Benstead
77531ca347
Drastically refactor glTexImage2D
2023-08-26 20:34:11 +01:00
Luke Benstead
a05e1b01fa
Make glGenerateMipmap the function, and EXT the alias
2023-07-26 20:33:12 +01:00
Luke Benstead
3dcbbdbde6
Add logging
2023-06-09 20:35:00 +01:00
Luke Benstead
92ee4f616d
Set mode to PAL@50 if it's a European console without VGA
2023-06-06 21:05:52 +01:00
Luke Benstead
e7574bca1d
Fix issues with GL_QUADS
2023-05-31 18:27:17 +01:00
Luke Benstead
026bdeff09
Fix infuriating memory corruption bug
2023-05-20 07:47:39 +01:00
Luke Benstead
f6713bc778
Speed up the software renderer
2023-05-20 07:45:45 +01:00
Luke Benstead
5865d57384
Wait for the store queues to finish when we've uploaded everything
2023-05-20 07:45:16 +01:00
Luke Benstead
1e3896e699
Clean up
2023-05-20 07:44:55 +01:00
Luke Benstead
d81472ef57
Liberally assert stuff
2023-05-17 20:39:58 +01:00
Luke Benstead
462eb40d7a
Fix bugs in texture deletion
2023-05-17 20:39:49 +01:00
Luke Benstead
c4c0bf4239
Fix an off-by-one error
2023-05-17 20:39:27 +01:00