Commit Graph

26892 Commits

Author SHA1 Message Date
John Cote 0661574448
Merge remote-tracking branch 'upstream/master' 2026-01-30 20:16:19 -05:00
rdb 252c0a6f37 display: Make context current before dispatching compute shader 2026-01-29 21:09:19 +01:00
rdb 74360ccd78 tests: Add unit tests for color blending 2026-01-29 21:02:00 +01:00
rdb 87c8aa8c90 glgsg: Robustness and issue fixing around shader binding 2026-01-29 21:01:06 +01:00
rdb a4508065e2 tests: Use triangle instead of card for color buffer tests
This works around the fact that the tinydisplay rasterizer can have a 1-pixel
overlap at triangle boundaries
2026-01-29 19:33:34 +01:00
rdb dbe05e079b tinydisplay: Reimplement color blending, supporting more options
Separate blend modes/operands for rgb/alpha are now supported, and min/max blend
modes are supported too.  To avoid code bloat, the operands are now no
longer implemented as separate permutations in the table, but using a
small table and a mask.  I haven't tested performance but it shouldn't
be much worse (and this is the "general" fallback case anyway, which
should prioritize correctness) and the number of functions is significantly reduced.

A bug was fixed regarding sRGB behavior when only the blue channel is
enabled.

M_subtract and M_inv_subtract are still left unimplemented.
2026-01-29 19:22:46 +01:00
rdb b7ffef7338 pgraph: Fix ColorBlendAttrib alpha settings not hashed/compared 2026-01-29 19:20:51 +01:00
rdb 712d67414f tinydisplay: Convert Python scripts to Python 3 2026-01-28 22:54:23 +01:00
rdb 08454e3686 tests: Fix shadowViewMatrix components for light source unit test 2026-01-28 22:05:45 +01:00
rdb 95875d9844 tests: Skip GLSL compilation tests when GLSL not supported 2026-01-28 22:05:30 +01:00
rdb ce2332743a tests: Fix proper argument for pytest cache disabling on Android 2026-01-28 17:57:59 +01:00
rdb 86423cba45 workflow: Update to Ubuntu 24.04 2026-01-28 16:53:09 +01:00
rdb 68c807bd5d glgsg: Don't query supported Cg profiles when running under EGL
Cg tries to dlopen libGL and load and call GLX functions from there,
which is not good
2026-01-28 16:51:33 +01:00
rdb f139899e58 tests: Fix depth buffer tests not being run with tinydisplay 2026-01-28 16:47:24 +01:00
rdb df7aa557ec tinydisplay: Support DepthBiasAttrib (const offset only) 2026-01-28 16:47:05 +01:00
rdb c0bf7e075c leveleditor: Fix use of removed imp module (untested) 2026-01-28 16:12:45 +01:00
rdb c1a2458f8e tinydisplay: Fix assorted depth-related issues:
- M_always depth test wasn't implemented but M_none was
- framebuffer_copy_to_ram didn't work for the depth buffer
- the clear depth value was being ignored
- depth range on DisplayRegion wasn't being honored
2026-01-28 16:10:24 +01:00
rdb 300090e457 glgsg: Disable Cg support when using EGL instead of GLX
Cg is hard-wired to use GLX instead of EGL, so without hacky
monkey-patching it is not possible to use it under EGL
2026-01-28 16:10:00 +01:00
John Cote f502426644
nametag: Fix issue with chat balloon text 2026-01-27 21:48:56 -05:00
John Cote e3701c2cf4
distributed: Fix build errors 2026-01-27 21:33:10 -05:00
John Cote 935c9cd80a
Merge remote-tracking branch 'upstream/master' 2026-01-27 20:58:16 -05:00
rdb f2c680ca29 linmath: Fix wrong type printed in LMatrix3 repr
[skip ci]
2026-01-27 16:10:17 +01:00
rdb 8bbc1a1515 loader: Restore compatibility with Python 3.8 2026-01-26 14:29:16 +01:00
rdb 99bbc14973 loader: Fix incomplete loadModel/loadSound type annotations 2026-01-26 11:11:00 +01:00
rdb d84b984e22 showbase: Fix exception when calling Ctrl+C at the wrong moment 2026-01-26 11:10:27 +01:00
rdb 8cd3812ecb glgsg: Track uploaded byte count in PStats for SSBO updates 2026-01-26 11:09:31 +01:00
rdb 1c8a5cfb48 audio: AudioLoadRequest should take Filename or MovieAudio 2026-01-26 11:08:56 +01:00
rdb 051268de51 workflow: Fix very minor formatting issue in coverage summary
[skip ci]
2026-01-24 22:55:03 +01:00
rdb 4f5a374c85 workflow: Show coverage result in GitHub step summary 2026-01-24 21:48:01 +01:00
rdb b9af71db7f workflow: Enable address sanitizer for various CMake builds 2026-01-24 21:48:01 +01:00
rdb b963450b45 CMake: Add ENABLE_ASAN options to build with address sanitizer 2026-01-24 21:48:01 +01:00
rdb ebb556a866 CMake: build unit test runner 2026-01-24 20:28:07 +01:00
rdb c2760c88c6 putil: Fix out-of-bounds read in SparseArray uncovered by ASan 2026-01-24 20:28:07 +01:00
rdb 0210384615 dtoolbase: Fix static destructor ordering issue 2026-01-24 20:28:07 +01:00
rdb 48215debb4 tests: When running in GitHub Actions, write GFM tests summary 2026-01-24 20:28:05 +01:00
rdb 4b98910789 Use static storage instead of heap for forever-objects (squelches ASan) 2026-01-24 13:24:11 +01:00
rdb 49955343be grutil: Add muted/volume properties to HTMLVideoTexture 2026-01-24 13:24:11 +01:00
rdb 626e419972 x11: Fix various very minor memory leaks 2026-01-24 13:24:11 +01:00
rdb 9edbdbf6c9 glgsg: Fix mipmap level depth when uploading 3D textures 2026-01-24 10:17:10 +01:00
rdb 004a3c8572 Update mentions of LambdaTest in sponsors list
[skip ci]
2026-01-20 18:55:49 +01:00
rdb 9afb3140c8 glgsg: Don't assume buffer clear is necessarily supported 2026-01-20 18:54:51 +01:00
rdb 71b83d8f4f makepanda: Add /usr/local/lib64 to searched library paths
[skip ci]
2026-01-20 11:42:36 +01:00
Wizzerinus | Alex K. 2587247868
audio: Ability to read comments/metadata from sound files (#1656) 2026-01-16 21:16:01 +01:00
rdb f025ba5da8 glgsg: Fix compilation error, remove redundant parameter 2026-01-15 10:51:45 +01:00
rdb 576d124b5e glgsg: Support SSBO clear, assorted fixes 2026-01-15 10:29:21 +01:00
rdb 5c1a957420 gles2gsg: Add some missing OpenGL ES 3 constants 2026-01-15 10:29:21 +01:00
rdb 0b3bdae8e8 glgsg: Expose native IDs for other kinds of resources than textures
Fixes #1468
2026-01-15 10:27:23 +01:00
rdb d94b2dc5af glgsg: Fix INLINE keyword on GLSamplerContext constructor 2026-01-15 09:44:25 +01:00
Yaksh Bariya 586b92a4ab
makepanda: fix for python >= 3.13 on android
android is now a supported platform Python since Python 3.13.
Earlier logic for figuring out android is still kept to preserve
backwards compatibility with Python versions <= 3.12.

Also have added a comment where we are monkeypatching sys.platform to
"android" to remove it once minimum python requirement is removed

Found initially during Python bump for Termux (https://github.com/termux/termux-packages/pull/27739)

Also seems like Pyright too hasn't caught up with this yet. So it needs
to be made aware as well
2026-01-12 07:08:57 +05:30
rdb 5a82ac3208 Use PyObject_Vectorcall for calls to Python for better efficiency
No longer requires creating temporary tuple to hold the args.
Introduced in Python 3.8.
2026-01-07 20:10:42 +01:00