1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-21 06:53:53 +00:00
Commit graph

326 commits

Author SHA1 Message Date
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
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
Bo Svensson
e41fe7573a
avoids creating empty statesets for collada nodes (#3128)
* avoids creating empty statesets for collada nodes

With this PR we avoid creating empty statesets for collada nodes which will be detrimental to osg's draw performance.

* scenemanager.cpp
2021-09-28 10:17:12 +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
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
unelsson
67894349a9 Add a check for OPAQUE_BIN 2021-09-19 22:38:07 +03:00
unelsson
f2a894024a Change debug levels 2021-09-19 22:38:07 +03:00
unelsson
ec0b36d21d Don't make a new osg::depth to alpha tested node 2021-09-19 22:38:07 +03:00
unelsson
96f02ab32c Per-material alpha testing for collada 2021-09-19 22:38:07 +03:00
unelsson
40497d6fe5 Set depth testing for alpha blend & test, depth writes off for blend. 2021-09-19 22:38:07 +03:00
unelsson
b3d1d106af Collada alpha testing and uniforms 2021-09-19 22:38:07 +03:00
Bo Svensson
f62adab43a
Avoid the terrain sync completely in most cases (#3103)
We can take elsid's commit 605cb8d further by avoiding the terrain sync completely in most cases. Currently in changeCellGrid we wait for a new preloading task to ensure the getPagedRefnums for the new active cells have been filled in by object paging. This is usually not necessary because we have already completed a preload in the past containing these active cells. With this PR we remember what we preloaded and skip the terrain sync if it is not needed.
2021-09-16 22:11:19 +02: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
jvoisin
cb08f490d7 Sprinkle some const-ref in loop
This was done on the good advices of clang-tidy
2021-09-04 20:50:59 +02:00
jvoisin
deb2af6acc Dont copy-construct from a const-ref when used only as a const-ref
This also makes clang-tiny a bit happier
2021-08-29 20:22:34 +02:00
elsid
0f11acf709
Report more stats from AsyncNavMeshUpdater 2021-08-20 20:16:59 +02:00
jvoisin
5793f5cf18 Sprinkle a couple of std::move and a const 2021-08-16 13:11:22 +02:00
jvoisin
b01ef2629c Fix two Wreorder clang warnings 2021-08-13 13:59:57 +02:00
jvoisin
586d8684d0 Fix two coverity issues about uninitialised variables 2021-08-09 12:43:30 +02: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
70fac33940 initial reverse-z depth implementation 2021-08-04 17:39:11 -07:00
elsid
c8987bda2f
Store reference to BulletShapeInstance for btCollisionShape
To keep btCollisionShape lifetime.
2021-08-03 12:21:56 +02:00
fredzio
c76387162b Add projectiles number to the resources stats 2021-07-31 23:08:50 +02:00
Evil Eye
4f264af5a9 Merge branch 'staticsload' into 'master'
Loads statics before actors II (#5379)

See merge request OpenMW/openmw!588
2021-06-28 20:25:51 +00:00
fredzio
c795e0bce6 Some actors are supposed to spawn on an object that belongs to an adjacent cell.
Since actors can be active in 3x3 grid around the player, we need to
first load all objects in a 5x5 grid around the player.

Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and non-animated physics objects.

Animated objects are tied to the scene graph, which doesn't exists yet
in these cells, so we skip them.
2021-06-28 09:36:04 +02:00
Evil Eye
9f7980ecd7 Merge branch 'refenreces' into 'master'
Sprinkle some references where it makes sense

See merge request OpenMW/openmw!952
2021-06-24 17:40:36 +00:00
jvoisin
cf11870b1c Sprinkle some references where it makes sense 2021-06-24 00:28:09 +02:00
jvoisin
33e035cc95 Fix two excessive type casting instances
No need to to a string -> char* -> string dance.
2021-06-23 22:19:08 +02:00
CedricMocquillon
d11a6bd92c Share state 2021-05-18 17:57:47 +02:00
psi29a
d843ec321e Merge branch 'DoNotSearchTwice' into 'master'
Search only in the niffilemanager for nif files

See merge request OpenMW/openmw!823
2021-05-13 17:11:57 +00:00
Thunderforge
339d347aea Fixing performance-faster-string-find issues
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html).
2021-05-10 22:44:07 -05:00
CedricMocquillon
a885134868 Do not search if it is not used 2021-05-06 13:28:06 +02:00
CedricMocquillon
813b8ee0d1 Search only in the niffilemanager for nif files 2021-05-05 23:19:08 +02:00
Andrei Kortunov
9647b670e4 Do not declare unused variables 2021-04-19 15:43:00 +04: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
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
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
dda735c54a initial commit 2021-04-13 11:06:16 -07:00
Andrei Kortunov
124a33d8a3 Fix uninitialized variables 2021-04-10 10:58:00 +04:00
Alexei Dobrohotov
2fdbe9b3f6 Handle BSShader[PP/No]LightingProperty 2021-03-22 01:55:58 +03: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
9be258d260 Make it possible to reinstate FFP state easily 2021-02-19 19:59:48 +00:00
psi29a
59e09cba5b Merge branch 'boltsize' into 'master'
Use projectile mesh size (#5829)

See merge request OpenMW/openmw!587
2021-02-15 08:40:30 +00:00
elsid
561628087c Merge branch 'profiler_fix' into 'master'
Fix profiler glitches (#5850)

See merge request OpenMW/openmw!605
2021-02-15 00:01:06 +00:00
AnyOldName3
4f510d85ba Merge remote-tracking branch 'upstream/master' into alpha-meddling 2021-02-14 22:42:55 +00:00
fredzio
c4e909c29e Silence a clang warning:
warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
2021-02-12 19:36:03 +01:00
fredzio
bc4047d815 Update engine stats for all levels above first, not only at the second. 2021-02-12 19:03:02 +01: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
fredzio
6e969ca3fa Use mesh collision box instead of node bounding sphere for projectile
size. The bounding sphere is much bigger than the mesh.
2021-02-05 22:53:45 +01:00
Alexei Dobrohotov
ab28847eaf Merge branch 'collisionextentsandcenter' into 'master'
Get collision box extents and center from btBvhTriangleMeshShape

See merge request OpenMW/openmw!579
2021-02-04 23:03:43 +00:00
unelsson
303f1912a6 less debug spam 2021-02-04 23:14:52 +02:00
unelsson
d5844b0982 Use accompanying txt file for textkeys in osgAnimation formats 2021-02-04 23:14:21 +02:00
elsid
88ca4a1db6
Count navmesh cache hit rate 2021-02-04 00:35:24 +01:00
Nelsson Huotari
45fde84f4f Use nodemasks and visitors for detecting custom collision shapes 2021-02-03 21:16:54 +02:00
Nelsson Huotari
5c32460153 Add underscore-separated node-names to reserved-list 2021-02-03 14:25:50 +02:00
Nelsson Huotari
384112746c Add option for custom collision node with non-nif files 2021-02-03 14:25:09 +02:00
Nelsson Huotari
6c0c28c2eb Get collision box extents and center from btBvhTriangleMeshShape 2021-02-02 21:51:46 +02:00
Nelsson Huotari
5b88d16a50 Clean-up 2021-02-02 21:09:50 +02:00
Nelsson Huotari
2162b97fef Handle case in osgAnimation bone names 2021-02-02 17:34:02 +02:00
Nelsson Huotari
f87c45c92a Get collision box extents and center from btBvhTriangleMeshShape 2021-01-30 16:03:02 +02:00
Nelsson Huotari
3194520dcd Move base_anim settings to settings-default.cfg 2021-01-27 13:41:02 +02:00
Bret Curtis
b164f1aa17
Merge pull request #3023 from akortunov/grass_intsancing
Grass instancing
2021-01-27 12:21:24 +01:00
Frederic Chardon
7cd7fa2f08 Collect all available stats if OPENMW_OSG_STATS_FILE is set and point to
a valid file.
2021-01-27 08:04:33 +00:00
Andrei Kortunov
24e1dfcddc Use default argument 2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc Implement instanced groundcover 2021-01-26 22:29:41 +04:00
AnyOldName3
b6e92c9c6d Use ShaderVisitor to skip translucent framebuffer specific stuff 2021-01-20 23:37:19 +00:00
Andrei Kortunov
f175beb304 Define template ref classes in components 2021-01-13 14:25:21 +04:00
AnyOldName3
8f4b856b44 Initial A2C implementation 2020-12-26 22:45:53 +00:00
Nelsson Huotari
8b2bf12e8f Use bip01 for root bone name 2020-12-15 13:51:49 +02:00
Nelsson Huotari
3195716a2c Don't force loop textkey 2020-12-15 13:49:25 +02:00
Nelsson Huotari
256aa5e71d Use const auto& 2020-12-12 22:23:20 +02:00
Alexei Dobrohotov
15291f15d3 Make actor collision box components a struct 2020-12-11 20:07:59 +03:00
Andrei Kortunov
8084a336b5 Replace zeroes and nulls by nullptrs 2020-11-29 11:14:07 +04:00
Nelsson Huotari
55dcc6582a Don't duplicate getFileExtension, use OpenMW's namespaces 2020-11-28 15:03:10 +02:00
Nelsson Huotari
08dcbe30b3 Earlier nullptr check 2020-11-20 19:46:08 +02:00
Nelsson Huotari
32d4344803 Don't copy osga-data in base class keyframecontroller, fix warnings. 2020-11-20 19:38:29 +02: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
Alexei Dobrohotov
b523574090 Remove shader visitor settings manager dependency 2020-11-09 13:59:59 +03:00
Andrei Kortunov
660df19ff7 Allow to assign custom shaders to nodes 2020-10-25 18:22:16 +04:00
Andrei Kortunov
8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
AnyOldName3
85b5fdee35 Discard the alpha channel of 16-bit TGAs, just like Morrowind 2020-09-12 00:20:44 +01: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
elsid
56bc462007
Make all stats fit into the window 2020-07-03 20:49:23 +02:00
elsid
40ad87bc4d
Replace OpenThreads by std types 2020-06-25 22:16:09 +02:00
Nelsson Huotari
5bc44cf2ee Use sequenced texture units with .dae/collada 2020-06-16 14:37:06 +03:00
bzzt lost a hitlab login
26ab176389 profiling
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
17637c6575 pagerebuild on disable
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
69514dfd46 ico redundency fix + stats counter
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt lost a hitlab login
cf439581e1 comply by elsid review
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt
d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
elsid
69df6098e5
Report frame number, number of actors and objects to stats 2020-05-22 17:39:18 +02:00
Capostrophic
16f6c7b27f Use the new option to treat TGA files as TGA 1.0 2020-04-30 09:57:58 +03:00
Bret Curtis
d77047e1cf
tab2space 2020-04-28 13:16:37 +02:00
Bret Curtis
1870b4b345 catch and set with no _found; leave empty as empty string 2020-04-27 08:02:42 +02:00
Bret Curtis
6d3f9ce307 puts an end of error spam when OSG is copmiled without Freetype support 2020-04-26 22:20:57 +02:00