scrawl
7d004bf757
Preliminary rendering of QuadTreeWorld
8 years ago
scrawl
e36bdb490e
Add view data structure for efficient collection of LOD nodes to use for a given camera/intersection
8 years ago
scrawl
0efc54c749
Subdivide the composite maps
8 years ago
scrawl
0756fc4ae6
Optimize getBlendmaps for the general case that most points are within the given cell
8 years ago
scrawl
81c9853fe9
Fix handling in getBlendmaps when the chunk is >1 ESM::Cell
8 years ago
scrawl
b384087e28
Fix handling in fillVertexBuffers when the chunk is >1 ESM::Cell
8 years ago
scrawl
819860081f
Remove custom bounding box
8 years ago
scrawl
ce8c4ad4f5
Add quad tree implementation (no rendering yet)
8 years ago
scrawl
14225a42c6
Remove unused pointer to IncrementalCompileOperation
8 years ago
scrawl
c487df0abb
Move updateTextureFiltering and material into the base class
8 years ago
scrawl
5eff286c71
Use separate node mask and parent for CompositeMapRenderer to allow the loading screen to pre compile composite maps.
8 years ago
scrawl
7e4450da55
Change the renderOrder of composite maps to ensure they are updated before water reflections or other cameras that may be using it.
8 years ago
scrawl
b1d4bb5708
Add CompositeMapRenderer
...
Temporarily render all terrain using composite maps for testing purposes
8 years ago
scrawl
e323b2fa7b
Use the SceneManager's ShaderManager
8 years ago
scrawl
0fc465da59
Store the min/max height in LandData
8 years ago
scrawl
051c17a184
Make reportStats const
8 years ago
scrawl
80a0398f9d
Load LandData into the LandObject to avoid threading conflicts when the same data is being loaded by two threads
8 years ago
scrawl
20d30bb8d7
Move mDataLoaded into LandData
8 years ago
scrawl
16b5cadd9e
Fix order of operations w.r.t clearing cache
8 years ago
scrawl
2c68ed4fb4
Remove no longer required use of UnrefQueue as the new resource manager will naturally clear the cache from the worker thread
8 years ago
scrawl
35d53acc65
Factor out terrain chunk loading/caching into a new resource manager
8 years ago
scrawl
274690f790
Refactor BufferCache to allow caching buffers of different sizes
8 years ago
scrawl
9a3a64f0c4
Add resource manager for ESM::Land to allow data to be unloaded when no longer required
8 years ago
scrawl
804f873649
terrain: factor out texture caching into a separate class
8 years ago
scrawl
4cd4457d21
Add support for Functors to ObjectCache
8 years ago
scrawl
9d72d9f0c9
Change order of operations in SceneManager::updateCache to allow deleting of StateSets that just got unreferenced by the scene
8 years ago
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.
8 years ago
scrawl
34130fc5cc
Fix handling in LightListCallback when the node is not a Group
8 years ago
scrawl
b78a9f89af
Refactor LightListCallback to allow for integration in custom Drawables.
8 years ago
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.
8 years ago
David Cernat
e0234dc362
Merge pull request #183 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# CMakeLists.txt
8 years ago
scrawl
928e2061f7
Remove redundant tolower
8 years ago
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.
8 years ago
Koncord
3d294500ba
[General] Use std::replace() instead for-each in Utils::convertPath()
8 years ago
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.
8 years ago
scrawl
fc95a45cb6
Don't pass repeat key events to the viewer's eventQueue
8 years ago
Nikolay Kasyanov
7f429f26e1
Allow getting available version information even when clone is shallow
8 years ago
Koncord
435d9780a7
[General] Fix PacketPreInit
8 years ago
Koncord
690211ad99
[General] Extract BaseEvent & BasePlayer from packets to functions
...
Move Send and Read functions to BasePacket
8 years ago
Koncord
0c1905e842
[General] Add PreInit packet
8 years ago
Koncord
0d53a6916d
[General] Move repeated code in Packet() to base class
8 years ago
David Cernat
df051a777a
Merge pull request #181 from OpenMW/master
...
Add OpenMW commits up to 4 Mar 2017
8 years ago
scrawl
c1b1d502ee
Fix up commit 330e5fefd1
8 years ago
scrawl
4051018862
optimizer: fix FlattenStaticTransformsVisitor not respecting the is permissible callback
8 years ago
scrawl
5866f0f80b
Add OPENMW_OPTIMIZE env variable to help debugging optimizer-related issues
...
Example:
OPENMW_OPTIMIZE=OFF
OPENMW_OPTIMIZE="~FLATTEN_STATIC_TRANSFORMS"
8 years ago
scrawl
29556a1802
More consistent wording of errors/warnings
...
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.
An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.
The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.
Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
8 years ago
Koncord
c353e18645
[General] Move Utils from server to components
...
Rewrite CRC32 functions to the Boost equivalent
8 years ago
David Cernat
0d32bf5943
[General] Add extra death debug, don't request data from player on death
8 years ago
David Cernat
a2ef39c655
Merge pull request #178 from OpenMW/master
...
Add OpenMW commits up to 2 Mar 2017
8 years ago
scrawl
62cc091414
Fix incorrect setting of TexMat in terrain material
8 years ago
scrawl
a759ef5d2e
Leave the MyGUI::PixelFormat as Unknown when loading from file as its not required.
8 years ago
scrawl
8fc7942d64
Refactor osgMyGUI::OSGTexture to store width/height inside the object
8 years ago
David Cernat
db8218545f
Merge pull request #177 from OpenMW/master
...
Add OpenMW commits up to 1 Mar 2017
8 years ago
scrawl
d8505e4f48
Fix a multithreading crash caused by modification of live Geometry
8 years ago
scrawl
4e0011bfc8
Improve NPC loading performance by caching the cleaned objectRoot
8 years ago
scrawl
058681ad73
ShaderVisitor: avoid reset of rig geometry when not required
8 years ago
David Cernat
5c269a5f8d
[General] Rename ID_GAME_DIE and ID_GAME_RESURRECT
8 years ago
David Cernat
4aaa9ed694
[General] Update version to 0.5.2
8 years ago
David Cernat
e6bc7ad463
[General] Make all flying players fly correctly, including TCL users
8 years ago
David Cernat
48125913c3
Merge pull request #175 from OpenMW/master
...
Add OpenMW commits up to 27 Feb 2017
8 years ago
scrawl
1402e0b872
Don't optimize billboard nodes ( Fixes #3774 )
8 years ago
David Cernat
4110fac629
Merge pull request #174 from OpenMW/master
...
Add OpenMW commits up to 26 Feb 2017, part 2
8 years ago
scrawl
706ac45c76
Fix missing particles caused by shallow copy of ParticleSystemController
8 years ago
scrawl
9b27ec4945
Remove redundant and ambiguous NiNode::makeBone()
...
Ambiguous because a skeleton can have multiple skinned meshes, with their own bone weights/bind matrix each.
8 years ago
scrawl
aba3c471a9
nifloader: fix setting of dataVariance for non-controlled bones and refactor the code
8 years ago
David Cernat
5d30ba0abd
Merge pull request #173 from OpenMW/master
...
Add OpenMW commits up to 26 Feb 2017
8 years ago
scrawl
5caf53b6a3
optimizer: avoid reordering nodes
...
Fixes an osgParticle cloning issue.
(Fixes #3773 )
8 years ago
scrawl
a95773beef
Fix unnecessary copy of ParticleSystem in SceneUtil::CopyOp
8 years ago
scrawl
585524805f
Add 'tri ' variant of part filters to optimizer ignore list
8 years ago
David Cernat
060e440ab2
[General] Update version to 0.5.1
8 years ago
David Cernat
a94d1ed296
Merge pull request #169 from OpenMW/master
...
Add missing copy of callbacks when a Transform is replaced by Group
8 years ago
scrawl
48e0f098ff
Add missing copy of callbacks when a Transform is replaced by Group
...
(Fixes #3770 )
8 years ago
Koncord
715422aff6
[General] Fix memory leak in Log dtor
8 years ago
David Cernat
328e3b6618
Merge pull request #167 from OpenMW/master
...
Add OpenMW commits up to 24 Feb 2017
8 years ago
Koncord
e3f4c63ea6
[General] Delete invalid & redundant code
8 years ago
scrawl
330e5fefd1
optimizer: consider a Group with more than one child redundant as well
...
While there could be some value in this hierarchy (i.e. improved culling), we don't know if this is being used sensibly; and using a 'flat' hierarchy helps other optimizations.
8 years ago
scrawl
75677f03e7
Remove SceneManager::notifyAttached
8 years ago
scrawl
3df7a8c4d8
Avoid FLATTEN_STATIC_TRANSFORMS optimization for non-Geometry drawables
8 years ago
scrawl
e4c12e5e56
optimizer: don't merge Geometry that has transparency sorting enabled
8 years ago
scrawl
ebfd845eae
optimizer: run MERGE_GEOMETRY after removing redundant nodes
8 years ago
scrawl
43f31d6e54
optimizer: fix MERGE_GEOMETRY to work with Geometries not attached to a Geode
8 years ago
scrawl
f2a323238f
optimizer: merge groups as part of REMOVE_REDUNDANT_NODES
8 years ago
scrawl
af716d4b61
optimizer: remove hardcoded condition in RemoveRedundantNodesVisitor
8 years ago
scrawl
698738c649
optimizer: use asXYZ() instead of dynamic_cast
8 years ago
scrawl
f7cb4bd245
optimizer: remove some cruft
8 years ago
scrawl
e33829d493
Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
...
Remove optimizers that won't be used.
8 years ago
scrawl
5e2335f250
Use the osgUtil::Optimizer post loading in the SceneManager
8 years ago
scrawl
305cccd263
Don't print Geometry data (vertices, triangles, etc.) in showscenegraph
8 years ago
scrawl
4e5a1e6123
nifloader: improve setting of DataVariance
8 years ago
scrawl
1d6b5b2a52
Add StringUtils::CiComp operator
8 years ago
scrawl
6e996bf2a3
Create TriShapes with an identity transform as a Group
8 years ago
scrawl
6e5d9efa93
Remove NifLoader::optimize, to be replaced with something better
8 years ago
scrawl
c231b06320
Remove boneOffset node after using it
8 years ago
scrawl
d75a3fd0fb
Add SharedStateManager to the stats panel
8 years ago
Koncord
059043fea9
[General] Change signature of BaseEvent::action
8 years ago
David Cernat
38ccc2671c
Merge pull request #164 from OpenMW/master while resolving conflicts
...
# Conflicts:
# apps/openmw/mwmechanics/spellcasting.cpp
8 years ago
scrawl
8f79fa3d72
Add resource statistics panel opened with F4
8 years ago
scrawl
3693f05ef5
Transform world-space particle systems in update callback so that animations are accounted for
8 years ago
scrawl
c45013c983
Fix particle systems not being rendered in their first frame
8 years ago
David Cernat
a1988ac6ef
Merge pull request #161 from OpenMW/master
...
Add OpenMW commits up to 21 Feb 2017
8 years ago
scrawl
4aa40d16bc
Increase the importance of light radius when sorting lights (Bug #2759 )
8 years ago
scrawl
3f27c8cc97
Always print context for script warnings to remove the need for verbose option
...
(Fixes #2813 )
8 years ago
Koncord
158e9b3b09
[Server] Add ability to set password to server from config & scripts
8 years ago
David Cernat
3e50cf60e7
[General] Update version to 0.5.0
8 years ago
David Cernat
a4526605a6
[General] Remove goldValue from ContainerItem because it is never useful
8 years ago
David Cernat
cdffbc05f7
Merge pull request #159 from OpenMW/master
...
Add OpenMW commits up to 19 Feb 2017
8 years ago
scrawl
3b24bb9a5e
Use OS X cursor workaround for GL_VENDOR ATI and add an environment variable for control
8 years ago
David Cernat
4f2b88df8a
[General] Remove owner var from ContainerItem because it is always empty
8 years ago
David Cernat
d9a566f0f6
Merge pull request #156 from OpenMW/master
...
Add OpenMW commits up to 18 Feb 2017
8 years ago
scrawl
aa8459b5c7
Revert "Remove redundant allocations for NIF meshes"
...
This reverts commit a7c5beb7c5
.
Conflicts:
components/nif/data.cpp
components/nifbullet/bulletnifloader.cpp
components/nifosg/nifloader.cpp
8 years ago
scrawl
6a37909ee7
Revert "Fix race conditions caused by Array <-> GLBufferObject interactions (Bug #3580 )"
...
This reverts commit 115e563a7a
.
8 years ago
David Cernat
941d6269c1
[General] Slightly reorder variables in ID_OBJECT_PLACE
8 years ago
David Cernat
27c4015f50
[General] Remove unused packet placeholder ID_OBJECT_HEALTH
8 years ago
David Cernat
c32c004516
Merge pull request #151 from OpenMW/master
...
Add OpenMW commits up to 16 Feb 2017
8 years ago
scrawl
57b585570a
Preload magic effect visuals of the player's selected weapon/spell
8 years ago
David Cernat
3b604a432e
[General] Restructure ID_CONTAINER to allow multiple containers at once
8 years ago
David Cernat
c8cbfbef62
[General] Sketch out server requests to players for container data
8 years ago
David Cernat
2ed9ae5739
Merge pull request #149 from OpenMW/master
...
Add OpenMW commits up to 14 Feb 2017
8 years ago
scrawl
ddd6605608
Move WNAM out of LandData to avoid redundant (de)allocations on startup
8 years ago
scrawl
e00b420f68
Move saving of LandData into Land::save
8 years ago
scrawl
325bf66653
Return const Land in ESMStore
8 years ago
David Cernat
a5d7c5fd39
Merge pull request #148 from OpenMW/master
...
Add OpenMW commits up to 13 Feb 2017
8 years ago
Marc Zinnschlag
93c5630e02
Merge remote-tracking branch 'matahualpa/openmw-cs_tablecontents'
8 years ago
scrawl
892d1b162d
nifloader: ignore nodes named 'bounding box' ( Fixes #3650 )
8 years ago
MAtahualpa
b4ef9e2314
Update loadbook.cpp
8 years ago
MAtahualpa
5a58ab1837
Update loadbook.hpp
8 years ago
David Cernat
6763718412
Merge pull request #146 from OpenMW/master while resolving conflicts
...
# Conflicts:
# apps/openmw/mwclass/npc.cpp
# apps/openmw/mwmechanics/actors.cpp
8 years ago
scrawl
bbcba57495
Disable hitAttemptActorId saving code for now
8 years ago
scrawl
2ea0db1d1a
Merge pull request #1198 from Allofich/combat
...
Make combat engagement logic more like vanilla
8 years ago
David Cernat
ae23c6d6a5
Merge pull request #145 from OpenMW/master while resolving conflicts
...
# Conflicts:
# CMakeLists.txt
8 years ago
scrawl
67e4a7e37b
Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead
8 years ago
scrawl
d141b98f0c
Add base animations to preloadCommonAssets
8 years ago
scrawl
839928e210
Fix light data being reset for the wrong light
8 years ago
scrawl
a46593fa74
Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread
8 years ago
scrawl
d3e1dbe920
Fix race conditions in terrain loader caused by static variables
8 years ago
scrawl
4d53ab6c32
nifloader: attempt to remove redundant root node when a Skeleton is added
8 years ago
scrawl
2a42c4781e
nifloader: override animflags instead of accumulating them
8 years ago
scrawl
0187f2ce4c
nifloader: combine animFlags and particleFlags (Bug #2100 )
8 years ago
scrawl
bccfd6cef8
nifloader: handle textures with no image that are later assigned in a FlipController
...
As found in vurt's trees (Bug #2100 )
8 years ago
scrawl
792f505b2a
Fix potential crash in ShaderVisitor for textures with no image assigned
8 years ago
scrawl
45ae8d5ffa
Add support for GL_AMBIENT colorMode to shaders as required by particle systems
8 years ago
scrawl
c00532d82d
Add LightStateCache to avoid redundantly setting the same gl_Light
...
Normally, osg::State would do this for us (via lastAppliedAttribute), but since we're using a custom StateAttribute to apply all lights at once, we have to track ourselves.
Further reduction of GL calls in a typical scene by ~2%
8 years ago
scrawl
4d4dc1b9c1
Add specialized DisableLight state attribute for more efficient undoing of light state
...
Seems to reduce # of GL calls by 10-15% in a typical scene.
8 years ago
David Cernat
6144ca95d8
Set version to 0.4.2
8 years ago
David Cernat
5038353792
[General] Rename BaseEvent's state into doorState & adjust related funcs
8 years ago
David Cernat
d8a9a5f6c9
[General] Send item owner in ID_CONTAINER
8 years ago
David Cernat
3614b21e10
[General] Send charge and goldValue in ID_CONTAINER
8 years ago
Allofich
5d2090684a
Store mHitAttemptActorId in save files
8 years ago
David Cernat
182b238b5f
[General] Rename WorldEvent into BaseEvent
8 years ago
David Cernat
75392297b5
[General] Use vector::at in most places
8 years ago
David Cernat
60d6a6d463
[Client] See when other players remove items from containers
8 years ago
David Cernat
f314b13edf
[General] Rename item health into charge, for consistency with OpenMW
8 years ago
David Cernat
ecc456fea9
[General] Include charge int in WorldObject & send it w/ ID_OBJECT_PLACE
8 years ago
David Cernat
04d45b9dbb
[General] Rename packets to show they are for players only, not NPCs
8 years ago
David Cernat
9f8bed9be1
[General] Add action types to WorldEvent's ContainerChanges
8 years ago
David Cernat
a07e616878
[General] Add ContainerItem and ContainerChanges structs to WorldEvent
8 years ago
David Cernat
6328ffb9aa
[General] In ID_GAME_ATTRIBUTE & ID_GAME_SKILL, rename GAME into PLAYER
8 years ago
David Cernat
9130c1f302
[General] Rename ID_CONTAINER_ADD into ID_CONTAINER
8 years ago
David Cernat
d2cf96af99
[General] Repurpose the unused ID_CONTAINER_REMOVE into ID_OBJECT_HEALTH
8 years ago
David Cernat
44e27148d5
Merge pull request #140 from OpenMW/master
...
Add OpenMW commits up to 4 Feb 2017
8 years ago
scrawl
a1069dce3c
Change UnrefQueue to accept osg::Referenced instead of osg::Object
8 years ago
scrawl
33e654f94d
Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls
8 years ago
scrawl
c95868969b
Early out for scene graphs with no update callbacks in SceneManager::notifyAttached
8 years ago
scrawl
767eba941f
Speed up finding of attachment node by using the cached nodeMap
8 years ago
scrawl
a76d693627
Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal()
8 years ago
David Cernat
c1427b2558
[General] Simultaneously send loads & unloads in ID_PLAYER_CELL_STATE
8 years ago
David Cernat
63974af131
Merge pull request #139 from OpenMW/master
...
Add OpenMW commits up to 3 Feb 2017
8 years ago
scrawl
30b101b175
Fix build error in OSG_USE_FLOAT_MATRIX=OFF mode due to a double implicit conversion to double (pun doubly intended)
8 years ago
scrawl
b4a6b6387b
Create own instance of osgDB::SharedStateManager so we control when to call prune()
...
prune() is now called in the background thread, just like the resource cache update.
Seems to improve performance by ~0.3 ms/frame
8 years ago
scrawl
84a92e665c
Improve performance in RigGeometry by optimizing for the most common case of identity geomToSkelMatrix
8 years ago
scrawl
f3045331f1
Fix regression in handling of NiZBufferProperty
8 years ago
scrawl
53e4db8a8f
Add dummy serializer for CameraRelativeTransform to allow serializing content of Sky Root
8 years ago
scrawl
c5f8ff6e0e
Add names to several nodes for debugging purposes
8 years ago
David Cernat
d9f5dfe65c
Merge pull request #138 from OpenMW/master
...
Add OpenMW commits up to 2 Feb 2017
8 years ago
scrawl
851f61ac82
Always assign osg::Material when a material controller is used
8 years ago
David Cernat
958ff06ca8
[General] Rename ID_DOOR_ACTIVATE into ID_DOOR_STATE
8 years ago
David Cernat
9f8f62b765
Merge pull request #137 from OpenMW/master
...
Add OpenMW commits up to 1 Feb
8 years ago
scrawl
9180089a3b
Add sharing for more State Attributes, most notably BlendFunc and AlphaFunc, to improve the state tracking in osg::State and reduce the number of GL calls
8 years ago
scrawl
960d4a96c3
Reduce the number of osg::Material state by setting the default state on the graph root
8 years ago
scrawl
e399e10607
Add missing lock in shareMaterial
8 years ago
scrawl
34deb6e7b1
Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes
8 years ago
scrawl
e90941a8b3
Wrap the scene template reference in another object for const correctness and to avoid it from being serialized with the osgDB serializer
8 years ago
David Cernat
2c5cc82f49
[Server] Add script functions for getting world object placement info
8 years ago
David Cernat
08faad9f32
Merge pull request #134 from OpenMW/master
...
Add OpenMW commits up to 28 Jan
8 years ago
David Cernat
15ed4b8da6
[Components] Use 24 hour format instead of 12 for log file timestamps
8 years ago
David Cernat
8bc6dfe590
[General] Remove duplicate constructor in PacketObjectUnlock
8 years ago
David Cernat
9f1e491a75
[General] Make WorldEvents store information about multiple objects
8 years ago
Allofich
0f20312012
Fix MSVC warnings
8 years ago
David Cernat
244da19a51
[General] Turn ID_PLAYER_CELL_LOAD into ID_PLAYER_CELL_STATE for clarity
8 years ago
David Cernat
4dc0ba21ec
[General] Fix packet ID for ID_PLAYER_CELL_LOAD
8 years ago
David Cernat
97aabf4a7d
[General] Sketch out sending of cell loading/unloading info in packets
8 years ago
David Cernat
158d606477
[General] Leave one blank line at the end of every tes3mp code file
8 years ago
David Cernat
63c8a98083
[General] Stop using virtual functions in BasePlayer
8 years ago
David Cernat
1d9c6ddd81
[General] Add placeholders for the new packet ID_PLAYER_CELL_LOAD
8 years ago
David Cernat
35e453dec3
[General] Sketch out most of functionality for journal saving/loading
8 years ago
David Cernat
d308897f95
Rename PacketItems, PacketSpells into InventoryChanges, SpellbookChanges
8 years ago
David Cernat
e2c595fc5d
Add preliminary structure for journal changes
8 years ago
David Cernat
e9b22814b9
Create placeholder for ID_GAME_JOURNAL
8 years ago
David Cernat
a69f294ef0
Rename ID_GAME_CELL into ID_PLAYER_CELL_CHANGE
8 years ago
David Cernat
745ddd9a69
Merge pull request #130 from OpenMW/master
...
Add OpenMW commits up to 19 Jan
8 years ago
David Cernat
83277a1512
Send spellbook in LocalPlayer CharGen & change UPDATE action name to SET
8 years ago
scrawl
115e563a7a
Fix race conditions caused by Array <-> GLBufferObject interactions (Bug #3580 )
...
The first part of the fix is to assign VBO/EBO's upon loading the array in the Nif reader. This avoids triggering the 'addVertexBufferObjectIfRequired' code path in osg::Geometry which has the race condition when two threads add the same Array at the same time. Essentially, we want the Arrays to be 'const' when they come out of the Nif reader.
The second part of the fix is to make sure not to create empty arrays in the Nif reader (importantly, not assigning a VBO to the empty array). This empty array would be deleted when the NIFFile is cleaned up, and the detachment of the VBO assigned to it (which is still in use by other arrays) would cause threading issues.
This rare crash bug was first introduced with commit a7c5beb7c5
. When using OSG dev version 3.5 the crashes were a little more prevalent, because 'addVertexBufferObjectIfRequired' in osg::Geometry is now used even when VBO's are disabled (as part of the VAO support changes).
8 years ago
David Cernat
33e85c54de
Rename BasePlayer Inventory & Spellbook into PacketItems & PacketSpells
...
This avoids confusion when either of those is used to store and send a single item, and no longer requires coming up with confusing variable names like realSpellbook or realInventory for actual full spellbooks and inventories.
8 years ago
David Cernat
78c6ab2a99
Clean up client Networking by putting item & spell logic in LocalPlayer
8 years ago
David Cernat
c77120df6d
Merge pull request #129 from OpenMW/master while resolving conflicts
...
# Conflicts:
# apps/openmw/mwworld/actiontake.cpp
8 years ago
scrawl
ac61535d2c
optimize OSGVertexBuffer by double buffering the vertex array instead of recreating it on every modification
8 years ago
David Cernat
253ded1ee3
Use new getFilenameStamp() method to generate timestamps for filenames
8 years ago
David Cernat
3932654d5d
Use log filenames w/ timestamps instead of adding numbers to their ends
8 years ago
Koncord
b5c586d5b7
Add and implement ID_MASTER_QUERY
8 years ago
Koncord
27afb91936
RPI v3 patch #1
8 years ago
Koncord
6311745595
Update version
8 years ago
Koncord
7595b33461
Implement spellbook
8 years ago
Koncord
6e6237541a
Fix "comparison between signed and unsigned integer expressions"
8 years ago
Koncord
561a88d441
Fix "comparison between signed and unsigned integer expressions"
8 years ago
Koncord
efb40b3c66
Remove redundant code
8 years ago
Koncord
11be8ed005
Rename copyOldLog to renameOldLog
8 years ago
Koncord
f7b4aea85b
add function for keeping old logs
8 years ago
David Cernat
973db7c78a
Merge pull request #113 from OpenMW/master
...
Add OpenMW commits up to 17 Dec
8 years ago
Leon Krieg
170e723cc7
Handle SDL event 0x304 by doing nothing ( #3670 )
8 years ago
scrawl
eae35af13d
Check if the bounding box changed before calling dirtyBound()
8 years ago
scrawl
aafff1deb6
Fix memory leak
8 years ago
scrawl
cca75499ee
Clear the Skeleton's bone cache when a node is added/removed ( Fixes #3663 )
8 years ago
scrawl
c0faeea938
RigGeometry check if mesh has normals ( Fixes #3667 )
8 years ago
Aussiemon
369272fc70
Handle SDL event 0x302 by doing nothing
8 years ago
mrohrlach
f0f78c9d64
Slight adjustments to disintegration fix
8 years ago
mrohrlach
9624d8aade
Added new method and variable to track float remainders of disintegration effections
8 years ago
MiroslavR
99bcf47167
Implement NiSphericalCollider ( Closes #3644 )
8 years ago
Koncord
7b3e487f91
Register packet ActiveSkills in packet controller
8 years ago
Koncord
b1bb552b65
Add packet ActiveSkills
8 years ago
David Cernat
7bbeed629d
Merge pull request #109 from OpenMW/master
...
Add OpenMW changes up to 25 Nov
8 years ago
scrawl
5297d7b5be
Merge pull request #1137 from nikolaykasyanov/osx-structure
...
[macOS] Move all resources files inside application bundles (fixes #3566 )
8 years ago
Nikolay Kasyanov
db69342b5d
[macOS] Move all configs & resources into app bundles
...
Fixes #3566 (https://bugs.openmw.org/issues/3566 ).
8 years ago
scrawl
505250f6ec
Do not use architecture dependent type size_t in esm format ( Fixes #3633 )
8 years ago
David Cernat
9e290ad799
Fix spacing irregularities
8 years ago
David Cernat
95efb77e53
Implement sending of ID_GAME_SPELLBOOK from client
8 years ago
David Cernat
6ea5f08e9c
Create placeholder for ID_GAME_SPELLBOOK
8 years ago
David Cernat
6c8c0827ea
Move RequestData() method to BasePacket
8 years ago
David Cernat
fd6dd5daa8
Fix packetID for new packet
8 years ago
David Cernat
ae39daf76a
Add and implement ID_MUSIC_PLAY
8 years ago
David Cernat
b028f0b51f
Merge pull request #104 from OpenMW/master
...
Add OpenMW commits up to 17 Nov
8 years ago
scrawl
9d125bcaa2
Merge pull request #1129 from PhillipAnd/phillipand-cmake-fix
...
Fix various build issues with Visual Studio environment
8 years ago
Koncord
19240b825d
Fix macro for MSVC
8 years ago
Koncord
b57ed2c119
Fix parameter type mismatch
8 years ago
Koncord
e2522fa366
Simplify LOG macros
8 years ago
David Cernat
6cd959fac8
Rename BasePlayer's GetCell() into getCell()
8 years ago
David Cernat
fa9d6e810e
Use lowerCamelCase in tes3mp client function names like OpenMW does
8 years ago
David Cernat
8d2793401e
Merge pull request #103 from OpenMW/master
...
Add OpenMW commits up to 13 Nov
8 years ago
Phillip Andrews
c18fc113e5
Changed missing library dependencies to simple fix
8 years ago
Allofich
3420121c3f
Fix shadowing warnings
8 years ago
David Cernat
f7b5e5e638
Ignore packets from server that try to move LocalPlayer to invalid cells
8 years ago
Koncord
56959ebfda
Implement magic
8 years ago
Koncord
37e9cafbf7
Add new API function: SetConsoleAllow
...
example:
tes3mp.SetConsoleAllow(pid, 0) -- disallow console to the player
The console is allowed by default
8 years ago
Koncord
adb49b7c7d
Add New GUI dialog: ListBox
...
Example:
local GUI_LISTBOX = 42
function OnPlayerSendMessage(pid, message)
if message == "/lb" then
local items = "consectetur adipiscing elit\nsed do eiusmod tempor incididunt ut labore\net dolore magna aliqua." -- items can be separated through newline
local label = "Lorem ipsum dolor sit amet"
tes3mp.ListBox(pid, GUI_LISTBOX, label, items)
end
end
function OnGUIAction(pid, idGui, data)
if idGui == GUI_LISTBOX then
print("ID: " .. idGui .. " data: " .. tostring(data)) -- if value higher than last item id
end
end
8 years ago
David Cernat
cd798d5f23
Merge pull request #89 from OpenMW/master
...
Add OpenMW commits up to 30 Oct
8 years ago
Allofich
125e94ef0e
Fix shadowing warnings
8 years ago
David Cernat
41504bd02a
Use more accurate position for ID_OBJECT_PLACE
8 years ago
David Cernat
937bf97883
Send gold values correctly with ID_OBJECT_PLACE
8 years ago
David Cernat
180aa3f2f3
Send item count ID_WORLD_OBJECT_PLACE
8 years ago
David Cernat
46397a7dac
Add and implement ID_OBJECT_ANIM_PLAY
8 years ago
David Cernat
fd4085725e
Set version to 0.3.0
8 years ago
David Cernat
c205e793cb
Add and implement ID_SCRIPT_MEMBER_SHORT
8 years ago
David Cernat
6d61c6cf2d
Merge pull request #84 from OpenMW/master
...
Add OpenMW commits from Oct 25
8 years ago
David Cernat
97468980af
Add and implement 3 new WorldPackets for ingame script variable values
8 years ago
Assumeru
f6ef1ce276
Fix Calm/Frenzy/Demoralize/Rally Creature weakness and resistance
8 years ago
David Cernat
385b5f39e3
Add and implement ID_OBJECT_ROTATE
8 years ago
David Cernat
54ed9a7ab4
Implement ID_OBJECT_MOVE and send it from ingame scripts
8 years ago
David Cernat
0fb9b6eefb
On second thought, rename ID_OBJECT_MOVE_WORLD into ID_OBJECT_MOVE
8 years ago
David Cernat
947a677801
Replace ID_ACTIVATOR_ACTIVATE with ID_OBJECT_MOVE_WORLD
8 years ago
David Cernat
c25ebc34b3
Shorten WorldPacket IDs by removing WORLD from them
8 years ago
David Cernat
bdb53e1cb4
Implement ID_WORLD_DOOR_ACTIVATE and send it from MWBase::World
8 years ago
David Cernat
7264f13b8e
Implement ID_WORLD_OBJECT_SCALE and send it from ingame scripts
8 years ago
David Cernat
52d156e136
Make server able to receive the 5 new WorldPackets
8 years ago
David Cernat
4f0a3e8aa1
Add placeholders for 5 new WorldPackets
8 years ago
David Cernat
b6111d16cc
Add and implement ID_WORLD_VIDEO_PLAY
8 years ago
David Cernat
3fd93896f2
Add and implement ID_WORLD_OBJECT_LOCK
8 years ago
David Cernat
08ea5163c4
Add and implement ID_WORLD_OBJECT_UNLOCK
8 years ago
David Cernat
47ebd24b4a
Merge pull request #79 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# apps/openmw/mwinput/inputmanagerimp.cpp
8 years ago
David Cernat
d85a1ee1a9
Fix errors remaining from merge with tes3mp-packetexpansion
8 years ago
David Cernat
c639337842
Merge with tes3mp-packetexpansion by fixing conflicts
...
# Conflicts:
# apps/openmw-mp/Networking.cpp
# apps/openmw/mwmp/Networking.cpp
# components/CMakeLists.txt
# components/openmw-mp/NetworkMessages.hpp
# components/openmw-mp/PacketsController.cpp
8 years ago
David Cernat
0a44bea91d
Send cell coordinates in tes3mp using mData instead of mCellId.mIndex
8 years ago
David Cernat
cbc132612a
Use mRefNum.mIndex instead of just mRefNum and add extra debug
8 years ago
David Cernat
17f66e4e90
Implement ID_WORLD_OBJECT_PLACE
8 years ago
David Cernat
d0027ae3e7
Set correct packetID for ID_WORLD_OBJECT_PLACE
8 years ago
Koncord
77257b0721
Build fix
8 years ago
Koncord
c27351c19e
Implement inventory functions
...
AddItem, RemoveItem, GetItemName, GetItemCount, GetItemHealth, GetInventorySize SendInventory
Example:
```lua
tes3mp.AddItem(pid, "glass dagger", 1, 50)
tes3mp.AddItem(pid, "glass dagger", 1, -1)
tes3mp.SendInventory(pid)
tes3mp.RemoveItem(pid, "glass dagger", 1)
tes3mp.SendInventory(pid)
local invSize = tes3mp.GetInventorySize(pid) - 1
for i = 0, invSize do
print(("%s %d %d"):format(tes3mp.GetItemName(pid, i), tes3mp.GetItemCount(pid, i), tes3mp.GetItemHealth(pid, i)))
end
```
8 years ago
David Cernat
2b98e349ce
Fix include for WorldEvent
8 years ago
David Cernat
6e43baf73e
Send Cell instead of CellId because of problems with the latter
8 years ago
David Cernat
103b1e3f72
Send CellId in ID_WORLD_OBJECT_DELETE
8 years ago
David Cernat
3c49157ed7
Rename WorldPackets to ID_WORLD_OBJECT_DELETE and ID_WORLD_OBJECT_PLACE
8 years ago
David Cernat
92463c4a03
Fix Windows server crash caused by printing event->CellRef()->mRefID
8 years ago
David Cernat
565e7e4b9f
Create and implement placeholder for ID_WORLD_OBJECT_CREATION
8 years ago
David Cernat
ac666edebd
Add a CellRef to WorldEvent
8 years ago
David Cernat
b2845cd17c
Create and start using WorldEvent class
8 years ago
MiroslavR
301dd77efb
Save controls state ( Fixes #3598 )
8 years ago
David Cernat
f0fa5e8771
Add ContainsPacket method to packet controllers
8 years ago
David Cernat
285f89573d
Create placeholders for WorldPacket classes
8 years ago
David Cernat
790d41e278
Move PlayerPackets into their own subfolder
8 years ago
David Cernat
d99463d752
Fix show-stopping mistake in PlayerPacket
8 years ago
David Cernat
d2212ef80b
Rename PacketsController into PlayerPacketController
8 years ago
David Cernat
5e0c0dd5f1
Use logger in server's Networking MainLoop
8 years ago
David Cernat
fcc793a0af
Create a new BasePacket that PlayerPacket inherits from
8 years ago
David Cernat
b8f4cb94fb
Rename BasePacket into PlayerPacket
8 years ago
David Cernat
3136a12051
Resolve conflicts in pull request #75
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/CMakeLists.txt
8 years ago
MiroslavR
11565b5966
Make actors with non-portable lights in inventory glow ( Closes #2042 , #3338 )
8 years ago
scrawl
5c94e2324f
Add missing use plugin macro for static build
8 years ago
Allofich
f6f16b68de
Don't let Weakness to Magicka affect paralysis
8 years ago
scrawl
37bfa88b2d
Merge pull request #1094 from Allofich/alchemy
...
Fix reversed use of alembics and retorts
8 years ago
Allofich
498976775a
Fix reversed use of alembics and retorts
8 years ago
scrawl
0c981b6fe5
Fix typo in script opcode ( Fixes #3583 )
8 years ago
David Cernat
6eae017561
Merge pull request #74 from OpenMW/master
...
Add OpenMW commits up to 5 Oct
8 years ago
Allofich
6ec37b5cfb
Fix shadowing warnings
8 years ago
David Cernat
f276edddcc
Set version to 0.2.0
8 years ago
David Cernat
6650b74498
Add handling of skill increases
8 years ago
David Cernat
a0e9a672a5
Split updateClassStats in 3 and add handling of level progress
8 years ago
David Cernat
bc0aa86bcf
Make variable names more consistent and easier to understand
8 years ago
David Cernat
433190d82e
Rename OnPlayerUpdateEquiped into OnPlayerChangeEquipment
8 years ago
David Cernat
b6086ab015
Rename ID_GAME_DYNAMICSTATS_CURRENT into ID_GAME_DYNAMICSTATS
8 years ago
David Cernat
9cbda73586
Remove unused packets IDs
8 years ago
David Cernat
b65deca2ae
Remove unused PacketRotation and PacketCreateProjectile
8 years ago
David Cernat
57f07813b0
Rename ID_GAME_UPDATE_POS into ID_GAME_POS
8 years ago
David Cernat
26487598a6
Rename ID_GAME_UPDATE_EQUIPED into ID_GAME_EQUIPMENT
8 years ago
David Cernat
0479eb38cc
Update protocol version and make version mismatch error less confusing
8 years ago
David Cernat
ce4b326b02
Rename ID_GAME_UPDATE_BASESTATS into ID_GAME_DYNAMICSTATS_CURRENT
8 years ago
David Cernat
4d7130b12f
Improve logic for script-induced cell changes
8 years ago
David Cernat
046a1ea899
Add packet for player levels
8 years ago
David Cernat
3e2fec973d
Remove leftover variable
8 years ago
David Cernat
79c561057c
Merge pull request #59 from OpenMW/master
...
Add OpenMW commits up to 18 Sep
8 years ago
scrawl
cd4b182091
Merge pull request #1051 from Allofich/textures
...
Use spell effect particle textures
8 years ago
Allofich
a8e9f2df67
Cleanup
8 years ago
Koncord
96e2d749c7
New auth protocol
8 years ago
Koncord
9bcca6d141
Init PacketLoaded in PacketsController
8 years ago
Koncord
fe370fa995
Add PacketLoaded
8 years ago
David Cernat
68f974d999
Merge pull request #57 from OpenMW/master
...
Add OpenMW commits up to 17 Sep
8 years ago
Allofich
be96ff1fd1
Remove redundant parameter
8 years ago
scrawl
8f5347b79b
Update comment, osgAnimation::RigGeometry is no longer used
8 years ago
David Cernat
cdada00a8a
Merge pull request #56 from OpenMW/master
...
Add OpenMW commits up to 15 Sep
8 years ago
MiroslavR
55e670c5fe
Fix animation state not saving
...
References with animation state changed but otherwise identical to their content file counterparts
were previously considered unchanged and thus dropped while saving.
8 years ago
David Cernat
3b7693c719
Resolve conflicts in pull request #55
...
# Conflicts:
# README.md
# apps/openmw/mwclass/npc.cpp
# apps/openmw/mwmechanics/combat.cpp
8 years ago
Allofich
a033ba3bd2
Override spell textures by NiTexturingProperty
8 years ago
emlai
fd2281e825
Fix typo
8 years ago
Koncord
5eaad1b92e
again fix headerSize
8 years ago
David Cernat
81999a8179
Remove outdated ID_GAME_UPDATE_SKILLS packet, part 2
8 years ago
David Cernat
8abef0bebe
Remove outdated ID_GAME_UPDATE_SKILLS packet
8 years ago
David Cernat
970e9aff2f
Remove old class methods and don't include class in ID_GAME_BASE_INFO
8 years ago
David Cernat
e9dce26f38
Resolve conflicts in pull request #50
...
# Conflicts:
# CMakeLists.txt
8 years ago
David Cernat
a20e7890a2
Fix formatting
8 years ago
Koncord
cf1a0113a1
Time API
8 years ago
Koncord
e7deff09d9
Update version
8 years ago
Koncord
3405e36ce4
Woops part 2
8 years ago
Koncord
118ab32c9b
Woops
8 years ago