scrawl
5f4ace1bc2
Implement support for sphere map NiTextureEffects ( Fixes #1827 )
2016-02-24 21:06:41 +01:00
scrawl
90a99991d1
Use empty() instead of !size()
2016-02-22 19:06:12 +01:00
scrawl
8bd16e4d5a
Don't compute the world matrix multiple times
2016-02-22 18:58:19 +01:00
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
.
2016-02-22 18:10:25 +01:00
scrawl
1667c807be
Warn about particle emitters that have multiple parent node paths
2016-02-22 15:21:06 +01:00
scrawl
8f81df2bd3
Cleanup
2016-02-20 20:34:56 +01:00
scrawl
e647ee5424
Support RGB and RGBA embedded textures in NIF files ( Fixes #2295 )
2016-02-18 19:37:56 +01:00
scrawl
606758d72f
NifLoader: create the BumpTexture slot, but don't use it yet
2016-02-18 19:37:56 +01:00
scrawl
4cd4131da9
NifLoader: assign a name to created textures
...
This name will tell the shader visitor how to handle that texture.
2016-02-18 19:37:56 +01:00
scrawl
50e92c8136
NifLoader: move texture property handling to a separate function
2016-02-18 19:37:56 +01:00
scrawl
acf44fd9e5
NifLoader: handleTextureControllers outside of the NumTextures loop
2016-02-18 19:37:55 +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
scrawl
be6ea3d607
Account for UV coordinate flip in UVController ( Fixes #3203 )
2016-02-11 16:22:54 +01:00
scrawl
9f729667fb
Remove debug output
2016-02-09 21:16:11 +01:00
scrawl
9e53e12c70
More renaming of TextureManager -> ImageManager
2016-02-05 23:10:27 +01:00
scrawl
f99f403dda
Rename TextureManager to ImageManager
2016-02-05 23:03:53 +01:00
scrawl
6ef848b7c5
Remove TextureManager::getTexture2D
...
Instead use getImage and let the caller create the Texture. Sharing of textures is then handled in post by the SharedStateManager.
This is closer to what the OSG serializer does.
Streamlines the TextureManager and will make it easier to multithread.
2016-02-05 23:01:11 +01:00
scrawl
5b972ee777
Move texture filtering settings to SceneManager
...
Practical benefits:
- Filter settings are now applied to native OSG format models. These models do not use TextureManager::getTexture2D since the model itself specifies a Texture.
- The GUI render manager will be able to use its own separate textures, making it easier to turn off filtering for them.
2016-02-05 21:03:10 +01:00
scrawl
2eda495f89
Build fix for OSG 3.2
2016-02-03 19:05:15 +01:00
scrawl
06ed20abf8
Use the initial pose of a MorphGeometry for object placement ( Fixes #3136 )
2016-02-03 18:53:38 +01:00
scrawl
6b48acaf0e
Don't optimize TriShapes with controllers ( Fixes #3143 )
2016-02-01 21:01:17 +01:00
scrawl
daa94cc50e
Fix cppcheck warnings
2016-01-03 20:19:38 +01:00
scrawl
723c392a73
NifLoader: fall back to the first UV set when encountering invalid UV set references
2015-12-17 04:05:39 +01:00
scrawl
0731595c2b
Wrap a Texture2D in a ref_ptr
2015-12-17 03:38:38 +01:00
scrawl
31c3324705
Don't assume the emitter node is a Group ( Fixes #3082 )
...
This would be a correct assumption by default, but is no longer true when the NifLoader::optimize() function optimizes the graph.
2015-12-17 03:38:26 +01:00
scrawl
64424e7262
Move keyframe loading out of SceneManager to new KeyframeManager
2015-12-13 15:31:07 +01:00
scrawl
e3d3380c8c
Remove return value for in-place toLowerStr
2015-12-07 22:43:08 +01:00
scrawl
1d5af3c9c8
Remove unneeded cast
2015-12-06 15:44:27 +01:00
scrawl
e39f49a88f
OSG extensions namespace fixes
2015-12-06 15:27:43 +01:00
scrawl
a29aef14f1
Eliminate a dynamic_cast in ParticleSystemController
2015-12-02 14:59:32 +01:00
scrawl
6cf2c35235
Don't rely on the _particles vector implementation details
...
This will allow compiling OpenMW with an osgParticle optimization to be pushed to OpenMW/osg.
2015-12-02 14:59:32 +01:00
scrawl
c9d710f334
Use a typedef to avoid conditional compiling
2015-12-01 16:18:19 +01:00
Alexander "Ace" Olofsson
cfcbd20d99
Let's put it as a MSVC-only fix for now
2015-12-01 04:19:30 +01:00
Alexander "Ace" Olofsson
e42f4999bd
Quick fix for building on MSVC
2015-12-01 04:06:34 +01:00
scrawl
e5ec4fe042
Add const specifier
2015-11-30 21:02:26 +01:00
scrawl
695fcf41c4
Optimize ValueInterpolator / KeyframeController
...
Cache the current position in the animation track and attempt to reuse it in the next frame.
Decent speed up for the Update phase, about 0.3 ms faster in Balmora.
2015-11-30 20:53:47 +01:00
scrawl
ac366f1603
Fix the rig bounds being updated twice per frame
...
Unlike what I expected, the osgUtil::UpdateVisitor is set to traverse all children (not only active children). The FrameSwitch was thus traversing both RigGeometries part of the double-buffering scheme, rather than only the one active in the current frame.
2015-11-30 05:42:31 +01:00
scrawl
38510a56c2
GeomMorpherController: do not dirty the MorphGeometry unless necessary
2015-11-22 21:24:00 +01:00
scrawl
0d49c7fa51
GeomMorpherController: fix double update of MorphGeometry
2015-11-22 21:23:46 +01:00
scrawl
28b20428b9
Remove dynamic_cast in GeomMorpherController
2015-11-22 20:33:22 +01:00
scrawl
fc7456e0a1
Explicitely opt for float matrices in performance critical places
2015-11-22 19:54:27 +01:00
scrawl
36e91617c9
Revert "NifOsg::Emitter: ignore psToWorld scale"
...
This reverts commit 7c16630874
.
Fixes #3022
2015-11-19 22:09:32 +01:00
scrawl
9b96fcc224
Set the particle scaleReferenceFrame to local space
2015-11-19 15:49:42 +01:00
scrawl
21e25f4756
Use the traversalNumber as frame number
2015-11-16 20:03:45 +01:00
scrawl
7c16630874
NifOsg::Emitter: ignore psToWorld scale
...
Seems wrong to me, but MW appears to do it that way. Without this fix, the light_de_candle_08_64 from http://www.nexusmods.com/morrowind/mods/41654/ has flame particles in the wrong spot.
2015-11-13 00:23:00 +01:00
scrawl
0965a9059d
Handle NiLODNode using osg::LOD ( Fixes #3008 )
2015-11-12 19:52:36 +01:00
scrawl
1edcb219a7
Leak fix
2015-11-11 16:27:17 +01:00
scrawl
fc93dc6195
Remove a stray method declaration
2015-11-11 01:32:31 +01:00
scrawl
0409e5a043
Use OSG_VERSION_GREATER_EQUAL / LESS_THAN rather than MIN_VERSION_REQUIRED (cosmetic change)
2015-11-10 18:28:58 +01:00