Commit graph

8503 commits

Author SHA1 Message Date
scrawl
8cd41f0ed4 Increase the ray distance for dropObjectOnGround (Fixes #3010) 2015-11-12 23:05:44 +01:00
scrawl
9897400d97 Restore the previous key focus widget after playing video 2015-11-12 19:03:24 +01:00
Emmanuel Anne
af7b5e636e improves InterpreterContext::updatePtr
This checks the update is really on the right pointer. It fixes the boat
disappearing in "fishing academy", and it allows scripts linked to objects
not to loose their default reference when using the object-> notation on
another object.
2015-11-12 17:53:17 +01:00
Bret Curtis
3ea3d07d44 really purge libav 2015-11-12 16:39:29 +01:00
scrawl
19cd987208 Fix Ptr updates in PositionCell
This was not the proper way to get the updated Ptr, it will only work for the player which isn't owned by any cell. For other objects, moving between cells makes the object owned by that cell and thus the getBase() pointer will change.
2015-11-12 14:32:39 +01:00
scrawl
9e3eb8291f Rotations: fix the rotation order for doors 2015-11-12 02:09:00 +01:00
scrawl
90b6fa5ef1 PlaceItem, PlaceItemCell angle should be treated as degrees (Fixes #3007) 2015-11-12 01:44:29 +01:00
scrawl
3647af8d73 Rotations: use different rotation order when object is rotated via script (Fixes #2062) 2015-11-12 01:44:00 +01:00
scrawl
b4ce73f179 Rotations: remove LocalRotation
This never existed in vanilla MW in the first place. The reason we got confused was because of a strange behaviour where the order of applying rotations changes as soon as a script touches the object's rotation.
2015-11-12 01:16:37 +01:00
scrawl
666fbba1e0 Rotations: World::rotateObject takes radians instead of degrees
Cuts down on the amount of redundant degree<->radians conversions in the codebase.
2015-11-12 01:09:39 +01:00
scrawl
6405049add Rotations: move doors via Rotation rather than LocalRotation
Now LocalRotation is unneeded, will remove in next commit.
2015-11-12 00:58:29 +01:00
scrawl
8aacbc398f Rotations: don't wrap the angle values for non-actors
It's not really necessary, and just complicates logic elsewhere. Neither does vanilla MW do it. As well, the question is if wrapping to [-PI, PI] or [0, 2*PI] would be the desired range.
2015-11-12 00:52:36 +01:00
scrawl
a68fd791c8 Remove a stray method declaration 2015-11-11 17:24:27 +01:00
scrawl
79c44d0bfe Style fix 2015-11-11 17:23:47 +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
afa590bddb Leak fix 2015-11-11 16:04:17 +01:00
scrawl
c62c1693e9 Disable copy constructor and operator= in PartHolder 2015-11-11 01:47:26 +01:00
scrawl
2e9805fa0e Leak fix 2015-11-11 00:50:57 +01:00
scrawl
b840c68f0c Do not create a depth buffer for the global map 2d rendering 2015-11-10 21:55:21 +01:00
scrawl
8e3bc981a2 Fix self-referencing camera 2015-11-10 21:45:53 +01:00
scrawl
0409e5a043 Use OSG_VERSION_GREATER_EQUAL / LESS_THAN rather than MIN_VERSION_REQUIRED (cosmetic change) 2015-11-10 18:28:58 +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
91583fc027 Fix MWRender::Mask_ParticleSystem 2015-11-10 17:00:33 +01:00
scrawl
637cd3a628 Adjust the FirstPersonNeckController to follow the camera with a reduced factor (Fixes #1784) 2015-11-10 01:01:41 +01:00
scrawl
3c338b9da9 ObstacleCheck: tweak the stuck detection parameters
The netch_betty wander animation starts up so slowly that the creature thought it was stuck, even though it's not.
2015-11-09 20:35:31 +01:00
scrawl
d233bc483d ObstacleCheck: fix evasion issue
The check if (samePosition... would not work as intended because actors do not move in every frame when the framerate is higher than the physics framerate. In that case the actor would change its evasion direction almost every frame.
2015-11-09 20:35:31 +01:00
scrawl
caa523a959 ObstacleCheck: fix the framerate not being taken into account 2015-11-09 20:35:31 +01:00
scrawl
801dc8eee3 ObstacleCheck: fix weird distance calculation 2015-11-09 20:17:21 +01:00
scrawl
1b52749ae1 Adjust third person camera height based on character height 2015-11-09 17:42:35 +01:00
scrawl
b89945804c BookPage: implement hit test with margin for error 2015-11-09 02:57:49 +01:00
scrawl
055841e721 Improve cloud lighting 2015-11-09 02:22:40 +01:00
scrawl
f0a1434578 Dead actors underwater will float to the surface 2015-11-08 20:58:00 +01:00
scrawl
66925be440 Partially revert 682f30ef9c
This change made dead netch fall through the floor, because the animation moves the creature *below* its external collision box.
2015-11-08 19:59:33 +01:00
scrawl
516f2765a1 Use the ScalingLayer for journal, books and scrolls 2015-11-08 18:30:22 +01:00
scrawl
a7ad45e73e WindowBase::center use the layer size instead of render window size 2015-11-08 18:30:21 +01:00
scrawl
f9932130da Work around MyGUI bug with mouse event coordinates (fixed in git) 2015-11-08 18:30:21 +01:00
scrawl
6c12c9a467 Layer renaming fix 2015-11-07 19:45:30 +01:00
scrawl
d85d74e615 Use AdditiveLayer for the hit fader 2015-11-07 18:05:16 +01:00
scrawl
a90ef8afd0 layer renaming 2015-11-07 17:49:11 +01:00
scrawl
57b9eafa0f osgMyGUI: implement AdditiveLayer 2015-11-07 17:45:22 +01:00
scrawl
51f3a8fec6 osgMyGUI: move Platform methods to the .cpp file 2015-11-07 17:39:31 +01:00
scrawl
13c7235b6b Remove old FPS setting code 2015-11-07 00:13:13 +01:00
scrawl
2407f393ce Fix double update traversal in screenshot function 2015-11-06 23:14:27 +01:00
scrawl
6e69808129 Fix the frameNumber not being incremented in certain frames 2015-11-06 23:14:27 +01:00
scrawl
8e4e4e5e38 Fix infinite loop in addToLevList 2015-11-05 01:18:01 +01:00
scrawl
c996702b56 Fix some uninitialised variables found by static analysis 2015-11-04 20:34:50 +01:00
scrawl
1cf1c944b7 Don't attempt to render weather particles on the refraction and reflection textures 2015-11-03 23:20:17 +01:00
scrawl
209fa52883 Hide weather particles underwater (Fixes #2701) 2015-11-03 23:15:43 +01:00
scrawl
e3b30baff9 clipFudge fix 2015-11-03 23:10:52 +01:00
scrawl
682f30ef9c Fix incorrect uses of PhysicsSystem::getHalfExtents
Did not account for translation of collision box (mMeshTranslation in actor.cpp)
2015-11-03 19:05:36 +01:00
scrawl
46e07e4b19 Head tracking: fall back to target collision box center if the target has no head node 2015-11-03 18:27:15 +01:00
scrawl
a5f8ffb83d aimToTarget: Fix the collision box translation not being taken into account 2015-11-03 18:15:47 +01:00
scrawl
de97a8a3da Do not allow disabling the player object 2015-11-03 17:53:57 +01:00
scrawl
b72d5c5190 Don't play idlestorm animation when swimming 2015-11-03 17:48:35 +01:00
scrawl
c0a81030bb Make use of INI settings for the simple water 2015-11-03 02:24:50 +01:00
scrawl
30c828dff0 Include cleanup 2015-11-03 02:17:42 +01:00
scrawl
8e8f72408d Use diffuse/ambient lighting for the simple water 2015-11-03 02:12:00 +01:00
scrawl
380256977b Fix another renderBin issue with the weather particles
Depth sorting w.r.t. the rest of the scene was broken
2015-11-03 01:53:38 +01:00
scrawl
9902dfc9ef Comment 2015-11-03 01:53:22 +01:00
scrawl
ad016da31d Enable fog on weather particles 2015-11-03 01:42:37 +01:00
scrawl
fd1ccd21ff Disable freezeOnCull for weather particles 2015-11-02 23:49:22 +01:00
scrawl
5ca0ae5232 Don't add the same AlphaFader to multiple nodes 2015-11-02 23:38:34 +01:00
scrawl
d6f45c3390 Fix the renderbin for weather particles
Regression from commit 2ee6b41887
2015-11-02 21:51:01 +01:00
scrawl
bd1f3493d7 Fix weather particles not being cleared when changing from one particle effect to another 2015-11-02 21:35:03 +01:00
scrawl
0348b8df1c Fix applying of plane height in ClipCullNode (Fixes #2985) 2015-11-02 01:23:21 +01:00
scrawl
3f988327c7 Destructor fix 2015-11-02 00:57:59 +01:00
scrawl
913bbe347b Don't check the extension string every frame 2015-11-02 00:52:20 +01:00
scrawl
c60388afb6 Add fudge factor to move the water mesh away from camera when the camera gets too close 2015-11-02 00:34:09 +01:00
scrawl
4690ec12cc Render the water plane with GL_DEPTH_CLAMP if supported (Fixes #996) 2015-11-02 00:29:09 +01:00
scrawl
802620a86b Use TimeOfDayInterpolator for Land Fog Depth
Fixes the sudden fog jump at nightfall.
2015-11-01 23:03:16 +01:00
scrawl
45bf3e6788 Create TimeOfDayInterpolator class to refactor time handling in WeatherManager 2015-11-01 22:59:26 +01:00
scrawl
8da4530957 Use INI-imported underwater fog settings (Fixes #2907, Fixes #1511) 2015-11-01 22:09:27 +01:00
scrawl
bd9dc58560 Use the correct scale for actor swim height (Fixes #2833) 2015-11-01 21:45:58 +01:00
scrawl
7b817ba010 Fix the node masks of water cameras being reset (Bug #2984)
Node mask needs to remain Mask_RenderToTexture so the raytesting visitor won't go through the reflection graph.
2015-10-31 03:14:05 +01:00
scrawl
93f4d31cf9 Raytest mask fix (Fixes #2984) 2015-10-31 01:30:02 +01:00
scrawl
b9b154a015 Minor cleanup 2015-10-31 00:01:12 +01:00
scrawl
d90fa977e8 GL_DEPTH_COMPONEN24 fix 2015-10-29 13:52:48 +01:00
scrawl
7692ae175a Disable sun rendering on the reflection camera
Not needed, we have specular highlights.
2015-10-29 01:17:23 +01:00
scrawl
9b8e45fc01 Fix ripple particles z-fighting with the water surface 2015-10-29 00:28:09 +01:00
scrawl
d394b0793f waterLevel fix 2015-10-29 00:27:42 +01:00
scrawl
c9d7078b4b Water: add texture quality setting to the settings window 2015-10-29 00:27:42 +01:00
scrawl
8433e0679f Water: connect to settings window 2015-10-29 00:25:24 +01:00
scrawl
9f8d36b573 Water code cleanup 2015-10-29 00:25:24 +01:00
scrawl
11c997d09d Water: move reflection code to a new class 2015-10-29 00:25:24 +01:00
scrawl
ebdf25ccb9 Water: move refraction code to a new class 2015-10-29 00:25:24 +01:00
scrawl
7bbdb13138 Remove debug code 2015-10-29 00:25:24 +01:00
scrawl
6ba9f561ea Use simple water for the local map 2015-10-29 00:25:24 +01:00
scrawl
09631385c3 Use boost ifstream for water resources 2015-10-29 00:25:24 +01:00
scrawl
d485dd0782 Water: fix world UV coords 2015-10-29 00:25:24 +01:00
scrawl
9f2f503d37 Water: pass the near and far planes 2015-10-29 00:25:24 +01:00
scrawl
37c9c12962 Water: clipping plane offset 2015-10-29 00:25:23 +01:00
scrawl
700a0099c3 Remove debug code 2015-10-29 00:25:23 +01:00
scrawl
e13eb625d3 New water WIP
Changes compared to old (Ogre) water:
- Uses depth-texture readback to handle the underwater fog in the water shader, instead of handling it in the object shader
- Different clipping mechanism (glClipPlane instead of a skewed viewing frustum)
- Fixed bug where the reflection camera would look strange when the viewer was very close to the water surface
- Toned down light scattering, made the waterColor a bit darker at night
- Fixed flipped water normals and strange resulting logic in the shader

Still to do: see comments...
2015-10-29 00:25:23 +01:00
scrawl
944e6d0844 Fix adjustment of inventory preview size when guimode changes (Fixes #2973) 2015-10-26 14:26:02 +01:00
scrawl
515c52211e Disable mipmaps for temporary screenshot texture 2015-10-25 18:28:50 +01:00
scrawl
7b954e8cc3 Remove unnecessary dependency on MWScrollBar 2015-10-24 16:04:08 +02:00
scrawl
ef5838df7e SunGlareCallback: Fix incorrect view matrix for RELATIVE_RF cameras 2015-10-24 15:46:15 +02:00
scrawl
69f234d97b Small delay before the loading screen shows
Kinda irritating to have the loading bar pop up for a fraction of a second.
2015-10-23 16:50:08 +02:00