Commit Graph

10659 Commits

Author SHA1 Message Date
rdb fa53e013cb gobj: add margin to float comparison in lens.project()
Fixes unit tests in double-precision build.
2019-04-02 21:27:08 +02:00
rdb e98fbc7633 Merge branch 'release/1.10.x' 2019-03-29 13:44:50 +01:00
rdb 3ea562d404 collide: handle degenerate case for into-sphere test more robustly
This case happens, for example, when colliding a capsule with identical begin and end points into a sphere.
2019-03-29 13:29:14 +01:00
rdb 63a764a61b display: fix missed cases in 364d5d82fe 2019-03-29 13:28:12 +01:00
rdb 364d5d82fe display: don't apply color-scale-via-lighting to shader inputs
This isn't working properly at the moment, since the state gets set for the *next* object, causing significant artifacts.  I wasn't entirely sure whether to restore the "proper" behavior or not, since applications may be relying on one or the other behavior, but enabling this feature for shaders is a minefield and it's a lot better to just tell people to use p3d_ColorScale instead.
2019-03-26 23:12:41 +01:00
rdb 9fd8870766 Merge branch 'release/1.10.x' 2019-03-21 12:44:24 +01:00
rdb b0a5cceafd glgsg: fix support for matrix arrays in vertex data 2019-03-21 12:35:53 +01:00
Sam Edwards c63562088b device: Fix missing include 2019-03-18 04:10:35 -06:00
rdb 03c53bb33b ShaderTerrainMesh: set a bounding volume around the whole terrain
This lets one use multiple ShaderTerrainMesh tiles effectively, with Panda automatically disabling ones that are certainly not in view.  It may be worth an attempt to call `set_bounds_type(BoundingVolume::BT_box)` or set `bounds-type best` in Config.prc to get a tighter volume.
2019-03-17 21:45:27 +01:00
rdb 9e1b40bbb7 Remove unused ThreadSafePointerTo class
It seems that this was created when regular PointerTo was not yet atomic, and never used or updated.
2019-03-17 20:26:59 +01:00
rdb 662f28813a Merge branch 'release/1.10.x' 2019-03-17 20:18:16 +01:00
rdb 4f94b3aa0e egg2pg: fix CollisionBox generation for transformed objects
Rather than xforming after the fact, which does not work properly for boxes, we need to apply the transform to the vertices around which the box is generated.

Fixes #506
2019-03-17 19:07:47 +01:00
rdb e486bbcb3f collide: fix printing CollisionBox 2019-03-17 19:06:45 +01:00
rdb 8194f53206 Merge branch 'release/1.10.x' 2019-03-17 00:20:43 +01:00
rdb 029d7363cd distort: fix use of cylindrical_k in oSphereLens.cxx 2019-03-17 00:17:11 +01:00
rdb ea10cf192e Merge remote-tracking branch 'origin/release/1.10.x' 2019-03-12 21:11:56 +01:00
Daniel fb0807d769 putil: add is_allocated convenience method to UniqueIdAllocator
Closes #580
2019-03-12 21:10:44 +01:00
rdb bafd523e2b mathutil: fix bad assert in BoundingBox::set_min_max 2019-03-12 15:36:47 +01:00
Sam Edwards 138e7f935f collide: Fix missing includes 2019-03-12 02:01:09 -06:00
rdb 8d1bdf0118 Merge branch 'release/1.10.x' 2019-03-10 20:49:52 +01:00
rdb 0e70997fbf x11display: fixes for multi-monitor and fullscreen support
- DisplayInformation now gives the list of display modes returned by XRRGetScreenResources if RandR 1.2 is supported, which is apparently more reliable than the previous XRRSizes/XRRRates approach.
- Switching fullscreen on X11 to the current resolution on the CRTC that the monitor is on will make the window cover the CRTC properly, rather than forcing the window to have an origin of (0, 0).
- Passing in the pipe's display width/height is commonly done to go fullscreen at native res, but this may not correspond to a real display resolution.  It now detects when this is done, and interprets this as "go fullscreen at the native resolution on the current CRTC".

Fixes #575
2019-03-10 19:33:13 +01:00
rdb 511b0e7af3 gobj: prevent GeomVertexReader/Writer.set_row with negative row 2019-03-10 19:23:05 +01:00
rdb a7d9baeeb8 Remove unused ProfileTimer class
It doesn't seem to be used by anything, but it does take up 64+ KiB of memory in every Panda process.
2019-03-10 19:20:43 +01:00
rdb 08c686ba18 windisplay: fix issues with runtime fullscreen switching 2019-03-08 11:14:56 +01:00
rdb 71b8bceb79 task: allow overriding methods of PythonTask 2019-03-04 22:58:50 +01:00
Q Misell 05eaf930b1 bullet: make suspension rest length of vehicle adjustable
Fixes #569
2019-03-04 17:01:38 +01:00
rdb cbb3c182a5 Merge branch 'release/1.10.x' 2019-03-04 16:57:52 +01:00
rdb 45778b9e9f device: use threaded message loop on Windows (see #562) 2019-03-04 16:20:52 +01:00
rdb 4e92b708ff Merge branch 'macosstuckwindowfix' of github.com:treamology/panda3d into release/1.10.x
Closes #536
Fixes #534
2019-03-04 12:23:53 +01:00
rdb 155b1c38ad bullet: properly expose bullet_contact_added_callback symbol
Fixes #571 (alongside 92993fe889)
2019-03-03 21:14:47 +01:00
rdb 92993fe889 bullet: fix assert when setting mass before shape (#571)
Requires compiling Bullet in debug mode to reproduce.
2019-03-03 21:13:36 +01:00
rdb 7f4491cb98 device: disable message loop in WinInputDeviceManager for now
This was a change in aadc62a96c but seems to cause other problems, see #562
2019-03-02 12:39:42 +01:00
rdb d11d4e0d85 display: don't render shadow cameras whose frusta are out of view
This is done by collecting bounding volumes for each camera in a scene, and then only rendering a shadow camera if at least one of those bounding volumes overlaps with the shadow camera bounding volume.

Closes #560
2019-02-19 21:59:04 +01:00
rdb 78425b245e pgraph: fix shadow buffer leak when light passed via shader input
This is an extension of the fix in 9a40febdb9, but that only applied when the light was passed to the shader via LightAttrib, and not via shader inputs.

ParamNodePath is not the ideal place to put this, but it's convenient (and probably more efficient than putting it into ShaderAttrib).
2019-02-19 21:53:31 +01:00
rdb 2574d85049 Merge branch 'release/1.10.x' 2019-02-19 21:38:08 +01:00
rdb 1f9b4690e6 pgraph: fix writing to SequenceNode frame_rate property 2019-02-19 21:29:21 +01:00
rdb 6a008ae724 x11display: fix threaded crash when using get_keyboard_map() 2019-02-19 21:21:22 +01:00
rdb 9d42e25539 pgraph: make ParamNodePath::get_value() return a copy
See #554.
2019-02-19 20:12:06 +01:00
rdb ba3a826bff gobj: fix crash reading unaligned float4 column in GeomVertexReader
Observed when calling flatten_strong() on model with vertex colors loaded via Assimp.
2019-02-17 13:02:56 +01:00
rdb 9bf37051ac collide: fix _collider_sort not copied in CollisionNode copy ctor
See #554
2019-02-17 10:56:02 +01:00
rdb 6d927aaa52 Merge tag 'v1.10.1' 2019-02-14 23:21:57 +01:00
rdb db8221a03d pgraph: remove pointless lock grab from RenderAttrib destructor 2019-02-14 23:19:51 +01:00
rdb 20f0a69c75 pipeline: use decimal representation for unique thread ID on FreeBSD
This matches the behaviour on Linux.
2019-02-14 22:40:46 +01:00
rdb f97ba9000b pipeline: don't use uninitialized value for main thread unique id
See #554
2019-02-14 22:39:56 +01:00
rdb ff2fbe60ef pipeline: revert change causing shutdown crash with DEBUG_THREADS
We actually need to leak this lock, because we need to call this at static destruction time, and we can't guarantee static destruction order.

This reverts commit afed80e83a.
2019-02-14 21:43:21 +01:00
Brian Lach 95f3e30d37 ShaderAttrib: add set_shader_inputs() for C++ users
Closes #521
2019-02-12 01:16:15 +01:00
rdb 80bb5c09fe Merge branch 'release/1.10.x' 2019-02-12 01:13:56 +01:00
rdb 18b7350400 egg: update prebuilt parser.cxx and parser.h 2019-02-12 00:31:13 +01:00
rdb 4d0970c072 pgraph: StencilAttrib.make() takes default write_mask argument 2019-02-11 23:48:00 +01:00
rdb 11b5f09819 general: replace remaining references to ConditionVarFull. 2019-02-11 16:23:16 +01:00