Commit Graph

101 Commits (master)

Author SHA1 Message Date
Alexei Kotov 695932d2db Parse BSDistantObjectInstancedNode 3 months ago
Alexei Kotov 9a43ca2d00 Move NiGeometry triangulation to NiGeometry 1 year ago
Alexei Kotov 981e482171 Read BSSubIndexTriShape
It's currently handled exactly like BSTriShape, which works ok enough for our purposes
1 year ago
Alexei Kotov b4f81fb4fa Fix formatting 1 year ago
Alexei Kotov 8fb900da85 Remove GeometryInterface
Actually, it was a terrible idea
1 year ago
Alexei Kotov 052fb416c6 Read BSSegmentedTriShape 1 year ago
Alexei Kotov 30b842dd1e Read BSMeshLODTriShape and BSDynamicTriShape
Slightly clean up BSVertexData loading
Fix skin tint alpha loading in BSLightingShaderProperty
1 year ago
Alexei Kotov 1b93e646b8 Rename Property->NiProperty 1 year ago
Alexei Kotov 18e4af04b3 Rewrite BSVertexData loading and read FO4 geometry properly 1 year ago
Alexei Kotov eb8242946a Improve node record consistency with NifTools 1 year ago
Alexei Kotov bff9231c3b Refactor NiGeometry/BSTriShape
Don't pass invalid geometry data links to the loaders
1 year ago
Alexei Kotov deb051639e Refactor NiBoundingVolume 1 year ago
Alexei Kotov 5b0bc97db0 Refactor NiSwitchNode and NiLODNode 1 year ago
Alexei Kotov c9300cac31 Update NIF node records, first pass 1 year ago
Alexei Kotov 4dd2f34e30 Fix Windows build 1 year ago
Alexei Kotov a7cc4e6ba6 Rename Node->NiAVObject and update everything directly related
Update NiNode
Simplify RootCollisionNode handling in BulletNifLoader
1 year ago
Alexei Kotov 6872c7144e Rename Transformation->NiTransform and update everything directly related 1 year ago
Alexei Kotov ef896faa90 Rename Named->NiObjectNET and update everything directly related to it
BulletNifLoader: properly check if the node has animation controllers
Flatten extra data linked list
1 year ago
Alexei Kotov fd3b24e2e6 Make better use of osg::BoundingSpheref in the NIF loader 1 year ago
Alexei Kotov e7bbfed1fd Read BSTriShape bounds into array 1 year ago
psi29a c290754077 Revert "Merge branch 'loadSSEAlchemyTable' into 'master'"
This reverts merge request !3267
1 year ago
alekulyn d2896945e8 Load SSE alchemy table 1 year ago
Alexei Kotov 4265524ad5 Read BSRangeNode and BSBlastNode 1 year ago
alekulyn 7ea2ea96b6 Read new nodes pt1 1 year ago
alekulyn 74aa7b947a Load BSTriShape NIF nodes 1 year ago
Alexei Dobrohotov 1b5e904285 Read BSMultiBound et al. 2 years ago
Alexei Dobrohotov 3e8a9d1de4 Read BSTreeNode, handle as NiNode 2 years ago
Alexei Kotov 41d6ccd3f6 Read NiDefaultAVObjectPalette 2 years ago
elsid f2fb3d6de8
Separate NIFFileReader from NIFFile
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.

Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2 years ago
clang-format-bot ddb0522bbf
Apply clang-format to code base 2 years ago
Alexei Kotov 126090bdc5 Load NiBillboardNode mode field 2 years ago
Andrei Kortunov c36c28e8f9 Move NIF implementation to cpp files 2 years ago
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.
3 years ago
Alexei Kotov e673f9fa76 Clean up NIF flags 3 years ago
Alexei Kotov e6f7a2f1ef Correct NiBoundingVolume loading 3 years ago
cody glassman 72fdf40e06 better support for particle arrays when spawning at node positions 3 years ago
Wolfgang Lieff 373776170d refactor for NiFltAnimationNode 3 years ago
Bret Curtis 0db5415976 refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md 3 years ago
Wolfgang Lieff ead73fce31 initial NiFltAnimationNode support 3 years ago
Alexei Dobrohotov 76ba5025e3 Clarify root node transformation discard 3 years ago
Alexei Dobrohotov 85053941b3 Properly postprocess NiSortAdjustNode 3 years ago
glassmancody.info 88f02913d5 use vertex emitters on array particle controllers when appropriate 3 years ago
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.
3 years ago
Alexei Dobrohotov 63ea57e9cf Load NiSortAdjustNode and NiAccumulators 3 years ago
Alexei Dobrohotov 5571099147 Load NiCollisionObject and bhkCollisionObject 3 years ago
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