Commit Graph

12122 Commits

Author SHA1 Message Date
rdb 7c9c4cd435 gobj: devirtualize calls to GeomPatches::get_num_vertices_per_primitive() 2024-10-17 16:18:12 +02:00
rdb 777ab6746c display: Fix double-precision build
Fixes #1688
2024-10-14 12:05:57 +02:00
rdb bd4dc8a379 display: Fix ability to copy wdxGraphicsBuffer to RAM on DX9 2024-10-10 19:57:42 +02:00
rdb 30418158e8 dxgsg9: Allow getting alpha bits in buffer when host has no alpha 2024-10-10 19:57:14 +02:00
rdb a59c857359 dxgsg9: Replace old A2W10V10U10 format with A32B32G32R32F 2024-10-10 19:56:41 +02:00
rdb eac1cb57c4 dxgsg9: Add missing formats to DXTextureContext9::get_bits_per_pixel 2024-10-10 19:49:15 +02:00
rdb 05cf72e22f dxgsg9: Fix texture clear color not working for 3D textures 2024-10-10 19:48:50 +02:00
rdb 7557826c8b Merge branch 'release/1.10.x' 2024-10-10 19:48:37 +02:00
rdb cd2e3dfde9 dxgsg9: Fix crash on window event after `close_window()` 2024-10-10 01:08:54 +02:00
rdb beb49b3cd3 dxgsg9: Fix some format handling, support for r32f and rgba32f textures 2024-10-03 13:43:22 +02:00
rdb 0ea0d5fa2b dxgsg9: Fix crash when copying inverted framebuffer to texture RAM 2024-10-03 13:36:02 +02:00
rdb 51876c6116 dxgsg9: Fix crash with buffer when there is no depth buffer 2024-10-03 13:36:02 +02:00
rdb 37799dc3ce pipeline: Try to fix Windows compilation issue 2024-09-29 23:02:35 +02:00
rdb 89fcfa1fe9 Merge branch 'release/1.10.x' 2024-09-26 10:23:50 +02:00
rdb c05a63f4ae pipeline: Fix compile error without pipelining enabled
Closes #1684

[skip ci]
2024-09-21 10:55:05 +02:00
rdb beff684af3 Further thread safety changes for Python 3.13 free threading
See #1683
2024-09-19 20:43:06 +02:00
rdb 4b2fa45578 Make use of PyImport_GetModule function 2024-09-19 20:42:31 +02:00
rdb 5106fc879f Changes for compatibility with Python 3.13
Includes some preliminary work to make free-threading safe, see also #1683
2024-09-19 16:01:10 +02:00
rdb b32459ffa1 Merge branch 'release/1.10.x' 2024-09-19 15:51:25 +02:00
rdb cdafd81764 Fix compilation issues with Python 3.13 2024-09-19 15:47:50 +02:00
rdb d7ede81aa3 cocoa: Fix compile error with MacOSX 10.6 SDK 2024-09-19 11:15:44 +02:00
rdb a4faa802af cocoa: Remove autorelease pool in process_events()
We now have one around the entire frame, in graphicsEngine.cxx
2024-09-19 00:25:51 +02:00
rdb 442558bb2d Merge branch 'release/1.10.x' 2024-09-19 00:25:16 +02:00
rdb 9f493f588d display: Fix significant memory leak on newer macOS versions
It seems the Metal-based OpenGL driver uses autorelease a lot for resources that last only a single frame, so we need to create an autorelease pool around the frame lest the resources will only get cleaned up at application exit.
2024-09-19 00:23:06 +02:00
rdb 756fe2e72b cocoa: Fix a very minor memory leak in DisplayInformation 2024-09-18 23:51:09 +02:00
rdb b337f2a3da pipeline: Use a high-precision timer for Thread::sleep() on Win32
This is mainly used for clock mode M_limited, which is currently suffering from terrible imprecision on Windows.  This fixes that, making it possible to lower the value of sleep-precision down to 1ms.
2024-09-16 21:43:42 +02:00
rdb bb5e4454fe putil: Add debug for oversleeping/undersleeping with M_limited clock 2024-09-16 21:41:52 +02:00
John C. Allwein e3f580763a
pview: add shift+r keyboard bind to reload all textures (#1678) 2024-09-16 16:02:45 +02:00
rdb f5401b19fa Merge branch 'release/1.10.x' 2024-09-16 13:54:22 +02:00
rdb e2fb2d1241 cocoa: Prevent eating keyUp when switching to FS from macOS' FS 2024-09-16 13:39:16 +02:00
rdb c7bcec1ff5 cocoa: Exit macOS' fullscreen mode when switching fullscreen
Prevents black screen when switching to fullscreen
2024-09-16 13:39:16 +02:00
rdb 82b9a1266c cocoa: Fix error when switching to FS while macOS' FS is active 2024-09-16 13:39:16 +02:00
John C. Allwein e7604cb163 event: fix result refcount leak when awaiting AsyncFuture
Raising the StopIteration exception left the underlying
result with an elevated refcount which prevented it from
being cleaned up.
2024-09-14 15:59:05 -06:00
John C. Allwein cfe3885c0e
event: use the persistent python wrapper when appending task object (#1681) 2024-09-14 20:25:08 +02:00
rdb fc394e4c59 glgsg: Pass in osg_FrameNumber input via ShaderMatSpec mechanism 2024-08-23 21:08:50 +02:00
rdb cd68287b6a shader: Get all aggregate shader inputs (eg. lights) in one go
This means that p3d_LightSource[n] will be fetched once off the LightAttrib, written to the matrix cache, and then indexed into by the various ShaderMatSpec. This should be significantly more efficient, but the main aim is to prepare for a new binding system in the new shader pipeline

User structs are still an exception as of now
2024-08-23 16:29:46 +02:00
rdb 99225dfaef shader: Unify ShaderPtrSpec and ShaderMatSpec mechanisms 2024-08-23 16:29:42 +02:00
rdb 99f4034701 shader: Don't store on ShaderMatSpec, use scratch matrix instead 2024-08-23 16:29:38 +02:00
rdb 2c5cebe7e0 display: Fix shader gen regression for more than 2 lights 2024-08-23 14:20:20 +02:00
rdb 76ffef38d1 display: Allow passing whole state into dispatch_compute()
This is mainly useful for unit testing
2024-08-23 12:34:57 +02:00
rdb babd3a070d display: Fix docstring formatting 2024-08-22 15:52:48 +02:00
rdb 9e87af9dd7 linmath: Fix compiler warning with gcc 14 2024-08-14 19:09:20 +02:00
rdb 8d1524b675 distort: Fix unprotected debug output 2024-08-14 19:09:08 +02:00
rdb 712300c9f1 Fix prebuilt bison cxx files includes to work with CMake build
Change makepanda to generate without the .yxx extension so that the include name is generated properly
2024-08-13 00:01:35 +02:00
rdb 4ca495d828 CMake: Add separate BUILD_TOOLS option to build binaries
This is separate from BUILD_PANDATOOL, which builds the pandatool tree
2024-08-12 16:39:20 +02:00
John C. Allwein 21b39da65d pythonTask: fix refcount leak of non-panda Future::done
A missing Py_DECREF on the future's "done" method
caused both the bound method and the underlying
self instance of the future to be leaked when
awaiting non-panda futures (such as _asyncio.Future).

This change includes a simple new test addition
to catch this in the future.
2024-08-08 21:51:03 -06:00
rdb 23124dac07 x11: Fix missing _net_wm_name field due to bad merge 2024-08-07 23:39:20 +02:00
rdb ad57762e9f Merge branch 'release/1.10.x' 2024-08-07 22:34:08 +02:00
rdb 8c8cbeea98 linmath: For repr, use as much precision as needed for roundtrip
Will use as few digits as is necessary to ensure that round-tripping the same number with pstrtod will result in the same vector.  This prevents eg. 3.3 formatting as 3.29999995 while still ensuring that two floats that are not equal (other than nan) are guaranteed to have a different string representation.

Uses a hacky pftoa function that can be abandoned as soon as we adopt C++17, which has to_chars that does what we need

Fixes #1671
2024-08-07 17:24:11 +02:00
rdb 122453811d glgsg: Fix clear of offscreen buffer if back buffers requested 2024-06-30 11:53:17 +02:00