rdb
eae39b339c
collide: Fix CollisionNode owner crash (grab GIL when destructing)
2025-04-15 10:45:05 +02:00
WMOkiishi
5435579567
showbase: Annotate basic `Messenger` methods ( #1726 )
2025-04-06 10:10:50 +02:00
WMOkiishi
4b4fa03895
direct: Annotate functions called directly by top-level code ( #1727 )
2025-04-06 10:10:15 +02:00
rdb
6274b478aa
pstats: Better handle overlapping collectors in Timeline
...
Prevents staircase effect where overlapping bars will end up ever
increasing the number of rows
2025-02-27 15:11:16 +01:00
rdb
5a97488adf
gtk-stats: Support trackpad zoom/pan gestures in Timeline view
2025-02-27 15:10:53 +01:00
rdb
7c16720bb9
webgl: Improve canvas resizing behavior
...
Automatically resize canvas to the CSS size
2025-02-25 12:11:24 +01:00
rdb
85541de504
grutil: Add support for playing video via HTML video+WebGL
2025-02-24 22:45:48 +01:00
rdb
c960874d4e
downloader: Add url property to VirtualFileHTTP
2025-02-24 20:07:31 +01:00
rdb
ab57b3c72f
downloader: Fix HTTP downloads on latest emscripten
2025-02-24 20:06:28 +01:00
rdb
f4da124b50
pgraphnodes: Add setter for shadow buffer sort
2025-02-22 11:06:31 +01:00
WMOkiishi
8de98592ca
showbase: Annotate basic `Loader` methods ( #1723 )
2025-02-19 18:59:19 +01:00
rdb
a7f8c57681
display: Add per-shader PStats timer for compute dispatches
...
Also add a total work group counter
Fixes #1721
2025-02-05 10:12:52 +01:00
rdb
c729c75b29
display: Add queries for max work group count/size/invocations
...
Fixes #1713
2025-02-05 10:03:54 +01:00
rdb
fef27a7cb0
Update emscripten to 4.0.2, Python to 3.12.8, enable bulk memory
2025-02-03 18:09:00 +01:00
rdb
6452907b64
Improvements for env handling with node.js and emscripten
...
- Initializes the environment so that getenv et al works properly
- No longer calls JS functions at static init time; the JS preamble will
pass the right env vars to ExecutionEnvironment
- Sets the binary name to the path of the .js file
2025-02-03 18:06:30 +01:00
rdb
8a1159f4a7
makepanda: Only build pnmimagetypes with exceptions if using OpenEXR
2025-02-02 20:12:17 +01:00
rdb
79d6727077
Move MAIN_DIR initialization code from interrogate to panda3d
...
Using the new -init flag, see panda3d/interrogate#3
2025-02-02 20:11:32 +01:00
rdb
ea1cbe47ac
dist: Add missing hidden import for panda3d.core on enum
2025-02-02 20:07:10 +01:00
rdb
3f0f90d83d
makepanda: Don't try to call interrogate_module with -vv
2025-02-02 20:06:46 +01:00
WMOkiishi
b0e1e0c75a
showbase: Annotate callback methods
2025-02-02 09:28:25 +01:00
rdb
0404febf96
windisplay: Fix IME result not showing up without `ime-aware true`
2025-01-30 14:13:15 +01:00
rdb
e681c17215
glgsg: Use glClearTexImage even when tex has no storage
...
Just use glTexImage with null image to create the storage first, then
clear it, this prevents needlessly generating a filled RAM image on the
CPU
2025-01-30 11:58:25 +01:00
rdb
f188c8a028
tests: Use approx comparison for test_depth_bias
2025-01-30 11:38:17 +01:00
rdb
99b3888712
gobj: Fix Texture::clear_clear_color()
2025-01-30 11:38:00 +01:00
rdb
f6f391bd3d
glgsg: Don't override texture clear color for FBO attachments
...
This applies to FBOs without a clear set; the clear color set on the
texture should determine the initial color.
2025-01-30 11:36:23 +01:00
rdb
8114971c56
webgl: Improve handling of canvas focus
...
Can now forcibly focus to the canvas with a foreground request, and now
focuses automatically on window open (except if requested not to)
2025-01-29 17:05:21 +01:00
rdb
1281875cbc
linmath: Fix degenerate case in decompose_matrix
...
Regression in 583f7366db
2025-01-29 17:05:16 +01:00
rdb
1fa8e2b0fc
webgl: Don't use stringToUTF32 for keypress handling
2025-01-29 17:05:11 +01:00
rdb
287e456077
glgsg: Fix BGR swap regression for sync uploads
...
Was regression in 2a47826101
2025-01-29 17:05:00 +01:00
rdb
fa64a52fca
glgsg: Do not prefer depth-stencil ms renderbuffers on macOS
...
Fixes #1719
2025-01-29 11:12:07 +01:00
rdb
1234388de8
glgsg: Make multisample renderbuffer format match regular one
2025-01-29 11:11:47 +01:00
rdb
9c7e9e9805
glgsg: Add more debug prints for renderbuffer creation
2025-01-29 11:10:42 +01:00
rdb
97fcbc2e15
glgsg: Fix error message for unhandled external formats
2025-01-29 11:08:43 +01:00
rdb
3725a00fdc
glgsg: Fix typo
2025-01-28 10:40:43 +01:00
rdb
1a431b3894
glgsg: make async texture transfer threads configurable
2025-01-28 09:53:34 +01:00
rdb
55a3a0d2af
glgsg: async screenshot refactor, general mechanism for fences
2025-01-27 19:36:04 +01:00
rdb
2a47826101
glgsg: Big refactoring of texture uploading, add async upload support
2025-01-27 19:35:59 +01:00
rdb
2ea02ef0c8
putil: Add new primitives for async callbacks/futures
...
These are a lot lighter than AsyncFuture and safer to use in C++ due to the reliance on RAII. An async method can now take a CompletionToken, which will implicitly accept an arbitrary callable or an AsyncFuture pointer.
2025-01-27 15:28:11 +01:00
rdb
67723ca06a
display: Generalized method for running things on draw thread
...
This is more general and elegant than manually listing all operations in
a big enum
2025-01-27 14:01:51 +01:00
rdb
5b0cf9e053
glgsg: More efficient handling of texture memory barriers
...
New system uses counters instead of sets, just setting a counter for
each barrier on a texture to the same value as a counter on the GSG when
a barrier is pending, and incrementing the counter on the GSG whenever
that barrier is issued, is enough to track pending barriers since
barriers are global
2025-01-27 12:57:40 +01:00
rdb
a55860bf49
glgsg: Fix memory barrier for extract_shader_buffer_data
2025-01-27 12:54:53 +01:00
rdb
3833866801
display: Add method to synchronously download SSBO contents
2025-01-25 18:08:54 +01:00
rdb
7ba4fe365c
display: Add gsg.engine property
2025-01-25 18:08:29 +01:00
rdb
3082d28fe8
pstatclient: Fix out-of-order events with thread profiling
...
It could generate an end/start pair on a thread that is waiting due to other threads in that sync group submitting a PStats frame for the whole sync group, which would cause out-of-order events
2025-01-22 22:17:56 +01:00
rdb
da4e2cad9f
express: Use monotonic clock on POSIX (has nanosecond precision)
2025-01-22 22:16:36 +01:00
rdb
674fa4480b
task: Fix first frame on task chain missed by PStats
2025-01-22 22:14:01 +01:00
rdb
91f124e2f1
display: Allow setting a custom clock for a GraphicsEngine
...
This is essential for supporting multiple engines, otherwise both engines will try to tick the global clock in render_frame()
2025-01-21 12:16:09 +01:00
rdb
8c9ba6dc38
cocoa: Fix compilation error
2025-01-21 12:04:01 +01:00
rdb
f872a82422
display: Support sharing graphics context between GraphicsEngines
...
Automatically happens when creating a new window/buffer specifying a GSG that was created with a different engine.
2025-01-21 11:52:58 +01:00
rdb
8f4d0c8a66
gobj: Make BufferContextChain thread-safe
2025-01-21 11:37:29 +01:00