1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 22:19:54 +00:00
Commit graph

3633 commits

Author SHA1 Message Date
Koncord
a4e45de6ca [General] Fix playersCount 2017-04-27 11:41:45 +08:00
David Cernat
6a21ec1fdc [General] Rename PlayerPos into PlayerPosition 2017-04-25 22:11:33 +03:00
David Cernat
7b07d6651f [General] Add and use PlayerBounty packet and matching script functions 2017-04-25 21:24:39 +03:00
Koncord
6e8750b9e4 [General] Change list players to vector players 2017-04-24 20:22:13 +08:00
Koncord
9643eb6026 [Master] Notify server about announce state
Rename structure Server to QueryData
2017-04-24 19:58:48 +08:00
David Cernat
2eaa25e7d4 [General] Update version to 0.6-alpha 2017-04-23 17:31:08 +03:00
David Cernat
ef634a1c52 Merge pull request #205 from OpenMW/master
Add OpenMW commits up to 23 Apr 2017
2017-04-23 14:47:10 +03:00
David Cernat
f4c3a28141 [General] Finalize ActorCellChange packet structure 2017-04-23 14:01:13 +03:00
Koncord
c35d5a2c6c [Master] Implement Master server 2017-04-23 13:39:43 +08:00
Koncord
4c939f6d0a [General] Split tes3mp components in CMakeLists by group 2017-04-23 13:39:43 +08:00
Koncord
546bb42abb [General] Add Master Packets 2017-04-23 13:39:43 +08:00
Koncord
5854f680f0 [General] Add Master data types 2017-04-23 13:39:43 +08:00
Koncord
41005b1add [General] Add orderChannel to packets 2017-04-23 13:39:43 +08:00
scrawl
45d9e38616 Fix check for default material 2017-04-22 14:27:45 +02:00
David Cernat
a5484d237b Merge pull request #203 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017, part 2
2017-04-21 21:07:37 +03:00
Allofich
e095817ac2 Treat =< and => as == in scripts
(Fixes #3744)
2017-04-21 22:26:13 +09:00
Allofich
ff3e307059 Pass parameters by const reference 2017-04-20 23:47:03 +09:00
David Cernat
f2e8e14665 [General] Add shouldSend boolean to mwmp::Attack 2017-04-19 16:43:58 +03:00
David Cernat
cc2250815d [General] Add packet data for attacks on and by Actors 2017-04-18 10:03:58 +03:00
David Cernat
b1a394cd02 [General] Change chars into bools in mwmp::Attack for clarity 2017-04-17 19:54:31 +03:00
David Cernat
a650683bae [General] Add and use Target struct in mwmp::Attack 2017-04-17 18:31:39 +03:00
David Cernat
9882ceedf3 [General] Remove attackerGuid from mwmp::Attack because it is redundant 2017-04-17 18:03:33 +03:00
David Cernat
caf5428532 [General] Rename mwmp::Attack vars in preparation for Actor support 2017-04-17 17:24:11 +03:00
David Cernat
2397afc6ce [General] Move mwmp::Attack to BaseStructs 2017-04-17 15:12:11 +03:00
David Cernat
9f226253d4 [General] Rename mwmp::Attack's refid into refId for consistency 2017-04-17 09:35:18 +03:00
David Cernat
f0f0b2dcc9 [General] Send and read ActorSpeech packets 2017-04-16 18:43:13 +03:00
David Cernat
1fb11dafef [General] Send and read ActorStatsDynamic packets 2017-04-16 16:42:07 +03:00
David Cernat
00aa8839d4 [General] Update CMakeLists in components folder 2017-04-16 09:03:51 +03:00
David Cernat
870886192b [General] Rename DYNAMICSTATS into STATS_DYNAMIC 2017-04-16 09:00:18 +03:00
David Cernat
ca8fd1aa72 [General] Remove ActorHeadRotation packet because it would be too spammy 2017-04-15 15:49:40 +03:00
David Cernat
2872675f5e [General] Send and read ActorAnimPlay packets 2017-04-15 13:42:30 +03:00
David Cernat
bf17464074 Merge pull request #198 from OpenMW/master
Add OpenMW commits up to 14 Apr 2017
2017-04-15 05:36:50 +03:00
scrawl
8f71b65d38 sceneutil/attach: inherit the UserDataContainer to avoid the resource cache from being cleared incorrectly 2017-04-14 15:04:53 +02:00
David Cernat
e7960eee76 [General] Rename DrawState packets into AnimFlags ones for clarity 2017-04-14 16:00:34 +03:00
David Cernat
d2fe777f89 [General] Send and read ActorDrawState packets 2017-04-13 15:26:48 +03:00
David Cernat
10ad5b2a99 [General] Remove BaseActor's AnimStates that are no longer needed 2017-04-13 13:06:09 +03:00
David Cernat
0d196af685 [General] Add placeholders for 7 new ActorPackets 2017-04-11 11:37:38 +03:00
David Cernat
7700b82952 [General] Clean up BaseEvent and BaseStructs 2017-04-10 16:33:07 +03:00
David Cernat
7662297334 [General] Use ESM::Position to store BaseActor's movement 2017-04-10 16:32:10 +03:00
David Cernat
742d6f653a [General] Add ActorPosition packet 2017-04-10 12:38:30 +03:00
David Cernat
b6c3830ea0 [General] Rename WorldObject's pos into position for consistency 2017-04-10 09:25:20 +03:00
David Cernat
174f316787 [General] Rename PacketActorFrame into PacketActorTest 2017-04-10 08:37:18 +03:00
David Cernat
a5d0486c82 [General] Set actor data correctly 2017-04-10 07:22:03 +03:00
David Cernat
b9d68c0ab2 Merge pull request #195 from OpenMW/master
Add OpenMW commits up to 10 Apr 2017
2017-04-10 01:20:42 +03:00
MiroslavR
c962b6dd6d Fix correctActorModelPath to work properly when both backward and forward slashes are used in the path (Fixes #3822) 2017-04-09 18:34:36 +02:00
David Cernat
c52084a028 [General] Use BaseActorLists in ActorPackets 2017-04-09 16:32:44 +03:00
David Cernat
4f3d05eed2 [General] Add ActorList class 2017-04-09 10:50:35 +03:00
David Cernat
070c6a3bd4 [General] Add ActorPacketController & make controller var names clearer 2017-04-09 08:51:28 +03:00
David Cernat
b8ca2382c7 [General] Remove variables that are not going to be used in ActorFrame 2017-04-08 11:27:08 +03:00
David Cernat
d3f3fb5d05 [Client] Correctly implement movement animation sync for NPCs 2017-04-08 08:59:21 +03:00
David Cernat
d829d219c3 [General] Add (very) partial animation sync for NPCs 2017-04-06 15:11:51 +03:00
David Cernat
67ec81ad0c [Client] Use utility function for converting strings in mwmp::Cell 2017-04-06 05:45:49 +03:00
David Cernat
d24cde16dd [General] Add simple BaseActor and LocalActor classes 2017-04-05 12:52:27 +03:00
David Cernat
8f18dc87c4 [General] Model ActorList on Container more closely by including action 2017-04-05 04:45:51 +03:00
David Cernat
8c2469bf6d [General] Add placeholder ActorList, ActorAuthority & ActorFrame packets 2017-04-05 04:06:45 +03:00
David Cernat
2bd81c3de0 [Client] Use mpNum for every WorldObject 2017-04-04 11:07:16 +03:00
David Cernat
ddedcac510 [General] Read and write mpNums in world packets 2017-04-04 10:16:09 +03:00
David Cernat
8cc61b6048 [General] Generate mpNums on the server when forwarding ID_OBJECT_PLACE 2017-04-04 09:23:34 +03:00
David Cernat
06acd3cbc4 [Client] Add a multiplayer object index and matching methods to CellRef 2017-04-04 07:42:02 +03:00
David Cernat
106c9edead Merge pull request #192 from OpenMW/master
Add OpenMW commits up to 3 Apr 2017
2017-04-04 01:48:43 +03:00
MiroslavR
395e97cf40 Remove evil "implicit GetJournalIndex" hack from expression parser 2017-04-03 01:44:26 +02:00
Koncord
1d2a6d9056 [Server] Rename dontRead to avoidReading 2017-04-03 06:44:14 +08:00
Koncord
4daf471874 [General] Add dontRead flag 2017-04-03 06:13:00 +08:00
David Cernat
dff52d8fbe Merge pull request #191 from OpenMW/master
Add OpenMW commits up to 31 Mar 2017
2017-04-01 03:27:44 +03:00
Koncord
48a59cf9e9 [General] Add new class BasePacketProcessor 2017-04-01 02:33:03 +08:00
Allofich
3780d94214 Cast LAND_SIZE to integer to avoid linking error 2017-03-28 01:57:31 +09:00
Allofich
2a505b427d Remove second LAND_SIZE definition 2017-03-27 03:45:53 +09:00
David Cernat
c10dd1b002 Merge pull request #188 from OpenMW/master
Add OpenMW commits up to 24 Mar 2017
2017-03-24 07:24:55 +02:00
scrawl
f676b62711 Remove unused variable 2017-03-23 19:35:07 +01:00
David Cernat
ab92b9f795 Merge pull request #187 from OpenMW/master
Add OpenMW commits up to 20 Mar 2017
2017-03-20 04:59:12 +02:00
scrawl
c992cb6e82 Fix texture not being applied on rendering the composite map (Fixes #3791) 2017-03-19 19:15:22 +01:00
MiroslavR
06dc94552f Log a warning if size in SCHD (script header) does not match SCDT (bytecode) size instead of failing 2017-03-18 15:42:24 +01:00
David Cernat
5eb183bacf Merge pull request #186 from OpenMW/master
Add OpenMW commits up to 15 Mar 2017
2017-03-15 23:13:24 +02:00
scrawl
a070551af3 Attempt to fix naming conflict on windows 2017-03-15 17:51:00 +01:00
scrawl
3d58ba7301 Fix boolean test 2017-03-15 17:50:13 +01:00
David Cernat
60037e4081 Merge pull request #185 from OpenMW/master
Add OpenMW commits up to 14 Mar 2017
2017-03-15 11:20:06 +02:00
scrawl
fd215caa02 Add local LandCache to cut down on store searches 2017-03-14 19:27:57 +01:00
scrawl
088d5604bf Use a shader if required to display the composite map
Fixes composited terrain not respecting the 'clamp lighting' setting.
2017-03-14 19:27:56 +01:00
scrawl
7f5beb3172 Remove unused includes 2017-03-14 19:27:56 +01:00
scrawl
5044816770 Remove unused code 2017-03-14 19:27:56 +01:00
scrawl
b66c2abfe3 Build the bounding sphere in the loading thread (only relevant for TerrainGrid) 2017-03-14 19:27:56 +01:00
scrawl
9e9c028f1d Skip light collection for far away terrain 2017-03-14 19:27:56 +01:00
scrawl
0782839a42 Avoid redundant culling tests on the transform/drawable 2017-03-14 19:27:56 +01:00
scrawl
fb8ac06524 Reduce the minSize of quad tree nodes for better performance 2017-03-14 19:27:56 +01:00
scrawl
a041546b54 Use the quad tree's minSize in the LodCallback 2017-03-14 19:27:56 +01:00
scrawl
e4e8821902 Refactor update of lodFlags 2017-03-14 19:27:56 +01:00
scrawl
2aa09639a9 Re-enable terrain intersections 2017-03-14 19:27:56 +01:00
scrawl
db00d47ca2 Hold a ref to the intersection visitor's view if possible 2017-03-14 19:27:56 +01:00
scrawl
11bee6ee35 Avoid compiling composite maps that are no longer referenced 2017-03-14 19:27:56 +01:00
scrawl
9eed7fa6f5 Fix composite map when force shaders is enabled 2017-03-14 19:27:56 +01:00
scrawl
d055dc25bf Add custom traversal for local map camera to avoid loading terrain nodes that are exactly outside the border to another cell 2017-03-14 19:27:56 +01:00
scrawl
7d50b6c2e2 Add QuadTreeWorld::cacheCell to preload cells at max LOD for local maps 2017-03-14 19:27:56 +01:00
scrawl
6ccb6009ee Use the View-based preloading for TerrainGrid as well 2017-03-14 19:27:56 +01:00
scrawl
3c29e2dbeb Refactor ownership of terrain views 2017-03-14 19:27:56 +01:00
scrawl
28fd492711 Don't use terrain LOD for the map camera 2017-03-14 19:27:56 +01:00
scrawl
e7a0878c10 Add CompositeMapRenderer info to the stats panel 2017-03-14 19:27:56 +01:00
scrawl
c921620ef3 Compile the drawables of a composite map one by one to avoid frame drops for larger maps 2017-03-14 19:27:56 +01:00
scrawl
47ca8aeee5 Use the time elapsed instead of # compiled as limit 2017-03-14 19:27:56 +01:00
scrawl
8a6d909b22 Fix composite map being compiled twice 2017-03-14 19:27:56 +01:00
scrawl
683e625c6c Rewrite CompositeMapRenderer to be based on Drawable and share the FBO 2017-03-14 19:27:56 +01:00
scrawl
4baa795152 Add preloading implementation to QuadTreeWorld 2017-03-14 19:27:56 +01:00
scrawl
9db71e3f62 Recompute the LOD stitching when the view changes 2017-03-14 19:27:56 +01:00
scrawl
ef704db877 Fix reset of changed flag 2017-03-14 19:27:56 +01:00
scrawl
1c15686353 Remove non required use of WorkQueue 2017-03-14 19:27:56 +01:00
scrawl
433900fca5 Fix waiting on initial quad tree build 2017-03-14 19:27:56 +01:00
scrawl
4dbd224249 Hide the terrain in non-exterior cells 2017-03-14 19:27:56 +01:00
scrawl
2580de11a4 Refactor ownership of ViewDataMap 2017-03-14 19:27:56 +01:00
scrawl
5a3c645c89 Enable lazy compiling of composite maps 2017-03-14 19:27:56 +01:00
scrawl
99e18f0d68 Clear the ViewData on exit 2017-03-14 19:27:56 +01:00
scrawl
bb991850da Add LOD stitches 2017-03-14 19:27:56 +01:00
scrawl
6bd286d924 Fix unnecessary resizing in ViewData 2017-03-14 19:27:56 +01:00
scrawl
8c151364df Add special handling for CullVisitor to QuadTreeWorld.
- Cull only against bounding box, not bounding sphere, as this appears to perform better.
- Also traverse into non visible nodes to compute their LOD, this is to avoid nodes having to be loaded in when the player turns the view around, and will avoid unnecessary refs/unrefs of rendering data in the View. This should probably be turned off at some point for static cameras, such as the local maps.
2017-03-14 19:27:56 +01:00
scrawl
f19a88be9d Reject QuadTreeNodes with invalid bounds 2017-03-14 19:27:56 +01:00
scrawl
7d004bf757 Preliminary rendering of QuadTreeWorld 2017-03-14 19:27:55 +01:00
scrawl
e36bdb490e Add view data structure for efficient collection of LOD nodes to use for a given camera/intersection 2017-03-14 19:27:55 +01:00
scrawl
0efc54c749 Subdivide the composite maps 2017-03-14 19:27:55 +01:00
scrawl
0756fc4ae6 Optimize getBlendmaps for the general case that most points are within the given cell 2017-03-14 19:27:55 +01:00
scrawl
81c9853fe9 Fix handling in getBlendmaps when the chunk is >1 ESM::Cell 2017-03-14 19:27:55 +01:00
scrawl
b384087e28 Fix handling in fillVertexBuffers when the chunk is >1 ESM::Cell 2017-03-14 19:27:55 +01:00
scrawl
819860081f Remove custom bounding box 2017-03-14 19:27:55 +01:00
scrawl
ce8c4ad4f5 Add quad tree implementation (no rendering yet) 2017-03-14 19:27:55 +01:00
scrawl
14225a42c6 Remove unused pointer to IncrementalCompileOperation 2017-03-14 19:27:55 +01:00
scrawl
c487df0abb Move updateTextureFiltering and material into the base class 2017-03-14 19:27:55 +01:00
scrawl
5eff286c71 Use separate node mask and parent for CompositeMapRenderer to allow the loading screen to pre compile composite maps. 2017-03-14 19:27:55 +01:00
scrawl
7e4450da55 Change the renderOrder of composite maps to ensure they are updated before water reflections or other cameras that may be using it. 2017-03-14 19:27:55 +01:00
scrawl
b1d4bb5708 Add CompositeMapRenderer
Temporarily render all terrain using composite maps for testing purposes
2017-03-14 19:27:55 +01:00
scrawl
e323b2fa7b Use the SceneManager's ShaderManager 2017-03-14 19:27:55 +01:00
scrawl
0fc465da59 Store the min/max height in LandData 2017-03-14 19:27:55 +01:00
scrawl
051c17a184 Make reportStats const 2017-03-14 19:27:55 +01:00
scrawl
80a0398f9d Load LandData into the LandObject to avoid threading conflicts when the same data is being loaded by two threads 2017-03-14 19:27:55 +01:00
scrawl
20d30bb8d7 Move mDataLoaded into LandData 2017-03-14 19:27:55 +01:00
scrawl
16b5cadd9e Fix order of operations w.r.t clearing cache 2017-03-14 19:27:55 +01:00
scrawl
2c68ed4fb4 Remove no longer required use of UnrefQueue as the new resource manager will naturally clear the cache from the worker thread 2017-03-14 19:27:55 +01:00
scrawl
35d53acc65 Factor out terrain chunk loading/caching into a new resource manager 2017-03-14 19:27:55 +01:00
scrawl
274690f790 Refactor BufferCache to allow caching buffers of different sizes 2017-03-14 19:27:55 +01:00
scrawl
9a3a64f0c4 Add resource manager for ESM::Land to allow data to be unloaded when no longer required 2017-03-14 19:27:55 +01:00
scrawl
804f873649 terrain: factor out texture caching into a separate class 2017-03-14 19:27:55 +01:00
scrawl
4cd4457d21 Add support for Functors to ObjectCache 2017-03-14 19:27:55 +01:00
scrawl
9d72d9f0c9 Change order of operations in SceneManager::updateCache to allow deleting of StateSets that just got unreferenced by the scene 2017-03-14 19:27:55 +01:00
scrawl
eef63a880a terrain: use a custom drawable for multi-pass render instead of osgFX::Effect
osgFX::Effect is awkward to use because of the lazy-definition of passes, no support for compileGLObjects, useless 'Technique' abstraction and having to define silly methods like 'effectAuthor()'

Handling the multi-pass rendering inside the Drawable also avoids redundant culling tests against the same bounding box for each pass.
2017-03-14 19:27:55 +01:00
scrawl
34130fc5cc Fix handling in LightListCallback when the node is not a Group 2017-03-14 19:27:55 +01:00
scrawl
b78a9f89af Refactor LightListCallback to allow for integration in custom Drawables. 2017-03-14 19:27:55 +01:00
scrawl
c1fe9f2a89 Avoid warping the mouse cursor more than necessary
Apparently, the SDL_WarpMouseInWindow can be very expensive (anywhere from 0.1-5ms) due to XSync() in the implementation.

This was causing no-grab=1 configurations to suffer from terrible stuttering when turning the view.
2017-03-14 00:31:27 +01:00
David Cernat
e0234dc362 Merge pull request #183 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
2017-03-13 18:20:07 +02:00
scrawl
928e2061f7 Remove redundant tolower 2017-03-13 02:48:23 +01:00
scrawl
13a6070629 Remove warning spam in skeleton.cpp
If the root bone is missing, that is caused by all bones being missing which will have been logged already.
2017-03-13 02:48:22 +01:00
Koncord
3d294500ba [General] Use std::replace() instead for-each in Utils::convertPath() 2017-03-08 12:06:47 +08:00
scrawl
21aad00612 Don't pass key events to the viewer when Alt modifier is held
Fixes the stats panel briefly showing up when using 'Alt+F4' to exit.
2017-03-08 01:27:04 +01:00
scrawl
fc95a45cb6 Don't pass repeat key events to the viewer's eventQueue 2017-03-08 01:27:04 +01:00
Nikolay Kasyanov
7f429f26e1 Allow getting available version information even when clone is shallow 2017-03-07 21:53:49 +01:00