1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-17 01:10:10 +00:00
Commit Graph

771 Commits

Author SHA1 Message Date
Alexei Kotov
ccd36e9413 Support light fade settings in legacy lighting method
This doesn't change launcher descriptions because the launcher settings are going to be omitted
2024-06-12 22:44:12 +03:00
Alexei Kotov
71c1b536b4 Discard culled lights specifically for post-processing light buffer 2024-06-01 22:05:32 +03:00
Alexei Kotov
cbe61e2c93 In TextureType, use osg::Object's name field 2024-05-31 14:42:48 +03:00
psi29a
a2e83d9a21 Merge branch 'dayofviewindependence' into 'master'
Make object light lists (mostly) view-independent

See merge request OpenMW/openmw!4128
2024-05-30 08:08:55 +00:00
psi29a
8cf6fde8b6 Merge branch 'fix_debug_render' into 'master'
Fix debug render for recast mesh and navmesh

See merge request OpenMW/openmw!4127
2024-05-28 07:38:00 +00:00
Alexei Kotov
c92d016e43 Don't sort scene light list by camera distance if the limit isn't reached and PP doesn't need it
Also don't clip it to the single UBO scene light limit if the lighting method isn't actually single UBO
2024-05-26 02:29:05 +03:00
Alexei Kotov
916706c6c1 Make object light lists (mostly) view-independent
Remove frustum culling
Sort lights by object proximity
Restore multiple camera rendering optimization
2024-05-26 02:29:05 +03:00
elsid
10e14a3c21
Replace release by assigning nullptr
release does not call a destructor if it's the last reference. This is not a
right choice here. Even though the functions accept raw pointers they convert
them into osg::ref_ptr. So it's ok to share the ownership.
2024-05-24 01:08:15 +02:00
elsid
4b8897e33e
Use state sets without transparency support for recast mesh and agents paths 2024-05-24 00:05:10 +02:00
elsid
98d530d8cb
Share state sets for recast mesh tiles and actors paths 2024-05-24 00:05:09 +02:00
Alexei Kotov
fd9361f62c Some attenuation setup fool-proofing 2024-05-24 00:52:54 +03:00
Alexei Kotov
e0e4b84e40 Disable specularity for negative lights 2024-05-24 00:50:29 +03:00
Alexei Kotov
debc37d93a Fade out specularity according to light fade settings as well 2024-05-24 00:49:37 +03:00
Alexei Kotov
908f3891fb Add helper method for texture type recovery 2024-05-19 02:26:40 +03:00
Alexei Kotov
84f4ba4ca1 Support defining the texture type with a state attribute (#6240)
Named textures are still supported for easier native format compatibility (and so that I don't have to edit the documentation)
2024-05-18 23:11:20 +03:00
elsid
020b31395b
Reserve arrays before merging 2024-05-09 17:21:56 +02:00
AnyOldName3
ee3d012a6a Use CLAMP_TO_EDGE for shadows
Partially mitigates https://gitlab.com/OpenMW/openmw/-/issues/7944

The border was necessary in the olden days when the FFP might have shadows, but they require shaders now.
2024-04-29 01:21:29 +01:00
Alexei Kotov
f0e4793321 Remove allow shadow map overlap setting (#7939) 2024-04-26 13:50:03 +03:00
AnyOldName3
04f1dc282b Merge branch 'fix-osga-rotate-wildly' into 'master'
Fix OSGAnimation issues

See merge request OpenMW/openmw!3989
2024-04-20 15:37:09 +00:00
Sam Hellawell
2653b76db9 getTranslation/getTransformForNode refactor, unit tests 2024-04-17 08:16:48 +01:00
Alexei Kotov
443e341ae7 Generalize unsized pixel format computation 2024-04-16 02:52:25 +03:00
Alexei Kotov
3c0c1717a9 Fix red-green normal map handling for terrain 2024-04-15 12:02:52 +03:00
Sam Hellawell
8c2c66d59e .nif check, matrix mult feedback, auto usage, reuse NodeMap typedef 2024-04-11 02:16:06 +01:00
Sam Hellawell
a51d560174 Move bone rename logic to ColladaDescriptionVisitor, undo formatting/refactoring 2024-04-05 01:59:40 +01:00
Sam Hellawell
2288a691d2 Replace osgAnimation bone underscore naming at load time, map bone instances, reset root bone transform each frame 2024-04-04 00:10:51 +01:00
Sam Hellawell
7897ff7ac9 Fix weapon sheathing for non-nif meshes 2024-03-25 21:03:59 +00:00
AnyOldName3
a761e417f1 Accept that it's too much work to defer light manager creation in the CS and instead use something akin to the old approach 2024-02-24 16:59:11 +00:00
AnyOldName3
dec8d32b3a FIx static destruction order chaos 2024-02-24 00:54:40 +00:00
AnyOldName3
2bc091fc05 Include missing header
I thought I'd seen this class defined in one of the existing headers
with a different name, but I was muddling its forward declaration and a
different class being in a non-obvious header.
2024-02-23 00:15:23 +00:00
AnyOldName3
ec4731d454 Cope with scene widgets being destroyed in a weird order
I can't actually test this as the CS still doesn't get far enough with this MR.
2024-02-23 00:15:23 +00:00
AnyOldName3
36a75cdb29 Get the GLExtensions instance when a context is created 2024-02-23 00:15:23 +00:00
AnyOldName3
3335ccbc32 Capitulate 2024-02-20 23:51:42 +00:00
AnyOldName3
8c92f6ee87 Make uniform a signed int again 2024-02-20 23:10:23 +00:00
AnyOldName3
d282fdb77a Eliminate unused uniform 2024-02-20 23:10:03 +00:00
AnyOldName3
132c43affa Fix warning
Also attempt to make an equivalent warning fire with MSVC, then have to fix other stuff because /WX wasn't working, then back out of enabling the warning because none of the ones I could find disliked the old code.
2024-02-20 22:14:13 +00:00
AnyOldName3
7391bf2814 Fix OpenGL errors
There's no reason to use the AndModes variant as we never (intentionally) attempt to sample from a shadow map via the FFP.
2024-02-20 21:23:23 +00:00
AnyOldName3
535c5e328a Affect correct texture units when disabling shadows for stateset
Knowing which are right required making the function non-static, so the shadow manager had to become a singleton as the results of passing it around to where it's needed were hellish.

I'm seeing a bunch of OpenGL errors when actually using this, so I'll investigate whether they're happening on master.
I'm hesitant to look into it too much, though, as I'm affected by https://gitlab.com/OpenMW/openmw/-/issues/7811, and also have the Windows setting enabled that turns driver timeouts into a BSOD so a kernel dump is collected that I can send to AMD.
2024-02-20 21:02:31 +00:00
psi29a
f9820e2061 Merge branch 'debugdrawdebugged' into 'master'
Try to uncursify debug primitive drawer (#7767)

Closes #7767

See merge request OpenMW/openmw!3852
2024-02-17 18:56:21 +00:00
Alexei Kotov
38ab09a52e Try to uncursify DebugDrawer scene representation 2024-02-09 20:49:40 +03:00
Andrei Kortunov
6760fa4945 Localize screenshot messages 2024-02-08 12:50:12 +04:00
Andrei Kortunov
251d01304f Use move semantics for osg::ref_ptr 2024-01-21 13:48:33 +04:00
elsid
4d6350539c
Move FindLowestUnusedTexUnitVisitor to unnamed namespace
It's not used anywhere except this translation unit so no need to make the
symbol available everywhere else.
2024-01-15 22:23:59 +01:00
elsid
3ad79e3b3e
Pregenerate glow texture names
To avoid strings generation and allocations every time model is added to a
scene.
2024-01-11 23:54:20 +01:00
Cody Glassman
187f63d3d3 support postprocess distortion 2023-12-21 10:56:38 -08:00
jvoisin
abbb620ea2 Merge branch 'nifogproperty' into 'master'
Handle NiFogProperty (feature #5173)

Closes #5173

See merge request OpenMW/openmw!3642
2023-12-12 18:30:11 +00:00
Alexei Kotov
9cdaf2c29b Handle NiFogProperty (feature #5173) 2023-12-09 17:13:16 +03:00
Alexei Kotov
c1088e5f70 Streamline passing influence data to skinning 2023-12-08 20:58:34 +03:00
Alexei Kotov
820fc068d1 Support point specular lighting (#6188)
Fix passing light specular colors with shader lighting methods (with help from wazabear)
2023-11-04 17:58:51 +03:00
elsid
f4efbcc1c4
Use settings values for Shadows settings 2023-11-02 16:36:44 +01:00
Cody Glassman
09928ba265 use a dynamic falloff range for soft effect and use shader flags 2023-10-28 10:23:55 -07:00