Commit Graph

58 Commits (master)

Author SHA1 Message Date
Dobrohotov Alexei 19f0b80983 Improve null root handling 4 years ago
elsid 87ada56edd Various fixes for niftest 4 years ago
Alexei Dobrohotov 2fdbe9b3f6 Handle BSShader[PP/No]LightingProperty 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 1c83e4936d Read BSShaderTextureSet and NiColorInterpolator
Accept boolean-based and 4D vector-based NiInterpolators in ValueInterpolator constructor
4 years ago
Alexei Dobrohotov db9c174ca8 Make NIF particle node handling more generic 4 years ago
Alexei Dobrohotov f3f5dcb016 Read a few more NIF types
NiFloatInterpolator, NiPoint3Interpolator, NiTransformInterpolator, NiBoolInterpolator
Update a few existing controller records
Update NiSkinInstance
4 years ago
Alexei Dobrohotov c857588ee9 Remove NIFFile settings manager dependency 4 years ago
Alexei Dobrohotov 1d07361f08 Read a few more NIF types
BSXFlags, NiTransformData, BSBound, BSFadeNode, bhkBlendController
4 years ago
Alexei Dobrohotov a38c629425 Read NiSkinPartition 4 years ago
Alexei Dobrohotov afea11b70a Read NiStringPalette and NiBoolData 4 years ago
Alexei Dobrohotov 7e63afdecf Allow loading arbitrary NIF files 4 years ago
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
4 years ago
Alexei Dobrohotov df1014303d Add more generic extra data NIF types 4 years ago
Alexei Dobrohotov 0d02a3392a Clean up 4 years ago
Alexei Dobrohotov 29ccb09da5 Introduce some extended NIF definitions 4 years ago
Alexei Dobrohotov 4e22c2687f niffile.cpp cleanup 4 years ago
Capostrophic 7aca18f92b Handle NiLines (feature #5445) 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 e654a52b70 More NIF adjustments
Constant interpolation support
5 years ago
capostrophic 9c7474f88c Implement NiPalette support (feature #4882) 5 years ago
capostrophic 8efbdeaa57 Load NiTriStrips/NiTriStripsData (don't do anything yet) 5 years ago
Capostrophic b08fed6d83 Fix NIF printVersion and allow 4.0.0.0 file loading 6 years ago
Andrei Kortunov 60f112d11c Add support for NiRollController (feature #4675) 6 years ago
Andrei Kortunov e06f0b797a Replace all NULLs to nullptr 6 years ago
Andrei Kortunov 5afcc56860 Handle NiLookAtController (feature #4407) 7 years ago
MiroslavR 99bcf47167 Implement NiSphericalCollider (Closes #3644) 8 years ago
scrawl de84452e5a NifFile: close the stream after reading (Fixes #3070) 9 years ago
scrawl a29d1ace2b Read NiSpotLight 9 years ago
scrawl ba211ad9ad Read NiPointLight (Fixes #3011) 9 years ago
scrawl 626281977e Read NiLODNode (Bug #3008) 9 years ago
scrawl c621d0400c Fix error handling for out-of-range NIF roots (found in Bosmora, TR) 10 years ago
scrawl da24e298ee Fix -Wreorder warnings 10 years ago
scrawl 46cbec9a4a Add skinning auto-detection in nifosg loader 10 years ago
scrawl 8c10d4badb NIF reader compiles without Ogre 10 years ago
Marc Zinnschlag 33d905dc03 Merge remote-tracking branch 'scrawl/master' 10 years ago
Arthur Moore b8edd9bac3 Get a nif file's version string regardless of its length. 10 years ago
scrawl 6eebe9b44c Read NiFogProperty, but don't use it yet (Feature #920) 10 years ago
Arthur Moore 5abed1c32a Print a NIF file's version information when an error occurs 10 years ago
scrawl 7252cb63a6 Fix cppcheck issues 10 years ago
cc9cii 7ff1136d81 For compiling in Windows with MSVC. 10 years ago
Arthur Moore b7852b8215 Convert niffile.cpp to use std::map instead of a custom search function.
I haven't profiled this, but it should speed things up a decent bit.
11 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 2b407a9995 Refactor NIF cache
- Remove broken cache locking mechanism

This was supposed to unload NIFFiles after a cell transition completes, but it was never working due to a mistake on the line if (--sLockLevel), should have been if (--sLockLevel == 0). Repairing this would increase load times (NIF files would have to be reloaded more frequently), so just removed it for now.

 - Decouple cache from NIFFile (now a new nifcache component)

 - Add API for future background loading

 - Provide a reliable way (SharedPtr) to hold on to loaded NIFFiles. This will be useful to avoid deep copies of keyframe and text key data, which is currently a performance bottleneck.
11 years ago
Lukasz Gromanowski abeb1d4ab3 Valgrind: Added constructor for KeyListT class, and added initialziation of ver member field in NIFFile class.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
11 years ago
Arthur Moore 576c06d791 Fix Bug #1371
Not properly reading in the NIF file's QuaternionKeyList.
11 years ago
scrawl 5931fdcbde Implement NiBillboardNode. Flags not handled yet. 11 years ago