Commit Graph

10598 Commits

Author SHA1 Message Date
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 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 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 f741c9476f display: fix lighting being disabled when only AmbientLight is on 2019-02-10 16:19:45 +01:00
rdb 3875cc8259 device: add proper mapping for 8bitdo N30 Pro Controller on Linux 2019-02-07 22:28:04 +01:00
tc 96bb90b5e9 cocoa: guarantee 24bit depth when Config.prc has `depth-bits` set to `1`
Checks if the value of Config.prc for `depth-bits` is `1` and sets it
manually to 24.
This prevents getting a 16 bit depth buffer on macos
Intended to address #501

Closes #551
2019-02-07 22:26:54 +01:00
rdb 0ef9f9bef5 device: various button/axis mapping fixes in Windows raw impl
Now uses a table like on Linux with the various mappings.
2019-02-06 22:06:43 +01:00
rdb f8d7941fe8 device: fix a bad axis mapping on Linux 2019-02-06 22:03:44 +01:00
rdb 1b4035f29a device: move HID API definitions to separate header file 2019-02-06 21:56:47 +01:00
rdb aadc62a96c device: fix inability to detect devices with pipelining enabled
This is because the message window is being created in the main thread, but there is nothing processing messages in the main thread.
2019-02-06 21:51:06 +01:00
rdb 63d2992d5e egg: add ability to read <Tangent> with four components
This is not intended to be used just yet in 1.10, but already added in preparation for changes on master to support #546.  I'm just allowing Panda to parse the syntax ahead of time to reduce potential .egg incompatiblities.
2019-02-05 00:30:54 +01:00
rdb 2afd604c9d collide: implement capsule-into-invsphere and box-into-invsphere tests 2019-02-04 23:50:53 +01:00
rdb 22cac1cdf9 device: fix stack corruption crashes on 32-bit Windows 2019-01-31 18:23:29 +01:00
rdb 0ba1235d35 ShaderGenerator: print out generated shader in spam output mode 2019-01-31 00:05:23 +01:00
rdb 0e447b7429 ShaderGenerator: do shadow map calcs in fshader if out of varyings
If too many shadow-casting lights are active, too many TEXCOORD varyings will be used and a shader compilation error will be displayed.  Instead, Panda will now just do the calculation in the fragment shader if not enough varyings are available.  It's slower, but better than crashing.
2019-01-30 23:54:22 +01:00
rdb dc8f01df8a ShaderGenerator: pack eye-space normal to save one varying
Only when normal mapping is enabled.
2019-01-30 23:51:50 +01:00
rdb 9d12a4c437 general: improvements to doxygen API reference:
* In C++ reference, only pick up classes defined in .h file
* Add a few excludes to C++ reference that aren't public API
* On class index pages, reduce number of columns
* Add @since for some methods/classes that are new in 1.10.0
* Fix/improve a few docstrings here and there
2019-01-23 22:24:02 +01:00
rdb 66655aae85 device: fix incorrect features when printing InputDevice 2019-01-21 15:32:22 +01:00
rdb 7968022c23 Fix some warnings comparing char against EOF
This is not possible on platforms where char is unsigned.  In cases where fail() is checked, it is also unnecessary.
2019-01-20 00:31:43 +01:00
rdb 7d09451b2d display: remove unused iterator variable 2019-01-19 23:08:14 +01:00
rdb 73076c7115 android: add missing include for open() definition 2019-01-19 23:04:19 +01:00
rdb e4f0a9ce32 pgraph: allow getting NodePath from CullTraverserData in Python 2019-01-19 22:59:51 +01:00
Sam Edwards 955081f81f movies: Fix missing includes in {opus,vorbis}AudioCursor.cxx 2019-01-13 13:59:08 -07:00
rdb 84a1315104 More fixes to work around broken libc++ eof() in Mac OS X 10.7 2019-01-10 21:53:02 +01:00
rdb 3ccfbfaba7 putil: fix hang reading bam due to macOS libc++ bug in istream::eof()
Apparently eof() in older versions of libc++ returns true if the last character has just been read, whereas the proper behavior is only to return true when attempting to read past the end of the stream.  Since failbit is reliably set in all cases when reading past the length of the stream, we should only trust the result of eof() if fail() also returns true.
2019-01-09 22:56:40 +01:00
rdb 60a944e783 glgsg: fix shader inputs not being updated in esoteric case
Specifically, this happens if you have a custom ShaderGenerator that assigns shader inputs via the ShaderAttrib.  If two objects then both have the auto-shader turned on, and the shader generator generates ShaderAttribs with the same shaders but different inputs, the inputs will not be updated properly for one of the objects.
2019-01-09 22:39:36 +01:00
rdb 886d44d15d glgsg: fix multisampling for floating-point framebuffers 2019-01-09 22:39:05 +01:00
rdb d1845530aa task: fix mutex recursion when task awaiting other task ends 2019-01-09 22:12:02 +01:00
rdb e64a342a9f task: fix error awaiting already scheduled task
To reproduce this issue, try `await taskMgr.add(Task.pause(1.0))`
2019-01-09 20:10:10 +01:00
rdb 84df25cfe3 glgsg: fix sRGB support in multisample FBOs 2019-01-09 00:49:14 +01:00
Sam Edwards 0cd850fbb4 vision: Allow including from OpenCV's videoio, for 3.x+
This commit doesn't add buildsystem support yet.
2019-01-06 15:33:11 -07:00
rdb d106fd6a3a device: added checks, robustness, debug output for Windows raw input 2019-01-05 22:00:34 +01:00
rdb 7e562b0eb3 device: remove unused variables on Windows 2019-01-03 16:01:10 +01:00
rdb 8cdeb9b60b device: fix a case issue in include statement 2019-01-03 15:34:30 +01:00
rdb 3e22578529 New branding images for 1.10.0 2019-01-03 14:44:17 +01:00
Sam Edwards 6e951773a6 pipeline: (Light)ReMutexDirect should include thread.h
Thread methods are used in the respective .I files, so
an incomplete forward declaration won't suffice here.
2019-01-02 01:41:25 -07:00
rdb c365beaf11 device: hide Steam Controller on Linux while Steam is running
When Steam runs, it mutes all input from the Steam Controller and instead registers a virtual gamepad that obeys the Big Picture controller remapping.  We want to make sure to pick that one, since the "real" Steam Controller doesn't report any events while the virtual device is active.  So we carefully consider the "real" Steam Controller "inactive" if the presence of the virtual device is detected, until the virtual device is disconnected (ie. when Steam is closed) or if it turns out that it is generating events after all, in which case it gets automatically reactivated.

This is a bit of a hack, maybe there is a cleaner way of doing this.
2019-01-02 00:56:40 +01:00
rdb dccf8074fd android: fix compile errors in androiddisplay module 2019-01-01 22:05:26 +01:00
rdb a02920bb42 device: detect XInput devices on start-up
This is needed to handle cases where XInput is being emulated, such as when running via Steam with the Steam Controller active.  Steam's shim does not send out WM_INPUT_DEVICE_CHANGE events.
2019-01-01 16:27:55 +01:00
rdb 2bde2baed2 device: a couple of fixes with Windows device input 2019-01-01 16:23:16 +01:00
rdb c61b480a41 Revert "bam2egg: support exposed joints properly"
This reverts commit dee4cd6201.

Fixes #237
2018-12-31 17:07:42 +01:00
rdb 6559932c7b ShaderTerrainMesh: silently reload texture if it has no RAM image
Fixes #492
2018-12-31 16:28:27 +01:00
rdb f3ba1d317c device: support for Steam Controller on Linux
Adds lgrip and rgrip button handles, which are present on Steam Controller but also on the Oculus Touch
2018-12-31 16:10:56 +01:00
rdb 4699dfcd5b ShaderGenerator: fix toggling shadows while shader gen is on 2018-12-31 14:07:14 +01:00
rdb 83374de0ff shader: don't use GENERIC profile to compile Cg shaders
Instead, make an educated guess of what the GSG we are going to be compiling this shader for wants to use as profile.
2018-12-31 14:01:26 +01:00
rdb 9382e09b7c display: fix returning reference to temporary in shader input
This might cause issues when the transform cache is off.
2018-12-31 13:13:45 +01:00
rdb 8119547e90 device: add hacky detection of Trust GXT 24 as gamepad for now 2018-12-31 13:12:40 +01:00