Commit Graph

11341 Commits

Author SHA1 Message Date
rdb a5ae292c3e Merge branch 'release/1.10.x' 2020-12-18 12:56:31 +01:00
rdb 6f35cb0235 device: Silently ignore invalid evdev keycodes generated by some drivers
Fixes #1066
2020-12-15 12:33:22 +01:00
rdb fa8c8e71b5 gobj: Assert instead of crash if primitive references out-of-bounds vert 2020-12-14 16:54:20 +01:00
rdb 79714392cb gobj: Enable slightly more efficient GeomVertexReader/Writer ctor
This allows moving an existing PT(GeomVertexData) into the object, preventing an extra refcount increase.
2020-12-14 11:16:25 +01:00
rdb 902ada10b8 gobj: Slight optimization for GeomTristrips::append_unused_vertices() 2020-12-14 11:11:46 +01:00
rdb 454179a276 collide: Fix typo in STDFLOAT_DOUBLE case 2020-12-14 11:00:49 +01:00
rdb a11e21e4f4 audio: Fix sound resuming after reactivation if stop() was called while inactive
Backport of fix for #559
2020-12-12 19:50:48 +01:00
rdb e5eb5f8ed2 audio: Fix stop() not working for looped sound while sound is inactive
Fixes #559

Also fixes #1031 for FMOD
2020-12-12 18:45:45 +01:00
rdb 9f09857397 collide: Error checking for CollisionPolygon::setup/verify_points() 2020-12-12 17:28:41 +01:00
rdb eaf509a226 pgraph: Make PandaNode::r_copy_subgraph no longer virtual (unused) 2020-12-12 17:28:21 +01:00
rdb a1b2d5b8dc Make use of new function call methods in Python 3.9 2020-12-12 17:28:21 +01:00
rdb ab5730831c audio: Add some properties to AudioSound 2020-12-12 17:28:21 +01:00
rdb 2b29c757d9 pgraph: Optimization for GeomNode::add_for_draw() 2020-12-12 17:28:21 +01:00
rdb 251d73a47b ShaderGenerator: very slight optimization setting ShaderAttrib flags 2020-12-12 14:15:27 +01:00
rdb ac4faf3d74 text: Make TextNode pipeline-cycled
Fixes #1070

Note that text property changes are not pipeline-cycled at the moment.
2020-12-12 14:05:48 +01:00
rdb 54a4a6abfc Merge branch 'release/1.10.x' 2020-12-12 14:02:04 +01:00
rdb 761c54f63d pgui: Workaround for DirectEntry flickering issues w/ pipelining
See #1070.  This is a temporary solution (one which isn't complete- it doesn't properly handle state changes).
2020-12-12 13:57:49 +01:00
Daniel 4f63ef635d panda: Remove PyEval_InitThreads calls when compiling against Python 3.9+
Cherry-pick from #1053
2020-12-12 00:16:58 +01:00
rdb c8a35641c1 pgraphnodes: Remove unused variable 2020-12-10 17:37:05 +01:00
rdb ed397b3ab8 Merge branch 'release/1.10.x' 2020-12-09 17:59:37 +01:00
rdb bf59e880c6 bullet: Fix compilation error with Bullet 2.90+ 2020-12-09 16:25:29 +01:00
rdb 8e2c0dff4a pgraph: Hack fix for copying model with LightAttrib on root
When a LightAttrib is set on the root of a model and the light is contained within that model, creating a copy (like the one Loader makes automatically) causes the LightAttrib to still point to the original light, not to the newly copied light.

This works around it only for the case when the LightAttrib is set on the root, and only for the case of NodePath::copy_to() (it turns out there are edge cases when doing it in PandaNode::copy_subgraph() that would be hard to explain).

See Moguri/blend2bam#44
2020-12-09 15:51:36 +01:00
rdb 9525ddbfef pgraph: LightAttrib::get_on_light(n) should call check_sorted() 2020-12-09 15:48:10 +01:00
rdb 615502aef6 pgraphnodes: Support hardware instancing for LODNode
LODNode will now correctly calculate LOD for individual instances.

It turns out implementing it for FadeLODNode is hard (wrt. tracking state for individual instances) so I have not bothered with supporting it - FadeLODNode instead calculates a single switch level for all instances based on the centroid of the visible instances.
2020-11-26 16:47:35 +01:00
rdb e13756f43e pgraph: Support hardware instancing in BillboardEffect and CompassEffect 2020-11-26 16:47:11 +01:00
Daniel 54cb519dc9 panda: Remove PyEval_InitThreads calls when compiling against Python 3.9+
Closes #1053
2020-11-23 10:56:09 +01:00
rdb 01b2f1f759 gobj: Fix typo in docstring
[skip ci]
2020-11-23 10:54:03 +01:00
rdb 92e2c24958 Experimental InstancedNode class for hardware instancing 2020-11-22 22:01:13 +01:00
Daniel ac6a1a7874 collide: Expose CollisionPolygon's setup_points and verify_points to Python
Closes #1035
2020-11-22 22:01:07 +01:00
rdb 3d5f0b7fe1 gobj: Add methods for adding/removing GeomVertexData arrays 2020-11-22 15:37:38 +01:00
rdb 51a3a2b4a1 express: Fix VirtualFileMountZip not having init_type() called 2020-11-22 15:22:47 +01:00
rdb 8486d286b7 Merge branch 'release/1.10.x' 2020-11-22 15:19:51 +01:00
rdb 61a089ad59 ShaderGenerator: don't output unused attr_ambient input variable 2020-11-22 14:23:46 +01:00
rdb b12fcec099 glgsg: Fix handling of sized rgba formats in OpenGL ES 2020-11-22 14:21:34 +01:00
rdb d1e8554fde glgsg: Fix error message if vtx_normal is declred as float4 in Cg 2020-11-21 14:19:52 +01:00
rdb d62146a317 Merge branch 'release/1.10.x' 2020-11-17 23:56:00 +01:00
rdb 93900a203e putil: Backport part of 9d8c523dfa
Fixes #886
2020-11-17 23:36:06 +01:00
rdb 3abd157315 gobj: Fix a bad assertion comparison 2020-11-17 21:05:08 +01:00
rdb 3a2048e44a glgsg: Fix skinning shader being unable to render unskinned models
Panda was adding a column with weights (0, 0, 0, 0), but these weights don't add up to 1 so no useful identity matrix can be produced.  Instead it's better to fall back to the OpenGL default, (0, 0, 0, 1).

I'm also defaulting the transform_index values to (0, 1, 2, 3) to support non-indexed skinning (although that's pretty esoteric, given that that only supports 4 transforms...)
2020-11-17 21:01:56 +01:00
rdb c53f461f3f gobj: Fix typo in MatrixLens API documentation
Fixes #1042
2020-11-17 11:59:36 +01:00
rdb 8c3fd5b406 collide: Release GIL while during CollisionTraverser traversal
This is necessary to prevent deadlocking on the GIL if some Python code is trying to write some geometry while the CollisionTraverser is trying to read it.

Fixes #1033
2020-11-02 12:18:22 +01:00
rdb e83657f70f pstatclient: Prevent crash when using uninitialized PStatCollector 2020-11-02 11:02:49 +01:00
Brian Lach 57c9fbd86e glgsg: fix identical states never short-circuiting set_state_and_transform
Closes #1012
2020-11-02 11:02:49 +01:00
Brian Lach eb367430f7
openal: Fix paused sounds not resuming from where they were paused (#1031) 2020-10-08 17:17:36 +02:00
rdb c788912070 Merge branch 'release/1.10.x' 2020-10-02 12:20:58 +02:00
rdb f77813836d express: Fix compile error on Windows 2020-10-02 00:23:08 +02:00
Brian Lach 62225e441d x11display: Remove incorrect INLINE marker on these methods
Closes #1026
2020-10-02 00:07:22 +02:00
rdb 442e855a61 express: Fix a compilation issue in certain configurations 2020-10-02 00:06:52 +02:00
rdb 6d228dfd2e express: Add ZipArchive class, support mounting zips to VFS 2020-10-01 23:58:27 +02:00
rdb 4b7e32e9b0 egldisplay: Fix bad use of X11 None symbol instead of nullptr 2020-09-16 23:39:13 +02:00