scrawl
37a7ee8fcd
Set alpha value of character animations according to Invisibility / Chameleon effects.
2013-12-08 23:05:21 +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
bb70deabb1
Add an incomplete implementation of SayAnimationValue (lip animation)
2013-12-07 14:15:45 +01:00
scrawl
d2ed77f3f2
Fix shields being visible during spellcasting
2013-11-23 20:24:52 +01:00
scrawl
a1fe07181c
Fix rotation offset of some lights (bug 955)
2013-11-23 05:55:03 +01:00
scrawl
4ed4c1e319
Add Vampirism and Sun Damage effects. Some fixes.
2013-11-21 00:41:31 +01:00
scrawl
3452bd2e0b
Add glow effect for enchanted items
2013-11-20 00:13:12 +01:00
scrawl
c73217627e
Move code for listing effect sources to the spell management classes
2013-11-15 20:29:47 +01:00
scrawl
00af6b5617
Use an inventory store listener for animation parts and VFX update instead of updating them directly. Slightly more flexible, reduces InventoryStore dependencies and solves a crash during character creation due to the preview doll's animation not being registered in World.
2013-11-15 02:08:36 +01:00
scrawl
4083c55848
Make sure NpcAnimation base exists before runAnimation. Not sure yet why this is needed.
2013-11-14 19:18:27 +01:00
scrawl
992a8e9c36
Refactor NpcAnimation: get rid of delayed update (no longer required), make sure that the Animation is set up *before* the inventory store is accessed anywhere (which now triggers auto equip and animation update). Allows better tracking of magic VFX for permanent enchantments in InventoryStore.
2013-11-14 14:41:10 +01:00
Alex "rainChu" Haddad
f1b4c2e400
Fixed first person offset to use world transform
...
It slipped my mind that some necks might not be perfectly vertical.
2013-10-02 07:03:39 -04:00
Alex "rainChu" Haddad
ed0c31b485
Refactored, moved logic out of NpcAnimation
...
The logic is now handled by RenderingManager, and Camera sets its
animation's first person offset height. Due to how NpcAnimation seems to
be updated, it has to be the one to actually set its own nodes, in the
case of the hands. Otherwise, the hands would not move without a messier
hack.
2013-10-02 05:16:52 -04:00
Alex "rainChu" Haddad
0ddb5097fc
Revert "Bug #840 , First Person Sneaking Camera Height"
...
This reverts commit 296abfd48f
.
2013-10-01 11:44:45 -04:00
Alex "rainChu" Haddad
296abfd48f
Bug #840 , First Person Sneaking Camera Height
...
Also, added comments to existing code in the area.
2013-10-01 10:48:34 -04:00
Chris Robinson
75131e6a48
Rebuild the actor after switching between werewolf forms
2013-08-08 17:16:24 -07:00
Chris Robinson
d77d60cbc2
Remove an unneeded forceUpdate method
2013-08-08 15:37:08 -07:00
Chris Robinson
1f6055d54b
Don't try to apply body skins for werewolves
...
They instead use a hidden WerewolfRobe object for their body
2013-08-08 04:40:31 -07:00
Chris Robinson
9694b18d1b
Update part skeletons immediately when added
2013-08-08 04:40:30 -07:00
Chris Robinson
f73578a832
Remove unnecessary mBodyPrefix field
2013-08-08 04:40:30 -07:00
Chris Robinson
5051544144
Remove some duplicate code
2013-08-08 04:40:30 -07:00
Chris Robinson
ceed2e30b8
Handle NPCs being a werewolf in NpcAnimation
...
Note that the body mesh comes from having a WerewolfRobe force-equipped.
2013-08-08 04:40:30 -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
8984d8f8ee
Use a map to simplify NPC part referencing
2013-08-06 19:49:02 -07:00
Chris Robinson
e976bb16c5
Add a light for torches
2013-08-06 19:49:02 -07:00
Chris Robinson
1f436f9886
Render torches
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
45302f9e25
Handle controllers in the NPC's bound object parts
2013-07-23 22:05:03 -07:00
scrawl
61661c8653
Fix first person meshes casting shadows
2013-07-14 14:55:07 +02:00
Chris Robinson
3771e5839e
Allow some more third person fallbacks in first person
2013-07-13 17:03:10 -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
4df1f198a7
Avoid a map lookup for every skin body part when updating
2013-07-12 22:32:09 -07:00
Chris Robinson
6de56615aa
Avoid casting shadows in first-person view
2013-07-12 22:32:05 -07:00
Chris Robinson
025fa4e0d5
Use a multimap for the bodypart map
2013-07-12 22:32:04 -07:00
Chris Robinson
a5e4faaed2
Show arms and body parts in first person
...
This isn't yet fully correct. The arms need to rotate up and down with
the camera, and the mesh's bounding box is causing them to blink out at
certain angles since they don't fit the animation.
2013-07-12 22:31:59 -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
ee585046ac
Don't show weapons in first-person
2013-05-17 01:56:16 -07:00
Chris Robinson
3c5c10144a
Remove a duplicate showWeapons call
2013-05-14 19:38:57 -07:00
Chris Robinson
47a9a4cdff
Clean up a for loop
2013-05-14 01:29:15 -07:00
Chris Robinson
8e38dc410f
Allow loading multiple animation sources
...
Animation sources are treated differently from base objects. When given
"path\file.nif", base objects will look for "path\xfile.nif" and use that
if it exists (falling back to the original name if not found). Animation
sources will instead use "path\xfile.kf", ignoring it if the file doesn't
exist.
2013-05-07 16:59:32 -07:00
Chris Robinson
e85bc8b2cd
Only load one Nif for Animation objects
...
This breaks quite a bit, but it's needed for the transition to using the
.kf files.
2013-05-06 23:11:26 -07:00
Chris Robinson
854de1c6c1
Make sure the weapon is in the proper group
2013-04-29 11:43:37 -07:00
Chris Robinson
063322b081
Declare some variables closer to where they're used
2013-04-29 10:12:50 -07:00
Chris Robinson
0cf531ba12
Make sure to update parts when the weapon changes
2013-04-29 09:53:36 -07:00
gus
3d9ceede77
little fix (weapons disapeared when tab was pressed)
2013-04-28 12:33:41 +01:00
gus
5388c25e64
Fix or lockpicks.
2013-04-28 11:55:50 +01:00
gus
766d1efa84
Render weapon and shield. Only shield can be seen right now as weapons need to be drawed out.
2013-04-28 11:41:01 +01:00
Marc Zinnschlag
32138dbb0f
silenced a warning
2013-04-26 13:33:47 +02:00
Chris Robinson
55ee4e65a9
Clean up the slotlist struct
2013-04-25 23:42:20 -07:00
Chris Robinson
274f3c7b77
Force character state to update after switching view modes
2013-04-25 07:08:11 -07:00
Chris Robinson
2769adcee0
Implement switching to and from first-person animations
...
Note that the current animation gets interrupted, so switching to first person
may break movement until you stop and try to move again. This can be fixed by
alerting the character controller in the mechanics manager to force a state
update when switching POV.
2013-04-25 05:23:05 -07:00
Chris Robinson
24f1eba902
Keep track of whether an animation supplies movement
...
Also handle it when it doesn't.
2013-04-24 22:45:43 -07:00
Chris Robinson
50bb92beb3
Use a method to set the visibility flags and render queue.
2013-04-19 02:01:50 -07:00
Chris Robinson
6d59325bff
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-17 23:21:17 -07:00
scrawl
c519fc360d
Move away from fixed record names for body parts
2013-04-18 00:19:34 +02:00
Chris Robinson
1b1f9f7921
Allow multiple ObjectLists to be created for Animations.
...
addObjectList may not currently be called outside of the related constructor.
2013-04-15 18:55:28 -07:00
Chris Robinson
69084139aa
Use an array of objectlists, instead of one base objectlist and an array of 'animation sources'
2013-04-14 17:58:21 -07:00
Chris Robinson
f9dee25fd1
Store the base skeleton entity in MWRender::Animation
2013-04-14 16:56:35 -07:00
Chris Robinson
50d8353a8d
Fix a hack so arms dont show in first-person
2013-04-09 16:51:04 -07:00
Chris Robinson
a700c50e84
Add a first-person view mode to NpcAnimation
...
And use it instead of showing/hiding the player.
2013-04-09 15:10:14 -07:00
Chris Robinson
9f9d978b0f
Use an enum to specify the NPC's view mode (normal, head only)
2013-04-09 09:07:05 -07:00
Chris Robinson
08d43fe217
Make the getHeadNode method more general
2013-04-08 05:48:52 -07:00
Chris Robinson
7494f90301
Remove an unneeded function
2013-04-07 13:02:46 -07:00
Chris Robinson
be419bc891
Handle NiCamera nodes
2013-04-07 02:28:15 -07:00
Chris Robinson
878b4c15c5
Set visibility flags and the render queue group for particles
2013-04-07 02:08:33 -07:00
Chris Robinson
2db72ae607
Rename EntityList to ObjectList
2013-04-07 01:52:35 -07:00
Chris Robinson
0631b28646
Prepare for supporting controller objects
2013-04-05 10:13:54 -07:00
Chris Robinson
77ba0fbe73
Prepare for creating particles
...
This adds a vector of ParticleSystems to the EntityList, and modifies
corresponding code to handle it. It also loads the ParticleFX plugin so
particles can be created (although they aren't yet).
2013-04-04 05:10:52 -07:00
scrawl
485b6c855a
Fix NPC race height not being applied
2013-03-15 16:44:35 +01:00
scrawl
66d2d3522f
Race selection preview: render only the head, and focus the camera on its node
2013-03-06 18:03:47 +01:00
scrawl
ca707aa65f
Transparency should be evaluated per subentity, not per NIF
2013-03-04 16:57:00 +01:00
scrawl
0f6fd80294
Merge branch 'master' of git://github.com/zinnschlag/openmw into graphics
...
Conflicts:
apps/openmw/mwgui/windowmanagerimp.cpp
apps/openmw/mwrender/npcanimation.cpp
files/mygui/openmw_settings_window.layout
2013-03-03 11:02:38 +01:00
Chris Robinson
238a8feb18
Fix transparency checks
2013-03-01 13:27:25 -08:00
Chris Robinson
1168f15361
Don't disable depth writes when blending is enabled
2013-02-28 12:17:58 -08:00
scrawl
cacdb33b42
Merge branch 'master' into graphics
...
Conflicts:
apps/openmw/CMakeLists.txt
apps/openmw/mwrender/npcanimation.cpp
apps/openmw/mwrender/sky.cpp
2013-02-25 15:12:03 +01:00
Chris Robinson
a2eaec7878
Avoiding holding the InventoryStore in the NpcAnimation class
2013-02-23 08:03:52 -08:00
Chris Robinson
0148db8ccf
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
apps/openmw/mwrender/npcanimation.cpp
apps/openmw/mwrender/npcanimation.hpp
2013-02-23 05:59:35 -08:00
scrawl
4b51184ec4
Merge branch 'master' of https://github.com/zinnschlag/openmw into graphics
2013-02-23 14:37:28 +01:00
greye
9659b4a95e
update NpcAnimation inventory reference on cell change
2013-02-23 16:45:55 +04:00
Chris Robinson
b8f5813609
Set all animation sources at once
2013-02-23 03:34:03 -08:00
Chris Robinson
ecbf1568a1
Fix NPC part attachment
2013-02-22 10:15:29 -08:00
Chris Robinson
18b7008409
Better fix some scaling issues
2013-02-05 18:25:09 -08:00
Chris Robinson
535cd8360f
Load extra animations for NPCs
2013-02-05 18:09:43 -08:00
scrawl
15e51b76de
Experimental: Directional shading on local map, separated out refraction render, no longer uses screen depth
2013-02-03 15:46:23 +01:00
Chris Robinson
7f87c1873b
Use an array to store the entity parts
2013-02-02 02:53:22 -08:00
Chris Robinson
b6354c6282
Don't share skeleton instances between bounded parts on an NPC
...
However, a skeleton instance will still be shared between entities in an entity
list.
2013-01-30 09:29:16 -08:00
Chris Robinson
9123f4f2af
Return the movement vector from runAnimation
2013-01-18 16:21:29 -08:00
Chris Robinson
23ac1c2de5
Merge remote-tracking branch 'zini/master' into animation2
...
Conflicts:
components/nifogre/ogre_nif_loader.cpp
2013-01-09 20:52:12 -08:00
eduard
2dc0064cc2
more string lowercase
2013-01-09 20:51:52 +01:00
Chris Robinson
c4c8295e0b
Rename NIFLoader to Loader, and update some comments
2013-01-09 09:10:59 -08:00
Chris Robinson
be74859f05
Avoid some unnecessary copying when calling addPartGroup
2013-01-09 08:03:28 -08:00
Chris Robinson
625a538f03
Combine part selection into a single loop
2013-01-09 07:43:10 -08:00
Chris Robinson
b96a979719
Store an MWWorld::Ptr with the Animation
2013-01-06 17:05:48 -08:00
Chris Robinson
2b1fe7dc44
Add part info for weapons and shields
2013-01-06 05:39:39 -08:00
Chris Robinson
976b042cca
Use a list to reduce some repeating code
2013-01-06 02:14:19 -08:00
Chris Robinson
6e84d4bcdd
Add a helper method to load entity objects
2013-01-04 23:19:48 -08:00
greye
c3f0dc0dfb
m prefix for NpcAnimation members
2012-11-08 23:11:43 +04:00
greye
932a9dc6f9
applying new interface vol.8, inconsistent
2012-11-06 11:53:00 +04:00
greye
d205723a17
resolving m prefix/ESMStore movement
2012-11-05 18:02:47 +04:00
greye
2057f5619e
move ESMStore to MWWorld
2012-11-05 17:18:01 +04:00
greye
3c2ce25f5f
m prefix for mwworld/cellstore.hpp
2012-11-05 16:07:59 +04:00
greye
18cc435aa1
resolving conflicts
2012-09-21 13:13:11 +04:00
Marc Zinnschlag
4abb9a00da
Merge remote-tracking branch 'jhooks/physicsaedra3' into next
2012-09-18 11:25:09 +02:00
greye
7606ebafd6
resolving conflicts, minor update
2012-09-17 11:37:50 +04: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
scrawl
35f7216f2f
fixed some things
2012-09-14 17:25:32 +02:00
scrawl
6ac2a12296
item selection working on the preview
2012-09-14 14:34:18 +02:00
scrawl
eef750e6b0
race selection preview
2012-09-13 19:03:31 +02:00
scrawl
4f3eb3c34a
character preview WIP
2012-09-13 00:54:32 +02:00
Jason Hooks
c5b25ef70b
Very basic actor physics (no set scale/rotate functions)
2012-09-10 20:29:24 -04:00
Jason Hooks
083e3537b4
post merge
2012-08-09 17:21:59 -04:00
Jason Hooks
cacf0bd10d
Basic collision with npcs
2012-08-04 15:43:33 -04:00
Chris Robinson
f953d7f8c0
Store text keys from base NIF animations
2012-07-23 17:27:35 -07:00
Chris Robinson
36be1536d9
Return text keys from NIFs when creating entities
2012-07-23 17:20:47 -07:00
Chris Robinson
e81fc42daa
Remove the beast-race special cases from updateParts
...
The special handling should happen at a much lower level, and prevent the
objects from being equipped in the first place.
2012-07-21 17:12:41 -07:00
Chris Robinson
c5b9098517
Remove an unused field from EntityList
2012-07-21 17:09:16 -07:00
Chris Robinson
81ce8dbe12
Combine animation handling into the base class
2012-07-21 14:41:26 -07:00
Chris Robinson
fcaa8aae06
Don't skip animation state updates for NPCs
2012-07-21 11:26:09 -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
8b5b74f9ee
Add a quick hack to let "playgroup all" work on creatures and NPCs
2012-07-19 22:34:26 -07:00
Chris Robinson
a86ed46ec4
Use the race ID specified in the ref base's record instead of the race record
...
The latter is localized and doesn't match with international versions.
2012-07-19 11:00:26 -07:00
Chris Robinson
6caa39629d
Reimplement the skirt part
2012-07-18 22:32:26 -07:00
Chris Robinson
b505d4ace0
Fix feet and entity part detachment
2012-07-18 21:39:50 -07:00
Chris Robinson
4af1bce659
Restore and fix some missing parts
2012-07-18 20:14:23 -07:00
Chris Robinson
d9b64b77ec
Attach skinned parts to the scene node instead of the named bone
2012-07-18 18:38:55 -07:00
Chris Robinson
db948969c9
Attach NPC parts to the proper bone
2012-07-18 11:14:13 -07:00
Chris Robinson
04e496a6ca
Store the entity lists for NPC parts
2012-07-18 10:26:25 -07:00
Chris Robinson
6611b0b317
Use an array instead of a bunch of nearly-identical if blocks
2012-07-18 10:09:16 -07:00
Chris Robinson
02d39080c8
Destroy entities when they're done with.
2012-07-18 00:17:39 -07:00
Chris Robinson
4109d0d923
Destroy entities removed from the NPC
2012-07-17 22:47:56 -07:00
Chris Robinson
92546ca18d
Move the last bits of code to createEntities
2012-07-17 20:23:09 -07:00
Chris Robinson
94f3e7a6c0
Store the entity list in the object
2012-07-17 16:00:03 -07:00
Chris Robinson
a590db2cf4
Create entities when loading NIFs for the NPC base
2012-07-17 15:43:40 -07:00
Chris Robinson
c6cc82a51a
Handle multiple entities per NPC part
2012-07-17 12:20:52 -07:00
Chris Robinson
89cfe778f0
Support multiple entities for the NPC base
2012-07-17 11:38:50 -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
Chris Robinson
939d0d2fc5
Return a list of meshes and the skeleton from NIFLoader::load
2012-07-13 20:01: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
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
5a7b95bf7a
Issue #107 : cleaned up includes in apps/openmw/mwworld/class.hpp
2012-07-03 13:15:20 +02:00
Marc Zinnschlag
4c39fefd1e
Issue #107 : World is accessed only through the interface class from now on; some include cleanup
2012-07-03 12:30:50 +02:00
Marc Zinnschlag
7fcd41c69d
Issue #107 : Detemplateised CellStore; some include cleanup
2012-06-29 18:54:23 +02:00
Marc Zinnschlag
76174098c7
Issue #107 : CellStore moved from ESMS to MWWorld
2012-06-29 16:48:50 +02:00
scrawl
c85c794c86
fixed some cppcheck issues
2012-06-06 20:29:30 +02:00
Marc Zinnschlag
7ac9523e0c
Merge branch 'master' into next
2012-04-23 15:32:02 +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
Marc Zinnschlag
cc86998281
removing some cout spam
2012-04-21 10:12:59 +02:00