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
scrawl
f1d35b73b8
Cleanup
2013-03-03 19:52:20 +01:00
scrawl
c9fefc7f5d
Simpler, more lightweight underwater effect, changed colors to match vanilla better
2013-03-03 19:28:11 +01:00
scrawl
05bd94effb
Merge branch 'master' of git://github.com/zinnschlag/openmw into graphics
2013-03-03 15:14:20 +01:00
scrawl
002830e13b
Make sure render textures are inactive when in a cell without water
2013-03-03 15:11:45 +01:00
scrawl
867b22ce19
Fix a terrain glitch
2013-03-03 15:11:19 +01:00
gus
e1882dce32
correcting a bug: player orientation wasn't stored correctly, and objects orientation wasn't properly retrived.
2013-03-03 13:02:41 +00: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
Nathan Jeffords
109dff2d29
renamed high level NIF files...
2013-03-02 13:23:09 -08:00
Chris Robinson
e6b547b9ba
Merge remote-tracking branch 'zini/master' into transparency-fixes
2013-03-01 13:32:30 -08:00
Chris Robinson
238a8feb18
Fix transparency checks
2013-03-01 13:27:25 -08:00
scrawl
1d988676fe
Local map: the obtained bounding box wasn't exactly accurate, getWorldBoundingBox seems to solve this.
2013-02-28 22:56:29 +01:00
Chris Robinson
1168f15361
Don't disable depth writes when blending is enabled
2013-02-28 12:17:58 -08:00
scrawl
3efbb5e728
Don't try to render a map in empty cells
2013-02-28 20:27:35 +01:00
Chris Robinson
bfe80bb8dc
Avoid duplicating skeletons due to casing issues
...
Manually created resource names are apparently always case sensitive, causing
some skeletons to get loaded multiple times.
2013-02-27 12:33:36 -08:00
scrawl
369f881170
Merge branch 'master' of https://github.com/zinnschlag/openmw into graphics
2013-02-27 09:25:44 +01:00
scrawl
9b0ac4e299
NPCs / creatures can now emit ripples
2013-02-27 09:20:42 +01:00
Chris Robinson
ceafcc2ebb
Support float samples with ffmpeg
...
Requires the AL_EXT_FLOAT32 extension in OpenAL
2013-02-26 10:19:33 -08:00
scrawl
d4264353a3
Merge branch 'z-up' into graphics
...
Conflicts:
apps/openmw/mwrender/localmap.cpp
apps/openmw/mwrender/renderingmanager.cpp
apps/openmw/mwrender/water.cpp
files/materials/water.shader
2013-02-26 14:54:53 +01:00
Marc Zinnschlag
dc445844d2
Merge remote-tracking branch 'scrawl/z-up'
2013-02-26 14:37:50 +01:00