Commit Graph

4344 Commits (9106e3646cb49bdb3d285e563b687856171fecf1)

Author SHA1 Message Date
unelsson 3deebf0247
Merge branch 'master' into wnamfix 5 years ago
Nelsson Huotari 2fdaacf23c remove for array, just std::swap 5 years ago
Nelsson Huotari e35ed960ee for -> std::copy 5 years ago
Nelsson Huotari 7f030fc3ee copy mWnam record in copy constructor and custom assignment operator 5 years ago
Capostrophic bde4a38181 Cast Random result to float (bug #5175) 5 years ago
elsid 751accad0f
Remove unused field QuadTreeBuilder::mLodFactor 5 years ago
elsid 29f262e514
Fix crash on destructed stream usage 5 years ago
Capostrophic 138a7ac434 Expression parser: Try to parse strings as number literals (bug #5097) 5 years ago
Alexei Dobrohotov 822b20ef46
Fix invalid strips-based collision shape transformation 5 years ago
Alexei Dobrohotov 0a97dd8e84
[Regression] Fix horribly broken fallback loading 5 years ago
Andrei Kortunov 1f3f3dd1a5
Merge pull request #2526 from Capostrophic/config
openmw.cfg-related fixes (incl. bug 2976)
5 years ago
Andrei Kortunov e6b79d100a
Merge pull request #2503 from Capostrophic/keyword
Allow usage of more keywords as string arguments (bug #5087)
5 years ago
Andrei Kortunov e568ad30ea Copy transformations data when we clone node (bug #5163) 5 years ago
Capostrophic 3a912485ca openmw.cfg-related fixes
Make sure the defaults exist in local openmw.cfg too
Make sure constant attenuation settings are defined now that they are implemented
Fix config file loading order once and for all (bug #2976)
5 years ago
Capostrophic 83f61d1636 Support target color in NiMaterialColorController (bug #5159) 5 years ago
Capostrophic 8baddefdbd Refactor extra data and particle modifier handling
Objects no longer inherit from extra data class
"Controlled" harmful abstraction no longer exists
Introduced NiParticleModifier/NiParticleCollider abstractions
Extra data size reading moved into the base read() method
5 years ago
capostrophic 8f2ed884a5 Allow usage of more keywords as string arguments (bug #5087) 5 years ago
Capostrophic c0438a0c6b Avoid using getPtr on empty geometry data 5 years ago
Alexei Dobrohotov 64fde2d7c2
Fix crash when NiGeometry lacks NiGeometryData 5 years ago
capostrophic 9c7474f88c Implement NiPalette support (feature #4882) 5 years ago
capostrophic efa463af8f Fix non-tiling textures clamp mode (bug #5137) 5 years ago
Andrei Kortunov d4a8023e1a
Merge pull request #2485 from Capostrophic/lighting
Add support for QuadraticMethod/LinearMethod setup (bug #4965, continuation)
5 years ago
capostrophic 62fd2d47a5 Rewrite flickering/pulsing to work more like vanilla (bug #4952) 5 years ago
Alexei Dobrohotov 3668473d6d
Fix comment 5 years ago
Alexei Dobrohotov eaedf34975
Fix ventriloquism 5 years ago
capostrophic c0d5cbdc8b Add support for QuadraticMethod/LinearMethod setup (bug #4965) 5 years ago
Alexei Dobrohotov 307e9ba666
Merge pull request #2413 from akortunov/weapon
Refactor weapon types behaviour
5 years ago
Andrei Kortunov f0cef772fa Refactor weapon types behaviour
1. Move weapon types behaviour from switches to the table (should allow
us to de-hardcode weapon types later)
2. Gereralize bones injection to actors skeletons (instead of using the
hardcoded xbase_anim_sh.nif)
5 years ago
capostrophic 9e93c9ecd2 Fix multiple-strip NiTriStrips loading 5 years ago
capostrophic 93f73fe87b Fix comparison 5 years ago
capostrophic 7fc3153f62 Reduce code duplication further 5 years ago
capostrophic 91efdf18a9 Reduce Bullet part code duplication 5 years ago
capostrophic ed154f0e2c Fix typo and replace failsave with an assert 5 years ago
capostrophic 7cc70ffb50 Reduce skinned shape code duplication 5 years ago
capostrophic bd6c455fd4 Reduce code duplication for non-skinned shapes 5 years ago
capostrophic b4f54651f8 Make sure strips have valid size 5 years ago
capostrophic 6599a28ecf Generate collision shape based on NiTriStrips 5 years ago
capostrophic adb06913f7 Add basic NiTriStrips rendering (no physics yet) 5 years ago
capostrophic 8efbdeaa57 Load NiTriStrips/NiTriStripsData (don't do anything yet) 5 years ago
capostrophic 7b6af4a893 Make sure local path includes trailing slash
Launcher assumes it does
5 years ago
Andrei Kortunov 8557346fbd Use glow for enchanted arrows (feature #5122) 5 years ago
capostrophic 6928adcee1 Prevent front() and operator[] from causing undefined behavior 5 years ago
capostrophic 168e5050bb Ignore an extra number argument in ModRegion (bug #5110) 6 years ago
Chris Djali 576285573b
Merge pull request #2404 from Capostrophic/framerate
Make framerate limit configurable in the launcher
6 years ago
fredzio ca7ac30f6d Use the POSIX pathconf(2) to determine the maximum path length.
It fixes build on BSD platforms where PATH_MAX is defined in
<sys/syslimits.h> vs <linux/limits.h> on Linux.
6 years ago
Alexei Dobrohotov e4c596adf8
Fix CI builds (attempt №2)
Gosh darn dem tabs
6 years ago
Alexei Dobrohotov e4e513c5dc
Fix CI builds
Apparently the only tab characters are in this file.
6 years ago
Nat Meo bcc5142b32 Issue #4202: Open .omwaddon files without needing to open openmw-cs first. 6 years ago
AnyOldName3 bb72ed9744 Merge branch '9' into 'master'
IMPORTANT!! racingcrashfix #4766

See merge request OpenMW/openmw!119
6 years ago
AnyOldName3 8a6a8086da Make in-memory buffers seekable to fix fog of war 6 years ago
Capostrophic dfb852cbb0 Improve Boost apologia 6 years ago
Capostrophic 49c691d00a Make settings manager locale-independent again 6 years ago
Capostrophic e06178bf0f Make sure shadow shapes aren't visible (bug #5063) 6 years ago
Andrei Kortunov b9a1e4d796
Merge pull request #2425 from Capostrophic/esm
Signedness fixes
6 years ago
Alexei Dobrohotov f984f61055
Ignore any fourth AITravel argument for now 6 years ago
Capostrophic 3aa65273c5 Signedness fixes 6 years ago
Evil Eye 698c90b3ee fix builds against MyGUI master 6 years ago
Andrei Kortunov b66c437700
Merge pull request #2419 from Capostrophic/lod
Optimizer: Only merge pure osg::Groups
6 years ago
Andrei Kortunov 4fcbc1c96b
Merge pull request #2391 from Capostrophic/contentselector
Content selector: don't add file namesakes (bug #2395)
6 years ago
Capostrophic 6622e36226 Only merge pure osg::Groups in the optimizer 6 years ago
Capostrophic 7c8360d0f3 Use NiSwitchNode initial index field 6 years ago
Alexei Dobrohotov ce92b364e6
Merge pull request #2403 from akortunov/crashinfo
Improve info message about missing GDB
6 years ago
bzzt a730365ea1 Creanup Distant Terrain code
- Cull terrain in the stock osg::CullVisitor
- Do not compile composite maps for shadow camera
- Do not abuse userdata for composite maps
6 years ago
bzzt e4ba6ecf15 Do not store a LOD callback in the every QuadTreeNode 6 years ago
bzzt a61c0aaee1 Do not load height data to the qued tree since we do not need it now 6 years ago
bzzt ebcf8ca062 Do not store a ViewDataMap in the every QuadTreeNode 6 years ago
bzzt cb6d27fb12 Use the custom LineSegmentIntersector for QuadTree to simplify traversal
code
6 years ago
bzzt ce4e8be9ac Move traverse methods to the QuadTreeNode 6 years ago
Capostrophic b7afb213ae "Handle" RepairedOnMe scripting function (feature #4255) 6 years ago
Alexei Dobrohotov f0640cbb21
Merge pull request #2296 from akortunov/blend
Optimize blendmap generation
6 years ago
bzzt 528cda8032 Prevent layers duplication when a terrain chunk crosses plugin borders 6 years ago
Andrei Kortunov 1da012f6ee Optimize blendmap generation 6 years ago
Alexei Dobrohotov 5965aa991b
Improve grammar in a warning 6 years ago
Capostrophic 0fcb75fb21 Achieve CHIM and get rid of the loop 6 years ago
Capostrophic 5cd781b3eb Experimental folder handling rewrite 6 years ago
Capostrophic 2fbed21f83 Avoid a memory leak 6 years ago
Capostrophic e14ada8f36 Make file name comparison case-insensitive 6 years ago
Capostrophic ebe5448816 Content selector: drop duplicates of the added file (bug #2395) 6 years ago
Andrei Kortunov f1db97fbbd Improve info message about missing GDB (bug #4341) 6 years ago
bzzt ffe8bbd2dd racingcrashfix #4766 6 years ago
Andrei Kortunov 7c53b99d31 Avoid possible data race during access to the static local variable 6 years ago
Phillip Andrews dee72e9430 Make script literal lookup functions safer
Assert isn't really the right way to range check these, since in theory we could have a malformed compiled script.  This should make it safer with zero performance overhead.
6 years ago
Alexei Dobrohotov 7c46102f0c
Merge pull request #2389 from akortunov/fmt
Introduce a custom format() function
6 years ago
Andrei Kortunov 6832a2fa9a Remove BOM from CPP files (allows to build OpenMW with LCC on Elbrus) 6 years ago
Andrei Kortunov e679190f31 Introduce a custom format() function to get rid of boost::format() and hackish replace() 6 years ago
Alexei Dobrohotov 2c956398c1
Actually fix bug 4938 6 years ago
Alexei Dobrohotov 1444ef6f43
Merge pull request #2298 from akortunov/optimize
Do not allocate eight dummy LightStateAttribute's for every stateset
6 years ago
Alexei Dobrohotov acae586765
Merge pull request #2365 from akortunov/guifixes
Refactor Settings::Manager::apply()
6 years ago
Andrei Kortunov 4f42fe5595 Refactor Settings::Manager::apply() 6 years ago
Alexei Dobrohotov 1bfe0e43af
Merge pull request #2360 from akortunov/guifixes
Do not track resolution settings changes in the InputManager
6 years ago
Alexei Dobrohotov 74112976b2
Merge pull request #2085 from akortunov/herbalism
Native graphics herbalism support
6 years ago
Andrei Kortunov 7ce07e9202
Merge pull request #2345 from Capostrophic/scripting
More argument usage corrections
6 years ago
Ilya Zhuravlev 2e1ac51203 Clean up androidpath 6 years ago
Andrei Kortunov 861d41f4a4 Native graphics herbalism support (feature #5010) 6 years ago
Capostrophic 95751ba671 Ignore extra numerical arguments for ForceGreeting, Position(Cell), PlaceItem(Cell) 6 years ago
Capostrophic 05727f2bcd Ignore string arguments for AITravel, GetDynamic, LowerRank, RaiseRank 6 years ago
Andrei Kortunov 0cd8d4b842 Do not track resolution settings changes in the InputManager (bug #4902) 6 years ago
Capostrophic 05d94d35f9 Make disabled shadow defines map static 6 years ago
Andrei Kortunov 7941fd6780 Merge branch 'patch-2' into 'master'
Add support for OpenGLES 3.2

See merge request OpenMW/openmw!93
6 years ago
Bret Curtis e0edecf1f2
Merge pull request #2341 from Capostrophic/scripting
Allow using functions in non-conditional expressions (bug #3725)
6 years ago
Andrei Kortunov bd2188a0f8 Use the logging system for compiler errors 6 years ago
Capostrophic 3d64a46df2 Allow using functions in non-conditional expressions (bug #3725) 6 years ago
Andrei Kortunov 9059971a69 Increase required MyGUI version to 3.2.2 6 years ago
Alexei Dobrohotov 53d704fec8
Merge pull request #2335 from akortunov/guifixes
Allow to shrink tooltip width to its actual text width
6 years ago
Andrei Kortunov 626a05f825
Merge pull request #2128 from Capostrophic/blood
Support all eight possible blood types (feature #4958)
6 years ago
Andrei Kortunov 7e0bf40dbe Allow to shrink tooltip width to its actual text width (bug #3812) 6 years ago
Capostrophic 6cbec4a688 Stray argument usage corrections 6 years ago
terrabyte25 b29476de58
Add support for OpenGLES 3.2 6 years ago
Capostrophic 7814bd1b76 Support eight possible blood types (feature #4958) 6 years ago
elsid 4500f01efd
Remove unused field 6 years ago
Alexei Dobrohotov 5b8fc5a151
Merge pull request #2314 from OpenMW/stdc++14
bump from C++11 to C++14
6 years ago
Bret Curtis f4e113e7c1
Merge pull request #2277 from akortunov/terrain
Camera-related fixes
6 years ago
Bret Curtis 10643a10f2
Merge branch 'master' into lighting 6 years ago
Alexei Dobrohotov d3e6921946
Merge pull request #2318 from elsid/navmesh_lock_tile
Avoid work duplication for multiple thread async navmesh updater
6 years ago
elsid c683dc8565
Lock navmesh tile by thread while processing
To avoid duplicated work on a same tile by different threads.
If tile is locked by another thread, then post job into this thread queue.
6 years ago
Capostrophic 85e99182ce Revise light source configuration (bug #4965)
Set up attenuation less awkwardly
Use global attenuation settings for magic light source
Use constant attenuation settings
6 years ago
Bret Curtis 2ab7f903d7 make use of std::make_unique to test that MSVC2015 can handle that 6 years ago
Capostrophic b08fed6d83 Fix NIF printVersion and allow 4.0.0.0 file loading 6 years ago
Andrei Kortunov 14b756a692 Use a generic logging system for RecastNavigation 6 years ago
Bret Curtis 7808cbbfe8
Merge pull request #2292 from akortunov/fallback
Make fallback map static to simplify constructors
6 years ago
bzzt 391f6faffb Remove unused defaultViewer / defaultViewPoint 6 years ago
bzzt e908790584 Inherit the view point from main camera for water RTT cameras 6 years ago
Andrei Kortunov 489e5c6cce Store preloaded terrain view in the main thread 6 years ago
bzzt 63ab7345be Reuse traversal result for different traversal with same view point
Rename eyePoint to viewPoint to match OSG conventions (eyePoint is the camera position, viewPoint is for LOD handling)
6 years ago
Bret Curtis a5504f8cc1
Merge pull request #2297 from Capostrophic/esm
Make sure the record hasn't ended in getHString hack (bug #4938)
6 years ago
bzzt 1a65adacdd Do not allocate dummy LightStateAttribute's for every stateset 6 years ago
Capostrophic 4b6fc5f720 Make sure the record hasn't ended in getHString hack (bug #4938) 6 years ago
Andrei Kortunov 368d1f9d25
Merge pull request #2191 from akortunov/viewer
Do not store Viewer reference in the ViewData
6 years ago
Andrei Kortunov cae456a4aa
Merge pull request #2294 from Capostrophic/arguments
Ignore extra arguments to PlayLoopSound3D too
6 years ago
Capostrophic 7ef7555c19 Ignore extra arguments to PlayLoopSound3D too 6 years ago
Andrei Kortunov a302ec9c65 Make fallback map static to simplify constructors 6 years ago
Capostrophic 17dce28705 Improve compiler messages 6 years ago
bzzt c8d2107b80 Do not store Viewer reference in the ViewData 6 years ago
Bret Curtis 1e9eac568f
Merge pull request #2249 from akortunov/cache
Implement generic caching system
6 years ago
Bret Curtis 6cbf1288ff
Merge pull request #1929 from Capostrophic/elseif
Ignore the rest of the line after else operator (bug #3006)
6 years ago
Capostrophic cbce1a1b7c Ignore the rest of the line after else (bug #3006) 6 years ago
Bret Curtis 8f8bba66d9
Merge pull request #2178 from Capostrophic/declaration
Ignore extra text after a local variable declaration (bug #4867)
6 years ago
Capostrophic 786f3e5fc3 Remove unused and unfinished blendmap packing feature 6 years ago
Capostrophic af47ec7756 Skip extra text after variable declaration (bug #4867) 6 years ago
Bret Curtis 5e12073b47
Merge pull request #2272 from akortunov/optimize_terrain
Do not block loading while compiling composite maps
6 years ago
Andrei Kortunov b466bfee40 Enable light sources directly to avoid virtual calls 6 years ago
Andrei Kortunov 0e1f5f68b6 Do not allow different threads to compile the same composite map 6 years ago
Andrei Kortunov cad45e96ac Remove redundant mCompile set - we do not use data from it anyway 6 years ago
bzzt c2986b3bd7 Do not block the loading thread while compiling composite maps in the
draw thread
6 years ago
Bret Curtis 26feedfcae
Merge pull request #2268 from akortunov/scanfix
Fix some issues from the Coverity Scan report
6 years ago
Bret Curtis 19dcbf2b3d
Merge pull request #2266 from Capostrophic/vsync
Vsync tweaks
6 years ago
Andrei Kortunov b2fca46206 Fix a couple of minor issues in shadows 6 years ago
Andrei Kortunov 7995a92672 Initialize missing variables 6 years ago
Capostrophic 9b65f0dbca Vsync tweaks
Try to use adaptive vsync if available
Don't use vsync if unavailable
6 years ago
Bret Curtis b819690e82
Merge pull request #2264 from akortunov/optimize_terrain
Delete composite map layers in the background thread
6 years ago
bzzt aa5a071aef Delete composite map layers in the background thread 6 years ago
Bret Curtis d56733149c
Merge pull request #2201 from akortunov/optimize_terrain
Optimize terrain
6 years ago
Bret Curtis 45221418bd
Merge pull request #2260 from elsid/fix_clean_unused_navmeshes
Fix clean unused navmeshes
6 years ago
bzzt 6029ed4ecc Reject empty quad tree nodes at the cell level without land data 6 years ago
bzzt 36fa51b6ad Fix bounding box calculation for terrain shapes 6 years ago
elsid 4624f31788
Report navigator stats 6 years ago
elsid 8adc83f6e2
Fix clean unused navmeshes
weak_ptr doesn't have constructor for shared_ptr&& type, so ptr wasn't
moved, just copied.
6 years ago
elsid 2c78d530a2
Use static vector to store stat names 6 years ago
Bret Curtis ab69ad65ed
Merge pull request #2234 from Capostrophic/terrain
Some more improvements from bzzt's branch
6 years ago
Capostrophic de572226e4 Update optimizer with upstream improvements 6 years ago
bzzt b42ad0f610 Inline certain terrain storage functions 6 years ago
bzzt e131e6699c Match vertex colors data type to source 6 years ago
elsid c91deaf7af
Use std::vector::data method to avoid reference binding to null pointer 6 years ago
elsid dd0b45ede6
Do not pass nullptr to std::memcmp 6 years ago
Bret Curtis 7917f1fc84
Merge pull request #2252 from akortunov/terrain
Do not allocate empty callbacks in the RigGeometry
6 years ago
bzzt 4ab93aeffe Do not allocate empty callbacks in the RigGeometry 6 years ago
Andrei Kortunov 2ed05a5195 Implement generic caching system 6 years ago
elsid 8e09468f45
Don't set display list usage for navmesh 6 years ago
Bret Curtis 7b1a62fc1d
Merge pull request #2247 from akortunov/loadtex
Allow to override texture records in the game
6 years ago
Andrei Kortunov 943279abbb Consider land texture with given ID and index as override for base texture with the same ID and index (bug #4736) 6 years ago
Bret Curtis 7efdddd53c
Merge pull request #2242 from elsid/make_shared
Use std::make_shared
6 years ago
Bret Curtis cb1a5f3679
Merge pull request #2245 from elsid/navigator_refactor
Refactor navigator related code
6 years ago
Bret Curtis 7b793b8809
Merge pull request #2244 from elsid/navmesh_cache_item_refactor
Make NavMeshCacheItem consistent
6 years ago
elsid 68948bc847
Avoid key allocation to find tile in cache 6 years ago
elsid 4395a92c35
Use display list to render navmesh
Slightly improves performance of massive navmesh rendering.
6 years ago
elsid 849f2078c1
Swap outside critical section 6 years ago
elsid 8d2af94b75
Use default objects for NavigatorStub methods result 6 years ago
elsid ece111d05a
Check for jobs using predicate 6 years ago
elsid c05fc9e054
Add missing cleanup 6 years ago
elsid ce9aebcba1
Clear all changed tiles after post 6 years ago
elsid 9d61c49478
Store key by reference in tiles map 6 years ago
elsid 614d5243c3
Make NavMeshCacheItem consistent
Move all logic related to this type into its methods.
6 years ago
elsid b3c5d64ff3
Use std::make_shared 6 years ago
elsid f6a1d3cecf
Store weak pointers to navmesh in jobs queue
To avoid useless processing for removed navmeshes.
6 years ago
elsid ccc709a316
Store guarded navmesh cache item in shared_ptr
Remove useless SharedGuarded type.
6 years ago
elsid 0479ebf5ae
Remove unused actors and navmeshes on update
When there is only one actor (player) on a scene and it moving to other
cell first it will be removed from navigator then added. Remove cause
navmesh removing for its half extents. After it is added navmesh for
same half extents is created and added. While this all happens there are
still jobs for old navmesh are processing. Old navmesh still exists
because it is stored by shared pointer. So jobs take tiles from cache
and place them into old navmesh. After that other jobs take same tiles
from cache (half extents and coordinates are equal) and place them into
other navmesh. dtNavMesh changes tile data on add and remove. Adding tile
to two dtNavMesh corrupts tile in both nameshes.
6 years ago
Chris Djali c328c4a010
Merge pull request #2231 from akortunov/warnfix
Get rid of C-style limits in the shadows code
6 years ago
Andrei Kortunov bacaa1f789 Get rid of C-style limits in the shadows code 6 years ago
Andrei Kortunov 12f9184d00 Allow to interrupt terrain preloading 6 years ago
Andrei Kortunov b214c54b3a Calculate bounding volumes when preloading model instance 6 years ago
Bret Curtis c20e69ef24
Merge pull request #2227 from elsid/fix_twitchy_massive_creatures
Fix twitchy movement for massive creatures (bug #4907)
6 years ago
elsid b9f21ec81a
Use custom steps size to make smooth path depending on half extents 6 years ago
bzzt e0cf460ba3 Do not load terrain beyond the viewing distance 6 years ago
Andrei Kortunov a6fd077537 Render nearby default cells if the Distant Terrain is disabled 6 years ago
Andrei Kortunov 46e1ed660c Revert "Render default land texture for Wilderness cells with distant terrain"
This reverts commit 888c2d9a33.
6 years ago
elsid f2e47d640d
Add option to limit max number of navmesh tiles 6 years ago
elsid ff47df4f2c
Repost navmesh update jobs when failed because of out of memory
DT_OUT_OF_MEMORY error is returned when limit of tiles is reached.
6 years ago
elsid 82e2739bae
Notify workers when only at least one job is posted 6 years ago
elsid b9b8ed177c
Store priority values as named fields 6 years ago
elsid 0c16fef285
Add navmesh update status builder 6 years ago