David Cernat
ecc456fea9
[General] Include charge int in WorldObject & send it w/ ID_OBJECT_PLACE
2017-02-05 13:45:12 +02:00
David Cernat
04d45b9dbb
[General] Rename packets to show they are for players only, not NPCs
2017-02-05 09:01:33 +02:00
David Cernat
3a29b2d41d
Merge pull request #141 from OpenMW/master
...
Add OpenMW commits up to 5 Feb 2017
2017-02-05 07:11:45 +02:00
scrawl
3065600a86
Skip expensive visitEffectSources call if no summoned creatures or summon effects are active
2017-02-05 02:26:28 +01:00
scrawl
ee4073541c
Animation: cache getVelocity()
2017-02-05 02:26:28 +01:00
scrawl
a2cede8f34
Add timer for updateEquippedLight
2017-02-05 02:26:28 +01:00
scrawl
1eb3384043
Avoid rotating by zero in CharacterController
2017-02-05 02:26:28 +01:00
scrawl
7201cf5fe2
ItemWidget: skip setImageTexture if the icon has not changed
2017-02-05 02:26:27 +01:00
David Cernat
9c76b805b2
[Client] Send ID_CONTAINER when starting to drag a container item
2017-02-04 21:33:50 +02:00
David Cernat
a07e616878
[General] Add ContainerItem and ContainerChanges structs to WorldEvent
2017-02-04 20:14:39 +02:00
scrawl
1447bfa215
Improve scene loading performance by creating collision objects with the correct rotation right away instead of adjusting it later
2017-02-04 15:12:01 +01:00
David Cernat
6328ffb9aa
[General] In ID_GAME_ATTRIBUTE & ID_GAME_SKILL, rename GAME into PLAYER
2017-02-04 14:25:43 +02:00
David Cernat
57f54aa370
[Client] Don't store multiple cellStates for the same cell
2017-02-04 09:46:27 +02:00
David Cernat
a2e3fe18fe
[Client] Send ID_PLAYER_CELL_STATE to server at end of CharGen
...
Also, allow requests for ID_PLAYER_CELL_STATE from the server.
2017-02-04 09:13:15 +02:00
David Cernat
44e27148d5
Merge pull request #140 from OpenMW/master
...
Add OpenMW commits up to 4 Feb 2017
2017-02-04 07:37:17 +02:00
scrawl
884d306bf3
Throw exception when told to use 0 threads
2017-02-04 05:58:12 +01:00
scrawl
2db7292bcb
Add new setting for the number of preloading worker threads
...
If you have CPU cores to spare, consider setting 2 or 3. Up to about 3 threads, preloading performance seems to increase in a linear fashion, but with 4 or more threads I/O bottlenecks and synchronization overhead starts to show.
2017-02-04 02:59:28 +01:00
scrawl
eaeba4138b
Move the deletion of PreloadItem to the worker thread
2017-02-04 02:36:44 +01:00
scrawl
33e654f94d
Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls
2017-02-04 02:16:26 +01:00
scrawl
83a9435167
Fix unnecessary use of CopyFramebufferToTextureCallback when loading is too fast for a loading screen to be displayed
2017-02-03 23:39:39 +01:00
scrawl
767eba941f
Speed up finding of attachment node by using the cached nodeMap
2017-02-03 23:15:37 +01:00
scrawl
a76d693627
Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal()
2017-02-03 23:10:14 +01:00
scrawl
c58fc6d276
Improve performance of loading screen by not recomputing the bounding sphere of the entire scene after each loading step
2017-02-03 22:29:38 +01:00
David Cernat
c1427b2558
[General] Simultaneously send loads & unloads in ID_PLAYER_CELL_STATE
2017-02-03 20:27:40 +02:00
David Cernat
63974af131
Merge pull request #139 from OpenMW/master
...
Add OpenMW commits up to 3 Feb 2017
2017-02-03 07:57:14 +02:00
scrawl
0be811c519
Update the resource cache every second instead of every frame
...
A dry run takes about ~1.5ms. Even though it's all done in the worker thread, the locks used can stall loading operations that are about to happen in other threads, and just in general this CPU load is unnecessary.
2017-02-03 03:44:30 +01:00
scrawl
6d8c414071
Set osgViewer ReleaseContextAtEndOfFrameHint to false for better performance when in SingleThreaded mode
...
The flag is normally set to off by default when using Viewer::run() - however since we're using our own frame loop, we have to unset the flag ourselves
2017-02-02 22:16:59 +01:00
scrawl
c5f8ff6e0e
Add names to several nodes for debugging purposes
2017-02-02 21:49:52 +01:00
David Cernat
958ff06ca8
[General] Rename ID_DOOR_ACTIVATE into ID_DOOR_STATE
2017-02-01 11:54:40 +02:00
Koncord
f78c749981
[Client] Use "NULL" instead "nullptr"
...
nullptr keyword introduced in C++11
2017-02-01 15:58:29 +08:00
David Cernat
9f8f62b765
Merge pull request #137 from OpenMW/master
...
Add OpenMW commits up to 1 Feb
2017-02-01 09:28:23 +02:00
scrawl
1808b8567e
Add 'small feature culling pixel size' setting specifically for water RTTs, by default set higher than the one in [Camera]
2017-02-01 06:00:14 +01:00
scrawl
fcb4129aee
Add 'small feature culling pixel size' setting
2017-02-01 06:00:14 +01:00
scrawl
960d4a96c3
Reduce the number of osg::Material state by setting the default state on the graph root
2017-02-01 06:00:14 +01:00
scrawl
34deb6e7b1
Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes
2017-02-01 06:00:14 +01:00
David Cernat
703f253712
[Client] Delete new LocalEvents after sending them
2017-01-31 09:48:37 +02:00
Koncord
42b6a456f0
[Client] Fix code style
2017-01-30 22:53:22 +08:00
Koncord
c5035cd174
[Client] Fix crash and memory leak when erasing spellbook
2017-01-30 22:37:09 +08:00
David Cernat
da2f66d6ba
Merge pull request #135 from OpenMW/master
...
Add OpenMW commits up to 29 Jan
2017-01-30 07:32:44 +02:00
David Cernat
d503a65849
[Client] Replace tab characters with spaces
2017-01-30 06:47:22 +02:00
MiroslavR
d97e9cfe7e
Fix InterpreterContext::updatePtr updating mLocals to the implicit ref's locals when interpreting a targeted global script ( Fixes #3738 )
...
The interpreter context of a targeted global script would point to the target's locals instead of the global script instance's locals when the target changed cell during script execution. Credit to scrawl for the solution.
2017-01-29 13:29:53 +01:00
David Cernat
dddc253d70
[Client] Fix console message for LocalPlayer's cell change
2017-01-28 16:39:03 +02:00
David Cernat
9f1e491a75
[General] Make WorldEvents store information about multiple objects
2017-01-28 12:34:45 +02:00
David Cernat
624b85347a
[Client] Create LocalEvent class and use it instead of WorldEvent
2017-01-27 20:57:47 +02:00
David Cernat
ee86c9161d
[Client] Set InterpreterContext's sendPackets to false in constructor
2017-01-27 16:01:53 +02:00
David Cernat
7efb374f75
[Client] Avoid fetching guiMessageBox.type again for every condition
2017-01-27 10:41:10 +02:00
Koncord
ab3c2544b5
[Client] Use constant instead magic value
2017-01-26 21:47:28 +08:00
Koncord
34a46e6811
[Client] Simplify hasFinishedCharGen method
2017-01-26 21:42:12 +08:00
David Cernat
244da19a51
[General] Turn ID_PLAYER_CELL_LOAD into ID_PLAYER_CELL_STATE for clarity
2017-01-26 13:49:20 +02:00
David Cernat
055376c8ee
[Client] Only send ID_PLAYER_CELL_LOAD when CharGen is over
2017-01-26 13:14:22 +02:00