23379 Commits

Author SHA1 Message Date
rdb
fbf939141b gobj: fix typo causing crash when preparing shader 2018-10-16 21:13:27 +02:00
rdb
82e2c39172 dtoolutil: fix tautological comparison compile warning 2018-10-16 16:32:57 +02:00
rdb
b569875bf9 windisplay: fix window size changing when switching undecorated 2018-10-16 16:31:46 +02:00
rdb
bfeb5060b8 gobj: don't create pointless future in TextureReloadRequest 2018-10-16 15:23:52 +02:00
rdb
75826c9a51 glgsg: fix error with multisampled float depth buffer
Fixes #416
2018-10-16 15:20:45 +02:00
rdb
dd50d7d206 Merge branch 'master' into deploy-ng 2018-10-16 12:37:32 +02:00
Sam Edwards
2c0b079dc9 CMake: Disable C++ exceptions everywhere that doesn't request them 2018-10-15 23:52:36 -06:00
Sam Edwards
983d7fa6b9 travis: Small syntax fix 2018-10-15 19:31:40 -06:00
Sam Edwards
226c9002dd travis: Don't use --no-as-needed on osx 2018-10-15 18:45:22 -06:00
Sam Edwards
f9eb327a11 CMake: Add missing dependency from p3display on PKG::X11 2018-10-15 17:10:28 -06:00
Sam Edwards
c6dee72b06 CMake: Make sure Xkb+Xutil are available for X11
This fixes a compile error on some macOS systems.
2018-10-15 16:18:26 -06:00
rdb
51f5124048 dtoolutil: consistently use char32_t for Unicode code points
Unlike wchar_t, char32_t is guaranteed to be able to hold a UTF-32 character.
2018-10-15 22:23:45 +02:00
rdb
ebfb3702ac prc: work around macOS compiler error when making optimized build 2018-10-15 22:21:45 +02:00
rdb
bcc2e3e404 gobj: add Geom::get_animated_vertex_data() short-hand
This is a method for getting the animated vertex data that will keep working even if GeomVertexData::animate_vertices() gets deprecated due to #421 being fixed.
2018-10-15 22:13:21 +02:00
rdb
0131d1013b gobj: fix assert when enabling hw anim if blend has 5+ transforms
Instead, we reduce the TransformBlend down to the 4 most-weighted joints.
2018-10-15 22:07:32 +02:00
rdb
6e370ebbdd gobj: speed up GeomVertexData::get_num_rows() considerably 2018-10-15 22:06:04 +02:00
rdb
c28045990c Merge branch 'master' into deploy-ng 2018-10-15 15:42:48 +02:00
rdb
70f4c1cd4e glgsg: change missing Cg attrib error message to debug
This can occur if a variable is optimized out by the GLSL compiler but not by the Cg compiler.  So it should not be reported as an error.

Fixes #417
2018-10-15 14:09:39 +02:00
rdb
a765c32bae makepanda: don't use -fno-rtti on macOS, it fails to compile
It appears that <tr1/functional> (included by <tr1/tuple>) uses RTTI, so we can't enable this for now.
2018-10-15 13:32:22 +02:00
rdb
02a72d4273 makepanda: remove reference to QuickTime framework
Doesn't appear to be necessary, and QuickTime framework is removed in Mojave.

Fixes #412
2018-10-15 13:30:22 +02:00
rdb
d7f19b73e0 dtoolutil: minor fix to TextEncoder::append_text 2018-10-15 13:27:36 +02:00
Sam Edwards
c6554d2c25 travis: Don't install FFTW3 for CI tests
This is due to FFTW3 issue GH#130
2018-10-14 22:18:56 -06:00
Sam Edwards
629ada63db CMake: Turn OFF HAVE_CARBON by default 2018-10-14 17:30:40 -06:00
Sam Edwards
e28d8353f4 Merge branch 'master' into cmake 2018-10-14 16:20:13 -06:00
Sam Edwards
2d80d6d063 general: Add missing includes and remove deprecated type
Credit for missing includes to @treamology in Git commit
16cfac482923bc734447d234fd8eaaa99483847d

CGTableCount removed; modern macOS seems to call this
a uint32_t instead. I can find no reference to CGTableCount
in any documentation, and the (very old) source code I dig
up just typedefs it anyway.
2018-10-14 15:50:06 -06:00
Sam Edwards
b3f1b7d40b Merge branch 'cmake' of https://github.com/treamology/panda3d into cmake
# Conflicts:
#	.travis.yml
#	direct/src/showbase/CMakeLists.txt
#	dtool/dtool_config.h.in
#	dtool/src/prc/CMakeLists.txt
#	panda/src/cocoadisplay/CMakeLists.txt
#	panda/src/express/CMakeLists.txt
#	panda/src/osxdisplay/CMakeLists.txt
2018-10-14 02:26:56 -06:00
Sam Edwards
c26109e8cc CMake: Add textEncoder_ext.{cxx,h} to build 2018-10-13 16:15:40 -06:00
Sam Edwards
ea1b50a522 Merge branch 'master' into cmake 2018-10-13 16:15:35 -06:00
Sam Edwards
602ea6ebf4 general: Fix a couple more compiler warnings
- express: Fix a warning when compiling for debug

- dtoolutil: Give TextEncoder a virtual destructor
2018-10-13 16:14:34 -06:00
Sam Edwards
23a55f30eb CMake: Make sure Python version is always correctly reported 2018-10-13 15:23:10 -06:00
Sam Edwards
f1c5352cc1 CMake: Remove redundant target_compile_definitions(WITHIN_PANDA)
This is no longer needed since they should now propagate from
dcparser automatically.
2018-10-13 15:07:09 -06:00
Sam Edwards
1e38910d9d CMake: Fix BuildMetalib's BUILDING_ symbol propagation 2018-10-13 15:07:09 -06:00
Sam Edwards
da9bb2aaa2 CMake: Fix PYTHON_INCLUDE_DIRS variable when using CMake 3.12+'s FindPython 2018-10-13 15:07:09 -06:00
Sam Edwards
8610b2fceb CMake: Simplify Interrogate's compiler definition discovery
This uses generator expressions to make sure the definitions are
discovered transitively. The output _igate.cxx file also has its
definitions applied to it via a source file property rather than
via add_definitions(), which prevents them from leaking to other
targets.
2018-10-13 15:06:57 -06:00
Sam Edwards
84ed19e8a7 display: Add two missing includes
(lightAttrib.h and materialAttrib.h)
2018-10-12 21:49:49 -06:00
Sam Edwards
6f62396373 general: Resolve a few compiler warnings
- display: GraphicsWindowProc should have a virtual destructor,
           as it's meant to be subclassed.

- express: set_matrix_view helper should always fail an assert
           when 'size' is wrong, even on release builds.

- express: Fix filename capitalization on some #includes.
           They're normally Windows-only, where case doesn't
           matter, but it's better to be consistent.

- gobj: Fix typo.

- particlesystem: Remove BaseParticle::_last_position.
                  Last position is tracked by PhysicsObject now.

- windisplay: Heed warnings about casting bool to (PVOID).
              Also, per MSDN docs, SPI_SETMOUSETRAILS uses the
              uiParam argument and ignores pvParam, so pass the
              _saved_mouse_trails value in that way.
2018-10-12 15:37:40 -06:00
Sam Edwards
32a6552af4 CMake: Make BuildMetalib's link override more like CMake 3.12 2018-10-11 17:38:30 -06:00
Sam Edwards
47b5a50688 CMake: Don't always override target_link_libraries()
Previously, we would override target_link_libraries() to support
object "linking" since this wasn't supported in versions of CMake
before 3.12. Now that 3.12 is released, we only do it for versions
of CMake before that release.
2018-10-10 20:16:33 -06:00
Sam Edwards
90d3b29767 CMake: Sort direct/dtool/panda/pandatool subdirectories
This forces us to make sure the inter-target dependencies work
in an order-independent way.
2018-10-10 20:16:32 -06:00
Sam Edwards
a0d9a931e0 CMake: Simplify target_link_libraries "object" linking shim
This uses generator expressions instead, so that it's no longer
dependent on all linked component libraries existing first.
2018-10-10 20:16:32 -06:00
Sam Edwards
e89621b88d CMake: "Flatten" metalibs more
By "flatten" I mean that component libraries aren't referenced by
genex anymore; instead, their include directories and libraries
are copied out of their interfaces and into the interface of
the metalib.

This prepares for exporting our targets, by making sure that the
component libraries don't have to be installed for CMake to be
able to export metalibs.
2018-10-10 20:16:32 -06:00
Sam Edwards
b8fa692e2f CMake: Fix BuildMetalib on CMake 3.0.2
CMake now tests out correctly on 3.0.2 again.
2018-10-09 02:01:35 -06:00
Sam Edwards
f696bfbfe2 CMake: Clean up run_pzip
This should get rid of stray directories in the build
directory on Windows.
2018-10-09 02:01:35 -06:00
Mitchell Stokes
665bdb16ea deploy-ng: Add options for using optimized wheels for panda3d
This works by adding extra index urls. Optimized wheels have local
version tags that should take precedence over non-optimized wheels. If
no optimized wheel if found for a platform, a warning is issued and a
non-optimized wheel is used instead.
2018-10-08 18:36:23 -07:00
rdb
7bd8cbdeb6 windisplay: allow changing undecorated/fixed_size after window open
Fixes #405
2018-10-08 23:20:04 +02:00
rdb
0561d7920f tests: add unit tests for TextEncoder 2018-10-08 23:19:29 +02:00
rdb
29b577971f dtoolutil: improve Unicode encoding/decoding, support non-BMP chars
- Support encoding and decoding four-byte UTF-8 sequences
- E_unicode supports surrogate pairs, renamed to E_utf16be for clarity
- char32_t should be used for storing a Unicode code point
2018-10-08 22:33:54 +02:00
rdb
9061fd9416 dtoolutil: fix TextEncoder methods for Python 3
The no-arguments get_text() and set_text() will now return Unicode strings in Python 3, but passing in an encoding will make them return/take bytes objects.

In Python 2, they all take regular strings, but Unicode is also accepted by the no-argument get_text() and set_text().

In the future we probably want to remove most of this interface for Python users, to whom all this is unnecessary since it duplicates functionality already in the standard library.
2018-10-08 22:14:51 +02:00
rdb
96860b88e0 dxgsg9: fix problems with window without depth buffer 2018-10-08 22:11:55 +02:00
rdb
93a3e7e699 Changes to make ColorAttrib behavior more consistent:
- T_off now actually properly disables vertex colours
- T_vertex is now the default, to preserve the previous behaviour
- ShaderGenerator behavior is now the same as in the FFP
- tests are updated to verify new behavior
- tests now properly use vertex colours, previously they accidentally only used flat colors
- With color-scale-via-lighting off and no color scale, color is no longer munged
- p3d_Color in GLSL shaders is now properly set to white instead of black with T_off mode
- In DX9 shaders will now sample white color for absent or disabled vertex color

Fixes #401
Also see #371
2018-10-08 22:09:22 +02:00