1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 21:49:55 +00:00
Commit graph

3243 commits

Author SHA1 Message Date
scrawl
0187f2ce4c nifloader: combine animFlags and particleFlags (Bug #2100) 2017-02-08 19:53:02 +01:00
scrawl
bccfd6cef8 nifloader: handle textures with no image that are later assigned in a FlipController
As found in vurt's trees (Bug #2100)
2017-02-08 19:52:33 +01:00
scrawl
792f505b2a Fix potential crash in ShaderVisitor for textures with no image assigned 2017-02-08 19:16:07 +01:00
scrawl
45ae8d5ffa Add support for GL_AMBIENT colorMode to shaders as required by particle systems 2017-02-08 18:39:24 +01:00
scrawl
c00532d82d Add LightStateCache to avoid redundantly setting the same gl_Light
Normally, osg::State would do this for us (via lastAppliedAttribute), but since we're using a custom StateAttribute to apply all lights at once, we have to track ourselves.

Further reduction of GL calls in a typical scene by ~2%
2017-02-07 23:37:57 +01:00
scrawl
4d4dc1b9c1 Add specialized DisableLight state attribute for more efficient undoing of light state
Seems to reduce # of GL calls by 10-15% in a typical scene.
2017-02-07 23:01:36 +01:00
Allofich
5d2090684a Store mHitAttemptActorId in save files 2017-02-07 01:26:26 +09:00
scrawl
a1069dce3c Change UnrefQueue to accept osg::Referenced instead of osg::Object 2017-02-04 02:24:42 +01:00
scrawl
33e654f94d Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls 2017-02-04 02:16:26 +01:00
scrawl
c95868969b Early out for scene graphs with no update callbacks in SceneManager::notifyAttached 2017-02-04 01:22:43 +01:00
scrawl
767eba941f Speed up finding of attachment node by using the cached nodeMap 2017-02-03 23:15:37 +01:00
scrawl
a76d693627 Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal() 2017-02-03 23:10:14 +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
b4a6b6387b Create own instance of osgDB::SharedStateManager so we control when to call prune()
prune() is now called in the background thread, just like the resource cache update.

Seems to improve performance by ~0.3 ms/frame
2017-02-03 03:27:12 +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
f3045331f1 Fix regression in handling of NiZBufferProperty 2017-02-03 01:49:49 +01:00
scrawl
53e4db8a8f Add dummy serializer for CameraRelativeTransform to allow serializing content of Sky Root 2017-02-02 21:57:18 +01:00
scrawl
c5f8ff6e0e Add names to several nodes for debugging purposes 2017-02-02 21:49:52 +01:00
scrawl
851f61ac82 Always assign osg::Material when a material controller is used 2017-02-01 21:10:43 +01:00
scrawl
9180089a3b Add sharing for more State Attributes, most notably BlendFunc and AlphaFunc, to improve the state tracking in osg::State and reduce the number of GL calls 2017-02-01 06:00:14 +01:00
scrawl
960d4a96c3 Reduce the number of osg::Material state by setting the default state on the graph root 2017-02-01 06:00:14 +01:00
scrawl
e399e10607 Add missing lock in shareMaterial 2017-02-01 06:00:14 +01:00
scrawl
34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 2017-02-01 06:00:14 +01:00
scrawl
e90941a8b3 Wrap the scene template reference in another object for const correctness and to avoid it from being serialized with the osgDB serializer 2017-02-01 06:00:14 +01:00
Allofich
0f20312012 Fix MSVC warnings 2017-01-28 04:37:47 +09:00
scrawl
115e563a7a Fix race conditions caused by Array <-> GLBufferObject interactions (Bug #3580)
The first part of the fix is to assign VBO/EBO's upon loading the array in the Nif reader. This avoids triggering the 'addVertexBufferObjectIfRequired' code path in osg::Geometry which has the race condition when two threads add the same Array at the same time. Essentially, we want the Arrays to be 'const' when they come out of the Nif reader.

The second part of the fix is to make sure not to create empty arrays in the Nif reader (importantly, not assigning a VBO to the empty array). This empty array would be deleted when the NIFFile is cleaned up, and the detachment of the VBO assigned to it (which is still in use by other arrays) would cause threading issues.

This rare crash bug was first introduced with commit a7c5beb7c5. When using OSG dev version 3.5 the crashes were a little more prevalent, because 'addVertexBufferObjectIfRequired' in osg::Geometry is now used even when VBO's are disabled (as part of the VAO support changes).
2017-01-19 22:23:41 +01:00
scrawl
ac61535d2c optimize OSGVertexBuffer by double buffering the vertex array instead of recreating it on every modification 2017-01-19 03:19:17 +01:00
Leon Krieg
170e723cc7 Handle SDL event 0x304 by doing nothing (#3670) 2016-12-17 12:51:11 +01:00
scrawl
eae35af13d Check if the bounding box changed before calling dirtyBound() 2016-12-17 00:23:22 +01:00
scrawl
aafff1deb6 Fix memory leak 2016-12-16 20:40:15 +01:00
scrawl
cca75499ee Clear the Skeleton's bone cache when a node is added/removed (Fixes #3663) 2016-12-16 20:09:20 +01:00
scrawl
c0faeea938 RigGeometry check if mesh has normals (Fixes #3667) 2016-12-15 22:39:21 +01:00
Aussiemon
369272fc70 Handle SDL event 0x302 by doing nothing 2016-12-14 21:08:20 -07:00
mrohrlach
f0f78c9d64 Slight adjustments to disintegration fix 2016-12-09 19:55:26 -07:00
mrohrlach
9624d8aade Added new method and variable to track float remainders of disintegration effections 2016-12-09 19:48:56 -07:00
MiroslavR
99bcf47167 Implement NiSphericalCollider (Closes #3644) 2016-12-06 01:32:13 +01:00
scrawl
5297d7b5be Merge pull request #1137 from nikolaykasyanov/osx-structure
[macOS] Move all resources files inside application bundles (fixes #3566)
2016-11-25 02:51:32 +01:00
Nikolay Kasyanov
db69342b5d [macOS] Move all configs & resources into app bundles
Fixes #3566 (https://bugs.openmw.org/issues/3566).
2016-11-23 22:32:54 +01:00
scrawl
505250f6ec Do not use architecture dependent type size_t in esm format (Fixes #3633) 2016-11-22 15:47:06 +01:00
scrawl
9d125bcaa2 Merge pull request #1129 from PhillipAnd/phillipand-cmake-fix
Fix various build issues with Visual Studio environment
2016-11-17 18:25:23 +01:00
Phillip Andrews
c18fc113e5 Changed missing library dependencies to simple fix 2016-11-14 00:01:22 -06:00
Allofich
3420121c3f Fix shadowing warnings 2016-11-13 23:20:51 +09:00
Allofich
125e94ef0e Fix shadowing warnings 2016-10-31 00:39:31 +09:00
Assumeru
f6ef1ce276 Fix Calm/Frenzy/Demoralize/Rally Creature weakness and resistance 2016-10-25 15:42:37 +02:00
MiroslavR
301dd77efb Save controls state (Fixes #3598) 2016-10-20 02:12:01 +02:00
MiroslavR
11565b5966 Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 2016-10-08 23:17:12 +02:00
scrawl
5c94e2324f Add missing use plugin macro for static build 2016-10-08 19:20:44 +02:00
Allofich
f6f16b68de Don't let Weakness to Magicka affect paralysis 2016-10-08 17:56:12 +09:00
scrawl
37bfa88b2d Merge pull request #1094 from Allofich/alchemy
Fix reversed use of alembics and retorts
2016-10-06 19:02:24 +02:00
Allofich
498976775a Fix reversed use of alembics and retorts 2016-10-07 01:38:50 +09:00
scrawl
0c981b6fe5 Fix typo in script opcode (Fixes #3583) 2016-10-06 17:36:50 +02:00
Allofich
6ec37b5cfb Fix shadowing warnings 2016-10-02 17:48:54 +09:00
scrawl
cd4b182091 Merge pull request #1051 from Allofich/textures
Use spell effect particle textures
2016-09-18 22:37:14 +02:00
Allofich
a8e9f2df67 Cleanup 2016-09-19 05:20:04 +09:00
Allofich
be96ff1fd1 Remove redundant parameter 2016-09-18 01:57:47 +09:00
scrawl
8f5347b79b Update comment, osgAnimation::RigGeometry is no longer used 2016-09-17 18:31:39 +02:00
MiroslavR
55e670c5fe Fix animation state not saving
References with animation state changed but otherwise identical to their content file counterparts
were previously considered unchanged and thus dropped while saving.
2016-09-15 16:11:54 +02:00
Allofich
a033ba3bd2 Override spell textures by NiTexturingProperty 2016-09-14 23:03:04 +09:00
emlai
fd2281e825 Fix typo 2016-09-10 21:25:28 +03:00
scrawl
4322e76cb6 Fix shadowing warnings 2016-08-29 12:38:24 +02:00
scrawl
a5da3a269e Fix shadowing warnings 2016-08-29 12:20:00 +02:00
scrawl
c968ebee96 Merge pull request #1033 from Allofich/warnings
Remove unnecessary destructor
2016-08-22 14:44:57 +02:00
Allofich
73463cd12f Remove unnecessary virtual destructor 2016-08-22 21:34:57 +09:00
scrawl
f92560986e Merge pull request #1031 from kpp/fix_uninitiaized_escape_hash_filter
Fix uninitialized escape_hash_filter
2016-08-21 22:56:31 +02:00
Allofich
8c5aae0722 Add virtual destructors 2016-08-21 18:31:46 +09:00
Roman Proskuryakov
416466e53e Fix uninitialized escape_hash_filter 2016-08-19 21:13:38 +03:00
scrawl
341e3846c0 Use initial particle state to compute the initial bounding box (Fixes #3500) 2016-08-16 23:28:03 +02:00
scrawl
dda5bfbc9f CharacterPreview no longer depends on osgViewer 2016-08-16 22:47:45 +02:00
scrawl
641005b317 Remove Camera's children before removing the Camera
Should work around OSG race condition ( http://forum.openscenegraph.org/viewtopic.php?t=16077 )
2016-08-15 18:12:46 +02:00
scrawl
a44ba0e461 Merge pull request #966 from kpp/find_mygui
Find mygui
2016-08-15 16:36:48 +02:00
Roman Proskuryakov
4cffdb67d8 Uses case-sensitive MyGUI_* variables 2016-08-15 15:59:02 +03:00
scrawl
513e1da8a3 Remove unneeded casts 2016-08-14 16:44:11 +02:00
scrawl
33d27a2285 Use ref_ptr 2016-08-14 16:41:33 +02:00
scrawl
2f6075329b Clang warning fixes 2016-08-14 15:10:50 +02:00
scrawl
46538b9438 Merge pull request #1011 from devnexen/master
Mainly making compilable under OpenBSD.
2016-08-07 20:34:03 +02:00
Marc Zinnschlag
aa1ed9b172 Merge remote-tracking branch 'aesylwinn/RenderWater' 2016-08-07 17:03:58 +02:00
David Carlier
83bab29e4b Mainly making compilable under OpenBSD.
Renaming one resource file as the space led to issue for qt/moc.
2016-08-06 19:00:27 +01:00
Aesylwinn
5753f52b47 Move water mesh + simple state generation to components library. 2016-08-05 13:25:05 -04:00
MiroslavR
b65f379b7f Save scripted animation state (Fixes #1931, #2150, #3393) 2016-08-03 03:52:35 +02:00
Marc Zinnschlag
63fd1e8df7 Merge remote-tracking branch 'origin/master' 2016-07-27 15:49:11 +02:00
AnyOldName3
a0699ce20d Change some <> characters to double quotes, resolving compilation problems. 2016-07-27 01:19:05 +01:00
AnyOldName3
20f73f4a32 Relocate escape-related code to new files escape.hpp and escape.cpp. 2016-07-27 00:58:31 +01:00
MiroslavR
d790747389 Implement deletion of moved references (Bug #3471) 2016-07-22 01:59:02 +02:00
AnyOldName3
7243583963 Change a switch to a series of if/else if/.../else, hopefully resolving compilation issues on OSX and Linux. 2016-07-21 01:36:14 +01:00
AnyOldName3
2b829f7f7b Move some stuff to a header, removing the need for a dodgy hack. 2016-07-21 01:07:25 +01:00
AnyOldName3
becc053555 Trick the software into building by using what I assume is a really dirty hack. 2016-07-21 00:16:00 +01:00
AnyOldName3
519fbab864 Remove useless print 2016-07-20 23:18:09 +01:00
AnyOldName3
32f0ded8f6 Fix bug in unescape filter, but still manage not to fix build issue. 2016-07-20 23:15:44 +01:00
AnyOldName3
423919abb5 Make it not build again (but theoretically enable the desired functionality). 2016-07-20 15:19:34 +01:00
AnyOldName3
59639e3988 Make it build again (but remove the new functionality). 2016-07-20 15:16:53 +01:00
AnyOldName3
d9d5a6561b Adjust the code so that it should (maybe) work, changing the compilation error to a less straighforward one. 2016-07-20 14:50:34 +01:00
AnyOldName3
95d2c7ea5c Attempt to unescape characters when constructing file paths, introducing compilation errors. 2016-07-20 02:48:57 +01:00
Marc Zinnschlag
c17e1ca24a Merge remote-tracking branch 'anyoldname3/ignore-hash-test' 2016-07-19 16:19:28 +02:00
MiroslavR
721fa28c1e Fix assertion failure with NiTextureEffect missing source texture 2016-07-16 18:59:18 +02:00
AnyOldName3
f1b5ad5804 Remove unused unsafe function and properly remove inheritance from std::string, providing implementations of missing stream operators preventing boost reading and writing to escape strings. 2016-07-12 17:09:57 +01:00
AnyOldName3
e6f78ae5b7 Switch indentation to spaces to remain consistent with the rest of the project 2016-07-12 01:06:57 +01:00
AnyOldName3
08df463c94 Separate declaration and definition of some static members to hopefully calm Travis down. 2016-07-12 00:37:08 +01:00
AnyOldName3
7475d90693 Fix dodgy include by changing backslashes to forwardslashes 2016-07-12 00:14:19 +01:00
AnyOldName3
5121e77a95 Remove the cause of a warning which upset Travis (but not the thing that made the Travis build fail, as I have no idea why it wouldn't work or how to fix it 2016-07-12 00:00:29 +01:00
AnyOldName3
1a0642f1db Make it work by realising that what boost::program_options calls validation is what any sane person would regard as parsing 2016-07-11 22:33:15 +01:00
AnyOldName3
195dd27780 Resolve obvious runtime error revealing more subtle one 2016-07-11 22:05:38 +01:00
MiroslavR
9c6739f1b3 Fix doubled particle spawn range 2016-07-11 22:40:58 +02:00
AnyOldName3
fbe6dc9704 Change compilation error to runtime exception and decide that inheriting from std::string may have been a bad idea in C++ 2016-07-11 21:33:36 +01:00
AnyOldName3
7697406467 Partially fix '2 overloads have similar conversions' compilation error 2016-07-11 14:39:38 +01:00
AnyOldName3
2a9b12bb3f Fix an issue preventing compilation, revealing another that doesn't make much sense. 2016-07-11 14:15:35 +01:00
AnyOldName3
c1ffc9e776 Remove a compilation error and set up framework to remove the others 2016-07-11 01:59:16 +01:00
AnyOldName3
e17e354e84 Make # only start a comment in openmw.cfg if it starts a line and introduct compilation errors 2016-07-11 01:16:32 +01:00
MiroslavR
2a987b6857 Do not skip inactive keyframe controllers (Bug #1942) 2016-07-10 19:02:28 +02:00
scrawl
9375cbea44 Make NIFFilePtr const 2016-07-10 17:10:19 +02:00
scrawl
da0e20edcd Merge pull request #991 from MiroslavR/opface
Implement Face instruction (Feature #1424)
2016-07-10 02:10:23 +02:00
MiroslavR
f6f3f71db5 Improve format specifiers for message boxes 2016-07-09 03:18:45 +02:00
MiroslavR
dc0bc5b68c Implement Face instruction (Feature #1424) 2016-07-09 02:16:47 +02:00
scrawl
8f62ea2e80 Fix for "RigGeometry rendering with no skeleton" errors 2016-07-02 20:19:55 +02:00
scrawl
b9b73d7b12 Replace "sys::default" with ESM::CellId::sDefaultWorldspace 2016-07-02 19:48:11 +02: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
MiroslavR
54f52f7bae Implement effect removal for abilities (Fixes #3455) 2016-07-01 18:50:28 +02:00
MiroslavR
b99611a730 Initialize mSpecIncreases in ESM::NpcStats::load 2016-06-26 15:16:32 +02:00
MiroslavR
dfc62c99b4 Show correct class image in level-up dialog (Fixes #3443) 2016-06-26 03:22:58 +02:00
scrawl
824cd3be22 Do not set _boundingBoxComputed which is no longer used 2016-06-14 22:25:25 +02:00
scrawl
372f2e2f18 Merge pull request #962 from Allofich/AIPackageFixes
Duration fixes for Follow and Escort
2016-06-14 20:47:32 +02:00
Allofich
3bebbab78e Duration fixes for Follow and Escort 2016-06-15 02:11:30 +09:00
scrawl
197e81206a Assume mDeathAnimationFinished is true for older save files 2016-06-12 19:46:00 +02:00
scrawl
a825882c6b Process death events at the end of the death animation (Fixes #1873) 2016-06-12 00:04:50 +02:00
scrawl
cb8daaaee1 Do not query the texture's image in osgMyGUI::OSGTexture
Doing so could result in a race condition if the draw thread is about to delete the image (UnRefImageDataAfterApply enabled)
2016-06-11 18:26:20 +02:00
Allofich
55ac1fab68 Change Wander duration to run on a counter 2016-06-10 04:36:18 +09:00
Marc Zinnschlag
b079db7913 Merge remote-tracking branch 'aesylwinn/EditPathgrid' 2016-06-07 08:35:16 +02:00
Roman Proskuryakov
3bcd23022a Rewrites FindBullet using LibFindMacros handling version properly 2016-05-31 07:18:37 +03:00
Aesylwinn
b83f522ecd Changes to color scheme, slight change to drag indicator,
change tooltip description.
2016-05-29 13:26:29 -04:00
Aesylwinn
564d0db68c Move pathgrid abstraction handling to save code. 2016-05-26 22:11:27 -04:00
scrawl
3749821809 Choose a random death animation for actors that start the game as dead (Fixes #3397) 2016-05-19 21:40:05 +02:00
Aesylwinn
1781aaaa27 Drag indicator. 2016-05-18 12:17:26 -04:00
scrawl
04b537bf5f Minor cleanup 2016-05-15 16:38:04 +02:00
scrawl
85b0c4393b Remove obsolete code 2016-05-15 16:37:22 +02:00
scrawl
6e0c3b2413 Revert commit 16ac6e7aac (Fixes #3394) 2016-05-15 16:28:04 +02:00
scrawl
62018e802b Minor fix to particle system AutoPlay flag handling
The previous commit broke some magic effects (e.g. shield). The controller's emit start/stop times should control the emitter, while the absence of the ParticleSystem's autoplay flag should freeze the whole particle system if no valid controller source gets assigned. This revised version works for both the Shield effect and the "dagoth ur death sparkles" effect.
2016-05-14 22:55:14 +02:00
scrawl
7202072196 Freeze particle systems on construction if the AutoPlay flag is missing 2016-05-14 22:38:49 +02:00
scrawl
0c08f705c5 Make the ParticleSystemController freeze the particle system instead of the emitter (Bug #3390) 2016-05-14 22:36:53 +02:00
scrawl
e30bb31a79 Handle the particle node's AutoPlay flag (Bug #3390) 2016-05-14 22:35:34 +02:00
Aesylwinn
32ba5bf8b8 Initial pathgrid editting, support for selection and movement. 2016-05-12 19:35:49 -04:00
scrawl
fcbcc004a3 Don't use unordered_map 2016-05-11 02:35:17 +02:00
scrawl
17a0353a85 Fix forward declaration mismatch 2016-05-10 17:36:25 +02:00
scrawl
a7e6219091 Merge pull request #939 from kpp/rewrite_esm_name_t
Rewrite ESM::NAME_T
2016-05-08 13:15:05 +02:00
Marc Zinnschlag
b4e341e1e2 Merge remote-tracking branch 'aesylwinn/RenderPathgrid' 2016-05-08 10:15:12 +02:00
Roman Proskuryakov
d5dfa89060 Rewrite NAME_T into FIXED_STRING. 2016-05-07 23:27:33 +03:00
Roman Proskuryakov
1e7d573f24 Fix uninitialized values in ESMWriter::save 2016-05-07 20:40:21 +03:00
Aesylwinn
14ae232938 Remove now unnecessary factory class.
It was originally used for storing normals, but that functionality
was removed.
2016-05-03 16:13:23 -04:00
Aesylwinn
b11f5b2717 Make edges differently colored. 2016-05-03 15:06:28 -04:00
Aesylwinn
0eb863d8fc Change color to blue to match the pathgrid visibility selector in the
editor and slightly increase the scaling.
2016-05-03 03:29:34 -04:00
Aesylwinn
7f0cc6e583 Add a color gradiant to pathgrid nodes to make them less of an eyesore. 2016-05-03 03:29:30 -04:00
Aesylwinn
3d26ff08c4 Get rid of lighting. 2016-05-03 03:29:07 -04:00
Aesylwinn
d141672b53 Pathgrid geometry creator 2016-05-02 22:09:48 -04:00
scrawl
5f34fb0c41 Remove call to MYGUI_DBG_BREAK which was removed in mygui-git 2016-04-20 11:37:48 +02:00
scrawl
f3e9fd49f3 Don't add the autodetected mw path in global config file
The wizard takes care of detecting the MW installation path already. By having this path permanently in the global cfg-file, there exists no way to *not* use an autodetected installation, which is a problem.
2016-04-17 17:17:07 +02:00
scrawl
2f8be401cc Add the unref work items to the front of the workqueue (Bug #3273)
Ensures that memory still gets freed even if the workqueue is overloaded.
2016-03-29 00:27:56 +02:00
scrawl
bc36269617 When a controller is present more than once in the same keyframe file, pick the first one (Fixes #2719) 2016-03-26 14:59:49 +01: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
6f31b3d79f Add parallax mapping for objects 2016-03-22 21:46:15 +01:00
scrawl
df6fd5f206 Recognize normalHeightMap in the ShaderVisitor 2016-03-22 21:46:15 +01:00
scrawl
157c11398d Add terrain parallax mapping 2016-03-22 21:46:15 +01:00
scrawl
24ae9f4ac1 Remove no longer needed apply(Geode&) in SetFilterSettingsVisitor and NodeToShapeVisitor
In OSG 3.4 (which is now a requirement), Drawables are normal Nodes attached in the scene graph. Geode is still provided for backwards compatibility, but does not need to be specially handled here because it now functions just like a normal Group node.
2016-03-14 00:38:22 +01:00
scrawl
e8caafa190 Remove no longer needed applyEffect(osgFX::Effect&) in SetFilterSettingsVisitor
No longer needed because terrain texture filtering is now updated manually in TerrainGrid::updateTextureFiltering.
2016-03-14 00:31:43 +01:00
scrawl
d7c7bb850b ToggleAI cleanup 2016-03-12 20:32:42 +01:00
scrawl
d986b1a48b Add comment 2016-03-11 19:28:53 +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
aae43dbff5 Set the MorphGeometry vertex buffer object usage to GL_DYNAMIC_DRAW 2016-03-11 16:10:39 +01:00
scrawl
4eb090a8d0 Set the RigGeometry vertex buffer object usage to GL_DYNAMIC_DRAW 2016-03-11 16:09:48 +01:00
scrawl
174dd82894 Manually apply the osg::Light state
Reduce the amount of virtual function calls. Don't use the osg::Light's lightNum. Don't set spotlight state that we're not using (yet).
2016-03-11 15:43:20 +01:00
scrawl
58e0e8bd4e Enable vertex buffer objects in RigGeometry 2016-03-11 01:39:09 +01:00
scrawl
0dbf44b414 Enable vertex buffer objects in MyGUI RenderManager now that OSG 3.4 is a dependency 2016-03-11 01:35:57 +01:00
scrawl
3f08cbff71 Share the state attributes for terrain techniques
Reduces the total amount of GL calls / frame by about 14% - 50% depending on the scene.
2016-03-11 01:08:53 +01:00
scrawl
84b8da7a09 Share the osg::Material on drawables
Reduces the number of GL calls / frame by ~4%.
2016-03-11 01:06:54 +01:00
scrawl
abcfe9bcee Don't add empty text key objects 2016-03-10 17:01:14 +01:00
scrawl
02d23564dc Include cleanup 2016-03-10 14:29:45 +01:00
scrawl
f898bf493f Don't use Geodes 2016-03-10 13:17:01 +01:00
scrawl
137dde7cf8 Include cleanup 2016-03-10 12:59:17 +01:00
scrawl
121bdd3e39 Update comment 2016-03-07 22:46:15 +01:00
scrawl
3e6cf17665 Warn about cellrefs with an empty refId (Bug #3238) 2016-03-07 22:44:03 +01:00
scrawl
0df975a4d7 Properly detach nodes in CopyRigVisitor (Fixes #3234) 2016-03-06 11:33:07 +01:00
scrawl
82b792f808 Eliminate dynamic_cast in BillboardCallback 2016-03-05 20:02:33 +01:00
scrawl
2eaf96e3bf Make ResourceManager destructor virtual 2016-03-02 21:58:11 +01:00
scrawl
dd2fbfc0a2 Fix windows build 2016-03-02 21:57:25 +01:00
scrawl
3d6323f13a Force-enable hasWater() for exterior cells (Fixes #3222) 2016-03-02 17:02:30 +01:00
scrawl
563807ee53 Share the StateSet used to invert front face 2016-03-02 13:33:44 +01:00
scrawl
6e7c6fdd7e Implement NiTexturingProperty::DecalTexture 2016-03-01 18:41:36 +01:00
scrawl
30d06bfe0e Add comment 2016-03-01 17:27:54 +01:00
scrawl
64636bd85a Improve error reporting 2016-03-01 17:05:02 +01:00
scrawl
2821f46a18 Corpse clearing fix 2016-03-01 11:31:08 +01:00
scrawl
8791063110 Fix "RigGeometry rendering with no skeleton" warnings in rare cases 2016-02-29 18:20:56 +01:00
scrawl
1e5b4bea0a Don't create an unnecessary osg::Group when copying over a rig 2016-02-29 17:50:18 +01:00
scrawl
27577ce765 Add ESM::Land::DEFAULT_HEIGHT 2016-02-28 16:49:18 +01:00