summaryrefslogtreecommitdiff
path: root/drivers/gles2/shaders
AgeCommit message (Collapse)Author
2020-07-10Added 'fma' function to shader languageYuri Roubinsky
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-03-30SCons: Format buildsystem files with psf/blackRémi Verschelde
Configured for a max line length of 120 characters. psf/black is very opinionated and purposely doesn't leave much room for configuration. The output is mostly OK so that should be fine for us, but some things worth noting: - Manually wrapped strings will be reflowed, so by using a line length of 120 for the sake of preserving readability for our long command calls, it also means that some manually wrapped strings are back on the same line and should be manually merged again. - Code generators using string concatenation extensively look awful, since black puts each operand on a single line. We need to refactor these generators to use more pythonic string formatting, for which many options are available (`%`, `format` or f-strings). - CI checks and a pre-commit hook will be added to ensure that future buildsystem changes are well-formatted.
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-01-31Add support for 3D textures to GLES2clayjohn
2020-01-15Fix array constructor for lightmapsclayjohn
2019-12-10Add a default POINT_SIZEclayjohn
2019-11-22Fix Specular Blinn functionclayjohn
2019-11-20Fix bugs introduced by IBL fixesclayjohn
2019-11-19Fix issues with environment mappingclayjohn
2019-10-27Fixed using compressed textures and add work around for firefox webgl mesa ↵clayjohn
sampler limit
2019-09-30Implement DOF blur, Glow, and BCS in GLES2clayjohn
2019-09-24Fix copyright headers and style issuesRémi Verschelde
2019-09-23Merge pull request #32275 from godotengine/skin_supportRémi Verschelde
Added skin support and simplified APIs to override bone position + glTF 2.0 import fixes
2019-09-22fix gles2 broken panorama sky on oculus questHolger Dammertz
This fixes an issue that was fixed for gles3 in #31419 but not applied to gles2. The fix consists of using a constant scale for cube_normal of -1.0 instead of -1000000. It results in broken panorama rendering on the oculus quest (see https://github.com/GodotVR/godot_oculus_mobile/issues/29)
2019-09-19Merge pull request #31202 from azagaya/light-dataRémi Verschelde
Create shadow_vec for altering shadow computation
2019-09-18Added skin support and simplified APIs to override bone position.Juan Linietsky
2019-09-06Create shadow_vec for altering shadow computationazagaya
In 2.1 and 3.0, light_vec could be modified for altering shadow_computations. But it broke shadows when rotating light. shadow_vec would do the same, but without breaking shadows in rotated lights if not used. Add inverse light transformation to shadow vec, so it's not affected when rotating lights; Added usage define for shadow vec. For shadow vec working properly when rotating a light, it's needed to multiply it by light_matrix normalized. Added usage define in order to don't do that if shadow_vec not used.
2019-08-22Implemented inverse shader function to GLES2Yuri Roubinski
2019-08-03Fix GLES2 renderingYuri Roubinski
2019-07-31Expose several GLES3 built-ins to GLES2 Chaosus
2019-07-29Merge pull request #30895 from clayjohn/gles2-shader-funcsRémi Verschelde
Added round function to gles2
2019-07-29added round function to gles2clayjohn
2019-07-28update algorithm about paking float to vec4 to fix shadow shift and change ↵RaphaelHunter
rgba_shdow options
2019-07-21fix gles2 shadow transparency bugclayjohn
2019-06-19scale vertex lit lights by envorionment scaleclayjohn
2019-06-15Adding a new Camera Server implementation to Godot.BastiaanOlij
This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server. Other parts of Godot can interact with this to obtain images from the camera as textures. This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
2019-06-03added MultiMeshInstance2D node for using MultiMesh in 2Dclayjohn
2019-05-23do not compute fog when using unshaded in GLES2clayjohn
2019-05-21Implement shadow to opacityBastiaan Olij
2019-05-19Fix typos with codespellRémi Verschelde
Using codespell 1.15.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang curvelinear doubleclick leapyear lod merchantibility nd numer ois ony que seeked synching te uint unselect webp EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2019-05-14Merge pull request #27898 from clayjohn/metallic_radianceRémi Verschelde
Added radiance when using clear color
2019-05-13added radiance when using clear color and fixed brdfclayjohn
2019-05-13Merge pull request #27798 from clayjohn/gles2-proj-mat-bugRémi Verschelde
Fixes bug when setting projection matrix in shader GLES2
2019-05-07Fix SHADOWS_DISABLED flag in GLES2Guilherme Souza
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-04-30fixes bug when setting projection matrixclayjohn
2019-04-29Merge pull request #28431 from SouzaGuilherme/masterRémi Verschelde
Adds flag AMBIENT_LIGHT_DISABLED to GLES2
2019-04-25Adds flag AMBIENT_LIGHT_DISABLED to GLES2Guilherme Souza
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-04-12fixed bug in mip map sigmaclayjohn
2019-03-28keep DEPTH from causing compile error in GLES2clayjohn
2019-03-12GLES2: Fix comments in previous commit that broke rendering (!)Rémi Verschelde
Do NOT use "[vertex]" in a comment... Kids, don't try to learn OpenGL on a production branch right before a stable release.
2019-03-11GLES2: Add comments around EXT_shader_texture_lod checkRémi Verschelde
To avoid reintroducing bugs as I did in #26928 and #26932. texture2DLodEXT and textureCubeLodEXT are only for the fragment shader with https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_shader_texture_lod.txt In the vertex shader, texture2DLod and textureCubeLod are built-in.
2019-03-11Revert "GLES2: Ensure extension checks for texture2DLod"Rémi Verschelde
This reverts commit f5f565e3e49eecde9ed3b05913747a50d54b7357.
2019-03-11Revert "GLES2: Fix regression on texture2DLod extension checks"Rémi Verschelde
This reverts commit 8c2d38152fbf41ca9c8a8f9b381b8d271f7f54d3.
2019-03-11GLES2: Fix regression on texture2DLod extension checksRémi Verschelde
These can't be done after any non-preprocessor token.
2019-03-11GLES2: Ensure extension checks for texture2DLodRémi Verschelde
In canvas.glsl and scene.glsl, we were using texel2DFetch from stdlib.glsl, which uses texture2DLod. In both cases, the stdlib.glsl include came before the define of texture2DLod. Might fix issues for drivers that don't support GL_EXT_shader_texture_lod.
2019-03-04Merge pull request #26567 from clayjohn/pixel_snap_artifactRémi Verschelde
Fixed pixel snap precision artifact
2019-03-04fixed pixel snap precision artifactclayjohn