Commit Graph

219 Commits

Author SHA1 Message Date
Mitchell Stokes 46dc9444d3 SceneGraphAnalyzer: Use smarter units for byte sizes in write()
Values above 10 MiB are displayed in MiB and values above 4 GiB are
displayed in GiB.

Closes #881
2020-04-02 13:53:56 +02:00
rdb 9fb60b18e7 Merge branch 'release/1.10.x' 2020-02-29 16:58:45 +01:00
rdb 9431d5013f ShaderGenerator: fix texture transforms applied to normal map
Fixes #808
2020-02-29 16:21:59 +01:00
Sam Edwards 5fa4af9189 CMake: Rely on GNUInstallDirs to specify install paths
This makes multiarch OSes happy as they can dictate that
64-bit libraries go into 'lib64'
2019-08-31 00:48:42 -06:00
Sam Edwards 1a654cba04 CMake: Record the location that headers are installed
This populates INTERFACE_INCLUDE_DIRECTORIES on the targets
after they're installed.
2019-08-30 22:58:18 -06:00
Sam Edwards 19ed9f6b47 Merge branch 'master' into cmake 2019-08-24 18:07:12 -06:00
rdb 3a7ab6c319 Merge branch 'release/1.10.x' 2019-07-15 19:51:19 +02:00
rdb 23232a5b20 pgraphnodes: fix assert when analyzing geoms with strip cut index 2019-07-15 19:42:33 +02:00
Sam Edwards 6097d34ead CMake: Neatly format everything for readability and consistency 2019-04-14 22:37:18 -06:00
Sam Edwards f8161cc529 Merge branch 'master' into cmake 2019-03-12 02:03:16 -06: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 86c266fd88 Merge branch 'release/1.10.x' 2019-01-31 00:58: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 d8891674e3 Merge branch 'release/1.10.x' 2019-01-23 23:28:28 +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 193ae8a3a6 pgraph: take advantage of constant initialization for states maps
SimpleHashMap has a constexpr default constructor, so there is no static init ordering issue that requires us to allocate the states maps on the heap and then to leak them.
2019-01-07 18:40:30 +01:00
Sam Edwards d4df1b3762 Merge branch 'master' into cmake 2019-01-02 06:09:15 -07:00
rdb 4699dfcd5b ShaderGenerator: fix toggling shadows while shader gen is on 2018-12-31 14:07:14 +01:00
Sam Edwards 99fee1a64d CMake: Assign COMPONENT and EXPORT to all targets 2018-12-06 17:48:44 -07:00
Sam Edwards df805bd02b Merge branch 'master' into cmake 2018-11-28 21:54:58 -07:00
rdb 97d4e32a06 general: use nassert_raise instead of nassertv(false) et al
Even a brief error message in the assertion is infinitely more useful to a user who is not at home in the source code, especially for assertions that may reasonably be triggered by honest user mistakes.
2018-11-28 17:35:20 +01:00
Sam Edwards 6b26889e7e Merge branch 'master' into cmake 2018-11-12 15:41:42 -07:00
rdb 6051e6f305 ShaderGenerator: normalize tangent/binormal/normal after interpolation
Also changes l_eye_normal interpolant from float4 to float3.
2018-11-08 15:53:34 +01:00
Sam Edwards 02412d0e7d Merge branch 'master' into cmake 2018-10-07 01:58:41 -06:00
rdb a099c85245 ShaderGenerator: fix broken handling of CO_undefined alpha operand
Fixes #394
2018-09-25 21:19:30 +02:00
Sam Edwards e917c54433 Merge branch 'master' into cmake 2018-09-22 15:55:59 -06:00
rdb 47496068d3 Show materials with only base color applied properly 2018-09-09 20:56:37 +02:00
Sam Edwards 208ecd6708 Merge branch 'master' into cmake 2018-09-02 16:06:41 -06:00
Sam Edwards fa1e1a2e63 CMake: Tidy up installation directory
Don't install "object-Configuration/" directories when
using metalibs, and also put .dll files in bin/ on Windows.
2018-09-01 11:07:55 -06:00
Sam Edwards 4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06:00
Sam Edwards 2ab77d9a27 Merge branch 'master' into cmake 2018-08-14 21:59:45 -06:00
rdb 60468b0bec ShaderGenerator: additional case where vtx_color isn't needed
See sample code in a comment in #370
2018-08-05 12:49:03 +02:00
rdb 929808b867 ShaderGenerator: fix regression with flat colors 2018-08-03 22:58:29 +02:00
rdb 8806dedb51 ShaderGenerator: avoid writing vtx_color input if unneeded 2018-08-03 22:24:48 +02:00
rdb 9ba2d7242e gobj: get rid of enforce-attrib-lock, just DTRT instead
This setting causes asserts when modifying certain material flags after they are assigned to a node, in case a shader has been generated that uses the materials, which cannot efficiently detect whether the material has changed.  However, we already sort of have a (inefficient, but effective) solution for this in TextureStage (see #178) that we could just apply here as well: changing the material attributes after such a shader has been generated could call GraphicsStateGuardianBase::mark_rehash_generated_shaders().

In the future, we should replace the material model with one that does not require shader regeneration for such seemingly trivial property changes.

Fixes #370
2018-08-03 21:55:06 +02:00
rdb 0cb763a10a ShaderGenerator: always use generic attr on Linux
48808fe269 disabled this on Linux, but I believe this was an accidental change.
2018-07-26 22:58:15 +02:00
rdb 886e1c2f16 general: fix many compilation warnings in GCC 8 2018-06-19 00:37:28 +02:00
Sam Edwards b2bfb31114 general: Remove `using std::*` from headers
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.

Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards ed2b3017d4 Merge branch 'master' into local/cmake-merge 2018-06-12 16:19:30 -06:00
Sam Edwards 7e61891c09 general: Fix more DLL linkage and EXPCL_PANDA_ macros 2018-06-12 16:14:33 -06:00
rdb b88bd99704 Various compiler warning fixes 2018-06-12 12:38:07 +02:00
Sam Edwards c4126942f6 Merge branch 'master' into cmake 2018-06-10 02:29:21 -06:00
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
Sam Edwards 592a2e2d68 Merge branch 'master' into cmake 2018-06-06 13:18:12 -06:00
Sam Edwards e2b4353800 general: Replace NULL (and 0 as pointer) with C++11 nullptr
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
rdb c08339e8ce ShaderGenerator: fix error with normal map and only ambient light
Closes #331
2018-06-03 22:30:40 +02:00
rdb 21d8c29645 More warning fixes 2018-06-03 06:45:35 -04:00