Luke Benstead
bdeb9cd45a
Restore clipping case that apparently can happen after all
2019-03-25 19:04:50 +00:00
Luke Benstead
493592ea30
Tweaks
2019-03-25 16:07:27 +00:00
Luke Benstead
f712f00602
Don't do anything if there are no vertices submitted
2019-03-25 16:06:41 +00:00
Luke Benstead
4355d0f224
Add additional profiler checkpoints
2019-03-25 16:06:28 +00:00
Luke Benstead
8fd90bd040
Switch back to normal swapping
2019-03-25 12:38:34 +00:00
Luke Benstead
0e71588e6c
Try to optimise the quad generation
2019-03-25 10:33:05 +00:00
Luke Benstead
671881eafd
Optimise GL_POLYGON rendering
2019-03-25 09:48:58 +00:00
Luke Benstead
291e82d18a
Rename ClipVertex -> Vertex
2019-03-25 09:44:59 +00:00
Luke Benstead
bd0ef4cba3
Demo multitexturing in zclip, default to GL_MODULATE on multitexture
2019-03-24 14:09:52 +00:00
Luke Benstead
5e6927d9a1
Huge refactor of the drawing code
2019-03-24 08:09:02 +00:00
Luke Benstead
3cb24c4fb4
Rename some functions
2019-03-14 13:16:55 +00:00
Luke Benstead
e9c8836181
Huge cleanup of glDrawElements handling
2019-03-14 13:15:56 +00:00
Luke Benstead
1ee16d8ee1
Slight optimisation
2019-03-13 17:38:42 +00:00
Luke Benstead
d9539da841
Optimisations
2019-03-13 15:35:42 +00:00
Luke Benstead
8101e43e90
Fix winding issue
2019-03-13 15:19:28 +00:00
Luke Benstead
5bf58ec1a8
Refactor array submission to be (hopefully) faster
2019-03-13 11:24:35 +00:00
Luke Benstead
25bd3aedc8
Increase the max polygon size to 32
2019-03-10 16:10:59 +00:00
Luke Benstead
b00b65af54
Fix issues with triangle fans / polygons
2019-03-10 12:24:27 +00:00
Luke Benstead
df3cdf0ebb
Fix drawing polygons. Fixes #35
2019-03-07 21:41:25 +00:00
Luke Benstead
d7342fa0c0
Automatically twiddle non-twiddled palette data
2019-03-07 21:21:30 +00:00
Luke Benstead
d89997a277
Simplify the element drawing
2019-03-04 20:41:33 +00:00
Luke Benstead
5f7fef2cf9
Prefix non-static private functions with '_gl'
2019-03-03 19:06:01 +00:00
Luke Benstead
926214bd82
Prefix some non-static private functions with '_gl'
2019-03-03 19:02:25 +00:00
Luke Benstead
df44c0ea73
More performance work and fix bugs introduced in last commit
2018-10-09 09:27:53 +01:00
Luke Benstead
18759422ea
Optimise non-indexed rendering paths
2018-10-08 22:03:50 +01:00
Luke Benstead
52e1be498e
Keep header pointer updated. Fixes #25 (hopefully...)
2018-09-19 17:11:56 +01:00
Luke Benstead
17c9699966
More clipping fixes
2018-09-08 20:53:28 +01:00
Luke Benstead
06b065dc7e
Return the correct count from clip
2018-09-06 20:08:55 +01:00
Luke Benstead
93af697092
Don't include the header in startOffset
2018-09-06 20:00:18 +01:00
Luke Benstead
d9fa69c288
Fix invalid memory access bug
2018-09-06 19:46:04 +01:00
Luke Benstead
b4539443f5
Allow toggling debug logging
2018-09-06 19:45:52 +01:00
Luke Benstead
af54c96ff4
Implement new culling algorithm, still some issues when GL_CULL_FACE is enabled
2018-09-06 19:19:00 +01:00
Luke Benstead
517d21b487
Begin implementing a new clipping algorithm
2018-09-03 21:48:42 +01:00
Luke Benstead
8b3bf5a579
Fix lighting wrapping
2018-08-27 21:35:07 +01:00
Luke Benstead
b29303fb6c
Implement glColorMaterial
2018-08-22 09:24:49 +01:00
Luke Benstead
21f8f9d855
Properly restore state after glEnd
2018-08-21 16:15:43 +01:00
Luke Benstead
9b0322ce8a
Properly restore enabled client state when using immediate mode
2018-08-21 16:08:06 +01:00
Luke Benstead
edae8a9166
Properly pop active client texture in immediate mode
2018-08-21 15:50:59 +01:00
Luke Benstead
25de48b3f6
Fix a bug where only one texture would bind
2018-08-21 15:50:41 +01:00
Luke Benstead
8b834ac3f1
Avoid an additional copy of every vertex. Fixes #22
2018-08-21 09:37:19 +01:00
Luke Benstead
bccd1aa788
Start refactoring the submission process
2018-08-20 21:19:12 +01:00
Luke Benstead
80c65d4aff
Remove conditional header sending, it's slightly slower
2018-08-20 20:34:11 +01:00
Luke Benstead
da97483eee
Switch to using 4-byte colours internally rather than floats
...
These are stored in BGRA format so they can be directly cast to a uint32_t to get the
correct format for the argb param in pvr_vertex_t (yay endianess)
This results in a performance improvement as it reduces the data requirements.
2018-08-20 09:28:30 +01:00
Luke Benstead
25e4518501
Performance optimisations
2018-08-19 21:10:42 +01:00
Luke Benstead
348e09b4aa
Further optimisations
2018-08-17 21:40:27 +01:00
Luke Benstead
ba66608a96
Add a basic profiler and optimise some code
2018-08-16 17:51:15 +01:00
Luke Benstead
021237f258
Fix a number of issues with texture loading
2018-08-14 09:49:31 +01:00
Luke Benstead
6942e597f4
Untested multitexture implementation
2018-08-04 21:00:26 +01:00
Luke Benstead
0bf023b8df
Fix a bug where headers weren't sent to a list
2018-08-02 19:56:50 +01:00
Luke Benstead
9371a8164f
Don't send headers unnecessarily
2018-08-01 20:41:59 +01:00