Commit Graph

3396 Commits (d3b623b5d32e8eba6c135ba62acfe049840040a4)

Author SHA1 Message Date
scrawl 058681ad73 ShaderVisitor: avoid reset of rig geometry when not required 8 years ago
scrawl 1402e0b872 Don't optimize billboard nodes (Fixes #3774) 8 years ago
scrawl 706ac45c76 Fix missing particles caused by shallow copy of ParticleSystemController 8 years ago
scrawl 9b27ec4945 Remove redundant and ambiguous NiNode::makeBone()
Ambiguous because a skeleton can have multiple skinned meshes, with their own bone weights/bind matrix each.
8 years ago
scrawl aba3c471a9 nifloader: fix setting of dataVariance for non-controlled bones and refactor the code 8 years ago
scrawl 5caf53b6a3 optimizer: avoid reordering nodes
Fixes an osgParticle cloning issue.

(Fixes #3773)
8 years ago
scrawl a95773beef Fix unnecessary copy of ParticleSystem in SceneUtil::CopyOp 8 years ago
scrawl 585524805f Add 'tri ' variant of part filters to optimizer ignore list 8 years ago
scrawl 48e0f098ff Add missing copy of callbacks when a Transform is replaced by Group
(Fixes #3770)
8 years ago
scrawl 330e5fefd1 optimizer: consider a Group with more than one child redundant as well
While there could be some value in this hierarchy (i.e. improved culling), we don't know if this is being used sensibly; and using a 'flat' hierarchy helps other optimizations.
8 years ago
scrawl 75677f03e7 Remove SceneManager::notifyAttached 8 years ago
scrawl 3df7a8c4d8 Avoid FLATTEN_STATIC_TRANSFORMS optimization for non-Geometry drawables 8 years ago
scrawl e4c12e5e56 optimizer: don't merge Geometry that has transparency sorting enabled 8 years ago
scrawl ebfd845eae optimizer: run MERGE_GEOMETRY after removing redundant nodes 8 years ago
scrawl 43f31d6e54 optimizer: fix MERGE_GEOMETRY to work with Geometries not attached to a Geode 8 years ago
scrawl f2a323238f optimizer: merge groups as part of REMOVE_REDUNDANT_NODES 8 years ago
scrawl af716d4b61 optimizer: remove hardcoded condition in RemoveRedundantNodesVisitor 8 years ago
scrawl 698738c649 optimizer: use asXYZ() instead of dynamic_cast 8 years ago
scrawl f7cb4bd245 optimizer: remove some cruft 8 years ago
scrawl e33829d493 Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
Remove optimizers that won't be used.
8 years ago
scrawl 5e2335f250 Use the osgUtil::Optimizer post loading in the SceneManager 8 years ago
scrawl 305cccd263 Don't print Geometry data (vertices, triangles, etc.) in showscenegraph 8 years ago
scrawl 4e5a1e6123 nifloader: improve setting of DataVariance 8 years ago
scrawl 1d6b5b2a52 Add StringUtils::CiComp operator 8 years ago
scrawl 6e996bf2a3 Create TriShapes with an identity transform as a Group 8 years ago
scrawl 6e5d9efa93 Remove NifLoader::optimize, to be replaced with something better 8 years ago
scrawl c231b06320 Remove boneOffset node after using it 8 years ago
scrawl d75a3fd0fb Add SharedStateManager to the stats panel 8 years ago
scrawl 8f79fa3d72 Add resource statistics panel opened with F4 8 years ago
scrawl 3693f05ef5 Transform world-space particle systems in update callback so that animations are accounted for 8 years ago
scrawl c45013c983 Fix particle systems not being rendered in their first frame 8 years ago
scrawl 4aa40d16bc Increase the importance of light radius when sorting lights (Bug #2759) 8 years ago
scrawl 3f27c8cc97 Always print context for script warnings to remove the need for verbose option
(Fixes #2813)
8 years ago
scrawl 3b24bb9a5e Use OS X cursor workaround for GL_VENDOR ATI and add an environment variable for control 8 years ago
scrawl aa8459b5c7 Revert "Remove redundant allocations for NIF meshes"
This reverts commit a7c5beb7c5.

Conflicts:
	components/nif/data.cpp
	components/nifbullet/bulletnifloader.cpp
	components/nifosg/nifloader.cpp
8 years ago
scrawl 6a37909ee7 Revert "Fix race conditions caused by Array <-> GLBufferObject interactions (Bug #3580)"
This reverts commit 115e563a7a.
8 years ago
scrawl 57b585570a Preload magic effect visuals of the player's selected weapon/spell 8 years ago
scrawl ddd6605608 Move WNAM out of LandData to avoid redundant (de)allocations on startup 8 years ago
scrawl e00b420f68 Move saving of LandData into Land::save 8 years ago
scrawl 325bf66653 Return const Land in ESMStore 8 years ago
Marc Zinnschlag 93c5630e02 Merge remote-tracking branch 'matahualpa/openmw-cs_tablecontents' 8 years ago
scrawl 892d1b162d nifloader: ignore nodes named 'bounding box' (Fixes #3650) 8 years ago
MAtahualpa b4ef9e2314 Update loadbook.cpp 8 years ago
MAtahualpa 5a58ab1837 Update loadbook.hpp 8 years ago
scrawl bbcba57495 Disable hitAttemptActorId saving code for now 8 years ago
scrawl 2ea0db1d1a Merge pull request #1198 from Allofich/combat
Make combat engagement logic more like vanilla
8 years ago
scrawl 67e4a7e37b Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead 8 years ago
scrawl d141b98f0c Add base animations to preloadCommonAssets 8 years ago
scrawl 839928e210 Fix light data being reset for the wrong light 8 years ago
scrawl a46593fa74 Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread 8 years ago
scrawl d3e1dbe920 Fix race conditions in terrain loader caused by static variables 8 years ago
scrawl 4d53ab6c32 nifloader: attempt to remove redundant root node when a Skeleton is added 8 years ago
scrawl 2a42c4781e nifloader: override animflags instead of accumulating them 8 years ago
scrawl 0187f2ce4c nifloader: combine animFlags and particleFlags (Bug #2100) 8 years ago
scrawl bccfd6cef8 nifloader: handle textures with no image that are later assigned in a FlipController
As found in vurt's trees (Bug #2100)
8 years ago
scrawl 792f505b2a Fix potential crash in ShaderVisitor for textures with no image assigned 8 years ago
scrawl 45ae8d5ffa Add support for GL_AMBIENT colorMode to shaders as required by particle systems 8 years ago
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%
8 years ago
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.
8 years ago
Allofich 5d2090684a Store mHitAttemptActorId in save files 8 years ago
scrawl a1069dce3c Change UnrefQueue to accept osg::Referenced instead of osg::Object 8 years ago
scrawl 33e654f94d Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls 8 years ago
scrawl c95868969b Early out for scene graphs with no update callbacks in SceneManager::notifyAttached 8 years ago
scrawl 767eba941f Speed up finding of attachment node by using the cached nodeMap 8 years ago
scrawl a76d693627 Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal() 8 years ago
scrawl 30b101b175 Fix build error in OSG_USE_FLOAT_MATRIX=OFF mode due to a double implicit conversion to double (pun doubly intended) 8 years ago
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
8 years ago
scrawl 84a92e665c Improve performance in RigGeometry by optimizing for the most common case of identity geomToSkelMatrix 8 years ago
scrawl f3045331f1 Fix regression in handling of NiZBufferProperty 8 years ago
scrawl 53e4db8a8f Add dummy serializer for CameraRelativeTransform to allow serializing content of Sky Root 8 years ago
scrawl c5f8ff6e0e Add names to several nodes for debugging purposes 8 years ago
scrawl 851f61ac82 Always assign osg::Material when a material controller is used 8 years ago
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 8 years ago
scrawl 960d4a96c3 Reduce the number of osg::Material state by setting the default state on the graph root 8 years ago
scrawl e399e10607 Add missing lock in shareMaterial 8 years ago
scrawl 34deb6e7b1 Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes 8 years ago
scrawl e90941a8b3 Wrap the scene template reference in another object for const correctness and to avoid it from being serialized with the osgDB serializer 8 years ago
Allofich 0f20312012 Fix MSVC warnings 8 years ago
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).
8 years ago
scrawl ac61535d2c optimize OSGVertexBuffer by double buffering the vertex array instead of recreating it on every modification 8 years ago
Leon Krieg 170e723cc7 Handle SDL event 0x304 by doing nothing (#3670) 8 years ago
scrawl eae35af13d Check if the bounding box changed before calling dirtyBound() 8 years ago
scrawl aafff1deb6 Fix memory leak 8 years ago
scrawl cca75499ee Clear the Skeleton's bone cache when a node is added/removed (Fixes #3663) 8 years ago
scrawl c0faeea938 RigGeometry check if mesh has normals (Fixes #3667) 8 years ago
Aussiemon 369272fc70 Handle SDL event 0x302 by doing nothing 8 years ago
mrohrlach f0f78c9d64 Slight adjustments to disintegration fix 8 years ago
mrohrlach 9624d8aade Added new method and variable to track float remainders of disintegration effections 8 years ago
MiroslavR 99bcf47167 Implement NiSphericalCollider (Closes #3644) 8 years ago
scrawl 5297d7b5be Merge pull request #1137 from nikolaykasyanov/osx-structure
[macOS] Move all resources files inside application bundles (fixes #3566)
8 years ago
Nikolay Kasyanov db69342b5d [macOS] Move all configs & resources into app bundles
Fixes #3566 (https://bugs.openmw.org/issues/3566).
8 years ago
scrawl 505250f6ec Do not use architecture dependent type size_t in esm format (Fixes #3633) 8 years ago
scrawl 9d125bcaa2 Merge pull request #1129 from PhillipAnd/phillipand-cmake-fix
Fix various build issues with Visual Studio environment
8 years ago
Phillip Andrews c18fc113e5 Changed missing library dependencies to simple fix 8 years ago
Allofich 3420121c3f Fix shadowing warnings 8 years ago
Allofich 125e94ef0e Fix shadowing warnings 8 years ago
Assumeru f6ef1ce276 Fix Calm/Frenzy/Demoralize/Rally Creature weakness and resistance 8 years ago
MiroslavR 301dd77efb Save controls state (Fixes #3598) 8 years ago
MiroslavR 11565b5966 Make actors with non-portable lights in inventory glow (Closes #2042, #3338) 8 years ago
scrawl 5c94e2324f Add missing use plugin macro for static build 8 years ago
Allofich f6f16b68de Don't let Weakness to Magicka affect paralysis 8 years ago
scrawl 37bfa88b2d Merge pull request #1094 from Allofich/alchemy
Fix reversed use of alembics and retorts
8 years ago
Allofich 498976775a Fix reversed use of alembics and retorts 8 years ago
scrawl 0c981b6fe5 Fix typo in script opcode (Fixes #3583) 8 years ago
Allofich 6ec37b5cfb Fix shadowing warnings 8 years ago
scrawl cd4b182091 Merge pull request #1051 from Allofich/textures
Use spell effect particle textures
8 years ago
Allofich a8e9f2df67 Cleanup 8 years ago
Allofich be96ff1fd1 Remove redundant parameter 8 years ago
scrawl 8f5347b79b Update comment, osgAnimation::RigGeometry is no longer used 8 years ago
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.
8 years ago
Allofich a033ba3bd2 Override spell textures by NiTexturingProperty 8 years ago
emlai fd2281e825 Fix typo 8 years ago
scrawl 4322e76cb6 Fix shadowing warnings 8 years ago
scrawl a5da3a269e Fix shadowing warnings 8 years ago
scrawl c968ebee96 Merge pull request #1033 from Allofich/warnings
Remove unnecessary destructor
8 years ago
Allofich 73463cd12f Remove unnecessary virtual destructor 8 years ago
scrawl f92560986e Merge pull request #1031 from kpp/fix_uninitiaized_escape_hash_filter
Fix uninitialized escape_hash_filter
8 years ago
Allofich 8c5aae0722 Add virtual destructors 8 years ago
Roman Proskuryakov 416466e53e Fix uninitialized escape_hash_filter 8 years ago
scrawl 341e3846c0 Use initial particle state to compute the initial bounding box (Fixes #3500) 8 years ago
scrawl dda5bfbc9f CharacterPreview no longer depends on osgViewer 8 years ago
scrawl 641005b317 Remove Camera's children before removing the Camera
Should work around OSG race condition ( http://forum.openscenegraph.org/viewtopic.php?t=16077 )
8 years ago
scrawl a44ba0e461 Merge pull request #966 from kpp/find_mygui
Find mygui
8 years ago
Roman Proskuryakov 4cffdb67d8 Uses case-sensitive MyGUI_* variables 8 years ago
scrawl 513e1da8a3 Remove unneeded casts 8 years ago
scrawl 33d27a2285 Use ref_ptr 8 years ago
scrawl 2f6075329b Clang warning fixes 8 years ago
scrawl 46538b9438 Merge pull request #1011 from devnexen/master
Mainly making compilable under OpenBSD.
9 years ago
Marc Zinnschlag aa1ed9b172 Merge remote-tracking branch 'aesylwinn/RenderWater' 9 years ago
David Carlier 83bab29e4b Mainly making compilable under OpenBSD.
Renaming one resource file as the space led to issue for qt/moc.
9 years ago
Aesylwinn 5753f52b47 Move water mesh + simple state generation to components library. 9 years ago
MiroslavR b65f379b7f Save scripted animation state (Fixes #1931, #2150, #3393) 9 years ago
Marc Zinnschlag 63fd1e8df7 Merge remote-tracking branch 'origin/master' 9 years ago
AnyOldName3 a0699ce20d Change some <> characters to double quotes, resolving compilation problems. 9 years ago
AnyOldName3 20f73f4a32 Relocate escape-related code to new files escape.hpp and escape.cpp. 9 years ago
MiroslavR d790747389 Implement deletion of moved references (Bug #3471) 9 years ago
AnyOldName3 7243583963 Change a switch to a series of if/else if/.../else, hopefully resolving compilation issues on OSX and Linux. 9 years ago
AnyOldName3 2b829f7f7b Move some stuff to a header, removing the need for a dodgy hack. 9 years ago
AnyOldName3 becc053555 Trick the software into building by using what I assume is a really dirty hack. 9 years ago
AnyOldName3 519fbab864 Remove useless print 9 years ago
AnyOldName3 32f0ded8f6 Fix bug in unescape filter, but still manage not to fix build issue. 9 years ago
AnyOldName3 423919abb5 Make it not build again (but theoretically enable the desired functionality). 9 years ago
AnyOldName3 59639e3988 Make it build again (but remove the new functionality). 9 years ago
AnyOldName3 d9d5a6561b Adjust the code so that it should (maybe) work, changing the compilation error to a less straighforward one. 9 years ago
AnyOldName3 95d2c7ea5c Attempt to unescape characters when constructing file paths, introducing compilation errors. 9 years ago
Marc Zinnschlag c17e1ca24a Merge remote-tracking branch 'anyoldname3/ignore-hash-test' 9 years ago
MiroslavR 721fa28c1e Fix assertion failure with NiTextureEffect missing source texture 9 years ago
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. 9 years ago
AnyOldName3 e6f78ae5b7 Switch indentation to spaces to remain consistent with the rest of the project 9 years ago
AnyOldName3 08df463c94 Separate declaration and definition of some static members to hopefully calm Travis down. 9 years ago
AnyOldName3 7475d90693 Fix dodgy include by changing backslashes to forwardslashes 9 years ago
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 9 years ago
AnyOldName3 1a0642f1db Make it work by realising that what boost::program_options calls validation is what any sane person would regard as parsing 9 years ago
AnyOldName3 195dd27780 Resolve obvious runtime error revealing more subtle one 9 years ago
MiroslavR 9c6739f1b3 Fix doubled particle spawn range 9 years ago
AnyOldName3 fbe6dc9704 Change compilation error to runtime exception and decide that inheriting from std::string may have been a bad idea in C++ 9 years ago
AnyOldName3 7697406467 Partially fix '2 overloads have similar conversions' compilation error 9 years ago
AnyOldName3 2a9b12bb3f Fix an issue preventing compilation, revealing another that doesn't make much sense. 9 years ago
AnyOldName3 c1ffc9e776 Remove a compilation error and set up framework to remove the others 9 years ago
AnyOldName3 e17e354e84 Make # only start a comment in openmw.cfg if it starts a line and introduct compilation errors 9 years ago
MiroslavR 2a987b6857 Do not skip inactive keyframe controllers (Bug #1942) 9 years ago
scrawl 9375cbea44 Make NIFFilePtr const 9 years ago
scrawl da0e20edcd Merge pull request #991 from MiroslavR/opface
Implement Face instruction (Feature #1424)
9 years ago
MiroslavR f6f3f71db5 Improve format specifiers for message boxes 9 years ago
MiroslavR dc0bc5b68c Implement Face instruction (Feature #1424) 9 years ago
scrawl 8f62ea2e80 Fix for "RigGeometry rendering with no skeleton" errors 9 years ago
scrawl b9b73d7b12 Replace "sys::default" with ESM::CellId::sDefaultWorldspace 9 years ago
scrawl d5f497c47d Pass the node path instead of the node visitor 9 years ago
scrawl 6fa95e72c5 Pass the traversal number instead of the node visitor 9 years ago
MiroslavR 54f52f7bae Implement effect removal for abilities (Fixes #3455) 9 years ago
MiroslavR b99611a730 Initialize mSpecIncreases in ESM::NpcStats::load 9 years ago
MiroslavR dfc62c99b4 Show correct class image in level-up dialog (Fixes #3443) 9 years ago
scrawl 824cd3be22 Do not set _boundingBoxComputed which is no longer used 9 years ago
scrawl 372f2e2f18 Merge pull request #962 from Allofich/AIPackageFixes
Duration fixes for Follow and Escort
9 years ago
Allofich 3bebbab78e Duration fixes for Follow and Escort 9 years ago
scrawl 197e81206a Assume mDeathAnimationFinished is true for older save files 9 years ago
scrawl a825882c6b Process death events at the end of the death animation (Fixes #1873) 9 years ago
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)
9 years ago
Allofich 55ac1fab68 Change Wander duration to run on a counter 9 years ago
Marc Zinnschlag b079db7913 Merge remote-tracking branch 'aesylwinn/EditPathgrid' 9 years ago
Roman Proskuryakov 3bcd23022a Rewrites FindBullet using LibFindMacros handling version properly 9 years ago
Aesylwinn b83f522ecd Changes to color scheme, slight change to drag indicator,
change tooltip description.
9 years ago
Aesylwinn 564d0db68c Move pathgrid abstraction handling to save code. 9 years ago
scrawl 3749821809 Choose a random death animation for actors that start the game as dead (Fixes #3397) 9 years ago
Aesylwinn 1781aaaa27 Drag indicator. 9 years ago
scrawl 04b537bf5f Minor cleanup 9 years ago
scrawl 85b0c4393b Remove obsolete code 9 years ago
scrawl 6e0c3b2413 Revert commit 16ac6e7aac (Fixes #3394) 9 years ago
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.
9 years ago
scrawl 7202072196 Freeze particle systems on construction if the AutoPlay flag is missing 9 years ago
scrawl 0c08f705c5 Make the ParticleSystemController freeze the particle system instead of the emitter (Bug #3390) 9 years ago
scrawl e30bb31a79 Handle the particle node's AutoPlay flag (Bug #3390) 9 years ago
Aesylwinn 32ba5bf8b8 Initial pathgrid editting, support for selection and movement. 9 years ago
scrawl fcbcc004a3 Don't use unordered_map 9 years ago
scrawl 17a0353a85 Fix forward declaration mismatch 9 years ago
scrawl a7e6219091 Merge pull request #939 from kpp/rewrite_esm_name_t
Rewrite ESM::NAME_T
9 years ago
Marc Zinnschlag b4e341e1e2 Merge remote-tracking branch 'aesylwinn/RenderPathgrid' 9 years ago
Roman Proskuryakov d5dfa89060 Rewrite NAME_T into FIXED_STRING. 9 years ago
Roman Proskuryakov 1e7d573f24 Fix uninitialized values in ESMWriter::save 9 years ago
Aesylwinn 14ae232938 Remove now unnecessary factory class.
It was originally used for storing normals, but that functionality
was removed.
9 years ago
Aesylwinn b11f5b2717 Make edges differently colored. 9 years ago
Aesylwinn 0eb863d8fc Change color to blue to match the pathgrid visibility selector in the
editor and slightly increase the scaling.
9 years ago
Aesylwinn 7f0cc6e583 Add a color gradiant to pathgrid nodes to make them less of an eyesore. 9 years ago
Aesylwinn 3d26ff08c4 Get rid of lighting. 9 years ago
Aesylwinn d141672b53 Pathgrid geometry creator 9 years ago
scrawl 5f34fb0c41 Remove call to MYGUI_DBG_BREAK which was removed in mygui-git 9 years ago
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.
9 years ago
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.
9 years ago
scrawl bc36269617 When a controller is present more than once in the same keyframe file, pick the first one (Fixes #2719) 9 years ago
scrawl 8052225460 Remove leftover call to setTexCoordArrayList 9 years ago
scrawl cc0afe901f Store a pointer to tangents array to avoid potential type casting issue 9 years ago
scrawl d1f6169889 Add special handling of RigGeometry tangents in ShaderVisitor 9 years ago
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.
9 years ago
scrawl c73ec71123 Revert "Store the RigGeometry's source vertices and normals directly"
This reverts commit 7a347e3483.
9 years ago
scrawl 60c8c4fdda Revert "Animate tangents in RigGeometry"
This reverts commit 9cf963b751.
9 years ago
scrawl 9cf963b751 Animate tangents in RigGeometry 9 years ago
scrawl 7a347e3483 Store the RigGeometry's source vertices and normals directly 9 years ago
scrawl 6f31b3d79f Add parallax mapping for objects 9 years ago
scrawl df6fd5f206 Recognize normalHeightMap in the ShaderVisitor 9 years ago
scrawl 157c11398d Add terrain parallax mapping 9 years ago
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.
9 years ago
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.
9 years ago
scrawl d7c7bb850b ToggleAI cleanup 9 years ago
scrawl d986b1a48b Add comment 9 years ago
scrawl 1abb77f8a1 Cleanup 9 years ago
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.
9 years ago
scrawl 50b8260a39 Disable VBOs in RigGeometry while investigating a crash possibly related to commit cda8a88f0d 9 years ago
scrawl aae43dbff5 Set the MorphGeometry vertex buffer object usage to GL_DYNAMIC_DRAW 9 years ago
scrawl 4eb090a8d0 Set the RigGeometry vertex buffer object usage to GL_DYNAMIC_DRAW 9 years ago
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).
9 years ago
scrawl 58e0e8bd4e Enable vertex buffer objects in RigGeometry 9 years ago
scrawl 0dbf44b414 Enable vertex buffer objects in MyGUI RenderManager now that OSG 3.4 is a dependency 9 years ago
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.
9 years ago
scrawl 84b8da7a09 Share the osg::Material on drawables
Reduces the number of GL calls / frame by ~4%.
9 years ago
scrawl abcfe9bcee Don't add empty text key objects 9 years ago
scrawl 02d23564dc Include cleanup 9 years ago
scrawl f898bf493f Don't use Geodes 9 years ago
scrawl 137dde7cf8 Include cleanup 9 years ago
scrawl 121bdd3e39 Update comment 9 years ago
scrawl 3e6cf17665 Warn about cellrefs with an empty refId (Bug #3238) 9 years ago
scrawl 0df975a4d7 Properly detach nodes in CopyRigVisitor (Fixes #3234) 9 years ago
scrawl 82b792f808 Eliminate dynamic_cast in BillboardCallback 9 years ago
scrawl 2eaf96e3bf Make ResourceManager destructor virtual 9 years ago
scrawl dd2fbfc0a2 Fix windows build 9 years ago
scrawl 3d6323f13a Force-enable hasWater() for exterior cells (Fixes #3222) 9 years ago
scrawl 563807ee53 Share the StateSet used to invert front face 9 years ago
scrawl 6e7c6fdd7e Implement NiTexturingProperty::DecalTexture 9 years ago
scrawl 30d06bfe0e Add comment 9 years ago
scrawl 64636bd85a Improve error reporting 9 years ago
scrawl 2821f46a18 Corpse clearing fix 9 years ago
scrawl 8791063110 Fix "RigGeometry rendering with no skeleton" warnings in rare cases 9 years ago
scrawl 1e5b4bea0a Don't create an unnecessary osg::Group when copying over a rig 9 years ago
scrawl 27577ce765 Add ESM::Land::DEFAULT_HEIGHT 9 years ago
Marc Zinnschlag ebaeabc962 Merge remote-tracking branch 'scrawl/respawn' 9 years ago
scrawl 3a2dccad4b Implement 'Show' script instruction 9 years ago
scrawl c3ef387208 Vanilla-compatible creature/NPC respawning (Fixes #2369, Fixes #2467) 9 years ago
scrawl f99cd15f00 Vanilla-compatible activate / onActivate (Fixes #1629)
See https://forum.openmw.org/viewtopic.php?f=6&t=3074&p=34618#p34635
9 years ago
scrawl 195c3b9967 Merge pull request #904 from sandstranger/disable_opengles_anddroid
disable opengl es for Android by default
9 years ago
scrawl cdccf03228 Fix mismatched delete 9 years ago
sandstranger a7b78b37f5 disable opengles for Android by default 9 years ago
scrawl 5f4ace1bc2 Implement support for sphere map NiTextureEffects (Fixes #1827) 9 years ago
scrawl 062410bd8c Don't incorrectly remove TexEnv state 9 years ago
scrawl 90a99991d1 Use empty() instead of !size() 9 years ago
scrawl 8bd16e4d5a Don't compute the world matrix multiple times 9 years ago
scrawl 055d35a2b0 Revert "Warn about particle emitters that have multiple parent node paths"
Not working correctly because osg won't ignore camera nodes.

This reverts commit 1667c807be.
9 years ago
scrawl 1667c807be Warn about particle emitters that have multiple parent node paths 9 years ago
Marc Zinnschlag f9f91d5386 Merge remote-tracking branch 'origin/master' 9 years ago
scrawl cee608e31b Make it work with appveyor's outdated OSG build 9 years ago
scrawl 8e826eefe6 Add missing initialization 9 years ago
scrawl e25e0a0600 ShaderVisitor: assume the first texture unit is the diffuseMap 9 years ago
scrawl e7682e04ae Cleanup 9 years ago
scrawl cdefee3e64 Add call to MultiObjectCache::releaseGLObjects 9 years ago
scrawl 4ca6e91292 Fix in-code default settings so that we don't attempt to use shaders in OpenCS 9 years ago
scrawl 8f81df2bd3 Cleanup 9 years ago
scrawl 0db7163363 Add specular mapping for terrain 9 years ago
scrawl 171e293641 ShaderManager: insert #line directives when including files 9 years ago
scrawl f01e8a6950 Add specular mapping for objects 9 years ago
scrawl 5cf2441b10 ShaderVisitor: support automatic recognition of normal maps based on file pattern
Introduce new settings 'auto use object normal maps', 'auto use terrain normal maps', 'normal map pattern'
9 years ago
scrawl 6a0ac824bd Fix terrain error in OpenCS 9 years ago
scrawl 7071d286e8 Fix inverted check for 16-bit indices 9 years ago
scrawl 4e5462bc19 Don't attempt to create a collision shape for an empty TriShape 9 years ago
scrawl ca0e1fe0e0 Set the osg::Material on the terrain root node 9 years ago
scrawl 6000e48bba Add terrain shaders and normal map support
Textures with _n filename suffix are automatically recognized as terrain normal maps.
9 years ago
scrawl 5e12a1b4ef Add enchanted item glow to the shader 9 years ago
scrawl 268594dcf1 Recreate shader in NpcAnimation::setAlpha 9 years ago
scrawl a73512afb7 Add shader settings to settings.cfg 9 years ago
scrawl 21c4dffed2 Add #include support in shaders 9 years ago
scrawl 22cc5c0965 Cache the Program 9 years ago
scrawl 456816f707 Use diffuse.a / vertex.a, use material emission 9 years ago
scrawl 3e854a84a2 Slightly more efficient applying of light state 9 years ago
scrawl f93b7ec943 Fix light state issue
GLSL does not respect gl_Disable(GL_LIGHTX), so we have to set unused lights to zero.

Sadly, this change makes the applying of the modelView matrix less efficient. So far I couldn't find a better solution, osg's state tracker keeps getting in the way. :(
9 years ago
scrawl 9376811213 Vertex lighting shader 9 years ago
scrawl a9ad1b09e2 Introduce ShaderManager & ShaderVisitor
Actual shaders still to be written.
9 years ago
scrawl e647ee5424 Support RGB and RGBA embedded textures in NIF files (Fixes #2295) 9 years ago
scrawl a9ac108382 Fully read NiPixelData 9 years ago
scrawl 606758d72f NifLoader: create the BumpTexture slot, but don't use it yet 9 years ago
scrawl 4cd4131da9 NifLoader: assign a name to created textures
This name will tell the shader visitor how to handle that texture.
9 years ago
scrawl 50e92c8136 NifLoader: move texture property handling to a separate function 9 years ago
scrawl acf44fd9e5 NifLoader: handleTextureControllers outside of the NumTextures loop 9 years ago
scrawl e05d975020 Change the way that texture filtering settings are applied at runtime 9 years ago