Commit Graph

11957 Commits

Author SHA1 Message Date
rdb 8a48c3b711 pgraph: Remove recursive lock grab in `Light.set_color()`
Harmless, but unnecessary
2022-11-21 18:26:19 +01:00
rdb fcfa1d2c99 gobj: Fix `ShaderBuffer.prepare()` not actually doing anything 2022-11-21 18:25:46 +01:00
rdb 7505112f1d shader: Fix compiler warning 2022-11-19 13:05:27 +01:00
rdb 76b9df0e53 tform: Change `MouseWatcher::get_mouse()` to return copy of LPoint2
Instead of a reference, which is very unintuitive and a common stumbling block for comparisons
2022-11-14 13:13:50 +01:00
rdb 592f2b7d6e Merge branch 'release/1.10.x' 2022-11-14 12:47:28 +01:00
rdb e92d993cea glgsg: Fix failure to unset divisor after rendering w/ instancing
This would normally be done by `disable_shader_vertex_arrays()` but it apparently isn't called between shader changes
2022-11-14 10:25:34 +01:00
rdb d801e00c0f CMake: don't re-export symbols from libharfbuzz.a
To match 84a69e1689 (fix for #1391)
2022-11-13 12:10:43 +01:00
rdb e961ea99ac Merge branch 'release/1.10.x' 2022-11-13 12:10:38 +01:00
rdb fe94e43bc4 pgraph: Fix issues with flattening TexMatrixAttrib
If multiple texture stages reference the same texcoord set, Panda wouldn't flatten the tex matrices even if they were the exact same

Fixes #1392
2022-11-13 11:11:32 +01:00
rdb 0220a43ce0 shader: Fix support for `#pragma include <example.glsl>` in GLSL 2022-11-09 17:20:11 +01:00
rdb 63017864ab pgraph: Support any number of attribs in `RenderState::make()` in Python 2022-11-07 18:17:48 +01:00
rdb 68111b2c42 Merge branch 'release/1.10.x' 2022-11-07 18:05:03 +01:00
rdb 8965741fcf tinydisplay: Don't reimplement process_events from base class
Reduces code duplication, makes it possible to inherit bug fixes from the base class, and also handles resizes more efficiently now (only when this would actually require a framebuffer reallocation).
2022-11-07 12:56:56 +01:00
rdb 0a827cf65c x11display: Time out waiting for ConfigureNotify event
Fixes #1087
2022-11-07 12:56:03 +01:00
rdb 70e86c46ed audio: Code formatting fixes in nullAudioManager.cxx
[skip ci]
2022-11-06 11:22:10 +01:00
rdb 502607e450 pgraph: Make CullTraverserData.view_frustum settable from Python
Perhaps useful for in cull callbacks
2022-11-06 11:19:56 +01:00
rdb 9d73c9b786 pgraph: Fix a missed `std::move` opportunity in ScissorEffect 2022-11-06 11:19:04 +01:00
rdb 2ec147f3b0 audio: Add positional property getter to AudioSound
Fixes #1257
Closes #1282

Co-authored-by: morganmliang <morganmliang@users.noreply.github.com>
2022-11-06 11:16:29 +01:00
rdb fea66ea087 pgraph: Fix rare case of assertion in cull with ScissorEffect
Fixes #1344
2022-11-06 11:13:42 +01:00
rdb 523e1bcbb8 glgsg: Fix regression defining null mipmap levels of cube map
Fixes #1189
2022-11-05 15:52:27 +01:00
rdb b8c53be8fd text: Add missing fields to TextNode::CData copy constructor 2022-11-05 14:55:56 +01:00
rdb 91191a9d75 pgraph: Fix weird comment formatting in renderAttrib.h 2022-11-03 13:49:08 +01:00
rdb a1105f0f96 dxml: Remove TinyXML bindings
This isn't used anywhere in the Panda source anymore, and is considered out-of-scope for Panda.  Python users can use the XML parsing library that's shipped with the Python source (or any other one on PyPI), and C++ users can just pull TinyXML into their projects directly.

If there really is a strong call to bring this back, I'd rather do it as an external package.

Closes #1379
2022-11-03 13:45:22 +01:00
rdb dba65d8bd4 gobj: Remove TextureStage::write() overload, use default arg instead
This was only an overload in 1.10 so that it wouldn't break the ABI
2022-11-03 13:45:22 +01:00
rdb e75aae62f0 Merge branch 'release/1.10.x' 2022-11-03 13:45:05 +01:00
Bert Myroon 45ce3f348f
Correct documentation
See first paragraph of https://graphics.stanford.edu/courses/cs268-09-winter/notes/handout6.pdf
2022-11-02 18:39:45 -06:00
rdb a11f7c9c8d gobj: Add `TextureStage::write()` overload with `indent_level` param 2022-11-02 23:02:20 +01:00
rdb 316b0009ae Merge branch 'release/1.10.x' 2022-10-31 23:10:39 +01:00
rdb ae7084504b event: Fix crash when creating task from closure with extra data 2022-10-31 23:09:13 +01:00
rdb 4cf8187df7 cocoadisplay: Fix crash with threading-model on newer macOS versions
Updates the context on the main thread instead of the draw thread now. If render_frame happens to run while the context needs updating, it will skip the frame.

Fixes #1286
2022-10-29 20:51:05 +02:00
rdb 54e2ddfd1c gobj: Fix failure to async reload texture more than once
Fixes #1354
2022-10-28 13:16:07 +02:00
rdb 4bdac5afac glgsg: Save a buffer bind call by changing order of blitting MS FBOs 2022-10-25 16:51:53 +02:00
rdb 9768cbb6c2 Merge branch 'release/1.10.x' 2022-10-25 16:44:24 +02:00
rdb bdb0f0b56a pipeline: Don't use yield ASM intruction on ARM < 7 2022-10-25 16:35:28 +02:00
rdb fc8c07a949 pgraph: Remove unused vertices during premunge phase
Disable with premunge-remove-unused-vertices config var - let me know if causes issues for you, performance or otherwise, though!
2022-10-25 16:34:28 +02:00
rdb 4d5d7047af pgraph: Slight efficiency refactoring of `remove_unused_vertices()` 2022-10-25 16:34:28 +02:00
rdb f64dcbd3df bullet: Clean up BulletContact/BulletManifoldPoint reference handling a bit
Still looks kinda sketchy though

Related to #1192
2022-10-25 16:34:28 +02:00
rdb 4d2a45f124 glgsg: Fix multisample FBOs with MRT blitting aux target into color target 2022-10-25 16:25:50 +02:00
rdb 1a72311243 bullet: Fix LMatrix3<>btMatrix3x3 conversion functions 2022-10-25 12:10:44 +02:00
rdb 693b4d3fb3 bullet: Fix `BulletAllHitsRayResult::empty()` compiler warning 2022-10-25 12:08:50 +02:00
rdb ef9c9fa20e bullet: Fix `BulletWheel::empty()` referencing local objects 2022-10-25 12:08:06 +02:00
rdb cc24b5373d pgraph: Fix `PandaNode::_nested_vertices` not updating properly
The problem was that `PandaNode::update_cached()` queries the node's `_internal_vertices` *before* calling `get_internal_bounds()` (which is what actually calculates it).
2022-10-25 11:35:29 +02:00
rdb bf65624298 dtoolbase: Make MemoryHook constant-initialized
init_memory_hook() is no longer required, eliminating static initialization order issues

This required moving the DeletedBufferChain map elsewhere, which now also has a const-initialized array for relatively small allocations.

Also, deletedChain.T has been renamed to deletedChain.I

Fixes #539
2022-10-24 13:26:03 +02:00
rdb 6f9897fe49 pgraph: Remove deprecated `PandaNode::set_bound()` method
It's been deprecated with warning for so long, with easy replacement
2022-10-24 13:25:41 +02:00
rdb 14f08361ce Merge branch 'release/1.10.x' 2022-10-24 13:24:03 +02:00
rdb e3ec6f7947 collide: Reimplement respect-prev-transform test for capsule-into-poly
Taken from 6e168c2bc4 (which was written for the old test that was replaced)
2022-10-24 13:21:19 +02:00
rdb b018d65da9 gobj: Fix tex not being cleared initially with gl-immutable-texture-storage
Regression as of 494631ac54 and bfe595f4dc (#1168)
2022-10-24 13:21:19 +02:00
rdb accd130c83 display: Fix RTT attachment modified flag not propagating through pipeline
Fixes #1364 (the other half)
2022-10-24 13:17:42 +02:00
rdb c799146cc9 glgsg: Fix stencil renderbuffer not being unbound when binding depth tex
Fixes part of #1364
2022-10-24 13:17:42 +02:00
rdb d4b8bb63ba pgraph: Proper deprecated marking for `PandaNode::set_bound()`
[skip ci]
2022-10-24 01:42:03 +02:00
rdb ee1db0630a pipeline: _mm_pause alternative on non-x86 Windows 2022-10-23 14:21:39 +02:00
rdb a44d26bfbf pgraph: Allow moving a NodePath into a WorkingNodePath efficiently 2022-10-22 17:04:00 +02:00
rdb 4d2a13537a pgraph: Mark `RenderState::unref()` as final
This will allow the compiler to devirtualize these calls
2022-10-22 16:53:39 +02:00
rdb f0446a6e9c Merge remote-tracking branch 'origin/release/1.10.x' 2022-10-22 16:51:57 +02:00
rdb 6fe25d3edc shader: Fix attr_fogcolor not picking up inter-frame changes
Fixes shader generator not responding to fog color changes
2022-10-22 16:03:52 +02:00
rdb d0b7574384 pgraph: Add missing `PandaNodePipelineReader::get_into_collide_mask()` 2022-10-22 15:49:40 +02:00
rdb 8bed85740f pgraph: Fix race condition when destructing/constructing NodePaths
Fixes #1366
2022-10-22 15:48:23 +02:00
Disyer c28bd047b3 audio: Add support for setting the loop start time of sounds
Closes #1347
2022-10-22 10:27:57 +02:00
rdb fe9cda9614 collide: Remove duplicate capsule-into-poly test 2022-10-20 21:43:10 +02:00
rdb fe7635d6e7 wgldisplay: Mark a method as `static` 2022-10-20 21:02:17 +02:00
rdb 67fc72bdaf general: Add constness to some methods where it is missing 2022-10-20 21:01:58 +02:00
rdb cee1de7338 general: Get rid of some coerce constructors where they make no sense 2022-10-20 21:00:05 +02:00
rdb 61ff260ee3 Merge branch 'release/1.10.x' 2022-10-20 20:59:45 +02:00
rdb 9efdf9919c collide: Implement capsule-into-polygon intersection test
There is one edge case (literally) where the reported interior point isn't deep enough, which is when the capsule hits the edge of a polygon at a steep angle, but it will still push it out eventually, so whatever.

Fixes #1369
2022-10-20 17:14:54 +02:00
rdb 0b7c694f10 linmath: Make mat.rows[n] and mat.cols[n] assignable to 2022-10-19 16:04:57 +02:00
rdb 0c03dfca05 egg: Some comment reformatting
[skip ci]
2022-10-19 16:04:15 +02:00
rdb a8eef28708 glgsg: Fix error when downloading luminance8 texture 2022-10-19 12:20:06 +02:00
rdb bb6976d558 pstats: Third significant update to PStats server UI, including:
* Windows stay open after client disconnects, for further inspection
* Ability to save session results to a file, and reopening those files
* Ability to save the current graph window layout for new sessions
* Ability to change colors (by right-clicking on bar)
* SI prefixes for Hz units (kHz, MHz, etc.)
* Ability to export session to Chrome Tracing JSON format
* "Close All Graphs" menu option
* Graphs now properly show data when opened while Pause is on
* Some fixes for weird graph window minimize behavior on Windows
2022-10-05 18:58:36 +02:00
rdb d6ebd62034 express: Add peek_int16 and peek_uint16 to DatagramIterator 2022-10-04 15:46:53 +02:00
rdb 27e54ffd75 Merge branch 'release/1.10.x' 2022-10-03 18:38:47 +02:00
DJs3000 f6fac95a78 Added e2k support (MCST Elbrus 2000) (#1367)
Closes #1367
2022-10-03 18:29:41 +02:00
rdb 6ad68d95cb device: Fix missing init_type for InputDeviceNode 2022-09-28 06:32:46 +02:00
rdb 79bd743957 Merge branch 'release/1.10.x' 2022-09-02 23:14:15 +02:00
rdb 48b0819cda rocket: Don't try to build Boost binding code for Python 3
libRocket doesn't support Python 3 anyway, and it has an error compiling with Python 3.11

[skip ci]
2022-09-01 19:41:37 +02:00
LD 12ae2973ae cocoadisplay: Disable the event suppression interval when moving the position of the mouse pointer 2022-09-01 09:07:16 +02:00
LD 102da5bc35 cocoadisplay: Don't use position delta for confined mouse mode as it lead to invalid estimation of the pointer position 2022-09-01 09:07:16 +02:00
LD 69bf5fa626 cocoadisplay: Remove overzealous coordinates transform performed on mouse position 2022-09-01 09:07:16 +02:00
LD 105f9abbfa cocoadisplay: Trigger handle_move_event() when a resize event is received to also update the origin of the window if needed 2022-09-01 09:07:16 +02:00
rdb 88ba7badd4 collide: Fix false negative when sphere is fully inside box
Fixes #1335
2022-08-31 16:23:15 +02:00
rdb d239f48a43 Merge branch 'release/1.10.x' 2022-08-31 12:51:46 +02:00
Disyer d7c602d203 ffmpeg: Resolve segmentation fault when statically linking ffmpeg
Closes #1340
2022-08-31 11:56:10 +02:00
rdb 899cbb9fff shadow: Add shadow-cube-map-filter setting, disabled by default
Enabling this will enable the `FT_shadow` filter for cube maps, which doesn't work with Cg shaders (incl. shader generator) but does with custom GLSL shaders

This will be enabled by default once the shaderpipeline branch is merged

Fixes #1332
2022-08-31 11:41:48 +02:00
Derzsi Dániel d79709f004
express: Add support for bytes multifile encryption passwords (#1334) 2022-07-20 22:50:06 +02:00
pmp-p 2208cc8bff pipeline: support android no thread build
Closes #1323
2022-06-29 19:11:00 +02:00
rdb 20334cce05 Merge branch 'release/1.10.x' 2022-06-29 19:09:59 +02:00
Stephen A. Imhoff 33691d72ec bullet: Fix assertion when reconstructing BulletConvexHullShape from bam
Fixes #1251
Closes #1252
2022-06-29 17:06:19 +02:00
rdb 3fc579c7d4 tinydisplay: Implement resizeability of offscreen buffers
Fixes #1322
2022-06-29 17:03:44 +02:00
rdb 5493a0d5fc glgsg: Fix PStats GPU timing not working with newer NVIDIA drivers
Fixes #1320
2022-06-29 16:42:33 +02:00
rdb c325eabb9d glgsg: Fix texture format selection when using `T_half_float` component type 2022-06-29 15:15:02 +02:00
rdb 9ab460c900 event: Fix memory leak in debug check of `task.set_owner(...)`
Fixes #1328
2022-06-29 15:13:57 +02:00
rdb 36e34294cf display: Update docstring for `WindowProperties::set_mouse_mode()`
[skip ci]

Fixes #1307
2022-05-19 10:00:37 +02:00
rdb 29c25a541c egl: Add egl-device-index config var for selecting EGL device
Fixes #1306
2022-05-17 11:52:19 +02:00
rdb b5d615b223 mathutil: Fix broken docstrings 2022-05-17 10:10:45 +02:00
rdb 671b16eb41 express: Fix vestigial reference to WIN32_VC macro 2022-05-10 16:21:40 +02:00
rdb ecf4d19e83 Merge branch 'release/1.10.x' 2022-05-10 16:12:36 +02:00
rdb 42a19860d5 Fix errors when compiling headers with MinGW 2022-05-10 15:58:33 +02:00
rdb fbea0056f5 general: Allow compiling Panda headers on Windows without NOMINMAX 2022-05-10 15:58:33 +02:00
rdb 0538106d52 glgsg: Fix half float color buffers with GLES 3 / WebGL 2
Part of fix for #1296
2022-05-10 15:58:32 +02:00
rdb 7b5ec481f3 Merge branch 'release/1.10.x' 2022-05-05 10:44:51 +02:00
rdb d2fc682fd7 glgsg: Support floating-point FBOs in OpenGL ES 2+
See issue #1296
2022-05-05 10:41:01 +02:00