1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 17:59:56 +00:00
Commit graph

599 commits

Author SHA1 Message Date
psi29a
b011809056 Merge branch 'master' into 'sort_me_baby_one_more_time'
# Conflicts:
#   components/nif/niffile.cpp
2022-02-17 09:24:50 +00:00
elsid
2a87cf1720
Replace unordered_map by switch statement
Add handling for missing Nif::BSLightingShaderType::ShaderType_SkinTint. Use
string_view instead of string to avoid lifetime issues for returning value.
osg::Object::setUserValue will anyway copy string.
2022-02-11 22:12:39 +01:00
elsid
e1fe501013
Use proper type for Record::recType 2022-02-11 21:52:00 +01:00
glassmancody.info
712107de2d nisortadjust support 2022-02-10 11:59:49 -08:00
psi29a
9183fa897e Merge branch 'particle_vertex_palooza' into 'master'
Support vertex emitters (#6592)

Closes #6592

See merge request OpenMW/openmw!1638
2022-02-09 08:35:09 +00:00
glassmancody.info
a05e029aa0 search for stencil enabled flag correctly 2022-02-08 13:49:05 -08:00
glassmancody.info
88f02913d5 use vertex emitters on array particle controllers when appropriate 2022-02-07 19:46:42 -08:00
glassmancody.info
8c2c322d92 add stencil to water RTTs, reword some comments 2022-02-07 14:35:15 -08:00
glassmancody.info
bbc9c53423 support morrowind stenciling 2022-02-07 11:51:59 -08:00
Alexei Dobrohotov
4521d3987c Fix out of bounds UV set handling 2022-01-28 01:15:15 +03:00
elsid
3f14011087
Support multiple parents for NIF nodes
Choose a parent base on which node is used to iterate over children nodes.
This leads to duplicate handing of child nodes. A node will be handled so many
times how many parents it has.

For example:
p1 p2
 \ /
  c

Will be handled as:
p1 p2
|  |
c  c

If c has children they will be handled X times c is handled.
2022-01-22 01:02:31 +01:00
psi29a
d8d7a3b372 Merge branch 'softparticles_patch' into 'master'
Shadervisitor adjustments and Mac OS fix for soft particles

See merge request OpenMW/openmw!1380
2022-01-06 13:13:52 +00:00
Alexei Dobrohotov
a64057fb36 Some NIF cleanup
Clean up keyframe controller construction
Make LOD and switch node generation static
Clarify decal map implementation
2021-12-11 16:16:16 +03:00
elsid
a665a38aca
Use MurmurHash3_x64_128 for file hash 2021-11-21 17:05:59 +01:00
glassmancody.info
9389cfaa42 mac os driver workaround and shadervisitor fixes 2021-11-20 18:39:20 -08:00
Cody Glassman
d85f772269 Depth refactor 2021-11-21 02:25:05 +00:00
Alexei Dobrohotov
50b90a594d Loading and basic handling of BSLightingShaderProperty 2021-11-13 22:52:45 +03:00
psi29a
ba0aae06ca Merge branch 'morphyslaw' into 'master'
Morph geometry more like NifSkope (bug #6416)

Closes #6416

See merge request OpenMW/openmw!1389
2021-11-13 18:42:17 +00:00
psi29a
41bd20e358 Merge branch 'bullet_shape_hash' into 'master'
Store BulletShape source file name and content hash

See merge request OpenMW/openmw!1379
2021-11-13 13:33:22 +00:00
Alexei Dobrohotov
c7edca559b Morph geometry more like NifSkope (bug #6416) 2021-11-13 15:58:59 +03:00
elsid
d7041613ef
Store BulletShape source file name and content hash 2021-11-11 00:27:18 +01:00
Alexei Dobrohotov
9880c43c86 Add specular strength shader parameter 2021-11-10 19:58:06 +03:00
psi29a
5836d0225f Merge branch 'leave_butter_to_soften' into 'master'
Soft Particles (#6128)

See merge request OpenMW/openmw!980
2021-11-09 14:16:47 +00:00
Alexei Dobrohotov
7a0c13fcf8 Make better use of std::clamp 2021-11-06 08:47:32 +03:00
Bo Svensson
356e9d7cf0
refactors osg::Callback virtual inheritance (#3200)
With this PR we refactor `SceneUtil::KeyframeController` not to require `virtual osg::Callback` inheritance. I suppose such `virtual` overhead is not justified here because it negatively impacts many other classes we derive from `osg::Callback`.
2021-10-30 22:43:18 +02:00
glassmancody.info
8c3b00164e soft particles 2021-10-30 12:19:31 -07:00
Bo Svensson
87d52dc1fd
fixes coverity-ci warning 2021-10-06 10:04:03 +00:00
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback (#3147)
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
2021-10-05 14:21:12 +02:00
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback (#3144)
* nodecallback.hpp

* lightmanager.hpp

* lightmanager.cpp

* lightmanager.hpp

* nodecallback.hpp

* nodecallback.hpp

* [ci skip]

* lightmanager.hpp

* nodecallback.hpp

* nodecallback.hpp

* lightmanager.cpp

* lightmanager.cpp

* nodecallback.hpp

* [ci skip]

* [ci skip]

* controller.cpp

* [ci skip]

* osgacontroller.cpp

* keyframe.hpp

* controller.hpp

* keyframe.hpp

* [ci skip]

* keyframe.hpp

* animation.hpp

* [ci skip]

* weaponanimation.cpp

* nodecallback.hpp
2021-10-04 10:56:55 +02:00
Bo Svensson
2568f119a4
reapplies PR without npe (#3137)
* avoids creating empty statesets on drawables

Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.

* renderingmanager.cpp

* nifloader.cpp

* nifloader.cpp

* shadervisitor.cpp
2021-10-01 10:11:00 +02:00
Andrei Kortunov
e109d86489 Revert "avoids creating empty statesets on drawables (#3132)"
This reverts commit 957c25a491.
2021-09-29 21:01:22 +04:00
Bo Svensson
957c25a491
avoids creating empty statesets on drawables (#3132)
* avoids creating empty statesets on drawables

Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.

* renderingmanager.cpp

* nifloader.cpp
2021-09-29 09:58:19 +02:00
Alexei Dobrohotov
0922d0b105 Clean up text key extraction 2021-08-22 05:56:30 +03:00
Alexei Dobrohotov
956edca524 Don't re-enable specularity w/ material controller for MW models 2021-08-09 21:17:13 +03:00
Alexei Dobrohotov
1fc7cb8191 Don't use FreezeOnCull for any particle system (#4744) 2021-08-08 03:36:35 +03:00
glassmancody.info
09e03fde2e refactor and fix wobbly shores 2021-08-04 17:49:57 -07:00
glassmancody.info
70fac33940 initial reverse-z depth implementation 2021-08-04 17:39:11 -07:00
Alexei Dobrohotov
11694ba87f Correct dark map and detail map alpha handling
Comment texenv usage in NIF loader
2021-07-29 04:48:59 +03:00
AnyOldName3
e42b3bf960 Adapt destination alpha factor for AMD
As discussed in the comment, it's unclear to me whether this is a driver
bug or mandatory behaviour only AMD implement.

Some more context is here:
https://gitlab.com/OpenMW/openmw/-/issues/6119#note_618245903
2021-07-04 23:00:33 +01:00
glassmancody.info
4bbbbb00f6 use particle data for particle system quota 2021-05-14 10:52:19 -07:00
Dobrohotov Alexei
19f0b80983 Improve null root handling 2021-05-05 02:41:30 +03:00
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
Rework warnings settings
2021-05-01 19:03:43 +01:00
Dobrohotov Alexei
971ba81ed2 Use higher level transformations in UVController 2021-04-30 18:28:03 +03:00
Dobrohotov Alexei
24f4bf9c28 Fix NiUVController UV offset calculations (bug #5995) 2021-04-30 14:38:16 +03:00
Andrei Kortunov
6d351b2bdd Fix MSVC 4706 warnings 2021-04-23 22:53:59 +04:00
Andrei Kortunov
2d869ca9ff Fix node masks signed/unsigned mismatch 2021-04-20 10:52:51 +04:00
Andrei Kortunov
7d5c5f8a24 Do not assign negative values to unsigned variables 2021-04-19 16:08:19 +04:00
fredzio
fda639eb57 Remove unused forward declarations 2021-04-11 14:46:51 +02:00
Alexei Dobrohotov
2fdbe9b3f6 Handle BSShader[PP/No]LightingProperty 2021-03-22 01:55:58 +03:00
Dobrohotov Alexei
952b31ac5c NiZBufferProperty: handle depth test flag (bug #5902) 2021-03-15 13:40:02 +03:00
Alexei Dobrohotov
46ec40fa92 Make sure NIFLoader avoids working further with empty geometry 2020-12-18 01:22:34 +03:00
Alexei Dobrohotov
1e6156e04a Turn all NIF records into structs 2020-12-16 01:54:31 +03:00
Alexei Dobrohotov
c0b9823372 Read BSShaderProperty and handle NiGeometry properties 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
42226533d8 Handle BSLODTriShape
Its levels of detail are currently not handled
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
8fd45d85ec Unify NiGeometry/NiGeometryData handling 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
8ca324af0a Handle emissive TexEnv creation in one place 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
5310dd6807 Clean up particle vertex handling 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
1c83e4936d Read BSShaderTextureSet and NiColorInterpolator
Accept boolean-based and 4D vector-based NiInterpolators in ValueInterpolator constructor
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
db9c174ca8 Make NIF particle node handling more generic 2020-11-30 12:33:18 +03:00
Andrei Kortunov
8084a336b5 Replace zeroes and nulls by nullptrs 2020-11-29 11:14:07 +04:00
AnyOldName3
86fad60c7d Merge branch 'roots' into 'master'
Handle multiple root nodes (bug #5604)

Closes #5604

See merge request OpenMW/openmw!428
2020-11-29 01:25:22 +00:00
Alexei Dobrohotov
5b6377b061 Handle multiple root nodes (bug #5604) 2020-11-28 13:25:39 +03:00
Nelsson Huotari
f78a5d795c Separate keyframes logic to provide basis for osgAnimation integration. 2020-11-18 22:48:47 +02:00
Alexei Dobrohotov
8a6d3d1b4f Minor fixes
Fix extra semicolon
Disable collision avoidance if AI is disabled
2020-11-13 22:53:12 +03:00
Evil Eye
94c89e6d5e check ValueTs 2020-11-13 16:41:45 +01:00
Evil Eye
d8897c4509 remove inline and use enable_if_t 2020-11-12 20:46:45 +01:00
Evil Eye
d8d4351962 fix MSVC2017 builds 2020-11-12 19:45:32 +01:00
Alexei Dobrohotov
a46699fb1e Handle NiGeomMorpherController interpolator list 2020-11-10 23:23:11 +03:00
Alexei Dobrohotov
f3f5dcb016 Read a few more NIF types
NiFloatInterpolator, NiPoint3Interpolator, NiTransformInterpolator, NiBoolInterpolator
Update a few existing controller records
Update NiSkinInstance
2020-11-10 22:37:39 +03:00
Alexei Dobrohotov
c79f509652 Misc NIF loader improvements
Bullet NIF loader cleanup
Collect all extra records of a node
Remove code duplication in geometry type detection in OSG-side NIF loader
2020-11-08 13:23:18 +03:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
Alexei Dobrohotov
7e521788e9 Try to fix build 2020-10-26 15:09:31 +03:00
Alexei Dobrohotov
4fc5e22e9e NIF fixes and cleanup
Get rid of NodeIndexHolder
Use unsigned 32-bit type for NIF record index
Fix calculation of the number of UV sets
2020-10-26 02:51:25 +03:00
Alexei Dobrohotov
71056c6014 Clean up palettized NiPixelData loading 2020-10-25 14:37:29 +03:00
Andrei Kortunov
065ed5138e Use emplace_back instead of push_back 2020-10-18 10:27:35 +04:00
Andrei Kortunov
8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
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
Alexei Dobrohotov
302d8eed27 Clean up Roll- and FlipController implementation 2020-10-06 20:47:06 +03:00
Alexei Dobrohotov
29ccb09da5 Introduce some extended NIF definitions 2020-10-04 13:18:56 +03:00
AnyOldName3
a338e8c561 Actually set the uvSet value
This got lost when uvSet was made into a local variable.
2020-09-24 17:13:09 +01:00
AnyOldName3
b2cb98d30e Fix NiFlipController
NiFlipControllers *always* affect the base texture, even if no base
texture is bound. When no base texture is bound, they default to UV set
zero and to having wrapped UV coordinates, instead of using the settings
for the disabled base texture.
2020-09-16 23:03:42 +01:00
Bret Curtis
05a19f4f93
Merge pull request #2984 from Capostrophic/optimizer
Avoid optimizing animated shapes once again (regression #5565)
2020-08-07 22:09:02 +02:00
Capostrophic
aa131262ea Implement quadratic interpolation for scalars and vectors 2020-08-07 11:13:53 +03:00
Capostrophic
35de34c019 Don't clamp GeomMorpherController recovered weight value
Seems that Morrowind doesn't do it.
2020-08-07 11:13:53 +03:00
Capostrophic
8c213cbfb1 Avoid optimizing animated shapes once again (regression #5565) 2020-08-05 22:39:48 +03:00
Capostrophic
3d31d21bc2 Don't encapsulate NIF transformation changes
Currently that causes issues
2020-07-29 20:46:36 +03:00
Capostrophic
46825e8a4d Move NIF record index back to a separate user object
This makes sure it's never erroneously optimized out. NodeIndexHolders don't need to be cloned as their record index is never supposed to be changed.
2020-07-26 09:57:43 +03:00
Capostrophic
f93655e803 Encapsulate NIF transform changes in NifOsg::MatrixTransform 2020-07-26 09:57:43 +03:00
Capostrophic
ad87289d59 Fix NifOsg::MatrixTransform constructor inheritance 2020-07-26 09:57:43 +03:00
Capostrophic
a61267f57d Replace NodeUserData with a custom transform node 2020-07-26 09:57:43 +03:00
Capostrophic
4c9cefefdd Get rid of NifOsg::CollisionSwitch 2020-07-26 09:57:43 +03:00
Bret Curtis
0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
Replace OpenThreads by std types
2020-07-04 13:11:23 +02:00
Frederic Chardon
f268bc13f1 Do not set particle lifetime to 0 (#5472) 2020-07-01 11:04:18 +00:00
elsid
40ad87bc4d
Replace OpenThreads by std types 2020-06-25 22:16:09 +02: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 lost a hitlab login
f12879a04c allow statesetupdater as cullcallback = faster + works in paging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
Capostrophic
7aca18f92b Handle NiLines (feature #5445) 2020-05-30 19:09:34 +03:00
Capostrophic
74a74209ac Allow junk (data-less) NiParticleColorModifiers 2020-05-26 15:08:10 +03:00
Capostrophic
7a9403aeed Remove unnecessary casts 2020-05-26 15:01:26 +03:00
Capostrophic
fc9a10ba48 Streamline node controller handling
Reduce code duplication
Allow non-animated nodes controlled by NiVisController to be optimized out
2020-05-26 15:00:47 +03:00
Capostrophic
89a2c69a61 Support particle node transformations 2020-05-25 23:51:15 +03:00
elsid
a59e25e093
Optimize MWRender::Animation::hasAnimation
Use a set to check for group start existence.
Reduce time taken from 2.6% to 0.08% and
MWMechanics::MechanicsManager::update from 7% to 5%
in relative CPU time usage for a scene with ~100 actors.
2020-05-21 16:21:11 +02:00
Capostrophic
b665fed8f2 Introduce NiGeometry abstraction 2020-05-14 10:52:27 +03:00
Capostrophic
30558c2434 Try to resolve CI concerns 2020-05-14 10:00:33 +03:00
Capostrophic
915ffe2241 Handle non-node roots more gracefully (bug #5416) 2020-05-14 00:57:00 +03:00
Capostrophic
30fc2e3e5e Add basic NiPathController support (movement only) 2020-05-13 18:01:22 +03:00
Capostrophic
b91d0d889f Fix warning
/home/travis/build/OpenMW/openmw/components/nifosg/nifloader.cpp:615:42: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                    if (hasVisController |= (ctrl->recType == Nif::RC_NiVisController))
                        ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/travis/build/OpenMW/openmw/components/nifosg/nifloader.cpp:615:42: note: place parentheses around the assignment to silence this warning
                    if (hasVisController |= (ctrl->recType == Nif::RC_NiVisController))
                                         ^
                        (                                                             )
2020-05-10 14:38:07 +03:00
Capostrophic
1bf2ddac4d Cleanup
Move static variable declaration out of the loop
Remove redundant boolean argument from applyDrawableProperties()
Improve HeightCullCallback class formatting
2020-05-07 18:54:09 +03:00
Bret Curtis
f51476a3c5
Merge pull request #2816 from Capostrophic/switchlod
CollisionSwitch and Switch/LOD node fixes
2020-05-01 23:49:08 +02:00
Bret Curtis
bf6daa7269
Merge pull request #2811 from Capostrophic/emitter
Allow particle emitters to be attached to an arbitrary node
2020-04-30 14:56:49 +02:00
Capostrophic
63fe02b1ba CollisionSwitch and Switch/LOD node fixes
Properly apply transformations to both switch and LOD nodes
Allow both NiSwitchNode and NiLODNode to be the root node
Properly add CollisionSwitch into the scene graph
2020-04-30 15:04:57 +03:00
Capostrophic
89282d14aa Fix collision switch node mask (again) 2020-04-29 17:18:39 +03:00
Capostrophic
f516178ec9 Fix particle processor cloning
Extend emitter handling comment in NIF loader
2020-04-29 11:14:22 +03:00
Capostrophic
c08f9e13af Allow emitters to be attached to nodes after particle systems 2020-04-29 11:13:45 +03:00
Capostrophic
3b7fb9ec09 Use pipe-equal operator 2020-04-28 10:00:46 +03:00
Capostrophic
bbd15cccd5 Fix hidden node with NiVisController optimization 2020-04-27 00:21:34 +03:00
Bret Curtis
68549828b4 create static functions to set/get hidden node mask; compromise on magic numbers to make things easier to understand 2020-04-22 13:34:19 +02:00
Bret Curtis
e1a5435531 Merge commit '8a8107e8' 2020-04-22 13:22:54 +02:00
Chris Djali
71c46204ec
Merge pull request #2781 from mp3butcher/partsysfix
Particle System shading and lighting (fixing bug#3676 and #4949)
2020-04-20 21:29:50 +01:00
Julien Valentin
886fd5efc9 enable particle shading and force particle normal to (0.3,0.3,0.3)
and update changelog
2020-04-20 22:15:34 +02:00
Bret Curtis
8a8107e837 as it says; revert vismask and uncomplicate openmw 2020-04-20 20:57:38 +02:00
Capostrophic
c3cc8ee1e1 Disable specular lighting for 4.0.0.2 and earlier files 2020-04-17 14:08:29 +03:00
Julien Valentin
6e2a651252 fix particle alpha 2020-04-16 02:48:42 +02:00
Capostrophic
e1d635cd71 Make extra sure groups with special behavior aren't optimized out 2020-04-10 18:11:21 +03:00
Capostrophic
80239235d3 Always create NiGeometry nodes as MatrixTransform 2020-03-31 13:04:03 +03:00
Capostrophic
7319eda54e Correct drawable property apply order (bug #5313) 2020-03-23 20:47:47 +03:00
Capostrophic
2b3ecff004 Remove broken fixed function pipeline support
Added by mistake
2020-03-03 21:50:50 +03:00
Capostrophic
6999f1fd28 Add an option to apply lighting to environment maps 2020-03-03 20:08:59 +03:00
Capostrophic
19a7245251 Add bump mapping support 2020-03-03 13:32:30 +03:00
Andrei Kortunov
8c177f0306 Take in account transformations of NiCollisionSwitch 2020-02-25 11:09:36 +04:00
Bret Curtis
c907cd98c8
Merge pull request #2704 from akortunov/collisionswitch
Handle NiCollisionSwitch node
2020-02-19 21:24:25 +01:00
Andrei Kortunov
77d6fe46ca Handle NiCollisionSwitch node 2020-02-19 12:14:21 +04:00
Andrei Kortunov
7b5ec76db4 Fix regression in the NiVisController 2020-02-19 11:50:59 +04:00
Andrei Kortunov
84979fa8b7 Move VisMask to components 2020-02-16 16:03:35 +04:00
Capostrophic
e363d5df21 Some more minor NIF support fixes 2020-02-02 17:28:46 +03:00
Alexei Dobrohotov
234fdfefb7
Revert "Don't apply 1.6 magic value to NiGravity decay factor (#5266)" 2020-01-31 15:11:29 +03:00
Capostrophic
dcafe719a5 Don't apply 1.6 magic value to NiGravity decay factor (#5266) 2020-01-31 01:15:58 +03:00
capostrophic
32caab663f Enumerate interpolation types properly 2020-01-02 13:07:27 +03:00
capostrophic
e654a52b70 More NIF adjustments
Constant interpolation support
2020-01-02 13:07:27 +03:00
Andrei Kortunov
c41562fa27 Make TextureProperty warnings more informative 2019-12-15 13:56:20 +04:00
Capostrophic
909c8ef0ea Avoid working with empty controller data (bug #5229) 2019-12-14 20:35:23 +03:00
Andrei Kortunov
5b5c52d92e Handle NiKeyframeController for NiTriShape (feature #5224) 2019-12-10 16:20:27 +04:00
Andrei Kortunov
eec82f676a
Merge pull request #2602 from elsid/clang_tidy
Fix clang-tidy issues
2019-12-03 08:27:43 +04:00
Andrei Kortunov
1b98fe4395 Fix GCC9 warnings about implicit declarations 2019-11-29 12:41:23 +04:00
elsid
8d358eeb7d
Avoid virtual call in ParticleSystem ctor 2019-11-17 18:50:45 +01:00
Alexei Dobrohotov
ef138e9afc
Merge pull request #2592 from akortunov/switchnode
Use transformations of NiSwitchNode
2019-11-15 19:46:45 +03:00
Andrei Kortunov
af41e9acc1 Initialize variables to avoid undefined values 2019-11-13 14:47:29 +04:00
Andrei Kortunov
51cfd070c6 Use transformations of NiSwitchNode 2019-11-09 21:43:08 +04:00
Capostrophic
8056107c6e More minor NIF improvements 2019-10-16 01:36:43 +03:00
Capostrophic
83f61d1636 Support target color in NiMaterialColorController (bug #5159) 2019-09-16 22:31:18 +03:00
Capostrophic
8baddefdbd Refactor extra data and particle modifier handling
Objects no longer inherit from extra data class
"Controlled" harmful abstraction no longer exists
Introduced NiParticleModifier/NiParticleCollider abstractions
Extra data size reading moved into the base read() method
2019-09-13 20:26:22 +03:00
Capostrophic
c0438a0c6b Avoid using getPtr on empty geometry data 2019-08-26 23:01:58 +03:00
Alexei Dobrohotov
64fde2d7c2
Fix crash when NiGeometry lacks NiGeometryData 2019-08-24 22:34:56 +03:00
capostrophic
9c7474f88c Implement NiPalette support (feature #4882) 2019-08-16 20:21:09 +03:00
capostrophic
efa463af8f Fix non-tiling textures clamp mode (bug #5137) 2019-08-16 16:26:11 +03:00
Alexei Dobrohotov
3668473d6d
Fix comment 2019-08-10 19:22:46 +03:00
Alexei Dobrohotov
eaedf34975
Fix ventriloquism 2019-08-10 19:21:36 +03:00
Alexei Dobrohotov
307e9ba666
Merge pull request #2413 from akortunov/weapon
Refactor weapon types behaviour
2019-08-09 20:02:10 +03:00
Andrei Kortunov
f0cef772fa Refactor weapon types behaviour
1. Move weapon types behaviour from switches to the table (should allow
us to de-hardcode weapon types later)
2. Gereralize bones injection to actors skeletons (instead of using the
hardcoded xbase_anim_sh.nif)
2019-08-09 19:40:27 +04:00
capostrophic
9e93c9ecd2 Fix multiple-strip NiTriStrips loading 2019-08-08 22:48:24 +03:00
capostrophic
93f73fe87b Fix comparison 2019-08-08 20:41:46 +03:00
capostrophic
7fc3153f62 Reduce code duplication further 2019-08-08 20:29:45 +03:00
capostrophic
91efdf18a9 Reduce Bullet part code duplication 2019-08-08 19:02:08 +03:00
capostrophic
ed154f0e2c Fix typo and replace failsave with an assert 2019-08-08 18:42:58 +03:00
capostrophic
7cc70ffb50 Reduce skinned shape code duplication 2019-08-08 18:37:42 +03:00
capostrophic
bd6c455fd4 Reduce code duplication for non-skinned shapes 2019-08-08 18:12:46 +03:00
capostrophic
b4f54651f8 Make sure strips have valid size 2019-08-08 17:15:33 +03:00
capostrophic
adb06913f7 Add basic NiTriStrips rendering (no physics yet) 2019-08-08 17:09:06 +03:00
capostrophic
8efbdeaa57 Load NiTriStrips/NiTriStripsData (don't do anything yet) 2019-08-08 17:09:06 +03:00
capostrophic
6928adcee1 Prevent front() and operator[] from causing undefined behavior 2019-08-04 14:47:33 +03:00
AnyOldName3
bb72ed9744 Merge branch '9' into 'master'
IMPORTANT!! racingcrashfix #4766

See merge request OpenMW/openmw!119
2019-07-01 15:36:40 +00:00
Capostrophic
e06178bf0f Make sure shadow shapes aren't visible (bug #5063) 2019-06-22 18:13:41 +03:00
Capostrophic
7c8360d0f3 Use NiSwitchNode initial index field 2019-06-09 01:58:02 +03:00
bzzt
ffe8bbd2dd racingcrashfix #4766 2019-05-29 13:37:00 +00:00
Andrei Kortunov
861d41f4a4 Native graphics herbalism support (feature #5010) 2019-05-02 23:03:47 +04:00
Andrei Kortunov
7995a92672 Initialize missing variables 2019-03-19 09:12:31 +04:00
bzzt
a567111400 Use emplace instead of find-assign 2019-02-27 00:10:34 +03:00
Bret Curtis
d4564a9be7
Merge pull request #2180 from akortunov/includes
Remove redundant includes
2019-02-24 01:14:16 +01:00
Andrei Kortunov
3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
Andrei Kortunov
60f112d11c Add support for NiRollController (feature #4675) 2019-02-21 12:34:35 +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
058e289162 Do not create a redundant parent node for LOD and Switch nodes (bug #4837) 2019-02-09 12:02:09 +04:00
Bret Curtis
f4313c02e1
Merge pull request #2153 from akortunov/glowing_windows
Native glowing windows support
2019-02-04 14:50:13 +01:00
Andrei Kortunov
60c9806d62 Share RigGeometry node data 2019-02-03 13:09:49 +04:00
Andrei Kortunov
9e4a339ad3 Daytime node switch support (feature #4836) 2019-02-02 10:50:15 +04:00
Bret Curtis
e748abde7d
Merge pull request #2147 from akortunov/uvcontroller
Apply UVControllers only for given UV Set
2019-01-28 10:20:43 +01:00
Andrei Kortunov
87598f9419 Fill Switch and LOD nodes names 2019-01-27 15:18:57 +04:00
Andrei Kortunov
b2126c2b6b Apply UVControllers only for given UV Set (bug #4827) 2019-01-26 14:53:33 +04:00
AnyOldName3
8482236a82 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 2019-01-24 23:09:23 +00:00
Andrei Kortunov
2c38e337ae Support NiSwitchNode (feature #4812) 2019-01-23 21:01:54 +04:00
Andrei Kortunov
39c4a7833c Fix out of range exception when try to load a particle node with empty sizes array (bug #4804) 2019-01-16 22:00:50 +04: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
3785ba6aa0 Merge upstream/master 2018-10-30 22:38:09 +00:00
Andrei Kortunov
41e90bd56c Unify random generator usage 2018-10-19 16:16:18 +04:00
AnyOldName3
474770eca8 Switch shadow map rendering to a specialised, simplified shader. 2018-10-16 21:23:31 +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