Commit Graph

71 Commits

Author SHA1 Message Date
Alexei Dobrohotov 9f08dc9968 Revert "Merge branch 'skinning' into 'master'"
This reverts merge request !327
2020-10-08 23:24:28 +00:00
Alexei Dobrohotov 6be808e301 RigGeometry: convert some pairs to structs 2020-10-08 03:05:59 +03:00
bzzt lost a hitlab login 26ab176389 profiling
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt 4ab93aeffe Do not allocate empty callbacks in the RigGeometry 2019-03-14 12:37:41 +04:00
Andrei Kortunov 3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
Chris Djali cb5a57e41b
Merge pull request #1547 from AnyOldName3/osgshadow-test-vdsm
Shadows
2019-02-20 15:35:49 +00:00
Andrei Kortunov 60c9806d62 Share RigGeometry node data 2019-02-03 13:09:49 +04:00
AnyOldName3 8482236a82 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 2019-01-24 23:09:23 +00:00
Andrei Kortunov 8e6fd348d1 RigGeometry optimization: optimize geometry optimization 2019-01-09 21:01:33 +04:00
Andrei Kortunov 254f01b89d RigGeometry optimization: vector iteration is more cheap than map iteration 2019-01-09 11:52:11 +04:00
AnyOldName3 53188f61fc Fix animation bug with VAOs 2018-12-18 19:44:30 +00:00
Bret Curtis fc19c842cf
Revert "fix a rig bug visible with OSG_VERTEX_BUFFER_HINT=VAO" 2018-12-13 20:09:46 +01:00
mp3butcher 7a85e10d2f fix a rig bug visible with OSG_VERTEX_BUFFER_HINT=VAO 2018-12-02 23:36:27 +01:00
AnyOldName3 0124be5713 Merge upstream/master 2018-10-10 21:23:19 +01:00
Andrei Kortunov e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
Andrei Kortunov 87394f2ebb Revert "Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437)"
This reverts commit 09427d3f5e since the
fix is not entirely correct.
2018-09-29 16:21:40 +04:00
Andrei Kortunov 09427d3f5e Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437) 2018-09-16 14:38:58 +04:00
Andrei Kortunov ff241fb787 Optimize skinning (task #4605) 2018-08-25 20:45:59 +04:00
AnyOldName3 80082308f0 Merge upstream (shadermanager log system revamp) 2018-08-17 18:22:13 +01:00
Andrei Kortunov 1452684d9e Use new logging system for components 2018-08-14 19:42:41 +04:00
AnyOldName3 6286f5a1d4 Ensure RigGeometry child geometries have sensible bounds without actually computing them. 2018-08-08 23:24:57 +01:00
scrawl 2e58024f1c Fix intersections with Rig/MorphGeometry, was caused by an issue in the LineSegmentIntersector not respecting the cullingActive flag of a drawable. 2017-09-03 14:14:15 +00:00
scrawl 5e790b567e Fix node path issue
Needs to be set so that the 'cullingActive' flag of the node path's end can be checked
2017-09-01 22:12:40 +00:00
scrawl 4bef8260ab Add const qualifiers 2017-09-01 21:42:36 +00:00
scrawl 209e139aa8 Move double buffering implementation inside RigGeometry
The double buffering is an implementation detail so it should be handled as such, rather than mandating the scene graph to be structured in a certain way.

Override accept(NodeVisitor&) instead of using callbacks.
2017-09-01 21:42:34 +00:00
scrawl 29556a1802 More consistent wording of errors/warnings
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.

An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.

The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.

Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
2017-03-04 21:48:31 +01:00
scrawl 30b101b175 Fix build error in OSG_USE_FLOAT_MATRIX=OFF mode due to a double implicit conversion to double (pun doubly intended) 2017-02-03 06:49:34 +01:00
scrawl 84a92e665c Improve performance in RigGeometry by optimizing for the most common case of identity geomToSkelMatrix 2017-02-03 02:18:44 +01:00
scrawl eae35af13d Check if the bounding box changed before calling dirtyBound() 2016-12-17 00:23:22 +01:00
scrawl c0faeea938 RigGeometry check if mesh has normals (Fixes #3667) 2016-12-15 22:39:21 +01:00
scrawl d5f497c47d Pass the node path instead of the node visitor 2016-07-02 19:27:19 +02:00
scrawl 6fa95e72c5 Pass the traversal number instead of the node visitor 2016-07-02 19:26:11 +02:00
scrawl 824cd3be22 Do not set _boundingBoxComputed which is no longer used 2016-06-14 22:25:25 +02:00
scrawl 8052225460 Remove leftover call to setTexCoordArrayList 2016-03-23 22:56:04 +01:00
scrawl cc0afe901f Store a pointer to tangents array to avoid potential type casting issue 2016-03-23 17:03:04 +01:00
scrawl d1f6169889 Add special handling of RigGeometry tangents in ShaderVisitor 2016-03-23 16:48:41 +01:00
scrawl 95e80e7eff RigGeometry: don't directly modify the primitive set list
This is to ensure that an element buffer object will be assigned to the primitive sets if necessary.
2016-03-23 00:10:22 +01:00
scrawl c73ec71123 Revert "Store the RigGeometry's source vertices and normals directly"
This reverts commit 7a347e3483.
2016-03-22 23:28:57 +01:00
scrawl 60c8c4fdda Revert "Animate tangents in RigGeometry"
This reverts commit 9cf963b751.
2016-03-22 23:28:52 +01:00
scrawl 9cf963b751 Animate tangents in RigGeometry 2016-03-22 22:14:35 +01:00
scrawl 7a347e3483 Store the RigGeometry's source vertices and normals directly 2016-03-22 22:01:56 +01:00
scrawl 1abb77f8a1 Cleanup 2016-03-11 19:18:51 +01:00
scrawl 9f03982e0b Use a dedicated VBO for RigGeometry's vertices and normals
The VBO used by the source geometry's arrays may be unintentionally shared with other RigGeometries.

The vertices and normals are the only attributes that are modified at all, so using a dedicated VBO for these should improve performance further.
2016-03-11 19:08:48 +01:00
scrawl 50b8260a39 Disable VBOs in RigGeometry while investigating a crash possibly related to commit cda8a88f0d 2016-03-11 18:21:55 +01:00
scrawl 4eb090a8d0 Set the RigGeometry vertex buffer object usage to GL_DYNAMIC_DRAW 2016-03-11 16:09:48 +01:00
scrawl 58e0e8bd4e Enable vertex buffer objects in RigGeometry 2016-03-11 01:39:09 +01:00
scrawl 137dde7cf8 Include cleanup 2016-03-10 12:59:17 +01:00
scrawl 5824619a95 Clean up includes 2016-02-12 19:28:10 +01:00
scrawl 8b596dfcbe Remove support for OSG 3.2
Since commit e8662bea31, we're using OSG functionality that contains an unfixed crash bug in version 3.2. The bug is fixed in version 3.4 (OSG commit 6351e5020371b0b72b300088a5c6772f58379b84)
2016-02-12 14:46:45 +01:00