1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-22 04:23:53 +00:00
Commit graph

11646 commits

Author SHA1 Message Date
Chris Robinson
fbfcc4050f Stream voice clips
Voices tend to be a bit long, and not individually replayed often. So it's
better to stream them instead of loading theminto a sound buffer. The loudness
data is very small, though, so that can be kept buffered indefinitely.
2015-11-25 04:24:24 -08:00
Chris Robinson
eee6a19e31 Add a method to stream sounds in 3D 2015-11-25 04:24:24 -08:00
Chris Robinson
f1a1dc8408 Pass relevant sound parameters to the OpenAL_SoundStream constructor 2015-11-25 04:24:24 -08:00
Chris Robinson
83721092f2 Refactor the audio streaming code to be a bit saner 2015-11-25 04:24:23 -08:00
Chris Robinson
16f72886e9 Use separate lists for openal sounds and streams 2015-11-25 04:24:23 -08:00
Chris Robinson
0f33f41d8d Actually unload sounds when running over 2015-11-25 04:24:23 -08:00
Chris Robinson
22a6811425 Limit the sound buffer cache to 15MB 2015-11-25 04:24:23 -08:00
Chris Robinson
0b2747098c Keep track of unused sound buffers 2015-11-25 04:24:23 -08:00
Chris Robinson
4073495070 Add some missing sound handling 2015-11-25 04:24:23 -08:00
Chris Robinson
e362896817 Combine some duplicate code 2015-11-25 04:24:23 -08:00
Chris Robinson
febc7b510a Remove an unneeded method 2015-11-25 04:24:23 -08:00
Chris Robinson
3fdc3c4ea9 Use a separate map for say sounds
Also restores lip movement
2015-11-25 04:24:22 -08:00
Chris Robinson
9d0018e1bc Reorder active sound data to make lookup by Ptr better 2015-11-25 04:24:22 -08:00
Chris Robinson
495e138907 Load sound loudness and store it with the Sound_Buffer
Still not used for say yet, though
2015-11-25 04:24:22 -08:00
Chris Robinson
f4c22ec49e Hold a separate list for voice sound buffers
This fixes say. Ideally voices would be streamed, but the loudness/"lip" buffer
extraction should be separated from the buffer loading code.
2015-11-25 04:24:22 -08:00
Chris Robinson
4571218827 Load the sound as needed and pass it directly to the play methods
This breaks say sounds, loudness handling, and the cache limit. Fixes are
forthcoming.
2015-11-25 04:24:22 -08:00
Chris Robinson
e2beefd8b5 Store info calculated from the ESM::Sound record 2015-11-25 04:24:22 -08:00
scrawl
edfcb45ad7 Fix crash when onPcEquip script removes the equipped item (Fixes #3016) 2015-11-24 22:55:17 +01:00
sandstranger
69acacefff openmw building on Android with Opengl es 2015-11-23 20:28:35 +03:00
Marc Zinnschlag
da856eed95 Merge remote-tracking branch 'origin/master' 2015-11-23 18:17:36 +01:00
scrawl
3fe38e3556 Remove unused setting 2015-11-23 03:26:21 +01:00
scrawl
71cd57a3b5 Optimize World::getTimeStamp
World::getTimeStamp was searching through the globals store on every call. Not a big issue, but slow enough to show up in the profiler.
2015-11-22 23:55:21 +01:00
scrawl
62169a7039 Use a single-precision PositionAttitudeTransform in speed critical places 2015-11-22 19:54:26 +01:00
cfcohen
b507d5da5d One more tooltip fix. This one in the review dialog with Socucius Ergalla. 2015-11-22 00:50:36 -05:00
Marc Zinnschlag
99500f4021 make initial size of script error panel configurable (Fixes #2996) 2015-11-21 14:28:40 +01:00
Marc Zinnschlag
f5c61ee616 remember script error panel height per scriptsubview 2015-11-21 14:19:14 +01:00
Marc Zinnschlag
26640d17eb do not adjust error panel height if panal was already open 2015-11-21 12:52:32 +01:00
Marc Zinnschlag
1093a53cf9 hide script error list when there are no errors (Fixes #2867) 2015-11-21 12:45:11 +01:00
Marc Zinnschlag
b74b274ac0 Removed validator for filenames in OpenMW-CS (Fixes #2918) 2015-11-21 12:14:57 +01:00
Marc Zinnschlag
e0e9e7f8c2 adjusted startup warning message for recent improvements regarding loading/saving 2015-11-21 11:56:24 +01:00
Marc Zinnschlag
8da04bf76f Merge remote-tracking branch 'scrawl/master' 2015-11-21 09:15:46 +01:00
scrawl
1b1d9a7a9c Fixed another tooltip 2015-11-21 02:05:27 +01:00
cfcohen
cf4f3d9ebc Correct tooltip for Magicka in stats window. 2015-11-20 14:57:42 -05:00
scrawl
43de13fa99 Do not allow resting on lava 2015-11-20 19:22:31 +01:00
scrawl
2d302aef99 Implement stayOutside script variable 2015-11-20 05:05:43 +01:00
scrawl
27617468c8 Fix the collision shape not updating when scaling an object via script 2015-11-20 03:29:58 +01:00
scrawl
5f143dee2d Fix lighting incontinuity at nightfall and sunrise 2015-11-20 03:22:35 +01:00
scrawl
61314e1db1 Fix bounding box of bullet debug drawer 2015-11-20 03:04:03 +01:00
scrawl
706b1d4c28 Disable culling of ClipNode 2015-11-20 02:22:37 +01:00
scrawl
cbf344663f animateCollisionShape checks if the shape is really animated 2015-11-20 00:17:07 +01:00
scrawl
894477849a Store animated collision objects in a separate container 2015-11-19 23:33:08 +01:00
scrawl
8c268f239e Set the object node scale before inserting model
This fixes initWorldSpaceParticles not taking object scale into account. Still not taking into account object rotation or node animations. Ideally the initWorldSpaceParticles needs to run in an updateCallback.
2015-11-19 15:57:12 +01:00
scrawl
ccc721ba3f Print the OpenMW version to the logfile 2015-11-19 02:56:42 +01:00
scrawl
f08cfa19ea Fix SoundManager::isPlaying to consider multiple entries with the same Ptr/id
Now it returns true if *any* sounds matching the given Ptr and id are playing. The previous behaviour was causing problems with "zombie" sounds (sounds that have finished playing, but weren't removed from the map yet) making the isPlaying method return false even though there's another legitimately playing sound in the map.
2015-11-19 01:06:51 +01:00
scrawl
a49058721e Use a contactTest for collision script functions
The previous method didn't work for stationary actors. This change fixes the grinder in "Sotha Sil, Dome of Kasia" not registering collisions if the player stands still. (Fixes #1934)
2015-11-18 21:20:12 +01:00
scrawl
9fce428929 ContactTestResultCallback: do not rely on col1 being the object tested against
Unsure why, but in some cases col0 and col1 are swapped.
2015-11-18 20:41:49 +01:00
scrawl
3453353091 AiCombat distance check takes into account collision box (Fixes #1699) 2015-11-18 19:00:43 +01:00
Marc Zinnschlag
020b3add94 Merge branch 'openmw-37' 2015-11-17 09:54:49 +01:00
Marc Zinnschlag
5de9a5e840 Merge remote-tracking branch 'origin/openmw-37' into openmw-37 2015-11-17 09:04:07 +01:00
scrawl
e62470d674 Auto-generate the collision shape for native mesh formats 2015-11-17 00:20:15 +01:00
scrawl
8cf57ef6ac Move BulletShapeManager and BulletShape to resource/ 2015-11-17 00:20:15 +01:00
scrawl
eb2f16d682 Support for loading .osg mesh format 2015-11-16 23:26:43 +01:00
scrawl
71d9e7dc52 Read Ambient Loop Sound ID and Rain Loop Sound ID from the INI file 2015-11-16 02:21:45 +01:00
scrawl
e9e12d396d Merge remote-tracking branch 'upstream/openmw-37' into HEAD 2015-11-15 21:37:32 +01:00
scrawl
0f347eccbf Flip the origin of global map texture
Now it's consistent with the overlay texture.
2015-11-15 21:36:41 +01:00
scrawl
8b7bdcd127 Fix the global map overlay viewport (Bug #3018) 2015-11-15 21:32:34 +01:00
scrawl
af4923577b Fix double writing of Dialogue NAME in OpenCS 2015-11-15 16:04:52 +01:00
scrawl
0220e82259 Remove unused SOUND_INPUT_INCLUDES cmake variable. 2015-11-14 17:17:22 +01:00
Alexander "Ace" Olofsson
d2a4175804 Add FFMPEG to include path for OpenMW
I'm a bit confused; `mwsound/ffmpeg_decoder.hpp/cpp` requires FFMPEG headers to compile, how did this work in the first place?
2015-11-14 16:02:42 +01:00
Marc Zinnschlag
de98ee0062 Merge remote-tracking branch 'scrawl/esm_rewrite' 2015-11-14 14:25:08 +01:00
Nikolay Kasyanov
014a2fc0e9 OS X: do not override Qt plugin path 2015-11-14 13:50:01 +01:00
Nikolay Kasyanov
4dcb1a1b17 OS X: remove QPlastiqueStyle usage 2015-11-14 13:50:01 +01:00
Nikolay Kasyanov
4e3bbe01b6 OS X: disable glTexStorage2D because of OSG/driver issue
See http://forum.openscenegraph.org/viewtopic.php?p=65276#65276 for the details.
2015-11-14 13:50:01 +01:00
scrawl
0ec56d321a Remove unneeded using namespace 2015-11-14 03:01:40 +01:00
scrawl
05498ad592 Refactor: InputManager no longer depends on Engine 2015-11-14 03:01:24 +01:00
scrawl
aae1aa3708 Adjust tests to work with esm_rewrite branch. 2015-11-14 00:27:59 +01:00
scrawl
f91aae2350 Tests: add record overwrite test 2015-11-14 00:27:59 +01:00
scrawl
1e817a976f Tests: add record deletion test 2015-11-14 00:27:59 +01:00
scrawl
771193bae8 Tests: add content_diagnostics_test (requires some data files) 2015-11-14 00:27:59 +01:00
scrawl
38c155c579 Tests: add dialogue_merging_test (requires some data files) 2015-11-14 00:27:59 +01:00
scrawl
d0d8c2eded Delete empty test 2015-11-14 00:27:59 +01:00
scrawl
9116c701d5 esmtool fix 2015-11-14 00:27:59 +01:00
scrawl
1402a16702 SceneWidget: change the threading model to DrawThreadPerContext
Performs much better because we can break frame early, running cull in parallel with last frame's draw.
2015-11-13 21:00:51 +01:00
Marc Zinnschlag
c312162b57 Merge branch 'openmw-37' 2015-11-13 14:24:57 +01:00
Marc Zinnschlag
fa9ebc50a2 Merge remote-tracking branch 'origin/master' 2015-11-13 13:34:03 +01:00
Marc Zinnschlag
b0d79ee790 Merge branch 'tooltip' 2015-11-13 11:40:10 +01:00
Marc Zinnschlag
63ee37d914 added 3D scene tooltips 2015-11-13 11:39:57 +01:00
scrawl
b8e11cf197 Merge commit 'pull/upstream/678' into HEAD
Conflicts:
	apps/esmtool/record.cpp
	apps/opencs/model/doc/savingstages.cpp
	apps/opencs/model/world/land.cpp
	apps/opencs/model/world/land.hpp
	apps/opencs/model/world/landtexture.cpp
	apps/openmw/mwworld/store.cpp
	components/esm/loadland.cpp
	components/esm/loadland.hpp
2015-11-13 01:34:36 +01:00
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
Marc Zinnschlag
8b01f1f6fb added instance tooltips 2015-11-12 15:09:43 +01:00
Marc Zinnschlag
01f4b8a182 added scene tooltips system (tag based) 2015-11-12 15:06:37 +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