Andrei Kortunov
33648313a6
Initialize variables
4 years ago
Alexei Dobrohotov
1e6156e04a
Turn all NIF records into structs
4 years ago
Alexei Dobrohotov
c0b9823372
Read BSShaderProperty and handle NiGeometry properties
4 years ago
Alexei Dobrohotov
42226533d8
Handle BSLODTriShape
...
Its levels of detail are currently not handled
4 years ago
Alexei Dobrohotov
8fd45d85ec
Unify NiGeometry/NiGeometryData handling
4 years ago
Alexei Dobrohotov
db9c174ca8
Make NIF particle node handling more generic
4 years ago
Alexei Dobrohotov
df9667e923
Read NIF bounding volume data correctly
4 years ago
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
4 years ago
Alexei Dobrohotov
29ccb09da5
Introduce some extended NIF definitions
4 years ago
Capostrophic
7aca18f92b
Handle NiLines (feature #5445 )
5 years ago
Capostrophic
b665fed8f2
Introduce NiGeometry abstraction
5 years ago
Capostrophic
a08a9518c3
NIF version adjustments
...
Cut down on obscure version numbers
Call generateVersion without using a stream object
5 years ago
Andrei Kortunov
77d6fe46ca
Handle NiCollisionSwitch node
5 years ago
Capostrophic
e363d5df21
Some more minor NIF support fixes
5 years ago
capostrophic
f234d53269
Don't use double negation
5 years ago
capostrophic
e654a52b70
More NIF adjustments
...
Constant interpolation support
5 years ago
capostrophic
8efbdeaa57
Load NiTriStrips/NiTriStripsData (don't do anything yet)
5 years ago
Capostrophic
7c8360d0f3
Use NiSwitchNode initial index field
6 years ago
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
6 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
3ebfb47983
Do not discard root node transformations if the root node is named 'bip01' (Bug #3118 )
9 years ago
scrawl
626281977e
Read NiLODNode (Bug #3008 )
9 years ago
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
10 years ago
scrawl
46cbec9a4a
Add skinning auto-detection in nifosg loader
10 years ago
dteviot
407cd50890
fixed warning C4099:
...
type name first seen using 'class' now seen using 'struct'
10 years ago
scrawl
f6f37e02df
NIF Transformation redundancy fix and include fixes
10 years ago
scrawl
8c10d4badb
NIF reader compiles without Ogre
10 years ago
scrawl
b650338d69
Implement drawMode of NiStencilProperty (Feature #1057 )
10 years ago
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.
10 years ago
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.
11 years ago
scrawl
bbd15b185d
Skip inactive controllers. Fixes those bloody bone boots again.
11 years ago
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.
11 years ago
Chris Robinson
36170c5374
Use flag enums instead of hard-coded hex values
12 years ago
Chris Robinson
d26ffe9de0
Move a method to the Node class
12 years ago
Nathan Jeffords
d3c1f5e7b2
renamed low-level NIF related files and include guards to conform to naming convention
12 years ago
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.
12 years ago
Nathan Jeffords
0989b44b41
spread some const around NIF loading
12 years ago
Chris Robinson
61f32eca77
Add methods to get a node's local and full transform as a 4x4 matrix
13 years ago
Chris Robinson
386ac56bda
Remove the NIF loader and code to manually transform the vertices
...
This currently breaks just about everything. They should come back as it's all
reimplemented, though.
13 years ago
Chris Robinson
86b37c6c11
Move the velocity out of the transformation object
13 years ago
Chris Robinson
645b507ba0
Return a reference to the RecordPtr from operator[] for consistency
...
RecordListT is supposed to be a list of RecordPtrT objects.
13 years ago
Chris Robinson
dddf1b4ee5
Rename getMatrix->getMatrix3 and getVector->getVector3
13 years ago
Chris Robinson
d30f64650a
Make the read_* methods private and remove the generic load() methods
13 years ago
Chris Robinson
930459365b
Rename getShort->getUShort and getByte->getChar
13 years ago
Chris Robinson
ca37706b34
Use Ogre types for Matrix and Vector objects
13 years ago
Chris Robinson
10072f74b4
Remove NIFFile::getType
13 years ago
Chris Robinson
0143cacd2b
Avoid returning pointers from NIFFile
13 years ago
Chris Robinson
d3a31a24ce
Use proper strings and vectors instead of slice arrays for NIF files
...
Slice arrays use pre-allocated pointers whose memory is managed externally. This is
unnecessary and ultimately detrimental since it prevents any kind of data fixup
(e.g. little endian to big endian, p[adding handling), and it also makes it difficult
to use Ogre data streams.
13 years ago
Chris Robinson
d8d00123ea
Watch for empty children node refs when setting parents
13 years ago
Chris Robinson
291599c609
Store the parents of NIF's nodes
13 years ago