Marc Zinnschlag
dd17f70068
Merge remote-tracking branch 'aesylwinn/landrecords'
7 years ago
scrawl
64e27c032b
Merge pull request #1481 from scrawl/keyfocus
...
WindowManager overhaul & improved keyboard support
7 years ago
scrawl
44720bf41a
Allow MWList items to retain key focus
7 years ago
scrawl
b9341925f2
Set AutoSizedEditBox as Static by default
...
Would look very odd anyway to use it for editable text, with the widget resizing as you type.
7 years ago
scrawl
c88c535e0e
Fix HBox/VBox not using Client widget with MyGUI <= 3.2.2
7 years ago
scrawl
be7bdec2ed
Merge pull request #1471 from crussell187/nif_stream_optimization
...
first pass on optimization of nif parsing functions from the file stream
7 years ago
scrawl
19e07fad30
Remove redundant Services enum
7 years ago
scrawl
82a211ba03
Fix duplicate code
7 years ago
scrawl
76ddf8d794
Support Up/DownArrow keys to change NumericEditBox value
7 years ago
scrawl
1ad14b232f
Adjust ImageButton to accept key focus and use the 'highlighted' texture
7 years ago
scrawl
e7ad012977
Pass repeat key events to the GUI
...
For example, one can scroll to the last element in a list by holding down the 'Down Arrow' key.
7 years ago
scrawl
2494c22d66
Merge pull request #1470 from MiroslavR/convertmprj
...
ESS-Importer: Convert magic projectiles
7 years ago
825de71b29
removed an iostream include used for debug prints from nifstream.hpp
7 years ago
30a213a9b3
updates for nifstream optimization including fixing the non-x86 path for little endian reads
7 years ago
8834066dea
make streaming to a type array in nif a direct copy from the file into the vector
7 years ago
090a8408b8
made nif basic type read optimizations more portable
7 years ago
c72aa19d6d
first pass on optimization of nif parsing functions from the file stream
7 years ago
scrawl
58f9688433
Use client coordinates in HBox/VBox
7 years ago
scrawl
fb975d02db
Use client coordinates in HBox/VBox
7 years ago
MiroslavR
f15de6d3ca
ESS-Importer: Convert magic projectiles ( Closes #2320 )
7 years ago
Chris Robinson
021627bdf8
Mark some functions with override
...
Fixes some Clang warnings about overriding a virtual function without the
override keyword.
7 years ago
Kyle Cooley
50d9d9f78f
Get rid of some templates, exceptions instead of assert, and other small changes.
7 years ago
Andrei Kortunov
4bb349a525
Use default 0 precision in the float formatting (bug #4096 )
7 years ago
Kyle Cooley
2abf7f1752
Remove unnecessary cache dump
7 years ago
Kyle Cooley
09e645a0e0
Fix careless mistake.
7 years ago
Kyle Cooley
25d4a0370f
Changes to land data access in tables, also update Land once per frame in scene view.
7 years ago
Kyle Cooley
d030b595f8
Fix potential segfault, cleanup, get rid of warnings.
7 years ago
Kyle Cooley
72cb405de2
Some bug fixes, changes to land load code.
7 years ago
Kyle Cooley
2eacc2f093
Changes to land creation, add ability to specifically clear terrain cache
7 years ago
Kyle Cooley
ab607f3028
Tweaks to land loading, land cloning, terrain signals, placeholder land update handling
7 years ago
Andrei Kortunov
538498230b
Declare mClient variable
7 years ago
scrawl
dca31b7ffa
Remove redundant _boundingBoxComputed which no longer exists in osg master ( Fixes #4075 )
7 years ago
Kyle Cooley
d3014cf394
Temporary fix for adding new lands, cloned lands will still reference old data though
7 years ago
Kyle Cooley
7cc95a11a4
Add more land table columns
7 years ago
scrawl
2e58024f1c
Fix intersections with Rig/MorphGeometry, was caused by an issue in the LineSegmentIntersector not respecting the cullingActive flag of a drawable.
7 years ago
scrawl
5e790b567e
Fix node path issue
...
Needs to be set so that the 'cullingActive' flag of the node path's end can be checked
7 years ago
scrawl
4bef8260ab
Add const qualifiers
7 years ago
scrawl
5d524a6a10
Add custom version of MorphGeometry replacing osgAnimation
...
Double buffering, custom bounding box and the update in the cull visitor (instead of update) are now all handled internally rather than needing hacks and/or callbacks.
7 years ago
scrawl
f1ebb129c1
Fix ShaderVisitor to deal with the fact RigGeometry no longer derives from Geometry
7 years ago
scrawl
209e139aa8
Move double buffering implementation inside RigGeometry
...
The double buffering is an implementation detail so it should be handled as such, rather than mandating the scene graph to be structured in a certain way.
Override accept(NodeVisitor&) instead of using callbacks.
7 years ago
Kyle Cooley
9e41f1340a
Replace nonconst getId with setId, add template specialization and specialized derived classes for LandTexture
7 years ago
scrawl
45f7563a55
Revert "Revert "Check for a Geometry node when attaching bodyparts""
...
Issue with shaders has been fixed with b9931fb71c
This reverts commit a1e3fb7604
.
7 years ago
scrawl
b9931fb71c
Set the shader on the node containing the StateSet
7 years ago
scrawl
a1e3fb7604
Revert "Check for a Geometry node when attaching bodyparts"
...
This reverts commit 3fc8634206
.
7 years ago
scrawl
3fc8634206
Check for a Geometry node when attaching bodyparts ( Fixes #3957 )
7 years ago
scrawl
bc82c6a35d
Use white color if told to use nonexisting vertexcolors ( Fixes #3833 )
7 years ago
scrawl
5d2fe5e887
Implement lightmode/vertmode of NiVertexColorProperty
7 years ago
scrawl
4fba157d3b
Implement releaseGLObjects for cached resources
7 years ago
Kyle Cooley
d3d04171f9
Fix seg fault, undo changes BsaArchive
7 years ago
Kyle Cooley
8c4b12a603
VFS changes, one VFS and resource system per document.
...
Added ability to reset a VFS::Manager.
Removed ability to rebuild the index for a VFS::Manager.
Moved VFS creation to CSM::Data.
7 years ago
Kyle Cooley
979b0d7211
Code cleanup and more cache clearing
7 years ago
Kyle Cooley
679a284735
Use scoped lock instead of directly locking/unlocking mutex
7 years ago
Kyle Cooley
3b9326d238
Clear terrain cache and reload terrain
7 years ago
Kyle Cooley
b62cb0e2a4
Clear out GPU texture/stateset cache
7 years ago
Kyle Cooley
7914fd5c9c
Re-index BSAs
7 years ago
Kyle Cooley
d7744e8b16
A bit of cleanup
7 years ago
Kyle Cooley
5950b26912
Update scene assets
7 years ago
Kyle Cooley
742bd00ec6
Clear cached resources
7 years ago
Kyle Cooley
d31ed83b54
Preliminary asset reloading
7 years ago
Thunderforge
54fe645703
Removing erroneous comment since Qt is not relevant here
7 years ago
Thunderforge
464c64a306
Swap the OIS Ctrl and Meta keys on macOS to match Qt
7 years ago
scrawl
cef415509f
Revert "Merge redundant input events"
8 years ago
Julian
3cfd9af945
merge redundant input events
8 years ago
scrawl
c9d9461d3e
Add Spacer class derived from AutoSizedWidget
...
Using a normal widget as a spacer with HStretch/VStretch may not work properly because for widgets not derived from AutoSizedWidget, the HBox/VBox treat the widget's current size as the requested minimum size. This leads the layout to break when resized more than once.
The new class sets HStretch and VStretch to true by default to save some typing.
8 years ago
PlutonicOverkill
5049fe4320
Pause game when minimised on Windows
8 years ago
scrawl
3e03a0d7bd
Terrain: remove ref argument that is now always true
8 years ago
scrawl
ac78d01b2b
Terrain: use the main camera's viewpoint for intersection tests
...
Fixes lag spikes caused by intersection tests loading/unloading terrain pages.
8 years ago
scrawl
ffb6dff6aa
Merge pull request #1338 from akortunov/valuefix
...
Change mValue type for clothes to unsigned short (bug #3960 )
8 years ago
Andrei Kortunov
2bd105f5e2
Change mValue type for clothes to unsigned short ( fixes #3960 )
8 years ago
scrawl
40dc1dd6f5
Fix checking a variable before it's assigned (Bug #3950 )
8 years ago
scrawl
be940656db
Add '0' as an alias for 'OFF' for OPENMW_OPTIMIZE
8 years ago
scrawl
54bb1b13cb
Change NCO/NCC flags to NC* ( Fixes #3915 )
8 years ago
Allofich
42402976e3
Fixes for building in MSVC
8 years ago
Bret Curtis
c6805314c2
be explicit about what we are trying to catch instead of catching everything and fixed up formatting
...
use Allman style brackets not K&R style, additional formatting for fallback.cpp which needed some love
revert allman formatting changes
8 years ago
Bret Curtis
7c758a6293
std::stof can not handle comma in us localization and can not handle period in french localization, using std::replace is not a solution, going back to boost::lexical_cast
8 years ago
Bret Curtis
f0b21cca22
use own inline hash_combine function
8 years ago
David Carlier
8a5c62de97
needs this head for getuid
8 years ago
Bret Curtis
c781d1f8ed
purge unnecessary imports
...
add fstream back
add fstream back
add fstream back
add fstream back
add fstream back
add fstream back
add fstream back
8 years ago
Bret Curtis
154d7cffa2
replace and purge boost::function
8 years ago
Bret Curtis
d48b829b45
replace and purge boost::lexical_cast
8 years ago
Bret Curtis
98752a9702
replace boost::bind
8 years ago
Bret Curtis
b7c27e5e96
remove boost/tuple
8 years ago
Bret Curtis
39185e6f8c
purge the rest of boost::shared and any other boost related things that no longer are required
...
put boost system back in, clean others up
revert Qt
add back boost fstream
8 years ago
Bret Curtis
d785344fad
purge all instances of <boost/shared_ptr.hpp>, clean up unused headers
8 years ago
Bret Curtis
07f75e1104
replace boost::shared_ptr in extern and components
8 years ago
Ewan Higgs
38a2de3c51
convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis
8 years ago
Julian Ospald
5d85fa9220
Fix build with osg >= 3.5.6
8 years ago
scrawl
813af876f6
Use a partial binary search in isReservedName ( Fixes #3835 )
8 years ago
scrawl
8d84869432
Fix commit 8f71b65d38
(don't overwrite the previous user data)
...
This resulted in a crash/corruption because the KeyframeController, for performance reasons, does not check that the expected user data is there and of correct type.
(Fixes #3829 )
8 years ago
scrawl
45d9e38616
Fix check for default material
8 years ago
Allofich
e095817ac2
Treat =< and => as == in scripts
...
(Fixes #3744 )
8 years ago
Allofich
ff3e307059
Pass parameters by const reference
8 years ago
scrawl
8f71b65d38
sceneutil/attach: inherit the UserDataContainer to avoid the resource cache from being cleared incorrectly
8 years ago
MiroslavR
c962b6dd6d
Fix correctActorModelPath to work properly when both backward and forward slashes are used in the path ( Fixes #3822 )
8 years ago
MiroslavR
395e97cf40
Remove evil "implicit GetJournalIndex" hack from expression parser
8 years ago
Allofich
3780d94214
Cast LAND_SIZE to integer to avoid linking error
8 years ago
Allofich
2a505b427d
Remove second LAND_SIZE definition
8 years ago
scrawl
f676b62711
Remove unused variable
8 years ago
scrawl
c992cb6e82
Fix texture not being applied on rendering the composite map ( Fixes #3791 )
8 years ago
MiroslavR
06dc94552f
Log a warning if size in SCHD (script header) does not match SCDT (bytecode) size instead of failing
8 years ago
scrawl
a070551af3
Attempt to fix naming conflict on windows
8 years ago
scrawl
3d58ba7301
Fix boolean test
8 years ago
scrawl
fd215caa02
Add local LandCache to cut down on store searches
8 years ago
scrawl
088d5604bf
Use a shader if required to display the composite map
...
Fixes composited terrain not respecting the 'clamp lighting' setting.
8 years ago
scrawl
7f5beb3172
Remove unused includes
8 years ago
scrawl
5044816770
Remove unused code
8 years ago
scrawl
b66c2abfe3
Build the bounding sphere in the loading thread (only relevant for TerrainGrid)
8 years ago
scrawl
9e9c028f1d
Skip light collection for far away terrain
8 years ago
scrawl
0782839a42
Avoid redundant culling tests on the transform/drawable
8 years ago
scrawl
fb8ac06524
Reduce the minSize of quad tree nodes for better performance
8 years ago
scrawl
a041546b54
Use the quad tree's minSize in the LodCallback
8 years ago
scrawl
e4e8821902
Refactor update of lodFlags
8 years ago
scrawl
2aa09639a9
Re-enable terrain intersections
8 years ago
scrawl
db00d47ca2
Hold a ref to the intersection visitor's view if possible
8 years ago
scrawl
11bee6ee35
Avoid compiling composite maps that are no longer referenced
8 years ago
scrawl
9eed7fa6f5
Fix composite map when force shaders is enabled
8 years ago
scrawl
d055dc25bf
Add custom traversal for local map camera to avoid loading terrain nodes that are exactly outside the border to another cell
8 years ago
scrawl
7d50b6c2e2
Add QuadTreeWorld::cacheCell to preload cells at max LOD for local maps
8 years ago
scrawl
6ccb6009ee
Use the View-based preloading for TerrainGrid as well
8 years ago
scrawl
3c29e2dbeb
Refactor ownership of terrain views
8 years ago
scrawl
28fd492711
Don't use terrain LOD for the map camera
8 years ago
scrawl
e7a0878c10
Add CompositeMapRenderer info to the stats panel
8 years ago
scrawl
c921620ef3
Compile the drawables of a composite map one by one to avoid frame drops for larger maps
8 years ago
scrawl
47ca8aeee5
Use the time elapsed instead of # compiled as limit
8 years ago
scrawl
8a6d909b22
Fix composite map being compiled twice
8 years ago
scrawl
683e625c6c
Rewrite CompositeMapRenderer to be based on Drawable and share the FBO
8 years ago
scrawl
4baa795152
Add preloading implementation to QuadTreeWorld
8 years ago
scrawl
9db71e3f62
Recompute the LOD stitching when the view changes
8 years ago
scrawl
ef704db877
Fix reset of changed flag
8 years ago
scrawl
1c15686353
Remove non required use of WorkQueue
8 years ago
scrawl
433900fca5
Fix waiting on initial quad tree build
8 years ago
scrawl
4dbd224249
Hide the terrain in non-exterior cells
8 years ago
scrawl
2580de11a4
Refactor ownership of ViewDataMap
8 years ago
scrawl
5a3c645c89
Enable lazy compiling of composite maps
8 years ago
scrawl
99e18f0d68
Clear the ViewData on exit
8 years ago
scrawl
bb991850da
Add LOD stitches
8 years ago
scrawl
6bd286d924
Fix unnecessary resizing in ViewData
8 years ago
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.
8 years ago
scrawl
f19a88be9d
Reject QuadTreeNodes with invalid bounds
8 years ago
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
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
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
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
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
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
scrawl
1402e0b872
Don't optimize billboard nodes ( Fixes #3774 )
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
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
scrawl
48e0f098ff
Add missing copy of callbacks when a Transform is replaced by Group
...
(Fixes #3770 )
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