Bo Svensson
787f91211d
resets state updater to apply light settings ( #3141 )
...
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
2021-10-06 11:21:30 +02:00
Bo Svensson
442a0e8434
avoids two transforms in sky.cpp ( #3150 )
...
As we discovered in #3148 , `Transform` nodes and their low level equivalence `pushModelViewMatrix` are somewhat costly involving a `Matrix::invert` operation per frame.
With this PR we avoid one `Transform` node for sun flashes and avoid another `pushModelViewMatrix` call in case the sun is fully visible.
2021-10-05 16:00:30 +02:00
Bo Svensson
4b1c009ffd
use StateSet define for translucentFramebuffer ( #3138 )
...
With this PR we test out osg's shader define system for a somewhat harmless feature. As we can see, our code becomes more concise and efficient in this case. Most importantly, we no longer create unneeded vertex shader objects.
2021-10-05 14:37:08 +02:00
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback ( #3147 )
...
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
2021-10-05 14:21:12 +02:00
Bo Svensson
8e9851c97c
npcanimation.cpp ( #3148 )
2021-10-05 13:52:19 +02:00
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback ( #3144 )
...
* nodecallback.hpp
* lightmanager.hpp
* lightmanager.cpp
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* [ci skip]
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* lightmanager.cpp
* lightmanager.cpp
* nodecallback.hpp
* [ci skip]
* [ci skip]
* controller.cpp
* [ci skip]
* osgacontroller.cpp
* keyframe.hpp
* controller.hpp
* keyframe.hpp
* [ci skip]
* keyframe.hpp
* animation.hpp
* [ci skip]
* weaponanimation.cpp
* nodecallback.hpp
2021-10-04 10:56:55 +02:00
psi29a
2c8c36fe5d
Merge branch 'master' into 'effective_magic'
...
# Conflicts:
# CHANGELOG.md
2021-10-01 21:20:08 +00:00
Bo Svensson
2568f119a4
reapplies PR without npe ( #3137 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
* nifloader.cpp
* shadervisitor.cpp
2021-10-01 10:11:00 +02:00
Evil Eye
dc1fe62dde
Overhaul magic effects to work with onApply and onEnd events
2021-09-29 19:25:10 +02:00
Andrei Kortunov
e109d86489
Revert "avoids creating empty statesets on drawables ( #3132 )"
...
This reverts commit 957c25a491
.
2021-09-29 21:01:22 +04:00
Bo Svensson
d8707a763f
fixes build ( #3134 )
...
* quadtreeworld.cpp
* renderingmanager.cpp [ci skip]
* quadtreeworld.hpp
* cellborder.hpp
* cellborder.cpp
2021-09-29 17:10:58 +02:00
Bret Curtis
803195a05f
add back some explicit includes
2021-09-29 16:29:10 +02:00
Bo Svensson
8358418555
set the correct program link parameters ( #3110 )
...
* shadermanager.hpp setProgramTemplate
* shadermanager.hpp
* shadermanager.cpp setProgramTemplate
* shadervisitor.hpp setProgramTemplate
* shadervisitor.cpp setProgramTemplate
* scenemanager.cpp setProgramTemplate
* scenemanager.hpp setProgramTemplate
* renderingmanager.cpp
* groundcover.cpp setProgramTemplate
* groundcover.hpp
* groundcover.cpp
* shadervisitor.cpp
* util.cpp
* lightmanager.cpp
* scenemanager.cpp
* scenemanager.hpp
* lightmanager.cpp
* lightmanager.cpp
* lightmanager.cpp
* scenemanager.hpp [ci skip]
* water.cpp
* groundcover.cpp
* shadermanager.hpp
2021-09-29 15:40:37 +02:00
Andrei Kortunov
1109cc3ac7
Remove unused data field ( #3133 )
2021-09-29 12:08:51 +02:00
Bo Svensson
957c25a491
avoids creating empty statesets on drawables ( #3132 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
2021-09-29 09:58:19 +02:00
Andrei Kortunov
fc2076db1a
Fix MSVC warnings about local variables redeclaration ( #3130 )
2021-09-29 09:36:05 +02:00
Bo Svensson
5fde6867a2
removes unused code ( #3129 )
...
* scenemanager.cpp
* scenemanager.hpp
* scenemanager.cpp
* stats.cpp
* renderingmanager.cpp
2021-09-28 09:07:49 +02:00
Petr Mikheev
e760a6c7e6
Merge branch 'forlua' into 'master'
...
Simple Physics API modification for Lua
See merge request OpenMW/openmw!1216
(cherry picked from commit d88494c90b501d0832ae0330a0ca81d8b8e5aa50)
02dd055a Save hitObject in castSphere() just like in castRay()
0793d0bf Allow to override collision mask and group for castSphere() as for castRay()
2021-09-27 19:50:57 +00:00
Bo Svensson
c6f7137ee1
fixes bugs with share state ( #3111 )
...
* optimizer.cpp merge fix
* objectpaging.cpp
* optimizer.hpp setSharedStateManager
* optimizer.cpp shareState
* scenemanager.cpp shareState
* scenemanager.cpp
* optimizer.cpp
* optimizer.cpp
* scenemanager.cpp
* optimizer.cpp
2021-09-27 20:41:24 +02:00
Bo Svensson
b22fb7a7bf
consolidate node mask checks ( #3125 )
...
* consolidate node mask checks
This PR simplifies a few checks against node masks in object paging by using the osg provided `setTraversalMask`.
* objectpaging.cpp
2021-09-21 22:39:31 +02:00
Bo Svensson
99df1c695c
fixes wireframe is broken ( #3123 )
...
* renderingmanager.cpp [ci skip]
* groundcover.hpp [ci skip]
* groundcover.cpp
* renderingmanager.cpp [ci skip]
* renderingmanager.hpp
2021-09-20 20:17:55 +02:00
psi29a
68db9869f5
Merge branch 'DistantTerrainDebugChunks' into 'master'
...
Debug terrain chunks
See merge request OpenMW/openmw!1169
2021-09-18 15:21:26 +00:00
Cédric Mocquillon
6817282097
Move getFileExtension to common header and use instead of repeating same code
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
c2df0949e2
Change normalizeFilename signature
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
d4e26746a3
Use recurse subdirectory iterator to iterate over the VFS without exposing internal details
2021-09-14 18:09:54 +02:00
Bo Svensson
b6f572578e
Groundcover optimisation ( #3101 )
...
* groundcover.cpp share state
* groundcover.hpp share state
2021-09-13 12:20:00 +02:00
psi29a
c40f921396
Revert "actoranimation.cpp faster getbonebyname ( #3099 )"
...
This reverts commit c284d0cf5c
2021-09-12 07:56:20 +00:00
Cédric Mocquillon
080c909c28
Merge the 'debug chunks' and 'object paging debug batches' settings into a single one
2021-09-11 21:53:05 +02:00
Bo Svensson
ac72f3d636
reduces virtual function calls in a hotspot of cache retrieval ( #3100 )
...
* chunkmanager.cpp static_cast [ci skip]
* groundcover.cpp static_cast [ci skip]
* Update objectpaging.cpp
objectpaging.cpp static_cast [ci skip]
2021-09-10 17:58:57 +02:00
Bret Curtis
1edeffbafc
constify getBoneByName
2021-09-09 23:57:20 +02:00
Bo Svensson
9d661359a1
Groundcover consolidation ( #3096 )
...
* chunkmanager.hpp viewdistance
* chunkmanager.cpp viewdistance
* chunkmanager.hpp viewdistance
* quadtreeworld.cpp viewdistance
* quadtreeworld.cpp consolidate
* quadtreeworld.hpp consolidate
* renderingmanager.cpp groundcover consolidate
* renderingmanager.hpp groundcover consolidate
* renderingmanager.cpp updater move
* renderingmanager.hpp updater move
* groundcover.hpp activegrid consolidation
* groundcover.cpp activegrid consolidation
* settings-default.cfg dead settings remove
* viewdata.cpp revert
* wrong file paste mistake
* wrong file paste mistake
* wrong file paste mistake
* renderingmanager.cpp updatecallback fix
* renderingmanager.cpp namespace fix
* groundcover.hpp redefinition fix
* groundcover.cpp redefinition fix
* renderingmanager.cpp crash fix
* renderingmanager.cpp euclidean groundcover distance
* viewdata.hpp getreusedistance
* quadtreeworld.cpp reusedistance
* groundcover.rst [ci skip]
2021-09-09 23:10:22 +02:00
Bo Svensson
c284d0cf5c
actoranimation.cpp faster getbonebyname ( #3099 )
2021-09-09 23:04:38 +02:00
Bo Svensson
147ed39900
This PR solves a crash with Robert's bodies logged on your bugtracker. ( #3095 )
...
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* npcanimation.cpp [ci skip]
* attach.hpp [ci skip]
* attach.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* cellpreloader.cpp
* npcanimation.cpp
* attach.cpp
* make android adk happy
* make android adk happy
* changelog.md [ci skip]
* authors.md [ci skip]
2021-09-09 22:56:57 +02:00
JanuarySnow
bdbc6c0cba
Dead animation code removal
2021-09-08 10:07:54 +00:00
elsid
0daf6f5d0b
Merge branch 'comma' into 'master'
...
Don't use comma where there is no need to.
See merge request OpenMW/openmw!1179
2021-08-31 12:33:15 +00:00
jvoisin
a15cca5763
Use reserve
on vectors for fixed loops
...
This is a bit useless, but has the merit of appeasing clang-tiday
2021-08-29 20:18:49 +02:00
jvoisin
a6b1e38eab
Don't use comma where there is no need to.
2021-08-29 14:12:14 +02:00
psi29a
b585aad81e
Merge branch 'offset-bullet-debug' into 'master'
...
glPolygonOffset for Bullet debug geometry
See merge request OpenMW/openmw!684
2021-08-25 07:26:21 +00:00
elsid
193be0d5d1
Merge branch 'some_small_changes' into 'master'
...
Fix coverity warning and build on some osg
See merge request OpenMW/openmw!1153
2021-08-19 23:40:14 +00:00
glassmancody.info
a6c7fcd436
don't pingpong depth function on character preview update
2021-08-18 15:46:25 -07:00
glassmancody.info
d63eb3325f
fix coverity warning and build on some osg
2021-08-17 17:45:50 -07:00
psi29a
faa3e04494
Merge branch 'const_reff' into 'master'
...
Sprinkle some const-ref
See merge request OpenMW/openmw!1145
2021-08-17 08:20:13 +00:00
Alexei Dobrohotov
6c1ac9ed9f
Merge branch 'init_sky' into 'master'
...
Use an initialization list in WrapAroundOperator's constructor
See merge request OpenMW/openmw!1146
2021-08-16 01:19:28 +00:00
jvoisin
ff2a51a484
Use an initialization list in WrapAroundOperator's constructor
2021-08-15 19:57:20 +02:00
jvoisin
7a015d24c6
Sprinkle some const-ref
2021-08-15 19:50:28 +02:00
glassmancody.info
ed72f3335b
silence compiler warning
2021-08-15 08:02:00 -07:00
AnyOldName3
7400050b38
Merge branch 'character_preview_alpha_fix' into 'master'
...
Fix transparent objects being invisible in character doll
See merge request OpenMW/openmw!1140
2021-08-15 00:01:23 +00:00
glassmancody.info
6cc71745ac
ensure character preview is using standard depth
2021-08-14 14:50:33 -07:00
Mads Buvik Sandvei
d40c18234a
Double buffering the water's node position uniform
2021-08-14 17:41:58 +00:00
elsid
3caf45807f
Use common implementation to filter hidden markers
2021-08-12 22:35:16 +02:00
Bret Curtis
c99bddc8dc
Revert "Move reference to the right cell according to its geographical position"
...
This reverts commit d0677c3f07
.
2021-08-09 22:11:00 +02:00
Bret Curtis
7dfaef7644
resolve issue of meshes that cross boundaries; should only be calculating the maxBound, not the minBound of y; also fix it in groundcover as it was copied blindly over;
2021-08-09 22:05:12 +02:00
AnyOldName3
8d93748f87
Fix rebase issue
2021-08-08 17:25:57 +01:00
AnyOldName3
cf15803e67
Disable triangle detection workaround when Bullet actually uses triangles
2021-08-08 16:53:14 +01:00
AnyOldName3
8b4c2d205d
WIP-ish glPolygonOffset for Bullet debug geometry
2021-08-08 16:53:08 +01:00
Alexei Dobrohotov
1fc7cb8191
Don't use FreezeOnCull for any particle system ( #4744 )
2021-08-08 03:36:35 +03:00
glassmancody.info
09e03fde2e
refactor and fix wobbly shores
2021-08-04 17:49:57 -07:00
glassmancody.info
cad0b151cb
enable shaders path and dehardcode depth formats
2021-08-04 17:39:11 -07:00
glassmancody.info
d89e37d689
add framebuffer extension check and fix issues with manual screenshots
2021-08-04 17:39:11 -07:00
glassmancody.info
70fac33940
initial reverse-z depth implementation
2021-08-04 17:39:11 -07:00
Cédric Mocquillon
d0677c3f07
Move reference to the right cell according to its geographical position
2021-07-30 18:28:29 +02:00
psi29a
8c36eb56cf
Merge branch 'stereo_friendly_water' into 'master'
...
Stereo friendly water and statesetupdater
See merge request OpenMW/openmw!563
2021-07-30 11:00:49 +00:00
Evil Eye
a366a85c4e
Merge branch 'noalloc_dance_for_npcanimation' into 'master'
...
Don't do an unnecessarily complex memory allocation dance in npcanimation.cpp
See merge request OpenMW/openmw!1042
2021-07-28 17:25:28 +00:00
madsbuvi
41c08b1c3b
Stereo friendly StateSetUpdater
...
(cherry picked from commit 496b3aef88b8fd867dcdd23a6ca43144573b1b2f)
Stereo friendly water
(cherry picked from commit 0e22c55e48a7f965367d3d430c1bef5357b22748)
Option to disable per view mapping.
Include memory header
De-hardcode settings and buffers.
formatting error
Update water.cpp (whitespace)
Update water.cpp (more whitespace)
include render order
c array -> c++ array
2021-07-26 14:01:02 +02:00
psi29a
6949dd89c2
Merge branch 'gui_shaders' into 'master'
...
Add shader path for mygui (#6162 )
See merge request OpenMW/openmw!1019
2021-07-25 21:37:39 +00:00
jvoisin
ce8c30bf07
Minor code simplification in npcanimation.cpp
2021-07-25 14:20:37 +02:00
CedricMocquillon
8c87defddf
[Local map] Use the distance view in the local map
2021-07-25 14:17:08 +02:00
CedricMocquillon
99cd4b6742
[Refactoring] Several refactorings:
...
[Refactoring] Add marker size method instead of using magic constant
[Refactoring] Simplify worldPosToImageSpace and cellTopLeftCornerToImageSpace usage
[Refactoring] Add a missing 'f' to specify the float type
[Refactoring] Make cellTopLeftCornerToImageSpace more homogenous with worldPosToImageSpace
[Refactoring] Extract createmakrercoords method
[Refactoring] Use worldPosToImageSpace instead of cellTopLeftCornerToImageSpace
Remove cellTopLeftCornerToImageSpace as it is not used anymore
Remove getCellSize as it is not used anymore
[Refactoring] Extract new method createMarker
[Refactoring] Extract new method getMarkerCoordinates
[Refactoring] Extract new method getPosition
[Refactoring] Extract new method centerView
[Refactoring] Extract new method createDoorMarker
[Refactoring] Simplify for loop
[Refactoring] Make the test before the loop
2021-07-25 14:17:06 +02:00
glassmancody.info
e8c6f31e0c
add shader path for mygui ( #6162 )
2021-07-22 15:55:30 -07:00
elsid
cfdbd0d471
Indicate moved cell refs explicitly
...
This is less error prone approach than use of MovedCellRef fields.
Also make separate functions for skipping and reading moved cell refs to avoid
passing special flags logic and null pointers for unused arguments.
2021-07-12 18:56:42 +02:00
elsid
eece47f70e
Avoid copying osg::ref_ptr when adding or removing item from work queue
...
Copy constructor does refcounting, and move constructor doesn't.
2021-07-12 11:41:21 +02:00
glassmancody.info
389b830046
fix black objects with OP batch debug due to unitialized uniform
2021-07-11 23:03:55 -07:00
Cédric Mocquillon
269cd31059
Use same world coordinates to compute distances
2021-07-10 19:04:46 +02:00
Petr Mikheev
6db2450c90
Initial support of generated RefNums with negative mContentFile.
2021-07-09 20:03:27 +02:00
cc9cii
16e1398819
Quick solution to add logic to getNextRef() calls so that moved references are ignored. Currently it is assumed that MVRF records have been all read before the ESM reader context was saved, which is false assumption. Should resolve Issue #6139 .
2021-07-07 08:18:38 +10:00
Evil Eye
7e9785941c
Merge branch 'default' into 'master'
...
Use `default` instead of empty constructors/destructors
See merge request OpenMW/openmw!957
2021-06-24 17:19:02 +00:00
jvoisin
5840279f16
Use default
instead of empty constructors/destructors
...
See https://pvs-studio.com/en/docs/warnings/v832/ for details
2021-06-24 00:26:15 +02:00
jvoisin
b2c170efa0
Use initialization lists where possible
2021-06-23 23:36:43 +02:00
Dobrohotov Alexei
870cdd0130
Calculate magic VFX vertical offset (bug #5453 )
2021-06-21 23:29:45 +03:00
psi29a
047d993cf4
Merge branch 'at' into 'master'
...
Use operator[] instead of at() when the idx is checked
See merge request OpenMW/openmw!916
2021-06-19 00:26:48 +00:00
CedricMocquillon
7fa67ff675
Use same distance for all lod instances of a chunk
2021-06-12 15:34:15 +02:00
jvoisin
8695b6fbc5
Use operator[] instead of at() when the idx is checked
2021-05-29 15:31:32 +02:00
Mads Buvik Sandvei
d906ec773a
Fix hangup on savegame after manual screenshots.
2021-05-24 17:57:39 +00:00
CedricMocquillon
d11a6bd92c
Share state
2021-05-18 17:57:47 +02:00
psi29a
ae66afb219
Merge branch 'less_verbose' into 'master'
...
Make the code less verbose.
See merge request OpenMW/openmw!874
2021-05-18 08:30:50 +00:00
AnyOldName3
c2e4eda825
Merge branch '6013-fix' into 'master'
...
Retain draw callback
Closes #6013 and #5967
See merge request OpenMW/openmw!875
2021-05-16 17:30:38 +00:00
madsbuvi
f3e17e7c52
Don't redundantly call notify on every frame.
2021-05-16 18:09:48 +02:00
Frederic Chardon
62c7adc87b
Merge branch 'no_at_boundaries' into 'master'
...
Don't use at() instead [] when length is checked/known
See merge request OpenMW/openmw!866
2021-05-16 11:58:14 +00:00
madsbuvi
5b9a2b73b0
Retain final draw callback as a member variable in ScreenshotManager, and do not call setFinalDrawCallback after init.
2021-05-16 13:04:30 +02:00
fredzio
c55db790f3
Make the code less verbose / more readable using for range loop and
...
structured binding.
No functional changes.
2021-05-16 12:42:16 +02:00
psi29a
3d61d7ec9a
Merge branch 'optimize_initial_load' into 'master'
...
Optimize engine initial loading time
See merge request OpenMW/openmw!867
2021-05-15 18:48:17 +00:00
jvoisin
7deb6a6ffd
Use const references when possible in for loops
...
No need for useless copies.
2021-05-15 19:50:01 +02:00
elsid
6248dc72cb
Convert to lower case only when needed
2021-05-15 18:45:21 +02:00
elsid
f2188d2533
Reduce temporary allocations on ESM loading
...
By moving objects instead of copying when possible.
2021-05-15 18:45:21 +02:00
jvoisin
690d85d0e9
Don't use at() instead [] when length is checked/known
2021-05-15 15:38:17 +02:00
Andrei Kortunov
49a744b65a
Make groundcover to use rendering distance in units instead of cells
2021-05-12 09:29:25 +04:00
Andrei Kortunov
132fedf290
Analyze only used LOD levels in ObjectPaging
2021-05-09 15:43:13 +04:00
Andrei Kortunov
a939cb6692
Skip hidden nodes for ObjectPaging
2021-05-09 14:10:35 +04:00
psi29a
9b017ef04d
Merge branch 'internal_includes_openmw' into 'master'
...
Clean up some internal includes of the openmw component
See merge request OpenMW/openmw!796
2021-05-07 10:53:25 +00:00
jvoisin
998cc97a4f
And done!
2021-04-30 20:49:22 +02:00
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
2021-04-23 22:53:59 +04:00
Andrei Kortunov
faad18b7f9
Merge pull request #3072 from akortunov/warnfix
...
Fix node masks signed/unsigned mismatch
2021-04-21 09:26:06 +04:00
Andrei Kortunov
b7b85bb713
Disable controllers for found sheath meshes (bug #5975 )
2021-04-20 16:01:01 +04:00
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
2021-04-20 10:52:51 +04:00
Andrei Kortunov
d10399e083
Cast double constant to float explicitely
2021-04-19 17:08:03 +04:00
Andrei Kortunov
7d5c5f8a24
Do not assign negative values to unsigned variables
2021-04-19 16:08:19 +04:00
Andrei Kortunov
9647b670e4
Do not declare unused variables
2021-04-19 15:43:00 +04:00
AnyOldName3
ce3ed28403
Control stomping via settings.
2021-04-18 21:44:23 +01:00
psi29a
d0883f9a0d
Merge branch 'light_settings_tweak' into 'master'
...
Lighting patch
Closes #5957 and #5959
See merge request OpenMW/openmw!752
2021-04-16 19:47:26 +00:00
glassmancody.info
16856d45c5
Lighting Patch
...
Fixes build errors with older OSG builds and some issues with 'shared' layout.
Bring back ambient in inventory through lightmodel instead of sun ambient, mirrors scene ambient/sunlight relationship.
Forces shaders when certain lighting methods are enabled and finalize settings.
Correctly override sun for localmap.
2021-04-16 11:55:40 -07:00
Andrei Kortunov
33b8233887
Validate GUI scaling and place it to the launcher
2021-04-15 15:18:32 +04:00
glassmancody.info
531a6e1979
Code review fixes, remove implicit GLSL casts
2021-04-13 11:09:54 -07:00
glassmancody.info
582f7b52cf
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:52 -07:00
glassmancody.info
9e80091aff
clear up force shaders and make it less convoluted
2021-04-13 11:09:49 -07:00
glassmancody.info
16f80ec6f3
Update settings when using fallback
2021-04-13 11:09:49 -07:00
glassmancody.info
4ba473b684
Finalize settings, torch fix
2021-04-13 11:09:49 -07:00
glassmancody.info
71c30a31df
in-game settings, some require restart
2021-04-13 11:09:49 -07:00
glassmancody.info
3d713e8602
Fix incorrect minimum ambient
2021-04-13 11:09:49 -07:00
glassmancody.info
cc31e1eea1
Ambient luminance threshold setting
2021-04-13 11:09:35 -07:00
glassmancody.info
690995988b
More formatting, OpenCS cells are unbroken
2021-04-13 11:09:35 -07:00
glassmancody.info
142c6d2993
Enable groundcover lighting for non FFP
2021-04-13 11:09:35 -07:00
glassmancody.info
7370acdf54
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:19 -07:00
glassmancody.info
43ac32921c
Rewrite, support different lighting methods
2021-04-13 11:09:19 -07:00
glassmancody.info
9d9074c244
Add shared UBO
2021-04-13 11:07:48 -07:00
glassmancody.info
c5ea966f24
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:06:16 -07:00
glassmancody.info
dda735c54a
initial commit
2021-04-13 11:06:16 -07:00
fredzio
32981bcd88
Constify a few things
2021-04-11 14:46:51 +02:00
Andrei Kortunov
903b89a0ff
Add bound for UI scale factor, as it specified in docs
2021-04-10 11:21:53 +04:00
Andrei Kortunov
124a33d8a3
Fix uninitialized variables
2021-04-10 10:58:00 +04:00
Matjaž Lamut
2cb4b62b83
De-hardcode references to mesh files used by the sky.
2021-04-08 16:32:38 +00:00
Petr Mikheev
7bbbe40abe
"static const" -> "static constexpr" in headers
2021-03-21 13:57:54 +01:00
AnyOldName3
162b25c180
Fix sunglare on Mesa
...
The sunglare works by comparing an occlusion query with depth testing on
against one with depth testing off to determine if there's anything
closer to the camera than the maximum depth buffer value. For the depth-
tested query, the depth range is set from 1 to 1 so it's always drawn at
the maximum distance. Originally, we had the depth function set to LESS,
meaning that the query would always fail as 1 is not less than 1, but
also glPolygonOffset was used to move the query by "the smallest value
that is guaranteed to produce a resolvable offset for a given
implementation" closer to the camera. While other driver and hardware
combinations do that, Mesa seems to be clamping to the depth range, so
still failing.
Instead, it's simpler to just get rid of the polygon offset and change
the depth test to LEQUAL as 1 *is* less than or equal to 1, but not than
any other possible depth buffer value.
2021-03-17 01:46:04 +00:00
psi29a
cc6f08930b
Merge branch 'alpha-meddling' into 'master'
...
Replace deprecated alpha test in shader visitor
Closes #4899
See merge request OpenMW/openmw!473
2021-03-13 08:13:19 +00:00
AnyOldName3
0431ba4c87
Merge branch 'alpha-meddling-shader-side-mip-meddling' into alpha-meddling
2021-03-13 01:23:30 +00:00
AnyOldName3
f09b0fc1bd
Put groundcover alphafunc where shader visitor can see it
...
I'd already made this change so don't know why it disappeared instead of
being included in b8ee32e3
2021-03-12 17:21:36 +00:00
Andrei Kortunov
39b7260ab4
Fix a crash during new game
2021-03-11 11:46:44 +04:00
AnyOldName3
64ddb4c1b0
Fix linking on MacOS
2021-03-11 01:01:55 +00:00
psi29a
9f47190411
Merge branch 'now-it-blends' into 'master'
...
Convert blending factors properly for the character preview
See merge request OpenMW/openmw!644
2021-03-10 23:27:04 +00:00
AnyOldName3
cb2cbb4181
Convert blending factors properly for the character preview
2021-03-10 22:07:14 +00:00
Andrei Kortunov
38679013fe
Give meaningful name to the mEffectFade
2021-03-10 19:10:17 +04:00
Andrei Kortunov
d805886de7
Double-buffer shader water stateset (bug #5026 )
2021-03-08 10:58:51 +04:00
AnyOldName3
f5a87ee46d
Refactor out duplicated RTT setup code
2021-02-26 19:01:27 +00:00
AnyOldName3
4ed67d8597
Improve A2C setting name
2021-02-24 18:01:06 +00:00
AnyOldName3
c7ee5d21dc
Make the dummy texture for the character preview even more shadow-friendly
2021-02-23 23:24:40 +00:00
AnyOldName3
9be258d260
Make it possible to reinstate FFP state easily
2021-02-19 19:59:48 +00:00
psi29a
bcbe144a1d
Merge branch 'weatheralpha' into 'master'
...
Fix weather particle fading
Closes #5455
See merge request OpenMW/openmw!506
2021-02-19 16:50:38 +00:00
AnyOldName3
4f510d85ba
Merge remote-tracking branch 'upstream/master' into alpha-meddling
2021-02-14 22:42:55 +00:00
psi29a
c33b2e0100
Merge branch 'dehardcodebaseanim' into 'master'
...
Dehardcode Base_animation and improve Collada support
See merge request OpenMW/openmw!510
2021-02-10 16:29:47 +00:00
AnyOldName3
0639f8b7c6
Make the dummy texture for the character preview shadow-friendly
2021-02-03 18:45:22 +00:00
Nelsson Huotari
3194520dcd
Move base_anim settings to settings-default.cfg
2021-01-27 13:41:02 +02:00
Andrei Kortunov
f40e227686
Remove redundant formatting changes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
d12a0fdcb3
Mark only instances from groundcover files as groundcover objects
2021-01-26 22:29:41 +04:00
Andrei Kortunov
8874e88ff1
Drop fading setting
2021-01-26 22:29:41 +04:00
Andrei Kortunov
1a6c06f7b5
Do not allow to set distance to non-positive values
2021-01-26 22:29:41 +04:00
Andrei Kortunov
859cd0fd0c
Do not use display lists for instanced meshes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
a09f03c850
Drop groundcover materials - they are not used
2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc
Implement instanced groundcover
2021-01-26 22:29:41 +04:00
psi29a
cadd1e7529
Merge branch 'daedric_fog' into 'master'
...
Don't nuke fog when bounds have changed
Closes #5469
See merge request OpenMW/openmw!522
2021-01-25 12:58:44 +00:00
AnyOldName3
b6e92c9c6d
Use ShaderVisitor to skip translucent framebuffer specific stuff
2021-01-20 23:37:19 +00:00
AnyOldName3
8af8ad3840
Always write opaque fragments instead of relying on blending being off for translucent RTT
2021-01-20 01:17:16 +00:00
Bret Curtis
e68651e9a6
Merge pull request #3042 from akortunov/helpers
...
Refactoring pre-requisites for groundcover
2021-01-13 23:09:01 +01:00
Andrei Kortunov
0418e8e7a6
Add an API to get base wind speed (which is from openmw.cfg)
2021-01-13 14:25:25 +04:00
Andrei Kortunov
f175beb304
Define template ref classes in components
2021-01-13 14:25:21 +04:00
Alexei Dobrohotov
7be7af13d7
Downgrade FOV-dependent view distance factor to a recommendation
2021-01-11 06:53:23 +03:00
Bret Curtis
b3f3b29bbe
Merge pull request #3039 from akortunov/screenshotmanager
...
Move screenshots handling to the separate class
2021-01-10 12:59:45 +01:00
unknown
564a0d7d55
Don't nuke fog when bounds have changed
2021-01-09 18:25:46 +01:00
Andrei Kortunov
33da0af1d1
Use explicit calls for virtual methods in constructors
2021-01-09 18:25:48 +04:00
Andrei Kortunov
8e5f26c109
Code cleanup
2021-01-09 14:41:10 +04:00
Andrei Kortunov
799bd3379c
Move screenshots handling to the separate class
2021-01-09 10:44:33 +04:00
AnyOldName3
4ed3252001
Check for EXT_gpu_shader4 CPU-side
...
Mesa lies and always defines GL_EXT_gpu_shader4 even when the extension
isn't present.
2021-01-07 18:13:51 +00:00
AnyOldName3
f2eed5594a
Don't use A2C when MSAA is off
2021-01-02 18:27:46 +00:00
AnyOldName3
c75d7ceada
Ensure alpha test is off by default
2021-01-02 02:50:19 +00:00
fredzio
5215ffd964
The debug drawer rely on Bullet to determines the vertices of collision
...
shapes. It doesn't work in the case of spheres (used by projectiles):
resulting shape is malformed. It can also leads to this error which
makes the debug drawer non-working till game restart:
CullVisitor::apply(Geode&) detected NaN,
depth=nan, center=(nan nan nan),
matrix={
-0.265814 -0.0639702 0.9619 0
0.964024 -0.0176387 0.265228 0
-4.29769e-09 0.997796 0.0663574 0
18178.6 -3550.91 42154.4 1
}
Avoid this issue by using osg::Sphere
While here, remove an unused function. We don't use Bullet's solver so
we never have any contact points (in Bullet parlance).
2021-01-01 17:47:12 +01:00
Alexei Dobrohotov
396667f801
Fix weather particle fading
...
Update rain particle system setup
2020-12-29 15:46:45 +03:00
AnyOldName3
54853380cd
Enable multisampling in RTTs to support A2C
2020-12-28 22:39:09 +00:00
Andrei Kortunov
e80d34268c
Fix defines names
2020-12-28 21:11:58 +04:00
AnyOldName3
5e004356a2
Merge remote-tracking branch 'upstream/master' into alpha-meddling
2020-12-27 02:48:42 +00:00
AnyOldName3
8f4b856b44
Initial A2C implementation
2020-12-26 22:45:53 +00:00
Petr Mikheev
51d63a4152
Fix minor bug: mSmoothedSpeed is not updating in first person mode, that leads to an incorrect value after switching to first person mode and back.
...
Additional refactoring: move `setSideMovementAngle` from camera.cpp to character.cpp as this logic shouldn't belong to Camera.
2020-12-24 03:39:59 +01:00
AnyOldName3
2ecd00b6db
Don't accidentally enable alpha testing for all shadow casting
2020-12-18 16:31:21 +00:00
AnyOldName3
a080071588
Set default state sensibly
2020-12-18 00:02:51 +00:00
Nelsson Huotari
8b2bf12e8f
Use bip01 for root bone name
2020-12-15 13:51:49 +02:00
psi29a
6f0b90e606
documented that currently underwater shadows are mutually exclusive to refraction scale; to be fixed in follow up issue #5709 ; documentation fixes
2020-12-02 23:03:10 +00:00
Nelsson Huotari
6e77ad1f6a
OSG-Collada animation support
2020-11-19 01:11:56 +02:00
Nelsson Huotari
f78a5d795c
Separate keyframes logic to provide basis for osgAnimation integration.
2020-11-18 22:48:47 +02:00
AnyOldName3
06d1e70aac
Make Bullet DebugDrawer's default state match the physics system
2020-11-18 15:34:21 +00:00
AnyOldName3
1e0df23d14
Merge branch 'shadows-bin' into 'master'
...
Use a custom renderbin to avoid pointless OpenGL state switches
See merge request OpenMW/openmw!402
2020-11-13 16:29:41 +00:00
AnyOldName3
72f7e6a702
Handle all shadow alpha uniforms in shadowsbin
2020-11-12 00:26:30 +00:00
psi29a
ed8342ebc9
Merge branch 'niffile' into 'master'
...
Remove NIFFile settings manager dependency
See merge request OpenMW/openmw!398
2020-11-10 09:03:10 +00:00
Alexei Dobrohotov
c857588ee9
Remove NIFFile settings manager dependency
2020-11-09 14:24:48 +03:00
Alexei Dobrohotov
b523574090
Remove shader visitor settings manager dependency
2020-11-09 13:59:59 +03:00
psi29a
ba3aad31c1
Merge branch 'hitdebug' into 'master'
...
Visualize hits in the debug overlay
See merge request OpenMW/openmw!379
2020-11-01 10:20:14 +00:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
Andrei Kortunov
64ba81ecf2
Fix some issues, found by CoverityScan
2020-10-28 18:02:31 +04:00
Evil Eye
2c4cafa41a
Change moon phase to an enum class
2020-10-26 22:16:31 +01:00
fredzio
435b2e37f8
Allow to display collision points in the debug viewer
2020-10-26 13:42:46 +01:00
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
2020-10-18 10:27:35 +04:00
psi29a
9d350ec824
Merge branch 'head_bobbing' into 'master'
...
Add head bobbing in first person mode
Closes #5043
See merge request OpenMW/openmw!320
2020-10-17 19:54:34 +00:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
Andrei Kortunov
c3d84b2c7c
Ability to attach arrows to shooter's hands (feature #5642 )
2020-10-14 10:07:42 +04:00
Petr Mikheev
be27b51279
Add head bobbing in first person mode
2020-10-08 00:22:01 +02:00
tessa
58b5249e8b
fix typo in terrainstorage.hpp
2020-09-13 10:46:27 -05:00
AnyOldName3
ffed6acc49
Merge branch 'patch-1' into 'master'
...
force static data variance for water geometry
See merge request OpenMW/openmw!294
2020-09-07 22:32:00 +00:00
Alexei Dobrohotov
99ab629a03
Merge pull request #2995 from akortunov/arrows
...
Improve ammo resetting
2020-09-06 13:30:55 +03:00
Mads Buvik Sandvei
2d021430b8
force static data variance for water geometry
2020-09-05 11:52:52 +00:00
Andrei Kortunov
7a4efe3979
Avoid crash when object paging encounters an empty shape
2020-09-01 10:13:32 +04:00
Andrei Kortunov
47af221f10
Reset ammo when switching view to avoid warnings spam
2020-08-28 15:57:11 +04:00
Andrei Kortunov
297898182b
Reset attached arrow in the beginning of unequipping animation
2020-08-28 15:53:30 +04:00
psi29a
f90a049702
Merge branch 'movement_refactoring' into 'master'
...
Refactoring related to "smooth movement"
See merge request OpenMW/openmw!285
(cherry picked from commit 6eaf0a389d5aed3b74ab1a7cf89574612f964bdf)
e847b4c8 Split getSpeed() to getMaxSpeed() and getCurrentSpeed()
a96c46bc Refactor calculation of movement.mSpeedFactor
03ee9090 Use getMaxSpeed instead of getCurrentSpeed where it makes sense.
a178af5c Create helper functions `normalizeAngle` and `rotateVec2f`
2020-08-27 11:54:30 +00:00
Petr Mikheev
0de6650add
Add RayCastingInterface
2020-08-06 22:03:33 +02:00
Petr Mikheev
e9b2e9b474
Remove camera stuff from RenderingManager
2020-08-06 00:43:33 +02:00
Petr Mikheev
694e0b5906
Refactoring. Simplification of camera interface.
2020-08-06 00:43:33 +02:00
Petr Mikheev
ed3426cf2f
Move third person camera collision check from World::updatePlayer() to Camera::updatePosition()
2020-08-06 00:43:33 +02:00
Petr Mikheev
ca4330f753
Tune algorithm of "auto switch shoulder"
2020-08-05 01:01:51 +02:00
Capostrophic
03f0bd3df6
Make a horrible simple water hack less horrible
2020-07-27 00:32:24 +03:00
Petr Mikheev
8cdc7031f5
Support vectors in settings.cfg
2020-07-24 21:47:49 +02:00
Petr Mikheev
62c8ea373b
Fix not completely correct camera transition when switching from 1st person to 3rd person if armed.
2020-07-19 22:12:17 +02:00
Petr Mikheev
2e6aa155a3
New settings 'preview if stand still' and 'deferred preview rotation'.
2020-07-19 18:21:40 +02:00
Petr Mikheev
9f850b6ffc
Move deferred rotation logic from renderingmanager.cpp to camera.cpp
2020-07-19 18:21:40 +02:00
Petr Mikheev
63cab4052d
Refactoring in mwrender::Camera. enum for normal/preview/vanity mode.
2020-07-19 18:21:40 +02:00
Petr Mikheev
8ac7ffc32b
Remove 'separate preview camera' and make the new behavior the default one.
...
Also minor refactoring in camera.cpp
2020-07-17 22:59:44 +02:00
Petr Mikheev
4d206d2c67
Improved preview mode
2020-07-17 20:35:52 +02:00
elsid
c3b581131d
Merge branch 'third_person_fix' into 'master'
...
Minor fixes for 'view over shoulder'
See merge request OpenMW/openmw!265
2020-07-17 18:11:35 +00:00
Petr Mikheev
8ac143c983
Camera can pull out after clearing obstruction instead of instant snapback.
2020-07-17 10:19:46 +02:00
Petr Mikheev
68148f5ec7
1. Skip smooth camera transition after changing cell; 2. Fix 'zoom out when move' for extremely high speed;
2020-07-16 22:21:50 +02:00
Petr Mikheev
383fa3d3ab
Make 'zoom out when move' configurable.
2020-07-12 21:03:18 +02:00
Petr Mikheev
173c1fdabb
Make transition in 'auto switch shoulder' smoother.
2020-07-12 20:51:38 +02:00
Petr Mikheev
51173ebcf5
Refactoring. Move all code related to 'view over shoulder' to a separate file.
2020-07-12 20:51:38 +02:00
Petr Mikheev
5bdf61a886
Slightly pulls camera away when the character moves
2020-07-12 20:51:38 +02:00
Petr Mikheev
ef03f2c033
Auto switch shoulder
2020-07-12 20:51:38 +02:00
Petr Mikheev
5675d6ce81
Generalize calculation of focal point offset for 3rd person camera.
...
When player swim, the view slowly switches from "over shoulder" to "above head".
New functions to switch shoulder.
2020-07-12 20:51:38 +02:00
elsid
a4e3f32ec8
Fix TSAN warnings for ripples emitter
...
While main thread creates particles rendering thread draws them so
sychronization is required.
2020-07-11 13:29:30 +02:00
psi29a
b372ac9119
Merge branch '#5493_better_handle_objects_across_cells' into 'master'
...
Resolve #5493 by better supporting objects that are placed across cells.
Closes #5493
See merge request OpenMW/openmw!260
2020-07-11 08:27:27 +00:00
Bret Curtis
fd61ebf6ab
remove big white blob of space
2020-07-10 00:44:54 +02:00
Petr Mikheev
280862f58b
New setting "third person camera distance"
2020-07-10 00:38:18 +02:00
bzzt lost a hitlab login
4ea018c594
Should resolve #5493 by better supporting objects that are placed across cells.
2020-07-09 23:17:01 +02:00
psi29a
46db69a349
Merge branch 'swimming' into 'master'
...
Swimming-related fixes
See merge request OpenMW/openmw!247
(cherry picked from commit 8be328ef80f29e9692e29d24beefa8ced16537a7)
738c71fd Extend the "turn to movement direction" mode for swimming up and down.
10d3e82b New setting "swim upward coef"
2020-07-09 20:05:59 +00:00
elsid
3c460fb3e9
Use pointer to Sound to stop sounds started by NpcAnimation
2020-07-06 17:38:09 +02:00
Bret Curtis
0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
...
Replace OpenThreads by std types
2020-07-04 13:11:23 +02:00
Bret Curtis
d3c24a6ea4
Should resolve the original cause of #5509 and prevent mesh from growing while switching back and for from 3rd and 1st person view
2020-07-02 22:01:42 +02:00
Bret Curtis
e9126fae54
Resolve #5509 where culling did not take invisiblity into accont
2020-07-02 12:36:25 +02:00
Andrei Kortunov
3dc3fe06e2
Merge pull request #2934 from akortunov/master
...
Fix MSVC warning about variable re-declaration
2020-06-26 09:55:30 +04:00
Andrei Kortunov
30b63270ce
Fix MSVC warning about variable re-declaration
2020-06-26 09:49:26 +04:00
elsid
40ad87bc4d
Replace OpenThreads by std types
2020-06-25 22:16:09 +02:00
Petr Mikheev
63137a3b5a
Make vertical offset of "view over shoulder" configurable
2020-06-24 20:07:41 +02:00
Petr Mikheev
b4c699348f
Improved strafe movement
2020-06-22 15:22:34 +02:00
Petr Mikheev
d3bd67d747
Advanced third person camera.
2020-06-22 15:22:34 +02:00
Bret Curtis
c3dc0e62e8
OP profiling regression fix; Billboards such as those from Westly's tree mod should work again.
2020-06-18 16:16:16 +02:00
Andrei Kortunov
808c905e1f
Initialize fields to avoid undefined behaviour
2020-06-18 14:50:06 +04:00
Andrei Kortunov
d1a3cc98ff
Get rid of ECLD and dependencies
2020-06-17 13:09:16 +04:00