scrawl
795f6d77f2
Cache the Animation's Skeleton
2015-12-03 20:06:00 +01:00
scrawl
62169a7039
Use a single-precision PositionAttitudeTransform in speed critical places
2015-11-22 19:54:26 +01:00
scrawl
eb2f16d682
Support for loading .osg mesh format
2015-11-16 23:26:43 +01:00
scrawl
02148a43f5
Node mask fix
2015-11-11 17:22:31 +01:00
scrawl
0a52ee17c3
Fix Drawable removal issues
2015-11-11 17:04:06 +01:00
scrawl
f1ac408f35
Place Drawables directly in the scene graph when built with OSG 3.4
...
OSG 3.4 adds the ability to place Drawables directly in the scene graph, without a Geode decorating them. Leveraging this should give a small performance boost, because the redundant Geodes increase culling overhead.
There is still an oustanding issue with the RemoveDrawableVisitor no longer working correctly, because Drawables can have multiple parents.
2015-11-10 18:23:42 +01:00
scrawl
35459f20d5
Refactor lighting mask
2015-11-10 17:23:12 +01:00
scrawl
fd1ccd21ff
Disable freezeOnCull for weather particles
2015-11-02 23:49:22 +01:00
scrawl
6ef139e1d7
Implement a custom RenderBin for first person models ( Fixes #1612 )
2015-10-19 22:17:04 +02:00
scrawl
ee450471fd
Disable head controller for non-bipedal creatures ( Fixes #2843 , Fixes #2966 )
2015-10-13 17:55:57 +02:00
scrawl
a37dee09e2
Fix invisibility effect disappearing after a view mode switch
2015-09-18 21:30:02 +02:00
scrawl
f8d4bc378f
Move setAlpha from NpcAnimation to Animation ( Fixes #2917 )
2015-09-16 16:15:55 +02:00
scrawl
126960261f
Keep playing IdleSneak on the lower body when casting spells / using weapons
2015-09-16 16:14:17 +02:00
scrawl
5692ef1eae
Add convenience operator [] to AnimPriority
2015-09-16 15:43:42 +02:00
scrawl
58cd2b1a84
Remove "Tri Bip*" nodes in creature meshes (meant for debugging)? ( Fixes #2148 )
2015-08-15 19:01:21 +02:00
scrawl
a33ca75742
Pass AnimPriority by const reference
2015-07-18 03:23:41 +02:00
scrawl
f6f82d433c
Fix bug with loop key assignment
...
Animations with time of "loop start" == time of "loop stop" were not getting their loop times assigned correctly.
This fixes incorrect playing of the jump animation, one aspect of Bug #2286 .
2015-07-16 19:55:05 +02:00
scrawl
3656851750
Remove the now unused changeBlendMask
2015-07-15 16:43:11 +02:00
scrawl
e93a578f23
Extend the animation priority system to one priority value per bone group / distinct blend mask
2015-07-15 14:18:31 +02:00
scrawl
335ef97cf5
Rename Animation::Group to Animation::BlendMask
...
The old naming is problematic, because the term group was being used for another feature (text key groups) already.
2015-07-15 13:49:16 +02:00
scrawl
6724585777
Light magic effect
...
Notable change compared to the old (Ogre) effect: uses the ambient instead of diffuse term (Fixes #2364 )
2015-07-02 20:46:34 +02:00
scrawl
24bfb44b13
Move head tracking from NpcAnimation to Animation (Bug #2720 )
2015-06-22 21:06:27 +02:00
scrawl
f5c50aa581
Disable FreezeOnCull for effect particles
2015-06-19 18:38:44 +02:00
scrawl
3ebfb4e0d9
Ignore particle systems in getScreenBounds
2015-06-17 18:22:31 +02:00
scrawl
2d072aab2d
Broken bone references from .kf files are no longer a fatal error (Bug #2687 )
2015-06-15 22:42:14 +02:00
scrawl
a5b72a358b
Prune empty nodes in RemoveDrawableVisitor
...
Gets rid of 28 useless transform nodes in base_anim.1st.nif.
2015-06-14 23:56:35 +02:00
scrawl
f017fd6860
Reduce includes in animation.hpp
2015-06-14 23:13:26 +02:00
scrawl
c94c87d409
Attach effects to the insert node instead of the object root (Bug #2654 )
2015-06-11 16:22:09 +02:00
scrawl
508c57d6e2
addEffect crash fix for objects with no model
2015-06-07 17:09:37 +02:00
scrawl
0a411cbd7c
Enable particle lighting
2015-06-07 04:41:55 +02:00
scrawl
30ab15e605
Fix -Wunused-private-field clang warnings
2015-06-04 20:42:05 +02:00
scrawl
8c50f8ed26
Fix for lights with no mesh
2015-06-02 17:06:55 +02:00
scrawl
5a7f2a4f1f
Restore light attenuation settings
2015-06-02 17:02:56 +02:00
scrawl
ccd95419e5
Restore various raycasting
2015-06-01 01:57:15 +02:00
scrawl
60f55997fd
Rotate first person meshes, sneak camera offset in first person
2015-05-31 02:26:58 +02:00
scrawl
988a9cad58
getHitContact Head exception fix
2015-05-30 01:41:38 +02:00
scrawl
5c7ecb9c1d
string::compare exception fix
2015-05-29 23:38:31 +02:00
scrawl
af2f26d04d
Particle fixes
2015-05-29 20:45:27 +02:00
scrawl
f4ee805e3b
Object animation fix
2015-05-28 15:44:58 +02:00
scrawl
3dcb167066
Map rendering
2015-05-26 16:40:44 +02:00
scrawl
da24e298ee
Fix -Wreorder warnings
2015-05-23 22:44:00 +02:00
scrawl
2235d2978b
Restore animation text key handling
2015-05-22 04:36:33 +02:00
scrawl
9b8e2e9db3
Port MWRender::Camera
2015-05-22 00:29:27 +02:00
scrawl
0fb97bd2e7
Readded baseonly parameter to Animation::setObjectRoot
...
Fixes the first person view.
2015-05-21 23:24:22 +02:00
scrawl
72c1f37527
Port CharacterPreview
2015-05-20 02:18:20 +02:00
scrawl
4ad0b83aa5
Eliminate string lookups in AnimationTime
2015-05-14 16:33:41 +02:00
scrawl
ccab8cc9a1
Register Player in the PhysicsSystem
2015-05-12 17:40:42 +02:00
scrawl
bd8f0248f0
Player rendering
2015-05-01 18:21:50 +02:00
scrawl
83c6ba97c0
Disable skinning updates for actors beyond the AI processing distance
2015-04-30 00:10:24 +02:00
scrawl
2db097f80e
Fix nested callbacks bug
2015-04-25 15:10:37 +02:00
scrawl
a3417a9c49
CharacterController compiles
2015-04-25 01:20:07 +02:00
scrawl
6f3e920f85
Animation port complete
2015-04-23 23:30:06 +02:00
scrawl
86b4a610cb
Movement accumulation works
2015-04-23 22:46:07 +02:00
scrawl
09742d5b95
Animation playback works, no movement accumulation yet
2015-04-23 20:41:31 +02:00
scrawl
1a19cd3607
Some cleanup
2015-04-22 19:08:56 +02:00
scrawl
04accb7652
Add LightController
2015-04-22 17:37:39 +02:00
scrawl
68f93294da
Port EffectManager
2015-04-19 17:55:56 +02:00
scrawl
fcc7aa02ab
Port addExtraLight
2015-04-19 15:03:08 +02:00
scrawl
edc5cad79e
Port Animation::addEffect
2015-04-19 01:57:52 +02:00
scrawl
083c41c950
Environment map for enchanted objects
2015-04-17 01:23:37 +02:00
scrawl
5b8c28f641
NpcAnimation compiles
2015-04-15 22:11:38 +02:00
scrawl
c92592493e
OpenMW: create a window and render the starting cell(s)
2015-04-12 15:38:30 +02:00
dteviot
e197f5318b
fixing MSVC 2013 warning C4244: & C4305
...
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 13:07:29 +13:00
scrawl
191c0104f6
Crash fix for creatures with no skeleton base ( Fixes #2419 )
2015-03-02 15:19:57 +01:00
scrawl
0c6e2170db
Include cleanup
2015-02-05 04:18:42 +01:00
scrawl
5a9b30a8ca
Don't show VFX on the map ( Fixes #2324 )
2015-01-31 22:40:38 +01:00
scrawl
41b3a9dba9
Rewrite animated collision shape support ( Fixes #2123 )
2015-01-13 05:37:37 +01:00
scrawl
91571f51be
Ogre crash workaround ( Fixes #1745 )
2015-01-10 22:45:08 +01:00
scrawl
ef7e0070a6
Don't right-shift signed integers which is implementation-defined
2015-01-08 16:27:13 +01:00
scrawl
d56906acf7
Fix the creature position glitch
2015-01-03 19:10:15 +01:00
scrawl
59f21c6105
Use "hair" as filter for PRT_Hair parts ( Fixes #2218 )
2014-12-24 15:45:14 +01:00
scrawl
d55fe43fc9
Support animation groups for Light and Door objects ( Fixes #2039 )
2014-12-24 15:45:14 +01:00
scrawl
42d63a4eb2
Fix position flicker after an animation ends
2014-12-24 15:45:14 +01:00
scrawl
8bc7eb5530
PlayGroup: Don't loop animations with no loop keys ( Fixes #2223 )
2014-12-24 15:45:13 +01:00
scrawl
65536f0857
Load initial particle system state from NIF files ( Fixes #2178 )
2014-12-05 18:00:30 +01:00
scrawl
ed686ddd2f
Don't update nodes with an empty name from the skeleton source ( Fixes #2125 )
2014-12-01 23:09:46 +01:00
scrawl
5f5fcc2fef
Make PlayGroup use an indefinite number of loops ( Fixes #2156 )
2014-11-28 17:15:31 +01:00
scrawl
deabc52c16
Treat "Root Bone" as the animation root if existing ( Fixes #2019 )
2014-10-17 23:29:59 +02:00
scrawl
db6b04d127
Use the footstep volume slider for jump landing sounds ( Fixes #1968 )
2014-10-04 19:50:38 +02:00
scrawl
7252cb63a6
Fix cppcheck issues
2014-09-26 17:48:14 +02:00
scrawl
447e93bdb4
Use SpellCast animation for creatures that have it (flame atronach)
2014-09-18 03:24:47 +02:00
scrawl
3ce3f31452
Adjust turning animation speed multiplier based on turning speed
2014-09-17 07:02:19 +02:00
scrawl
8b0cb239a9
Ignore text keys for zero-length animations ( Fixes #1876 )
...
This fixes an issue where the Riekling's attack animation would trigger *two* hits on each swing. It has the "min hit" and "hit" keys at the same time, so the MinHitToHit segment a zero-length animation. This caused problems as the "hit" text key will be encountered twice; once when playing the "max attack to min hit" segment and once when playing the "min hit to hit" segment.
2014-09-08 15:23:35 +02:00
scrawl
0fe9612afb
Implement basic spellcasting AI ( Fixes #961 )
...
Select a weapon to attack with in AiCombat and equip it (Fixes #1609 , Fixes #1772 )
2014-08-28 00:55:37 +02:00
scrawl
e0e4cbbb41
Implement Light magic effect ( Fixes #1122 )
2014-08-24 02:37:59 +02:00
scrawl
714c927fda
Fix being able to change camera during death via mouse wheel
2014-08-24 02:37:59 +02:00
scrawl
83037a1a91
Move fast-forward of particle systems outside of OgreNifLoader ( Fixes #1830 )
...
Particle systems were being fast-forwarded before the skeleton base was attached, so particles without the LocalSpace flag would spawn at an incorrect position.
2014-08-18 16:37:47 +02:00
scrawl
7432771ac7
For non-active torches set the particle system speed factor to zero instead of destroying it ( Fixes #1811 )
2014-08-16 00:51:02 +02:00
scrawl
e2ee3b2497
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwrender/terrainstorage.cpp
2014-08-12 19:53:37 +02:00
MiroslavR
baa14511cf
Use ResourceHelpers to replace DDS hacks scattered throughout the code, fix prefix comparision
2014-08-12 12:18:38 +02:00
scrawl
28fe81df90
Make Lights with OffDefault flag not emit light nor particles when placed in a cell ( Fixes #1796 )
2014-08-11 20:39:56 +02:00
scrawl
fc1687906b
Use the last Loop Stop key for calculating animation velocity ( Fixes #1776 )
2014-08-11 05:29:36 +02:00
scrawl
516014c071
Trigger hit on start key if there's no hit key ( Fixes #1574 )
2014-06-28 01:06:53 +02:00
scrawl
78d02d97da
Find text keys in reverse (Bug #1578 )
2014-06-28 00:06:08 +02:00
scrawl
37c85f0af4
Don't update object root controllers with no time source ( Fixes #1564 )
2014-06-27 19:35:41 +02:00
scrawl
ec64f1a53a
Reset accumulation root when its animation finishes
...
Fixes a position flicker after standing up from knockdown.
2014-06-25 02:46:39 +02:00
scrawl
ee098de0a6
Don't ignore lighting values of particles not attached to a character
2014-06-25 01:14:21 +02:00
mrcheko
fc6366fb27
Merge remote-tracking branch 'upstream/master'
...
Equipping_Weapon check isn't needed cause there won't be WeapType_None in
that case
Conflicts:
apps/openmw/mwmechanics/character.cpp
2014-06-13 14:12:41 +04:00
scrawl
14a9f0ebf8
Handle Quadratic and Linear attenuation independently ( Fixes #1456 )
2014-06-11 02:24:17 +02:00
mrcheko
d6d9df6cec
split getStartTime
2014-06-11 00:20:46 +04:00
mrcheko
08e8dab067
merge openmw master
2014-06-09 22:37:49 +04:00
mrcheko
67abc60264
aiming to moving target in ranged combat ai
...
1) Taking into account target move vector and speed. However aiming is not
ideal, since attack strength can't be controlled directly. I did achieve
almost 100% accuracy updating it everyframe but then thought it would be
unfair, cause AI should mimic human targetting.
2) Also added in this commit func to measure real attack durations for
weapon.
2014-06-08 20:59:26 +04:00
scrawl
a6788cfb0e
Support lights that do not have a model ( Fixes #1361 )
2014-05-29 16:44:50 +02:00
scrawl
4caa8c5cca
Fix offset to accumulation root not being cleared when adding an animation state with startpoint=1.f (observed with death animations)
2014-05-26 20:52:38 +02:00
scrawl
039398c8ae
Basic RefData and CellRef change tracking
...
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
Thoronador
1b8c975d5b
minor performance improvements in apps/openmw
...
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.
For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
scrawl
edb5a54092
Include some more required Ogre headers explicitely.
2014-03-05 21:46:37 +01:00
Marc Zinnschlag
f9d2fde783
Merge branch 'openmw-29'
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
Marc Zinnschlag
367919200f
moved CellRefList into a separate file
2014-02-23 20:11:05 +01:00
Marc Zinnschlag
7693f712bc
started making CellStore into a proper class; encapsulated mCell member
2014-02-21 11:35:46 +01:00
scrawl
bc376e6649
Closes #888 : Treat "Bip 01" as animation root if existing
2014-02-19 11:23:03 +01:00
mrcheko
a6be72673c
improves animation-controlled velocity check
2014-02-08 16:59:15 +02:00
scrawl
ffe19e7a52
Feature #50 : Handle attach & release of projectiles
2014-02-05 05:18:11 +01:00
scrawl
a07eaa0c0d
Feature #50 : Allow body pitch in third person for ranged weapon aiming
2014-02-05 05:18:10 +01:00
scrawl
7cf22391a5
Feature #50 : Handle weapon controllers (i.e. bowstring animations, etc)
2014-02-05 05:18:10 +01:00
mrcheko
761f13d3ce
activate whole-body attack animations
2014-02-02 16:29:51 +02:00
scrawl
60bbab52fe
Support keyframe controllers for bones that aren't in the skeleton base
2014-01-31 05:06:34 +01:00
mrcheko
e50e94af0b
remove CreatureStats::mAttackType, set/getAttackType()
2014-01-27 23:05:17 +02:00
scrawl
eba6c9a8fd
Fix massive console spam regarding the scrib's idle3 animation
2014-01-26 02:49:32 +01:00
scrawl
cf378ec31e
Support optional volume and pitch arguments for soundgen events (e.g. moan 0.5 1.0) as required for some actors
2014-01-22 15:25:03 +01:00
scrawl
16f5f5862d
Feature #956 : Implement blocking melee attacks
2014-01-21 23:25:24 +01:00
scrawl
9b32b1403b
Feature #960 : Implement Creature::hit
2014-01-17 17:19:08 +01:00
scrawl
805843d7ff
Closes #1086 : Implement blood effects
2014-01-17 11:27:13 +01:00
scrawl
240d96a0f1
Renamed AnimationValue to AnimationTime
2014-01-17 10:55:46 +01:00
Marc Zinnschlag
f62497dfdc
Merge remote-tracking branch 'mrcheko/master'
2014-01-10 19:08:35 +01:00
mrcheko
d41f27451b
appropriate camera vanity<>preview mode switch + hit recoils fix
2014-01-09 23:36:40 +02:00
Marc Zinnschlag
a7be755db0
Merge remote-tracking branch 'mrcheko/master'
2014-01-08 20:13:31 +01:00
mrcheko
46519062d3
hit recoils/knockdowns feature
2014-01-08 16:05:14 +02:00
mrcheko
2591ff2d5a
bug repairing
2014-01-06 22:00:01 +02:00
scrawl
634a53211c
Make sure materials are built before trying to determine their transparency
2014-01-04 22:56:06 +01:00
mrcheko
7002412760
resolve conflict in character.cpp
2014-01-04 17:55:09 +02:00
mrcheko
09a0a69b04
more improvements
2014-01-01 21:40:31 +02:00
scrawl
be1938ee90
Closes #805 : Don't add entities that are supposed to be invisible to static geometry
2013-12-31 18:32:46 +01:00
scrawl
6400f23ab0
Use the material controller manager for effects with overridden texture
2013-12-27 14:54:36 +01:00
scrawl
d262d9e6b0
Bug #1054 : Set render queue group for effects
2013-12-27 14:51:59 +01:00
scrawl
d09a86e208
Issue #1018 : Don't allow view mode switching while performing an action
2013-12-27 00:36:06 +01:00
scrawl
5931fdcbde
Implement NiBillboardNode. Flags not handled yet.
2013-12-26 20:53:52 +01:00
scrawl
6d27ebabb6
Integrate AddGlow with material controllers
2013-12-26 20:53:45 +01:00
scrawl
1624e0fd8a
Rename ObjectList to ObjectScene. Wrap it in a SharedPtr so we can automate the destruction routine.
2013-12-07 20:15:39 +01:00
scrawl
ffc885853a
Fix bolt for magic effects that don't have one specified
2013-11-29 10:39:37 +01:00
scrawl
3452bd2e0b
Add glow effect for enchanted items
2013-11-20 00:13:12 +01:00
scrawl
0dc2e829dd
Lots of cleanup. Implemented Absorb and Resist. Implemented several instant effects. Added hand VFX.
2013-11-17 23:31:08 +01:00
scrawl
e7993ced69
Fix invalid casts
2013-11-17 04:33:04 +01:00
scrawl
0b5f5351b5
Fix continuous FX getting removed instantly
2013-11-14 13:30:48 +01:00
scrawl
da5c59c8af
addEffect should check effectId, not model.
2013-11-13 19:07:44 +01:00
scrawl
a6e2f43b75
Stop continuous VFX when the effect is no longer active.
2013-11-13 15:44:43 +01:00
scrawl
9b0e82a37f
Projectile models are now spawned (no movement or impact yet). Refactored trap activation to apply range types properly. Handle ContinuousVFX for magic effects (note they aren't stopped yet when the effect ends)
2013-11-13 14:02:15 +01:00
scrawl
0dab7031c0
Make sure effects are destroyed with the animation
2013-11-12 02:22:44 +01:00
scrawl
ffdb91bb21
Add particles for Cast + Hit. Not looking quite right yet.
2013-11-11 23:43:28 +01:00
scrawl
cbe96a2170
Refactor ActiveSpells to track range type. Added basic self range magic.
2013-11-09 07:51:46 +01:00
Chris Robinson
bd6dd071aa
Use the non-accumulation root's parent as the accumulation root
...
This relies on the non-accumulation root not being the skeleton root. I haven't
found an instance where this isn't the case.
2013-08-25 16:08:42 -07:00
Chris Robinson
3ca4d54bf9
Better handle animations with a 0-length loop
2013-08-19 07:26:42 -07:00
Chris Robinson
5ac82a50b7
Remove unused function
2013-08-08 04:40:30 -07:00
Chris Robinson
2b2101958d
Destroy the scene node we create
2013-08-07 03:56:07 -07:00
Chris Robinson
0458fd5531
Remove unused/unneeded parameters
2013-08-07 03:56:06 -07:00
Chris Robinson
b4b095ca72
Don't try to get the center of a null bounding box
2013-08-07 01:32:36 -07:00
Chris Robinson
3555476dfd
Use Animation-derived objects for generic objects
2013-08-06 19:49:07 -07:00
Chris Robinson
a9dca21d05
Create the Animation SceneNode in the constructor
2013-08-06 19:49:05 -07:00
Chris Robinson
48784c7e2f
Use for_each and functors to avoid some for loops
2013-08-06 19:49:05 -07:00
Chris Robinson
de95926e9f
Use controllers to animate lights in ObjectLists
2013-08-06 19:49:04 -07:00
Chris Robinson
e976bb16c5
Add a light for torches
2013-08-06 19:49:02 -07:00
Chris Robinson
57fb065a86
Add Ogre::Light objects to the object list
...
Note that NIFs actually have NiLight-based light records which could be
used to create Ogre::Light objects. However, no Morrowind NIF uses them,
as far as I can tell.
2013-08-06 19:49:01 -07:00
scrawl
7dc30a01cd
Some changes suggested by cppcheck
2013-07-31 18:46:32 +02:00
Chris Robinson
465f4d2063
Properly handle starting an animation at the end
2013-07-28 09:56:03 -07:00
Chris Robinson
92cc566fdc
Rename the Class::attack method to Class::hit
2013-07-25 00:30:01 -07:00
Chris Robinson
59f1bc7542
Use time values for the aniamtion's start, stop, and loop points
...
This seems to be closer to the expected behavior. This more cleanly handles 0-
length animations, especially where the start marker comes after the stop
marker while still being on the same time key.
2013-07-24 08:38:36 -07:00
Chris Robinson
0c8d4d9be2
Add beginnings of melee hits
2013-07-24 02:51:42 -07:00
Chris Robinson
45302f9e25
Handle controllers in the NPC's bound object parts
2013-07-23 22:05:03 -07:00
Chris Robinson
fecb8c1cc4
Fix the completion amount for 0-length anims
2013-07-23 05:30:37 -07:00
Chris Robinson
537d5c4934
Avoid trying to play animations without any animation sources
2013-07-23 04:36:25 -07:00
Chris Robinson
ad6d663e09
Remove some unnecessary debug messages
2013-07-23 03:44:52 -07:00
Marc Zinnschlag
ec575200e3
Merge remote-tracking branch 'gus/MeleeCombat2'
...
Conflicts:
apps/openmw/mwrender/animation.cpp
2013-07-23 09:12:23 +02:00
Chris Robinson
0cb7d186e7
Use Play_TypeFoot for 'left' and 'right' soundgen keys
2013-07-18 21:50:11 -07:00
Marc Zinnschlag
fdd47e5b73
silenced a warning
2013-07-18 13:50:12 +02:00
Chris Robinson
9ea6b22a83
Handle soundgen animation keys
2013-07-17 23:58:21 -07:00
scrawl
91e95e1404
Use the correct slash, chop or thrust animation
2013-07-16 23:32:41 +02:00
Chris Robinson
a932a89e02
Specify the velocity-based animation speed multiplier when playing it
2013-07-16 01:30:03 -07:00
Chris Robinson
f296d13c20
Add a speed multiplier to the animation state
2013-07-16 00:43:31 -07:00
scrawl
fa5198d7b2
Fix an assertion
2013-07-14 14:59:24 +02:00
Chris Robinson
5ee889e8b6
Attach the camera to the Head node in first-person
2013-07-13 16:12:38 -07:00
Chris Robinson
2d7620e774
Rotate the neck when looking up and down in first-person
2013-07-13 12:39:06 -07:00
Chris Robinson
908f010c74
Reset the NPC object root when switching POV
...
When in first person, the skeleton in the .1st.nif file is used. In
particular, these have extra finger bones that are used by the first
person models.
2013-07-12 22:31:57 -07:00
scrawl
7a2d1cd8ce
Security skill
2013-05-19 18:40:37 +02:00
Chris Robinson
f83ee5d316
Play ready/unready animations on the upper body
2013-05-13 03:32:00 -07:00
Chris Robinson
a9928bb842
Split up the UpperBody group
...
Also recognize the [un]equip start and stop text keys.
2013-05-13 02:09:22 -07:00
Chris Robinson
70dc2f77ad
Move the priority enum to MWMechanics
2013-05-13 00:54:44 -07:00
Chris Robinson
bbb38c61cc
Fix queued animations
2013-05-12 05:08:01 -07:00
Chris Robinson
3988866ecd
Make sure active groups are updated after a state is auto-disabled
2013-05-12 04:34:37 -07:00
Chris Robinson
2c556e4036
Be smarter about handling non-moving animations
...
Don't rely on being told by the play method, so the animation can
automatically change without impacting the character controller.
2013-05-12 04:29:42 -07:00
Chris Robinson
4ea347ac52
Use shared pointers to store animation sources
...
This ensures references to the sources stay valid as long it the object
is, rather than becoming invalidated whenever one is added or removed.
2013-05-11 19:38:23 -07:00
Chris Robinson
6b8a687a79
Add methods to disable an animation
...
And rename WeaponState to WeaponType
2013-05-10 22:22:39 -07:00
Chris Robinson
6605aa7dec
Create three bone groups
...
This still won't work as expected. Currently there is only one priority level,
and only one animation state per priority level can be active at a time.
It's close, though.
2013-05-10 20:45:09 -07:00
Chris Robinson
abc676eedd
Allow specifying which bone groups to play an animation on
2013-05-10 20:05:09 -07:00
Chris Robinson
56eede2610
Search more aggressively for an animation velocity
2013-05-10 19:31:33 -07:00
Chris Robinson
5a9c1e1245
Don't explicitly track the last position
2013-05-10 18:58:14 -07:00
Chris Robinson
7c3b014193
Figure out which animations to play based on priority
...
Bone group will also be taken into account later.
2013-05-10 18:37:44 -07:00
Chris Robinson
921f534980
Parameterize the number of bone groups
2013-05-10 16:35:43 -07:00
Chris Robinson
8a9b0eb5f7
Store the AnimSource in the animation state
2013-05-10 15:27:29 -07:00
Chris Robinson
58efce5008
Rename animation layers to animation states
2013-05-10 04:01:30 -07:00
Chris Robinson
ccff364b52
Use a map of active layers instead of an array
...
A bit of an upheaval. Each animation is now a "layer", instead of each layer
having an animation. Incidentally, this is much closer to how Ogre handles
animation states.
In the future, each layer will have a priority, which will be used to determine
which one affects a given bone group (which we currently only have one of).
2013-05-10 03:08:07 -07:00