Commit Graph

1223 Commits (5b060ffe8d07ce9cb2dee58f75862435cb1ad5cb)

Author SHA1 Message Date
scrawl 24f968623f Revert "reworked Nif::KeyListT into Nif::CurveT"
This reverts commit e7665582ad.
12 years ago
scrawl de3c76a54b Revert "reworked NIFStream to use a type-handler"
This reverts commit 03ee7663a3.
12 years ago
Chris Robinson 15a2eeebb8 Merge remote-tracking branch 'zini/master' into animations
Conflicts:
	apps/openmw/mwworld/worldimp.cpp
12 years ago
Marc Zinnschlag 93868c8bca Merge remote-tracking branch 'scrawl/master' 12 years ago
scrawl d5c7a26041 Fix broken loose file resources when using Ogre 1.9 12 years ago
scrawl 78596cad83 Fix enchantment points value 12 years ago
Chris Robinson 4cedf0fbab Avoid colliding with AvoidNodes
These are placed under the RootCollisionNode hierarchy, but the shapes they
hold aren't collided with. Their exact function is unknown, but seems to be
related to lava? Maybe damage avoidance info for the AI.
12 years ago
Glorf 6ea82333d4 Headers cleanup 12 years ago
Glorf 98baf9fac1 Bugfix #718 12 years ago
Marc Zinnschlag 90b38cbfbe fixed parsing of end statements in scripts with IDs matching keywords 12 years ago
Nathan Jeffords c7ede9b523 port code to C++03 12 years ago
Nathan Jeffords 6e7c9ebbe6 fix for gcc not handling static constant initialized in class definition 12 years ago
Nathan Jeffords 75757cb675 Created a class to represent a stream of UTF8 characters. 12 years ago
Nathan Jeffords 6dbb53493b enable move construction/assignment to key ESM data structure to reduce sorting costs 12 years ago
Nathan Jeffords e7665582ad reworked Nif::KeyListT into Nif::CurveT
Renamed Nif:KeyListT to Nif::CurveT, moved it into its own file and
changed its implementation so that on compatible platforms, the entire
array of key-frames can be read in a single read call. Added a helper
class called Nif::CurveT::interpolator to allow other code to easily
evaluate the curve. Reworked part of the skeletonLoader code to use
the interpolator to simplify its own logic.
12 years ago
Nathan Jeffords 03ee7663a3 reworked NIFStream to use a type-handler
Reworked NIFStream to use a type-handler system to decide how to extract
data from the NIF. It also has the capability to perform bulk reads on
compatible platforms, thus improving cell-load performance.
12 years ago
Chris Robinson 68a9a4de5f Fix setting and getting KeyframeController transforms 12 years ago
Chris Robinson 26cc86ffdc Use the Nif node's transform for skinned fixups 12 years ago
Chris Robinson 6f0b9a5f2c Avoid unnecessary multimap copies 12 years ago
Chris Robinson 512ff3687a Don't create Ogre animations for skeletons 12 years ago
Chris Robinson 634b0fd067 Fix for controller delta time going below start time 12 years ago
Chris Robinson 020bc410bf Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
scrawl 44ac0a7c18 Use one vertex buffer for all UV coordinates 12 years ago
Chris Robinson adc6a948c7 Add methods to get the rotation, translation, and scale from a NodeTargetValue 12 years ago
Chris Robinson 59137d93c9 Partially handle NiGeomMorpherController
The morphs aren't actually applied yet, but the Ogre controller is set up so
all that has to be done is to implement the setValue method.
12 years ago
Chris Robinson d936291dbf Remove an unused ostream operator<< 12 years ago
Chris Robinson a3511c62cf Don't store textkeys in user object bindings
It's a bit unwieldy to have them stored in the 'skeleton master' instead
of the skeleton instance. And although the text keys are extracted for
each created instance now, this shouldn't be much worse than the
multimap copying going on before.

Plus, proper serialization can help for future optimizations.
12 years ago
Chris Robinson 2345b5e8b3 Avoid storing text keys for each animation 12 years ago
Chris Robinson 7d59340ed6 Don't clip out the group name from the textkeys 12 years ago
Chris Robinson ace7d647e5 Add a method to apply a NodeTargetValue-based controller to a specified node. 12 years ago
Chris Robinson f37a71f025 Use a separate method to build node-based controllers 12 years ago
Chris Robinson 1051fa51a7 Recognize NiFlipController 12 years ago
Chris Robinson 6d59325bff Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
scrawl c519fc360d Move away from fixed record names for body parts 12 years ago
Chris Robinson 3def2a0f45 Treat the particle random values as the max differential 12 years ago
Chris Robinson cac793758b Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
Chris Robinson 36170c5374 Use flag enums instead of hard-coded hex values 12 years ago
Chris Robinson 1b1f9f7921 Allow multiple ObjectLists to be created for Animations.
addObjectList may not currently be called outside of the related constructor.
12 years ago
Chris Robinson 7000a1aa3e Add a ParticleSystemController 12 years ago
Chris Robinson bf8bc989fc Recognize and partly handle NiBSParticleNode 12 years ago
Marc Zinnschlag f692fc1093 Merge branch 'cell' 12 years ago
Marc Zinnschlag 0c33dd86d5 added basic cell table 12 years ago
Chris Robinson f4695ec4ac Cleanup NIFObjectLoader some 12 years ago
Chris Robinson acb1b5f002 Try to handle NiBSAnimationNode
This is still incomplete guess work. Currently it seems as though flag 0x20
specifies whether the controllers auto-play (if on), rather than follow the
object's animation time.
12 years ago
Chris Robinson 0b363ba36e Handle NiParticleColorModifier with Ogre's ColourInterpolator
Note that Ogre's ColourInterpolator has a maximum of six color stages. This
seems to be fine so far, but if we want anything better, we'll need a custom
affector for it.
12 years ago
Chris Robinson 80a4345787 Keep particles in local space 12 years ago
Chris Robinson dd981077b9 Handle the vertical and horizontal parameters of Nif particles
Note that 'horizontal' is mapped to rotate around the Z axis, not Y. The Nif
particle parameters seem to be set up to expect a normal OpenGL (Direct3D?)
orientation, rather than the 90-degree pitch offset of the game.
12 years ago
Chris Robinson 7191f6ed2a Start a Nif-style particle emitter
Not complete yet (doesn't handle the vertical or horizontal direction/angle),
and should probably be renamed.
12 years ago
Chris Robinson 07c24e0382 Don't create entities and particles when only the skeleton base is needed 12 years ago
Chris Robinson 4a42f89e08 Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
Chris Robinson 5b30677e41 Add the start of a custom gravity affector 12 years ago
Marc Zinnschlag a1ece7de30 Bug #613: fixed assert in string literal access function 12 years ago
scrawl 23b477a938 Fix normal maps with spaces in filename not getting loaded 12 years ago
Marc Zinnschlag 5bfa691f14 Merge branch 'script' 12 years ago
Marc Zinnschlag 6d3a2cd5a0 added comment token (for use in syntax colouring) 12 years ago
Chris Robinson d26ffe9de0 Move a method to the Node class 12 years ago
Chris Robinson 62e0abd945 Move the mesh loader to its own source file 12 years ago
Chris Robinson 75489b1e9d Move NIFMaterialLoader to a separate file 12 years ago
Chris Robinson 3970407772 Use actual classes for properties 12 years ago
Chris Robinson caff28e20a Move NIFSkeletonLoader to a separate file 12 years ago
Marc Zinnschlag 74145410f2 basic syntax highlighting in script subview 12 years ago
Chris Robinson 6c6750342c Specified particle size is actually the radius 12 years ago
Chris Robinson 9d29921913 Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
Marc Zinnschlag ec6dff38b1 added basic spell table 12 years ago
Chris Robinson 973fdeb2e0 Improve particle system placement when no emitters are specified 12 years ago
Chris Robinson e7c0f2a211 Minor cleanup to loading texture UV coords 12 years ago
Chris Robinson 01a1a0b846 Merge remote-tracking branch 'zini/master' into nifogre
Conflicts:
	components/nifogre/ogrenifloader.cpp
12 years ago
Marc Zinnschlag 85e5bd212b Merge remote-tracking branch 'scrawl/master' 12 years ago
Chris Robinson 23097ac9dc Minor cleanup of NiMorphData 12 years ago
scrawl 343e2027af Support NIF detail maps 12 years ago
scrawl a5c868c9f5 Create a separate vertex buffer for each UV set 12 years ago
Chris Robinson c6c67a1bb4 Read NiGravity fields 12 years ago
Chris Robinson 3768e04a0c Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
Chris Robinson dba7308248 Recognize NiParticleRotation 12 years ago
Chris Robinson 3c633e275e Don't create a controller for empty keyframe data 12 years ago
Chris Robinson 261ea1fe5e Implement a KeyframeController 12 years ago
Chris Robinson f69a8259e1 Update animation source controller targets 12 years ago
Chris Robinson 44a59e1b87 Fix a couple messages 12 years ago
Chris Robinson 2362e920f3 Use an unconnected object list for animation sources
We'll want the controllers, as the plan is to use their keyframe controllers
to animate the actual skeleton used for the meshes.
12 years ago
scrawl f3c8cd2065 Don't buy/sell keys which are set to open a lock 12 years ago
scrawl 2d2196b0d6 Implemented levelled items 12 years ago
Marc Zinnschlag 60cc95305d added basic birthsign table 12 years ago
Chris Robinson 399394ff10 Don't restrict animations to the keyframe time limits 12 years ago
Chris Robinson ab5980ae18 Let the default controller function use absolute input
And convert the VisController to use it.
12 years ago
Chris Robinson fe9a7f12b6 Material fixes 12 years ago
Marc Zinnschlag e25f5c6dfe added basic region table 12 years ago
Chris Robinson 2e067e95a9 Handle NiWireframeProperty 12 years ago
Chris Robinson ebff64a7a4 Fix UVController and add warn about unhandled material controllers 12 years ago
Marc Zinnschlag ff1d908af4 added script table 12 years ago
Chris Robinson be419bc891 Handle NiCamera nodes 12 years ago
Chris Robinson 2db72ae607 Rename EntityList to ObjectList 12 years ago
Chris Robinson 834a6a1f00 Remove old, unused code 12 years ago
Chris Robinson d97b341dc6 Rename NIFMeshLoader to NIFObjectLoader 12 years ago
Marc Zinnschlag ec7a8f1add small fix 12 years ago
Chris Robinson 63cbf7ddeb Specify a default return for failed lookups 12 years ago
Chris Robinson ca289a317c Separate the UVController function out and make it generic
Also fix a timing bug in it.
12 years ago
Marc Zinnschlag 8bf569d58a added basic sound table 12 years ago
Chris Robinson 6b151be3f4 Create particle systems even when MRK was specified 12 years ago
Chris Robinson 41e410347e Merge remote-tracking branch 'zini/master' into nifogre 12 years ago
Chris Robinson c283991126 Remove an unneeded method 12 years ago