Commit Graph

271 Commits (22142668c7192b0c1bf90293edfd279411ada0b6)

Author SHA1 Message Date
Petr Mikheev 63d5bd6f8a Apply soft effect to nifs marked with soft effect flag (developed by Cody Glassman) 1 year ago
Alexei Dobrohotov 52a16e0e93 BSEffectShader/NoLighting fixes
Don't hijack BSShader::NoLighting for BSEffectShader functionality
(Fallout meshes break if you use the actual emissive color as a base color)
Don't use falloff for textureless NoLighting objects
Use falloff flag for BSEffectShader
1 year ago
Petr Mikheev 115f1e9800 Fix tree shadows when TreeAnim flag is used 2 years ago
Petr Mikheev 788a4d32aa Handle DoubleSided and TreeAnim flags in BSLightingShaderProperty. 2 years ago
Andrei Kortunov 1be1f72f6c Improve shaders formatting 2 years ago
psi29a b0a129d6e4 Merge branch 'ripples' into 'master'
Implement shader-based water ripples

See merge request OpenMW/openmw!2877
2 years ago
Andrei Kortunov 909e301dc6 Increase distotion level 2 years ago
Andrei Kortunov 295f528f08 Use Allman brackets 2 years ago
Mads Buvik Sandvei e666f36b60 [Multiview] Fix transparent pass and vertex shader 2 years ago
Andrei Kortunov e17281ac67 Implement shader-based water ripples (feature 3537) 2 years ago
Cody Glassman 6a64f352a4 fix shader compilation 2 years ago
psi29a 4faa1bf3e8 Merge branch 'moo-bitch-get-out-my-hay' into 'master'
Don't use FFP-friendly texture image units for shadow maps

Closes #7102

See merge request OpenMW/openmw!2682
2 years ago
Cody Glassman ac4787aeec shade refactor 2 years ago
Alexei Kotov 2de81738c1 Implement the basics of BSEffectShaderProperty 2 years ago
Alexei Kotov 0142caacf7 Use falloff start and stop opacity in NoLighting shader 2 years ago
glassmancody.info e778ffee9b po2 scaling for average luminance 2 years ago
AnyOldName3 0edc8fc77d Don't use FFP-friendly texture image units for shadow maps
This more-or-less gets rid of the shadow system's only depencency on FFP
stuff. All that remains is it using OSG cameras, which OSG provides a
uniform-based implementation of, too, which we can trivially migrate to.

This should mean we're not eating any of the ~8 FPP-friendly texture
units, which is good as Morrowind models can use all of those on their
(although they very rarely do), and instead use some of the ~160
shader-only texture image units. This just requires not calling
glEnable(GL_TEXTURE_2D), accomplished by changing
setTextureAttributeAndModes to setTextureAttribute.

Also changes from using glTexGen and its eye plane matrices to pass the
shadow space matrix for each light to explicit uniforms. Thankfully, the
maths was a simple combination of the valid region matrix and eye plane
matrix maths.

As of this commit, I believe this kills shadows in one eye for stereo
rendering.
2 years ago
glassmancody.info 897ee702d1 move water normal to vfs 2 years ago
glassmancody.info 27fe8d42ae fix pass normals 2 years ago
glassmancody.info 9a4977d334 rain occlusion 2 years ago
florent.teppe 43b0ae1ce7 all debug renders now use the same shader and it works
remove debug draw shader, now that debug and debugdraw serve the same function

remove debug draw code from actors to clean

replaced int uniforms with bool for better readability

clang format

cleanup, remove unused func, and mistake whitespace

fix namespace

added more colors

fixed missing whitespace
2 years ago
florent.teppe 21971c08ba debug draw shader uses the generic functions
renamed files

roundabout way to change case with windows noticing

fixed type

fix filename in cmakelist.txt

ported shader and c++ code so glsl 120 can be used instead of 330

new debug shader and old one are almost unified

for some reason, even though I get no compilation issue, old debug draws don't work, only the new one implemented by this MR

remove useless const cast
2 years ago
florent.teppe bd1bbc0ab8 removes mutex, and uses double buffering to avoid writing on a resource that will be read by the draw thread
changes when the buffers are reset -> at the end of the draw, because that's when we are certain the data isn't needed anymore

removed useless variable
fixed typo
include osg::vec3 instead of osg vec3f

compile linux

compile ?

applied clang format to the new files
2 years ago
florent.teppe 2a980ecb50 cleaned some code and fixed some naming issues
Moved debug draw to components, fixed some whitespace issues, added include guard

fixed uniform name, removed old files

Fixes some more whitespace weirdness
2 years ago
florent.teppe 12b3424dd7 initial work to get lines in
lines need the same synchronisation system as the other primitives

This two points are there because if I resize to 0 it crashes, si I need a pice of line at 0.,0.,0. so there is no crash.Not ideal

Lines are colored

didn't commit updated shader file
2 years ago
florent.teppe 76008e1ff8 Multiple shapes to draw
adds wireCube primitive

scale of the command taken into account

shading light is more vertical
2 years ago
florent.teppe 93af569a68 can place a cube at 0,0,0 Useless for now
Arbitrarly draw cubes at certain position with a certain color

Adds exemple of how it looks in the actor update code.

draws a green cube if alive, red else
2 years ago
glassmancody.info 02ded8832c temporary fix for artifacts in transparent post-pass 2 years ago
glassmancody.info fd4966f77a temporary fix for auto exposure 2 years ago
Petr Mikheev b3c8c8eb56 Support sky blending in multiview mode 3 years ago
glassmancody.info 89bc756732 tmp_sun_fix 3 years ago
Abdu Sharif c09648c349 Add a missing 0 in fog.glsl 3 years ago
Cody Glassman 03616ae2d3 Fix undeclared shader variable 3 years ago
glassmancody.info 7b958148d0 better fade 3 years ago
psi29a 56187ad977 Merge branch 'soften_me_up_like_one_of_your_french_meshes' into 'master'
Allow soft particle effect on any NIF

See merge request OpenMW/openmw!2015
3 years ago
glassmancody.info b09411d396 allow soft particles on meshes and add extra data extensions 3 years ago
Petr Mikheev d0deb37f5c Fix several issues with sky blending 3 years ago
Mads Buvik Sandvei b0e4c7e76a [Postprocessing] Stereo integration 3 years ago
Petr Mikheev 3bf18c601c Better fog 3 years ago
cody glassman 04843fed6d moddable post-processing pipeline 3 years ago
psi29a 275bebb066 Merge branch 'Stereo-MR' into 'master'
Stereo

See merge request OpenMW/openmw!1757
3 years ago
madsbuvi 79577f37de Rebase artifacts + cleaned up the remaining unnecessary exposures of stereo awareness. 3 years ago
cody glassman 276cb6f170 clamp vertex lighting in fragment shader properly 3 years ago
Mads Buvik Sandvei 606a795a54 multiview linker-method 3 years ago
madsbuvi dd5901d351 Initial commit
Multiview shaders.

Refactor Frustum management

Rewrite shared shadow map

cull mask should respect stereo

Stereo savegame screencap

LocalMap refactoring

use the vertex buffer hint instead of the display list patch to enable/disable display lists

Character preview fixes
3 years ago
madsbuvi 164458dc56 shader fixes 3 years ago
madsbuvi dc3045c970 mono-only version of the shader linking system introduced in the stereo MR 3 years ago
Alexei Dobrohotov dd473d06df Implement gloss-mapping (feature #6541) 3 years ago
psi29a d8d7a3b372 Merge branch 'softparticles_patch' into 'master'
Shadervisitor adjustments and Mac OS fix for soft particles

See merge request OpenMW/openmw!1380
3 years ago
glassmancody.info d5cba38f4b shader-based object texture blending 3 years ago