Andrei Kortunov
c36c28e8f9
Move NIF implementation to cpp files
2022-07-21 15:54:52 +04:00
elsid
bef15edf0b
Remove redundant ostream, istream, iostream and sstream includes
...
* Replace by std::to_string and operator+ where possible.
* Move the code requiring to include <sstream> from .hpp to .cpp files.
2022-07-05 01:41:28 +02:00
Alexei Kotov
e673f9fa76
Clean up NIF flags
2022-06-22 01:58:16 +03:00
Alexei Kotov
e6f7a2f1ef
Correct NiBoundingVolume loading
2022-06-17 14:35:33 +03:00
cody glassman
72fdf40e06
better support for particle arrays when spawning at node positions
2022-05-15 13:41:52 -07:00
Wolfgang Lieff
373776170d
refactor for NiFltAnimationNode
2022-04-07 00:49:08 +02:00
Bret Curtis
0db5415976
refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md
2022-04-07 00:09:11 +02:00
Wolfgang Lieff
ead73fce31
initial NiFltAnimationNode support
2022-04-07 00:09:11 +02:00
Alexei Dobrohotov
76ba5025e3
Clarify root node transformation discard
2022-02-19 00:39:02 +03:00
Alexei Dobrohotov
85053941b3
Properly postprocess NiSortAdjustNode
2022-02-09 13:55:32 +03:00
glassmancody.info
88f02913d5
use vertex emitters on array particle controllers when appropriate
2022-02-07 19:46:42 -08: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
Alexei Dobrohotov
63ea57e9cf
Load NiSortAdjustNode and NiAccumulators
2021-11-14 00:31:49 +03:00
Alexei Dobrohotov
5571099147
Load NiCollisionObject and bhkCollisionObject
2021-11-10 19:31:28 +03:00
Andrei Kortunov
33648313a6
Initialize variables
2021-01-09 14:21:57 +04: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
db9c174ca8
Make NIF particle node handling more generic
2020-11-30 12:33:18 +03:00
Alexei Dobrohotov
df9667e923
Read NIF bounding volume data correctly
2020-11-14 14:16:29 +03:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
Alexei Dobrohotov
29ccb09da5
Introduce some extended NIF definitions
2020-10-04 13:18:56 +03:00
Capostrophic
7aca18f92b
Handle NiLines (feature #5445 )
2020-05-30 19:09:34 +03:00
Capostrophic
b665fed8f2
Introduce NiGeometry abstraction
2020-05-14 10:52:27 +03:00
Capostrophic
a08a9518c3
NIF version adjustments
...
Cut down on obscure version numbers
Call generateVersion without using a stream object
2020-05-13 01:06:38 +03:00
Andrei Kortunov
77d6fe46ca
Handle NiCollisionSwitch node
2020-02-19 12:14:21 +04:00
Capostrophic
e363d5df21
Some more minor NIF support fixes
2020-02-02 17:28:46 +03:00
capostrophic
f234d53269
Don't use double negation
2020-01-02 13:13:57 +03:00
capostrophic
e654a52b70
More NIF adjustments
...
Constant interpolation support
2020-01-02 13:07:27 +03:00
capostrophic
8efbdeaa57
Load NiTriStrips/NiTriStripsData (don't do anything yet)
2019-08-08 17:09:06 +03:00
Capostrophic
7c8360d0f3
Use NiSwitchNode initial index field
2019-06-09 01:58:02 +03:00
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
2018-10-09 10:21:12 +04:00
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.
2017-02-26 22:39:23 +01:00
scrawl
3ebfb47983
Do not discard root node transformations if the root node is named 'bip01' (Bug #3118 )
2016-01-02 01:30:06 +01:00
scrawl
626281977e
Read NiLODNode (Bug #3008 )
2015-11-12 19:52:32 +01:00
scrawl
236d628884
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/opencs/model/doc/document.cpp
apps/opencs/model/doc/documentmanager.cpp
components/CMakeLists.txt
components/bsa/resources.cpp
components/nif/data.hpp
components/nif/node.cpp
components/nifogre/mesh.hpp
components/nifogre/ogrenifloader.cpp
components/nifogre/particles.cpp
2015-03-27 17:30:48 +01:00
scrawl
46cbec9a4a
Add skinning auto-detection in nifosg loader
2015-03-25 15:39:41 +01:00
dteviot
407cd50890
fixed warning C4099:
...
type name first seen using 'class' now seen using 'struct'
2015-03-06 21:36:42 +13:00
scrawl
f6f37e02df
NIF Transformation redundancy fix and include fixes
2015-02-20 17:56:49 +01:00
scrawl
8c10d4badb
NIF reader compiles without Ogre
2015-02-17 17:08:55 +01:00
scrawl
b650338d69
Implement drawMode of NiStencilProperty (Feature #1057 )
2014-12-03 18:28:35 +01:00
Arthur Moore
38bcff2622
Moved base NIF classes into a separate file.
...
This resolves the dependency mess, and makes things more readable.
The dependency tree for nif records now looks like this:
Record.hpp
--base.hpp
----controlled.hpp
----controller.hpp
----data.hpp
----effect.hpp
----extra.hpp
----node.hpp
Node.hpp has many extra dependencies because nifogre only includes it instead of each of these files.
That should be fixed.
2014-10-19 03:01:30 -04:00
Arthur Moore
8be6aefd95
Moved functions from niffile.cpp to where they belong.
...
Also cleaned up some #includes
Removed a few asserts. Vector already throws an out_of_range error.
2014-08-24 13:45:36 -04:00
scrawl
bbd15b185d
Skip inactive controllers. Fixes those bloody bone boots again.
2014-01-31 05:59:58 +01:00
scrawl
6b81fd78f1
Particle improvements: Handle LocalSpace flag. Attach particle systems to the base node, since they need to be relative to that when LocalSpace is enabled. Get the bone in emitters/affectors so that resulting particle positions are the same. TODO: Fix Controllers to affect particle systems.
2013-11-25 13:50:33 +01:00
Chris Robinson
36170c5374
Use flag enums instead of hard-coded hex values
2013-04-16 01:20:32 -07:00
Chris Robinson
d26ffe9de0
Move a method to the Node class
2013-04-10 23:19:47 -07:00
Nathan Jeffords
d3c1f5e7b2
renamed low-level NIF related files and include guards to conform to naming convention
2013-03-02 10:46:12 -08:00
Nathan Jeffords
6de6d9ff6e
Factored a NIFStream class out of the NIFFile class.
...
Split NIFFile into two parts, NIFFile which is cached and is a container
for a parsed NIF, and NIFStream which is a class specialized for parsing
NIFs. This required a semi-sweeping change to make all record classes
accept a NIFStream instead of a NIFFile as an agurment to their read
functions.
2013-03-02 09:56:41 -08:00