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
30666f2cce
Fixes #1297 : Store global map markers in savegame
2014-04-26 13:42:32 +02:00
scrawl
45d2a00717
Fixes #1293 : Allow interpolation type 0 in case of 0 keys
2014-04-26 11:36:27 +02:00
Emanuel Guevel
ce7aa96371
Fix visual glitch happening when closing inventory while sneaking
...
(bug #1255 )
2014-04-06 22:21:28 +02:00
megaton
50af9bc0d3
General perfomance optimizations.
2014-03-30 19:45:27 +04:00
scrawl
5906d795c0
Refactored video player (now a MyGUI widget)
2014-03-27 19:10:15 +01:00
scrawl
23f4bbc5b0
Videoplayer: only pause previous sounds if there is an audio stream
2014-03-26 21:36:57 +01:00
scrawl
0a17245633
Refactored settings window
2014-03-22 19:02:14 +01:00
scrawl
3880247017
Fixes #1206 : effect texture override was not accounted for
2014-03-15 20:28:48 +01:00
scrawl
0cd40294a2
Fixed ranged combat for creatures
2014-03-12 11:30:44 +01:00
scrawl
072dc6d438
Feature #50 : Implement marksman mechanics.
2014-03-08 06:03:45 +01:00
scrawl
12de0afb03
Feature #50 : Spawn projectiles
...
Fix a bug in copyObjectToCell.
Make actor rotations more consistent.
2014-03-08 01:31:27 +01:00
scrawl
1d926816b5
Terrain: background load blendmaps & layer textures. Refactor QuadTree update.
2014-03-05 21:46:37 +01:00
scrawl
2a4e99c069
Set StaticGeometry origin
...
Fixes an exception for coordinates far away from (0,0,0).
2014-03-05 21:46:37 +01:00
scrawl
edb5a54092
Include some more required Ogre headers explicitely.
2014-03-05 21:46:37 +01:00
scrawl
195071efc7
Terrain: geometry is now loaded in background threads.
...
TODO: background load layer textures and blendmaps.
"Distant land" setting has been removed for now (i.e. always enabled).
2014-03-05 21:46:37 +01:00
scrawl
065b6d3331
Terrain: moved ESM::Land load to earlier in the startup procedure
...
Required for background loading as we cannot load ESM::Land data from background threads.
2014-03-05 21:46:36 +01:00
scrawl
c9e349f60f
Terrain: support alternate coordinate systems. Get rid of LoadingListener for now
2014-03-05 21:46:36 +01:00
Marc Zinnschlag
f9d2fde783
Merge branch 'openmw-29'
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
cc9cii
56ae85df0c
Fix 32bit Windows crash while taking the save screenshot.
2014-02-28 00:28:02 +11: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
1fba5d1bb9
Terrain: change world bounds from AABB to 4 floats
2014-02-19 11:23:03 +01:00
scrawl
bc376e6649
Closes #888 : Treat "Bip 01" as animation root if existing
2014-02-19 11:23:03 +01:00
scrawl
90f6cda4cc
Moved includes to appropriate place
2014-02-19 11:23:03 +01:00
Marc Zinnschlag
9c52820754
Merge remote-tracking branch 'scrawl/master'
2014-02-13 10:54:51 +01:00
scrawl
c6fb0f2d9b
Removed terrain component's dependency on ESM
2014-02-13 10:13:53 +01:00
mrcheko
a6be72673c
improves animation-controlled velocity check
2014-02-08 16:59:15 +02:00
scrawl
8f949c6ae2
Fix lockpicks
2014-02-08 07:35:34 +01:00
scrawl
ff11d85a62
Fix wrong assertion
2014-02-06 03:15:01 +01: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
scrawl
8aed4fcfa4
Correction for marksman weapon inventory preview
2014-02-05 05:18:10 +01:00
scrawl
5b076aa570
Revert "Bug #1074 : Inventory paperdoll obscures armour rating"
...
This reverts commit b017a3be3e
.
2014-02-05 05:18:10 +01:00
mrcheko
761f13d3ce
activate whole-body attack animations
2014-02-02 16:29:51 +02:00
scrawl
dea9d21db6
Some additional safety checks for global map loading
2014-02-01 18:42:01 +01:00
Marc Zinnschlag
1b5301eec0
Merge branch 'savedgame'
...
Conflicts:
apps/openmw/mwbase/mechanicsmanager.hpp
apps/openmw/mwbase/soundmanager.hpp
apps/openmw/mwgui/mapwindow.hpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
apps/openmw/mwsound/soundmanagerimp.hpp
components/esm/loadcell.cpp
2014-02-01 18:16:32 +01:00
scrawl
4ec86d1c68
Bug #1147 : Fix the inventory preview pose used for ranged weapons
2014-01-31 05:06:35 +01: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
e0de76a6f7
Save/load global map
2014-01-25 19:06:14 +01:00
scrawl
f09328ca84
Clear global map overlay when starting/loading a game
2014-01-25 13:34:56 +01:00
scrawl
03cf383be7
Merge branch 'master' of https://github.com/zinnschlag/openmw into savedgame
...
Conflicts:
apps/openmw/mwgui/referenceinterface.cpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
apps/openmw/mwscript/cellextensions.cpp
apps/openmw/mwworld/cells.cpp
apps/openmw/mwworld/cells.hpp
apps/openmw/mwworld/cellstore.cpp
apps/openmw/mwworld/store.cpp
apps/openmw/mwworld/worldimp.cpp
2014-01-24 18:28:35 +01:00
scrawl
295aed3533
Implement savegame screenshots
2014-01-24 17:49:16 +01:00
scrawl
786ed6ca5b
Include some required Ogre headers explicitely
2014-01-24 15:02:34 +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
Marc Zinnschlag
9ebe66e693
improved cleanup; failed loads will now drop back into the main menu instead of crashing
2014-01-21 14:50:58 +01:00
scrawl
205e8aa4e9
Feature #957 : Implement area magic
2014-01-20 13:11:29 +01:00
scrawl
13646a651b
Issue #777 : Handle creatures with weapons in CharacterController. Move attack strength to CreatureStats.
2014-01-19 13:32:58 +01:00
scrawl
198bb0de60
Issue #777 : Add CreatureAnimation variant for creatures with weapons/shields
2014-01-19 13:05:26 +01:00
scrawl
589fbbd871
Issue #777 : Create InventoryStore for creatures with weapons/shields
2014-01-19 11:43:23 +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
scrawl
da3295d69c
Closes #1106 : Move stance to CreatureStats, since creatures also have separate run/walk animations.
2014-01-15 14:53:29 +01:00
Marc Zinnschlag
1b03eec63e
Merge remote-tracking branch 'scrawl/master'
2014-01-11 11:43:12 +01:00
scrawl
15e48107f7
Use i1stPersonSneakDelta + some cleanup
2014-01-10 22:39:01 +01:00
Marc Zinnschlag
f62497dfdc
Merge remote-tracking branch 'mrcheko/master'
2014-01-10 19:08:35 +01:00
mrcheko
ffcb7fb280
fix for bug scrawl mentioned
2014-01-10 19:04:07 +02:00
mrcheko
d41f27451b
appropriate camera vanity<>preview mode switch + hit recoils fix
2014-01-09 23:36:40 +02:00
scrawl
aa855e9524
Include some required Ogre headers explicitely
2014-01-09 20:56:24 +01:00
Marc Zinnschlag
85707b5e3e
Merge remote-tracking branch 'scrawl/master'
2014-01-09 09:35:54 +01:00
scrawl
6f9113fe88
Add preliminary implementation of PayFine, PayFineThief and GoToJail instructions
2014-01-09 01:49:58 +01:00
Marc Zinnschlag
a7be755db0
Merge remote-tracking branch 'mrcheko/master'
2014-01-08 20:13:31 +01:00
scrawl
098f9712f1
Add getPlayerPtr() utility method. Reduces dependencies a lot.
2014-01-08 18:39:44 +01:00
mrcheko
46519062d3
hit recoils/knockdowns feature
2014-01-08 16:05:14 +02:00
scrawl
728365b48d
Remove an unused hook
2014-01-07 21:07:02 +01:00
scrawl
03b6334ceb
Get rid of a hack
2014-01-07 20:43:08 +01:00
mrcheko
2591ff2d5a
bug repairing
2014-01-06 22:00:01 +02:00
scrawl
62774fcc4a
Merge branch 'master' into HEAD
...
Conflicts:
apps/openmw/mwbase/world.hpp
apps/openmw/mwinput/inputmanagerimp.cpp
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwworld/worldimp.cpp
apps/openmw/mwworld/worldimp.hpp
components/esm/loadtes3.cpp
2014-01-06 00:23:17 +01:00
scrawl
c004fb778f
Get rid of underscore defines. They are reserved by the standard.
2014-01-05 18:22:29 +01:00
scrawl
634a53211c
Make sure materials are built before trying to determine their transparency
2014-01-04 22:56:06 +01:00
scrawl
c4e4a8fb57
Closes #1083 : Fix werewolf change handling
2014-01-04 20:50:18 +01:00
mrcheko
7002412760
resolve conflict in character.cpp
2014-01-04 17:55:09 +02:00
Marc Zinnschlag
ee621245bb
Merge remote-tracking branch 'scrawl/master'
2014-01-03 15:59:06 +01:00
scrawl
623cdef69f
Code cleanup
2014-01-02 21:49:12 +01:00
Lukasz Gromanowski
b017a3be3e
Bug #1074 : Inventory paperdoll obscures armour rating
...
Changed size of inventory paperdoll.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-01-02 20:20:57 +01:00
scrawl
0990ca4b75
Closes #1072 : Fix extra light being added multiple times when showCarriedLeft(true) is called repeatedly
2014-01-02 15:58:00 +01:00
Marc Zinnschlag
a6e6411686
Merge remote-tracking branch 'scrawl/master'
2014-01-02 12:12:52 +01:00
scrawl
c6421276bd
Closes #841 : Correct activation distance in third person mode
2014-01-01 23:59:17 +01:00
scrawl
5729672262
Show marked position on map. Implement Detect X magic effects.
2014-01-01 22:37:52 +01:00
mrcheko
09a0a69b04
more improvements
2014-01-01 21:40:31 +02:00
Marc Zinnschlag
e1355be47c
Merge remote-tracking branch 'lgro/valgrind_warnings'
2014-01-01 19:41:52 +01:00
Lukasz Gromanowski
2d4e06cd50
Updated comments about freeing format_ctx->pb->buffer.
...
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-01-01 17:05:49 +01: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
94cdc1efd2
Enable mipmap generator for 1.9+
2013-12-31 00:54:40 +01:00
Lukasz Gromanowski
cb04f43384
Fixes for "Conditional jump or move depends on uninitialised value(s)"
...
and memleaks reported by valgrind.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-30 23:08:53 +01:00
Lukasz Gromanowski
5c5f87445b
Fixes for "Conditional jump or move depends on uninitialised value(s)"
...
and memleaks reported by valgrind.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-30 21:47:06 +01:00
scrawl
596c9b80a9
Check if threads are joinable before joining (issue with boost 1.52)
2013-12-27 22:38:30 +01:00
scrawl
85ec80100c
Bug #1005 : Hide torches/shields during spellcasting and hand-to-hand combat
2013-12-27 22:00:16 +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
eb5e4ecec2
Remove more unused code
2013-12-16 15:35:38 +01:00
mrcheko
fd9f8c34f6
bug fix http://bugs.openmw.org/issues/428
2013-12-15 18:50:25 +02:00
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
Marc Zinnschlag
030c733e2d
Merge branch 'master' into savedgame
...
Conflicts:
apps/openmw/mwmechanics/actors.cpp
apps/openmw/mwworld/worldimp.cpp
files/settings-default.cfg
2013-12-07 12:27:06 +01:00
Marc Zinnschlag
e818d43bc3
removed an outdated typedef and some dead code
2013-12-05 13:21:26 +01:00
scrawl
8f4ffe4ddc
Fix new window size not being written to settings when manually resizing window
2013-12-03 15:55:31 +01:00
scrawl
ffc885853a
Fix bolt for magic effects that don't have one specified
2013-11-29 10:39:37 +01:00
scrawl
97fadb24ca
Update the Ptr in mObjects in Objects::updateObjectCell
2013-11-27 18:49:04 +01:00
scrawl
d2ed77f3f2
Fix shields being visible during spellcasting
2013-11-23 20:24:52 +01:00
Marc Zinnschlag
d8c40562ae
Merge remote-tracking branch 'scrawl/light'
2013-11-23 12:44:42 +01:00
scrawl
a1fe07181c
Fix rotation offset of some lights (bug 955)
2013-11-23 05:55:03 +01:00
scrawl
0e254aa7c7
Fix startNewGame assigning an already freed CellStore to the player Ptr supplied to WindowManager. Fixes a crash when equipping lights after starting a new game (bug 967). Side note: The inventory preview's Ptr being assigned a cell at all doesn't make sense, as that is used to determine the light setting which should be the same no matter which cell you're in.
2013-11-23 03:25:55 +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
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
c73217627e
Move code for listing effect sources to the spell management classes
2013-11-15 20:29:47 +01:00
scrawl
f7befa3e54
Remove a no longer required method
2013-11-15 02:20:04 +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
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
Emanuel Guevel
467bd91651
Update actor model on inventory change
2013-11-10 02:45:17 +01:00
scrawl
cbe96a2170
Refactor ActiveSpells to track range type. Added basic self range magic.
2013-11-09 07:51:46 +01:00
Marc Zinnschlag
ce8694c84e
Merge remote-tracking branch 'scrawl/master'
2013-10-13 18:55:49 +02:00
scrawl
fa264935ff
We can apply vsync at runtime now that the Ogre bug is fixed.
2013-10-13 17:56:26 +02: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
Marc Zinnschlag
7076ea9467
Merge remote-tracking branch 'scrawl/map'
2013-09-02 10:55:12 +02:00
scrawl
3ddeb075fb
Fix a cell border seam on the map
2013-08-31 04:36:23 +02:00
scrawl
f12d5b728a
Ogre 1.9 compatibility changes
2013-08-29 17:14:25 +02:00
scrawl
839d251cc5
Renamed Terrain::Terrain to Terrain::World to make VC happy
2013-08-27 16:01:16 +02:00
scrawl
d3d6dfbde8
Refactored loading screen
...
- Add loading progress for data files, global map, terrain
- Refactored and improved cell loading progress
2013-08-27 15:48:13 +02:00
Marc Zinnschlag
dcc55b60c3
Merge remote-tracking branch 'kcat/misc-cleanup'
2013-08-26 08:51:19 +02:00
Chris Robinson
0463dc0653
Use a smaller static geometry size for interior cells
2013-08-25 16:08:43 -07: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
scrawl
5af89a9e8f
Fix an AABB assert for loading empty exterior cells
2013-08-26 00:13:42 +02:00
scrawl
1adce8afb3
Fix ambient light getting set from the cell data for non-interior cells
2013-08-22 10:47:48 +02:00
scrawl
ce5ea6d7d2
Use a proper node hierarchy; disconnect the root when entering interior
2013-08-21 17:26:11 +02:00
Chris Robinson
0e56b2facb
Merge remote-tracking branch 'zini/master' into physics
2013-08-20 04:42:28 -07:00
scrawl
ecf7786d11
terrain_num_lights was removed
2013-08-20 12:31:47 +02:00
scrawl
fa76d1631b
Some terrain fixes
2013-08-20 12:08:46 +02:00
Chris Robinson
a993af53e7
Merge remote-tracking branch 'zini/master' into physics
2013-08-20 02:21:44 -07:00
scrawl
8c8653160d
Crash fix, material fix
2013-08-20 09:52:27 +02:00
scrawl
ebf9debb80
Enabled terrain self shadows, implemented getHeightAt, some optimizations
2013-08-19 20:39:37 +02:00
scrawl
e27437f8ed
New terrain renderer - improvements:
...
- Consistent triangle alignment, fixes a noticable crack near the census and excise office. Note that alignment is still not the same as vanilla. Vanilla uses a weird diagonal pattern. I hope there aren't more trouble spots that will force us to replicate vanilla, but at least we can do that now.
- Fixes several blending issues and cell border seams
- Fix map render to use the terrain bounding box instead of an arbitrary height
- Different LODs are now properly connected instead of using skirts
- Support self shadowing
- Normals and colors are stored in the vertices instead of a texture, this enables per-vertex lighting which should improve performance, fix compatibility issues due to the PS getting too large and mimic vanilla better
- Support a fixed function fallback (though the splatting shader usually performs better)
- Designed for distant land support - test: https://www.youtube.com/watch?v=2wnd9EuPJIY - we can't really enable this yet due to depth precision issues when using a large view distance
2013-08-19 20:34:20 +02:00
Chris Robinson
3ca4d54bf9
Better handle animations with a 0-length loop
2013-08-19 07:26:42 -07: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
5ac82a50b7
Remove unused function
2013-08-08 04:40:30 -07:00
Chris Robinson
076e7d8e16
Make insertBegin internal
2013-08-07 03:56:07 -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
Marc Zinnschlag
932fffd1a7
Merge remote-tracking branch 'kcat/light-objects'
2013-08-07 11:21:01 +02: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
80d271aeb1
Remove unused stuff
2013-08-07 01:31:01 -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
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
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
Chris Robinson
1f436f9886
Render torches
2013-08-06 19:49:01 -07:00
scrawl
3f7daa4884
Forgot to change initTerrainTextures
2013-08-07 02:58:03 +02:00
scrawl
76e538c22a
Unused variable fix
2013-08-07 02:03:23 +02:00
scrawl
726c93c365
Terrain fixes to match vanilla better - vertices need to be mapped directly to texels for colormap and blendmap (this also caused seams at cell borders), layer uv scale appears to be 8 not 10
2013-08-07 01:34:17 +02:00
scrawl
7dc30a01cd
Some changes suggested by cppcheck
2013-07-31 18:46:32 +02:00
scrawl
90a5d8b6f5
Fix uninitialized AL listener position/orientation when the game is paused during the first frame
2013-07-30 23:24:18 +02:00
Sebastian Wick
7c24c0a64e
fix uninitialized variables
2013-07-29 16:45:35 +02:00
Sebastian Wick
d2b7cb5bb2
First/Third person transitions with mouse wheel
2013-07-29 16:43:16 +02:00
Marc Zinnschlag
3fa4a194a7
Merge remote-tracking branch 'scrawl/master'
2013-07-29 09:59:23 +02:00
scrawl
6164e5bae6
Restored window resizing
2013-07-29 02:32:08 +02:00
Chris Robinson
465f4d2063
Properly handle starting an animation at the end
2013-07-28 09:56:03 -07:00
Marc Zinnschlag
3fbbbdc64b
Merge remote-tracking branch 'scrawl/master'
2013-07-26 08:06:53 +02: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
Chris Robinson
ef17fdeb15
Remove some unused methods
2013-07-23 01:37:41 -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
Marc Zinnschlag
a8168c58c2
Merge remote-tracking branch 'kolek/thirdpersonzoom'
2013-07-20 18:29:59 +02:00
Kolzi
d12bac2d9e
Third person zoom - fixed code review issues.
2013-07-20 16:55:35 +02:00
Kolzi
1b7966ca27
Can zoom in and out in third person view.
2013-07-19 16:12:01 +02:00
Chris Robinson
0cb7d186e7
Use Play_TypeFoot for 'left' and 'right' soundgen keys
2013-07-18 21:50:11 -07:00
scrawl
bf332b633e
Make VideoPlayer::playVideo block until the video finishes
2013-07-18 14:14:10 +02: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
Chris Robinson
c7692acb79
Update the player's Ptr in mwrender when changing cells
2013-07-17 19:11:03 -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
daf9dca121
Fix exception when starting a new game
2013-07-15 20:37:36 +02:00
scrawl
c81b852071
Fixes inaccurate ray casts; rely on getCameraToViewportRay
2013-07-15 00:39:37 +02:00
scrawl
fa5198d7b2
Fix an assertion
2013-07-14 14:59:24 +02:00
scrawl
61661c8653
Fix first person meshes casting shadows
2013-07-14 14:55:07 +02:00
scrawl
a049638e7f
Fixes character previews getting shadowed randomly
2013-07-14 14:54:40 +02:00
Chris Robinson
3771e5839e
Allow some more third person fallbacks in first person
2013-07-13 17:03:10 -07: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
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
72600a16cf
Fix chargen race menu bug, updating a render target from within MyGUI's ControllerManager update is not a good idea
2013-07-06 17:02:40 +02:00
Miroslav Puda
743b3dec99
Correction of libavutil version
2013-06-26 07:17:29 +02:00
eroen
d75391de8e
libav-9 - fix missing includes
...
With libav-9 and ffmpeg-1.0, libavcodec/avcodec.h no longer defines the
AV_CH_LAYOUT_* constants. They have been defined in libavutil/channel_layout.h
for a long time prior to this.
2013-06-24 21:08:28 +02:00
scrawl
4c8a04d9cb
Merge branch 'master' of https://github.com/zinnschlag/openmw into sdl_input2
...
Conflicts:
apps/openmw/mwinput/inputmanagerimp.cpp
2013-06-15 17:41:42 +02:00
scrawl
5252ffa104
More cleanup
2013-06-15 17:06:27 +02:00
scrawl
f1ff9b69b3
Mouse grab and relative input need to be disabled when the mouse leaves the window; Disabled resolution switching / window resizing for now due to several glitches
2013-06-15 15:33:47 +02:00
scrawl
14a2a26a56
Fullscreen resizing fix
2013-06-12 20:08:55 +02:00
scrawl
403704b92a
Use openmw.png for SDL_SetWindowIcon
2013-06-12 16:15:04 +02:00
scrawl
918a1655bb
Restored HW cursor rotation and resolution/fullscreen switching
2013-06-12 14:58:07 +02:00
scrawl
495aeb5d3b
Merge branch 'master' into HEAD
...
Conflicts:
CMakeLists.txt
apps/openmw/engine.cpp
apps/openmw/mwgui/cursorreplace.cpp
apps/openmw/mwgui/cursorreplace.hpp
apps/openmw/mwgui/windowmanagerimp.cpp
apps/openmw/mwgui/windowmanagerimp.hpp
apps/openmw/mwinput/inputmanagerimp.cpp
libs/openengine/ogre/renderer.cpp
2013-06-12 12:34:33 +02:00
darkf
fc0f04324c
Remove some superfluous mSkyManager NULL checks
2013-06-11 20:56:40 -07:00
fstp
98e5cb6d7b
Added ifdef to keep backward compatibility with the FFmpeg library.
2013-06-10 15:10:39 +02:00
scrawl
1e7cf4ae1c
GLES2 experiment
2013-05-25 04:15:24 +02:00
scrawl
7a2d1cd8ce
Security skill
2013-05-19 18:40:37 +02:00
scrawl
c7805e7dd2
Fix sun glare persisting after changing to an interior cell
2013-05-18 23:10:37 +02:00
scrawl
4983d08fe4
Fix a problem with statics disappearing sometimes on the map
...
Ogre::StaticGeometry doesn't seem to like materials being changed at runtime. It stores raw pointers to Ogre::Technique objects also, which conflicts with shiny's way of managing "unloaded" materials as having zero techniques. If a static geometry object is baked from an unloaded material, it won't find any techniques to use and can't render. By moving the unload call afterwards, it will be detected as in use by a renderable and won't be unloaded. Ideally this needs fixing of Ogre::StaticGeometry to not hold on to Technique objects (they also currently need to be rebuilt whenever user settings are changed, which also causes "unloading" of materials)
2013-05-18 22:55:30 +02:00
scrawl
60563afc10
Fix a new game crash, reset camera
2013-05-17 22:53:43 +02:00
Chris Robinson
e8bbb755c3
Play the left-arm torch animation when it's equipped
2013-05-17 06:21:59 -07:00
Chris Robinson
ee585046ac
Don't show weapons in first-person
2013-05-17 01:56:16 -07:00
Chris Robinson
71d39c2fa0
Merge remote-tracking branch 'zini/master' into animations
2013-05-15 06:36:06 -07:00
Chris Robinson
3c5c10144a
Remove a duplicate showWeapons call
2013-05-14 19:38:57 -07:00
Marc Zinnschlag
56b2b05f9a
Merge remote-tracking branch 'glorf/weather'
2013-05-14 22:56:26 +02:00
Glorf
39c7bc8363
Corrected celestical object sizes
2013-05-14 20:34:40 +02:00
Chris Robinson
355f653614
Use AnimationAlloc instead of AnimationAllocatedObject
2013-05-14 01:30:01 -07:00
Chris Robinson
47a9a4cdff
Clean up a for loop
2013-05-14 01:29:15 -07:00
scrawl
96e3b3b7c2
Fix a compile error, OGRE_NEW only works for classes derived from AllocatedObject
2013-05-13 21:03:53 +02:00
scrawl
ac4fa1941d
Fix the frame update not getting called on the first frame
2013-05-13 20:08:12 +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
7ba2508556
add a priority for death animations, and store it in the state list
2013-05-12 19:19:21 -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
Chris Robinson
d5490b0f8f
Fix an outdated comment
2013-05-09 23:07:50 -07:00
Chris Robinson
74ed1f73b4
Merge remote-tracking branch 'zini/master' into animations
2013-05-09 13:53:38 -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
scrawl
301efb411e
Fix exit crash
2013-05-07 19:15:28 +02:00
scrawl
8845c0cee1
Camera relative sky rendering. Now we no longer need to keep sky position in sync with camera.
2013-05-07 17:38:24 +02: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
6a3ba41170
Don't store camera nodes, we don't need them.
2013-05-06 21:46:11 -07:00
Chris Robinson
90e29c83c0
Merge remote-tracking branch 'zini/master' into animations
...
Conflicts:
apps/openmw/mwmechanics/character.cpp
2013-05-06 19:17:39 -07:00
scrawl
062ff189a2
Merge branch 'master' into memory
2013-05-04 23:04:33 +02:00
scrawl
75dcf52552
Sync extern/shiny, set memory budgets for texture and mesh managers (however this has no effect yet and depends on changes in Ogre being made)
2013-05-03 13:55:57 +02:00
greye
a8b1706678
init pointer value to prevent segfault
2013-05-03 10:51:42 +04:00
kpp
dcccfd9f22
Initialize values
2013-05-02 22:43:21 +04:00
Chris Robinson
d01351431c
Merge remote-tracking branch 'zini/master' into animations
2013-04-30 19:27:55 -07:00
Chris Robinson
4b15da076b
Move getStateInfo into the character controller
2013-04-30 19:26:41 -07:00
scrawl
91c89e5db4
Use sphere cast instead of ray for camera distance adjustment; use the box orientation value in newtrace
2013-04-30 20:26:59 +02:00
Chris Robinson
020e3e8a8e
Show the equipped weapon in the inventory screen
...
And use the proper pose based on what's equipped.
2013-04-29 12:08:43 -07:00
Chris Robinson
854de1c6c1
Make sure the weapon is in the proper group
2013-04-29 11:43:37 -07:00
Chris Robinson
15a2eeebb8
Merge remote-tracking branch 'zini/master' into animations
...
Conflicts:
apps/openmw/mwworld/worldimp.cpp
2013-04-29 10:16:29 -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
Chris Robinson
a15758ac85
Fix preview and vanity cameras
2013-04-29 08:48:45 -07:00
Chris Robinson
d17e1e83d5
Rename MWRender's Player to Camera
2013-04-29 05:50:40 -07:00
Chris Robinson
dbba126344
Use a method to check if the view should be first person
2013-04-29 04:40:28 -07:00
Chris Robinson
bb8277920b
Manage the player's NpcAnimation object in the RenderingManager
...
It may be more appropriate to manage it in MWRender::Actors with the other
Animation-based objects, but that will need some (minor) interface changes.
2013-04-29 03:31:46 -07:00
scrawl
9648804af5
Fix terrain material leak, this should in theory allow the terrain to free its temporary resources
2013-04-29 10:20:38 +02:00
Chris Robinson
ba3a67f84b
Don't store the player base node in MWRender::Player
2013-04-28 23:44:44 -07:00
Chris Robinson
24e503330b
Merge remote-tracking branch 'zini/master' into animations
2013-04-28 09:41:31 -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
Chris Robinson
ce7bc20fa1
Avoid special-casing player rotation
2013-04-28 01:14:58 -07:00
Chris Robinson
ab52e68c05
Merge remote-tracking branch 'zini/master' into animations
2013-04-27 05:16:15 -07:00
Chris Robinson
137017b325
Don't allow forcing vanity mode
2013-04-27 01:24:36 -07:00
Marc Zinnschlag
32138dbb0f
silenced a warning
2013-04-26 13:33:47 +02:00
Chris Robinson
b666f1d551
Work around a problem with MWRender::Player::renderPlayer
...
NpcAnimation::setViewMode makes a call to the character controller, in the
mechanics manager, to forcefully update the character's state. This in turn
makes a call to the player's old NpcAniamtion object that was just deleted.
The mechanics manager will eventually remove and reinsert the player, so the
old character controller will be removed and a new one will get the right
Animation object again, but not in time for the setViewMode call.
There's many factors that all contribute to this run-around, which needs
discussion on how to best fix.
2013-04-26 01:30:36 -07: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
9a2a32f2a5
Add a method to clear all Animation sources except the first
...
The first needs to remain, since that's where any mSkelBase entity comes from,
and where any retrieved nodes are from.
2013-04-25 05:02:11 -07:00
Chris Robinson
9be20b90f1
Fix potential infinite loop when layer 0 is empty
2013-04-25 03:35:40 -07:00
Chris Robinson
76c8e81908
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-25 01:35:21 -07:00
Chris Robinson
86fda1bff6
Only set mSkelBase from the first objectlist
2013-04-25 00:52:26 -07:00
Chris Robinson
7eac37be23
Make sure the old layer is cleared before starting the next
2013-04-25 00:18:02 -07:00
Chris Robinson
09fc50948b
Add methods to disable and get info for a layer
2013-04-25 00:08:16 -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
0817d59f23
Allow specifying where to start in an animation
2013-04-24 19:09:36 -07:00
scrawl
933f894148
Added Blind and Night Eye effects
2013-04-25 02:31:51 +02:00
Marc Zinnschlag
87ce2110dc
hotfix for CharacterPreview destructor
2013-04-25 02:31:38 +02:00
Chris Robinson
333354fe62
Remove the character controller from the Animation class
2013-04-24 07:10:41 -07:00
Chris Robinson
b80891099e
Don't use the character controller to handle text keys
...
The Animation class has the Ptr and can call to whatever subsystem is needed.
2013-04-24 06:48:34 -07:00
Chris Robinson
e8cabc9434
Pass the loop count from loopgroup to the play method
...
Instead of queueing each iteration separately.
2013-04-24 06:32:11 -07:00
Chris Robinson
b482d5be09
Add a method to check if a given layer is playing
2013-04-24 05:23:45 -07:00
Chris Robinson
c58dfbe921
Specify the loop count to Animation::play
2013-04-24 04:56:39 -07:00
Chris Robinson
7241267d5c
Make an AnimationValue for each animation layer
2013-04-24 04:41:52 -07:00
Chris Robinson
102b3bdef9
Update position by reference
2013-04-24 01:57:51 -07:00
Chris Robinson
9e05ee53da
Avoid looking for the controller if there is no NonAccum node
...
Also, make sure there is a controller before updating the position.
2013-04-24 01:18:08 -07:00
Chris Robinson
544011e096
Fix 'start' text key fallback lookup
2013-04-24 00:40:58 -07:00
Chris Robinson
7e2995bc2f
Fix setting up active controllers
2013-04-23 19:43:26 -07:00
Chris Robinson
8c9e2e0ee9
Improve handling of reaching the stop animation text key
2013-04-23 05:34:08 -07:00
Chris Robinson
c4806f01f8
Use a separate list of controllers to update
...
This should make it easier to figure out what controllers need to be updated
for various animation sources and layers.
2013-04-23 04:08:09 -07:00
Chris Robinson
e4c5aac966
Keep track of the animation layers a given object list is animating on
...
This only tracks layers they explicitly animate on. They may animate on other
layers as well, if nothing else is animating on them.
2013-04-23 02:48:11 -07:00
Chris Robinson
e378176937
Don't update controllers that have already been updated
2013-04-23 00:15:31 -07:00
Chris Robinson
8782ae6976
Separate some Animation fields into a separate AnimLayer class
2013-04-22 23:52:28 -07:00
Chris Robinson
c3ce49798a
Fix animation velocity calculation
2013-04-22 21:34:39 -07:00
Chris Robinson
7279e015e9
Search the textkeys to check if an animation group exists
2013-04-22 20:59:55 -07:00
Chris Robinson
a2fc43c7df
Use reset to check that the animation exists and has the right markers
2013-04-22 20:41:54 -07:00
Chris Robinson
bb64efc18e
Improve looping behavior
2013-04-22 05:08:52 -07:00
Chris Robinson
cc70c6263b
Use the NodeTargetValue for the NonAccum root
2013-04-22 04:10:46 -07:00
Chris Robinson
9485a4aa6d
Look through the whole animation stack to find the "velocity"
2013-04-22 01:40:41 -07:00
Chris Robinson
a7776e124c
Only set mNonAccumRoot from mSkelBase
2013-04-22 00:22:31 -07:00
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.
2013-04-22 00:01:30 -07:00
Chris Robinson
2345b5e8b3
Avoid storing text keys for each animation
2013-04-21 22:56:40 -07:00
Chris Robinson
7d59340ed6
Don't clip out the group name from the textkeys
2013-04-21 22:13:49 -07:00
Chris Robinson
6c85d6763a
Pass "loop stop" to the character controller
2013-04-21 18:38:25 -07:00
Chris Robinson
d7c9df16f8
Store the current animation group
2013-04-21 18:32:34 -07:00
Chris Robinson
835ff8eb1e
Avoid creating an AnimationValue per ObjectList
2013-04-20 17:13:27 -07:00
Chris Robinson
4122b0b55f
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-20 00:25:00 -07:00
Marc Zinnschlag
f13b0c884f
hotfix for CharacterPreview destructor
2013-04-19 14:41:26 +02: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
scrawl
0341a9e778
Fix a gcc 4.8 warning
2013-04-17 20:57:22 +02:00
scrawl
547f77031d
Fix crash when disabling objects in a previously loaded cell, then coming back to that cell and leaving again
2013-04-17 17:06:30 +02:00
Chris Robinson
4ce98e9bd6
Store iterators for start and stop keys
2013-04-15 20:37:10 -07: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
caff28e20a
Move NIFSkeletonLoader to a separate file
2013-04-10 19:58:17 -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
9d29921913
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-09 15:12:19 -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
Marc Zinnschlag
a2ab43be7e
Merge remote-tracking branch 'scrawl/master'
2013-04-09 21:22:38 +02:00
scrawl
0e7d555cdf
Terrain material now uses multiple passes if required, which means it can support an arbitrary number of layers. Also re-enables PSSM.
2013-04-09 20:31:00 +02:00
Tom Mason
6ca2b1af74
fix for turning animations playing when in vanity mode
2013-04-09 19:24:41 +01:00
Chris Robinson
029d565727
Avoid calling setVisible for character previews
2013-04-09 09:23:07 -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
3768e04a0c
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-07 17:24:47 -07:00
Chris Robinson
7baca30a1d
Only get the non-accum root's keyframe when updating positions
...
The actual animation pose is now handled by the controllers, based on the
current animation time.
2013-04-07 16:21:45 -07:00
Chris Robinson
261ea1fe5e
Implement a KeyframeController
2013-04-07 14:56:23 -07:00
Chris Robinson
f69a8259e1
Update animation source controller targets
2013-04-07 13:51:04 -07:00
Chris Robinson
7494f90301
Remove an unneeded function
2013-04-07 13:02:46 -07:00
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.
2013-04-07 12:41:27 -07:00
Chris Robinson
80a1abd48a
Clear the old text keys when setting new animation sources
2013-04-07 11:09:55 -07:00
scrawl
755a80a522
Fix camera shaking when near the pitch limit.
2013-04-07 15:52:43 +02: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
59f1d4b047
Add support for NiUVController on meshes
2013-04-06 09:44:10 -07:00
Chris Robinson
0631b28646
Prepare for supporting controller objects
2013-04-05 10:13:54 -07:00
Chris Robinson
af2a38db38
Fix looping anims that dont have "loop start"
2013-04-05 08:27:26 -07:00
Chris Robinson
4d14fe0d95
Merge remote-tracking branch 'zini/master' into nifogre
2013-04-04 22:06:27 -07:00
scrawl
2e7d5377f4
Fix crash when moving npcs to an inactive cell
2013-04-04 16:51:22 +02: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
ebaf80d539
Trace actors onto the ground after load, when moved to a different cell by the console or on player cell change.
2013-04-03 23:55:57 +02:00
Chris Robinson
63af72c315
Avoid converting to and from quaternions
2013-03-30 17:31:16 -07:00
scrawl
5e7e9fd26a
Properly calculate light activation range
2013-03-29 20:21:37 +01:00
Marc Zinnschlag
e7684c4677
some random cleanup
2013-03-29 09:04:02 +01:00
Chris Robinson
c5f0556451
Handle light linear/quadratic settings
2013-03-28 20:57:33 -07:00
Marc Zinnschlag
08f6d04960
constness fixes
2013-03-18 08:29:40 +01:00
Glorf
6165cd2c6b
Moons fallbacks partially implemented
2013-03-17 14:22:30 +01:00
scrawl
485b6c855a
Fix NPC race height not being applied
2013-03-15 16:44:35 +01:00
Glorf
521bebd2f4
Fallback system rewritten, added light fallbacks
2013-03-15 10:17:30 +01:00
scrawl
bcdab2aeab
Fix wrong padding breaking local map for cells where the bounds center is far from the origin
2013-03-11 19:32:39 +01:00
scrawl
d7c4a622cf
Create a separate rigid body / shape with full details for raycasting, remove the occlusion query hack
2013-03-08 23:46:25 +01:00
scrawl
285b4bf726
Allow zooming camera in vanity or preview mode with the mousewheel
2013-03-08 00:12:56 +01:00
Marc Zinnschlag
7e100c36b5
Merge remote-tracking branch 'gus/AI'
2013-03-06 19:05:55 +01:00
gus
5938e19362
Clean up
2013-03-06 17:31:57 +00: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
gus
d3bf3812a4
changing rotation order (fix some misoriented objects)
2013-03-05 20:16:57 +00:00
gus
8b6f0e0770
Correct orientation sign
2013-03-05 18:28:57 +00:00
scrawl
fe7b2732d8
Avoid manually updating render targets from within frameRenderingQueued
2013-03-05 14:24:29 +01:00
scrawl
2486ec6cb9
Material fixes (vertex colors, alpha)
2013-03-05 13:51:48 +01:00
scrawl
ca707aa65f
Transparency should be evaluated per subentity, not per NIF
2013-03-04 16:57:00 +01:00
scrawl
cab5315a8e
Disable mipmaps generation
2013-03-04 16:28:20 +01:00