Commit graph

131 commits

Author SHA1 Message Date
Chris Robinson
94b93227d3 Treat activators as actors for rendering and mechanics
Kinda hacky, but it's the only way to get animated activators (flags, silt
striders, etc) to work properly.
2013-01-16 14:37:32 -08:00
Chris Robinson
d2fc3c7b33 Add a method to tell the character controller of new text keys 2013-01-16 13:09:21 -08:00
Chris Robinson
0a2f92f679 Keep track of the current text key in the animation 2013-01-16 11:57:08 -08:00
Chris Robinson
f46587c383 Store an character controller in the animation 2013-01-16 11:01:08 -08:00
Chris Robinson
c4c8295e0b Rename NIFLoader to Loader, and update some comments 2013-01-09 09:10:59 -08:00
Chris Robinson
1e38e381a4 Use text keys for each animation 2013-01-09 03:30:55 -08:00
Chris Robinson
bb98542c5a Build separate animations for each group 2013-01-09 01:40:38 -08:00
Chris Robinson
e44729cd43 Make the text keys lower-case when extracting them
I think it's safe to assume all text keys are treated in a case-insensitive
manner. So far the only known NiTextKeyExtraData records are for animation
keys, which effectively are.
2013-01-09 00:17:42 -08:00
Chris Robinson
2a9dc5ad94 Ensure mCurGroup always has valid iterators, and only get the animation state when animation keys exist 2013-01-07 21:00:21 -08:00
Chris Robinson
d8dbd5e206 Store text key iterators for the start and stop times 2013-01-07 05:56:03 -08:00
Chris Robinson
d3e949f5c6 Make the animation text keys lower case to help lookup 2013-01-07 05:23:44 -08:00
Chris Robinson
5f668976a8 Improve resetting the animation position 2013-01-07 04:48:59 -08:00
Chris Robinson
648e3331f5 Don't try to move objects that aren't in a cell 2013-01-06 23:20:20 -08:00
Chris Robinson
5b3a20ef69 Update the object position as the animation moves 2013-01-06 21:18:48 -08:00
Chris Robinson
910619eb21 Store the NonAccum animation root from the skeleton instance
Currently this is assumed to be the node with the animation text keys.
2013-01-06 17:31:53 -08:00
Chris Robinson
b96a979719 Store an MWWorld::Ptr with the Animation 2013-01-06 17:05:48 -08:00
Chris Robinson
58d35dbfcf Have createEntities' caller retrieve the text keys as needed 2013-01-05 04:01:11 -08:00
Chris Robinson
818a24cdd6 Hold on to the AnimationState being used for animating 2013-01-05 00:03:14 -08:00
Chris Robinson
6e84d4bcdd Add a helper method to load entity objects 2013-01-04 23:19:48 -08:00
greye
50867e8d87 fix gender selection update, main model visibility and couple of crashes 2012-11-10 19:57:50 +04:00
Chris Robinson
41f80908d9 Simplify getting the stop time when playing all animation groups 2012-09-29 01:10:49 -07:00
Chris Robinson
cd8515396a Use a multimap to store the text keys 2012-09-28 23:20:15 -07:00
scrawl
2793096b50 Merge branch 'externalrendering' of https://github.com/zinnschlag/openmw into characterpreview
Conflicts:
	apps/openmw/CMakeLists.txt
	apps/openmw/mwbase/world.hpp
	apps/openmw/mwrender/renderingmanager.cpp
	apps/openmw/mwrender/renderingmanager.hpp
	apps/openmw/mwworld/worldimp.cpp
	apps/openmw/mwworld/worldimp.hpp
2012-09-15 00:57:29 +02:00
Chris Robinson
9f0c1eeb7b Support playgroup mode 0 2012-07-24 14:54:12 -07:00
Chris Robinson
13ab2baef0 Use a struct to hold the current animation times and remaining loop count 2012-07-24 14:42:01 -07:00
Chris Robinson
fd1e3f6ec5 Add support for playgroup mode 2 2012-07-24 14:14:32 -07:00
Chris Robinson
20121f3b0a Remove some unused stuff 2012-07-24 13:56:28 -07:00
Chris Robinson
9a7a629d0f Add support for playing animation groups 2012-07-24 13:51:48 -07:00
Chris Robinson
77446a0d58 Fix skipAnim, only skip one animation update 2012-07-21 17:39:57 -07:00
Chris Robinson
81ce8dbe12 Combine animation handling into the base class 2012-07-21 14:41:26 -07:00
Chris Robinson
2db80a1504 Rename a couple methods to match their scripting counterparts 2012-07-20 00:53:12 -07:00
Chris Robinson
66860825cf Remove some unused and unneeded bits from the Animation class 2012-07-20 00:36:52 -07:00
Chris Robinson
02d39080c8 Destroy entities when they're done with. 2012-07-18 00:17:39 -07:00
Chris Robinson
0a4a141f2e Support multiple meshes for creatures 2012-07-17 11:23:34 -07:00
Chris Robinson
6047dc6a0c Merge remote branch 'zini/master' into nif-cleanup
Conflicts:
	apps/openmw/mwrender/animation.cpp
	apps/openmw/mwrender/animation.hpp
	apps/openmw/mwrender/creatureanimation.cpp
	apps/openmw/mwrender/npcanimation.cpp
	apps/openmw/mwrender/npcanimation.hpp
	components/nifogre/ogre_nif_loader.hpp
2012-07-17 10:57:15 -07:00
Carl Maxwell
e4d046f69c Prepending m to the name of every member variable.
I made a bunch of changes in apps/openmw/mwrender/animation.cpp
because the scope brackets didn't line up in a bunch of places
    npcanimations.cpp & creatureanimations.cpp were the same kind of
thing
2012-07-13 03:51:58 -07:00
Chris Robinson
ecdd4ee23f Load NiMorphData and NiKeyframeData using proper key lists 2012-07-12 20:56:47 -07:00
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.
2012-07-12 20:12:18 -07:00
Marc Zinnschlag
c85aaafac2 more include cleanup (most removing Ogre.h) 2012-07-03 15:32:38 +02:00
Marc Zinnschlag
35f478071e Issue #255: deleted the old environment class and using the new one instead 2012-04-23 15:27:03 +02:00
Jason Hooks
bc8bb9c57e Reserve; skirts 2012-04-15 14:22:55 -04:00
Jason Hooks
ebab98a8a0 Restructuring things 2012-04-07 22:02:20 -04:00
Lukasz Gromanowski
bdc4c79b4e Fix for segfault when doing 'coc "seyda neen"'.
This is a fix for segfault:

==8683== Process terminating with default action of signal 11 (SIGSEGV)
==8683==  Access not within mapped region at address 0x0
==8683==    at 0x59DFE4: MWRender::Animation::handleShapes(std::vector<Nif::NiTriShapeCopy, std::allocator<Nif::NiTriShapeCopy> >*, Ogre::Entity*, Ogre::SkeletonInstance*) (animation.cpp:503)
==8683==    by 0x5A4ECE: MWRender::Actors::update(float) (actors.cpp:134)
==8683==    by 0x5937A9: MWRender::RenderingManager::update(float) (renderingmanager.cpp:168)
==8683==    by 0x629AD6: MWWorld::World::update(float) (world.cpp:705)
==8683==    by 0x68B022: OMW::Engine::frameRenderingQueued(Ogre::FrameEvent const&) (engine.cpp:157)
==8683==    by 0x51F9574: Ogre::Root::_fireFrameRenderingQueued(Ogre::FrameEvent&) (in /usr/lib/libOgreMain.so.1.8.0)
==8683==    by 0x51F964F: Ogre::Root::_fireFrameRenderingQueued() (in /usr/lib/libOgreMain.so.1.8.0)
==8683==    by 0x51F9681: Ogre::Root::_updateAllRenderTargets() (in /usr/lib/libOgreMain.so.1.8.0)
==8683==    by 0x51F98CF: Ogre::Root::renderOneFrame() (in /usr/lib/libOgreMain.so.1.8.0)
==8683==    by 0x51F990C: Ogre::Root::startRendering() (in /usr/lib/libOgreMain.so.1.8.0)
==8683==    by 0x68A669: OMW::Engine::go() (engine.cpp:408)
==8683==    by 0x51CECB: main (main.cpp:254)
==8683==  If you believe this happened as a result of a stack
==8683==  overflow in your program's main thread (unlikely but
==8683==  possible), you can try to increase the size of the
==8683==  main thread stack using the --main-stacksize= flag.
==8683==  The main thread stack size used in this run was 8388608.

when doing 'coc "seyda neen"' when animations are enabled
(Animation::animate member variable is set to 1).
2012-03-31 21:34:40 +02:00
Lukasz Gromanowski
5185a28b60 Issue #225: Initialize all class members in constructor. 2012-03-26 19:09:55 +02:00
Marc Zinnschlag
5b378e820d warning level adjustments and some related fixes 2012-03-15 16:01:41 +01:00
Jason Hooks
39ff8d6a01 Compile error retry 2012-03-06 18:28:41 -05:00
Jason Hooks
9848b67174 Fixing errors 2012-03-05 17:46:29 -05:00
Jason Hooks
36e9322830 a few changes2 2012-02-26 21:43:04 -05:00
Jason Hooks
8d7a5f469b a few changes 2012-02-26 21:27:54 -05:00
Jason Hooks
08f3ecf935 Slightly better performance on animation2 2012-02-24 01:30:17 -05:00
Jason Hooks
fb51b281b2 Slightly better performance on animation 2012-02-24 01:16:30 -05:00
Marc Zinnschlag
7eae24bb45 some fixes 2012-02-20 14:02:24 +01:00
Jason Hooks
7e1e746201 More changes 2012-02-19 17:59:50 -05:00
Jason Hooks
e58f2f5363 Eliminating unnecessary data from skeletons and shape saving 2012-02-19 02:01:15 -05:00
Jason Hooks
1da519a914 Some cleanup 2012-01-29 00:42:55 -05:00
Jason Hooks
6de0847b86 Slightly better performance on animation 2012-01-25 01:21:30 -05:00
Jason Hooks
e35aee0f89 Disjointed free part fix 2012-01-13 02:19:28 -05:00
Jason Hooks
41769f202c Huge Performance Increase 2012-01-13 00:48:52 -05:00
Jason Hooks
0712bba49b Changing a few things around with handleshapes 2012-01-12 16:03:07 -05:00
Jason Hooks
5e1cc07ee8 Fixed ancestor ghost crash 2012-01-10 02:00:04 -05:00
Jason Hooks
a615369189 Warning and different physics 2012-01-06 22:52:15 -05:00
Jason Hooks
295eb27c2d Better Text Indices; Better file output 2012-01-06 18:23:41 -05:00
Jason Hooks
859ac1153e Basic Text Indices Working 2012-01-06 02:27:10 -05:00
Jason Hooks
595d0b1192 Cleanup; warnings 2012-01-05 21:45:17 -05:00
Jason Hooks
c2fa82326d Animation with physics attempt 2012-01-04 23:48:25 -05:00
Jason Hooks
45c57721ff Turning off hardware skinning2 2012-01-04 20:30:06 -05:00
Jason Hooks
1d2e77d947 Turning off hardware skinning 2012-01-04 19:47:06 -05:00
Jason Hooks
a4c6d948d4 Disabling normal updates 2012-01-01 20:51:26 -05:00
Jason Hooks
42e7ff9b13 Introducing loops; SkipAnim; Skeleton reset bug fixed 2011-12-28 21:52:05 -05:00
Jason Hooks
c8cca06b40 unlocking change and stop change 2011-12-28 17:34:47 -05:00
Jason Hooks
8c3127367a Npc Optimization 2011-12-27 22:35:22 -05:00
Jason Hooks
c399f4f210 Fixing a few things 2011-12-27 17:12:47 -05:00
Jason Hooks
a6b88b48ec A different way 2011-12-27 00:20:14 -05:00
Jason Hooks
653d999ac4 Animation creatures 2011-12-26 19:23:46 -05:00
Jason Hooks
88c427543b Deleting animations; Empty Functions/Planning 2011-12-25 22:37:26 -05:00
Jason Hooks
7cf3fc8991 handleAnimationTransforms 2011-12-18 03:18:26 -05:00
Jason Hooks
6d10c76b06 Unique Identifiers for Creatures and NPC Free Parts 2011-12-17 01:29:08 -05:00
Jason Hooks
93a4060346 Switching handleShapes to use sets instead of maps 2011-12-15 00:41:44 -05:00
Jason Hooks
d51dfebde1 NPCs fully rendered 2011-12-15 00:33:10 -05:00
Jason Hooks
509009e5c1 Putting the actors in a list 2011-12-11 23:42:39 -05:00
Jason Hooks
16ff2a7a1b Changing to Actors;NPCAnimation;CreatureAnimation 2011-11-24 01:48:54 -05:00