clayjohn
b2b89d7294
Properly remap roughness when reading from radiance map
...
This ensures that we consistently use perceptual roughness which matches the behaviour of most other PBR renderers like Blender, Ue4 and Godot 3
2022-12-02 15:39:20 -08:00
Rémi Verschelde
8177e5d7de
Merge pull request #69325 from clayjohn/GLES3-skeletons
...
Add Skeletons and Blend Shapes to the OpenGL renderer
2022-12-01 23:22:42 +01:00
clayjohn
9141984e7e
Enable GLES3 on Android
...
Add necessary build flags and switch from using a
GLES2 context to a GLES3 one.
This also enables building for OpenXR
Co-authored-by: m4gr3d <fhuyakou@gmail.com>
Co-authored-by: dsnopek <dsnopek@gmail.com>
2022-11-29 14:18:24 -08:00
clayjohn
f33ffd9ab4
Add Skeletons and Blend Shapes to the OpenGL renderer
...
This uses a similar multipass approach to blend shapes
as Godot 3.x, the major difference here is that we
need to convert the normals and tangents to octahedral
for rendering.
Skeletons work the same as the Vulkan renderer except the bones
are stored in a texture as they were in 3.x.
2022-11-29 09:45:03 -08:00
clayjohn
e81a1e5b5a
Expose model_matrix in GLES3 scene fragment shader
2022-11-21 09:56:08 -08:00
Rémi Verschelde
3a43d44656
Merge pull request #68830 from Ayush-singla27/issuebranch
...
fixed incorrect mesh normals in shaders
2022-11-20 11:35:52 +01:00
clayjohn
0e5a98cdd8
Fix drawing of 2D skeletons in the RD renderer.
...
Also clean up skeleton code in preparation for adding them to GLES3
Properly update Mesh2D AABBs when skeleton is updated
2022-11-18 23:36:40 -08:00
Ayush Singla
75ba0a7957
fixed incorrect mesh normals in shaders
2022-11-19 11:06:03 +05:30
clayjohn
9ce57050a5
Add GPUParticles to the OpenGL3 renderer.
...
This includes collision (2D SDF, Box, Sphere, Heightmap),
attraction (Box, Sphere), and all sorting modes.
This does not include 3D SDF collisions, trails, or
manual emission.
2022-11-14 23:28:25 -08:00
clayjohn
2ec234ff67
Add 2D shadows and canvas SDF to OpenGL3 renderer
...
This is an initial implementation based on the current RD implementation
Performance will improve later
2022-10-28 11:33:23 -07:00
Clay John
0d711cad30
Merge pull request #66107 from devloglogan/ambient-light-disabled-fix
...
Fix ambient_light_disabled render mode flag
2022-10-27 10:08:29 -07:00
David Snopek
398ee08375
Add multiview to the opengl3 driver
2022-10-21 21:00:32 -05:00
clayjohn
978aa05a99
Fix error in Web builds that resulting in 2D
...
objects not drawing in the GLES3 backend.
Issue came from not binding a light UBO when using the DISABLE_LIGHTING
code path
2022-10-14 11:18:27 -07:00
clayjohn
e600fb93a5
Add 2D lights to OpenGL3 canvas renderer
...
This is an initial implementation using the same single-pass approach as the RenderingDevice.
2022-10-12 17:55:01 -07:00
clayjohn
154b9c1c91
Use a giant UBO to optimize performance in 2D
...
This removes the countless small UBO writes we had before
and replaces them with a single large write per render pass.
This results in much faster rendering on low-end devices
but improves speed on all devices.
2022-10-06 11:24:45 -07:00
clayjohn
c8f0f27a0b
Properly expose TEXTURE_PIXEL_SIZE in Opengl3 renderer
2022-10-03 19:13:17 -07:00
Logan Lang
e61d8b6f53
enabled ambient_light_disabled render mode flag
2022-09-19 17:12:32 -05:00
clayjohn
8fa76a5272
Move debanding into internal sky shader code so that it is applied after everything else.
...
This ensures that the debanding does not scale with exposure or any other effect.
2022-09-13 10:39:04 -07:00
clayjohn
97be1fb7b6
Apply energy conservation to LAMBERT_WRAP and TOON diffuse modes by dividing by PI
2022-09-12 08:45:40 -07:00
clayjohn
fea48cdfc6
Fix rendering when using WebGL2.
...
Fixes include using proper depth buffer format in 3D (this had previously been fixed already but the changes were lost in a rebase), Remove unused lighting and shadowing code in 2D, and update 2D UBOs using glBufferSubData so that they remain the appropriate size.
2022-09-06 14:42:08 -07:00
clayjohn
385ee5c70b
Implement Physical Light Units as an optional setting.
...
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.
In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
bruvzg
bcc3643989
Add font LCD sub-pixel anti-aliasing support.
2022-08-23 08:47:21 +03:00
Omar El Sheikh
f1fda97c33
Implement Octahedral on OpenGL3
2022-08-13 10:20:14 -07:00
Rémi Verschelde
8734ef1f7a
Merge pull request #62547 from clayjohn/ref_vec_pbr
2022-08-08 10:18:32 +02:00
Hugo Locurcio
baaa7503c7
Add a shadow opacity property to Light3D
...
This can be used to make shadows translucent for a specific light.
The light distance fade system also uses this to smoothly fade the shadow
when the light fade transition distance is greater than 0.
2022-08-07 11:06:32 +02:00
clayjohn
4b80cb4aa3
Fix various bugs in GLES3 renderer that stopped it from running on web
2022-08-01 16:45:32 -04:00
Rémi Verschelde
677f565ce8
Merge pull request #63587 from clayjohn/specular-occlusion
...
Treat specular less than 0.02 as occlusion
2022-08-01 07:54:57 +02:00
clayjohn
0c65ed38a6
Treat specular less than 0.02 as occlusion
...
This is a very common hack used in almost all PBR renderers to allow removing specular contribution in dielectric materials
2022-07-31 15:45:21 -07:00
Hugo Locurcio
4b42379c8f
Rename RenderingServer global shader uniform methods to be more explicit
...
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
2022-07-28 18:46:59 +02:00
Rémi Verschelde
d7a1acd229
Merge pull request #62364 from clayjohn/GLES3-sky-optimization
2022-07-27 12:39:58 +02:00
Rémi Verschelde
6bbfd160b0
SCons: Properly track codegen script dependency for generated GLSL headers
2022-07-02 16:01:48 +02:00
clayjohn
93c82ab4b9
Evaluate specular reflections using specular dominant direction instead of assuming mirror reflections
2022-06-29 23:36:18 -07:00
clayjohn
88830509d1
Precompute on the CPU as much as possible for the Cubemap filter shader
2022-06-22 16:46:27 -07:00
clayjohn
5f52936350
Implement MultiMesh in 3D and flesh out MultiMesh functions
2022-06-14 21:23:20 -07:00
clayjohn
fb860265e0
Implement 2D Meshes and MultiMeshes in GLES3 backend
2022-05-25 15:46:24 -07:00
clayjohn
3e20c1347d
Add clipping, backbuffer, and CanvasGroups to 2D GLES3 renderer
...
As well as significant consequent cleanup in the RenderTarget, Texture, and Canvas renderer code
2022-05-24 11:00:34 -07:00
clayjohn
39f1be760f
Fix sky updating when DirectionalLight mode changed and shader compatibility for certain drivers
2022-05-19 17:44:38 -07:00
Yuri Rubinsky
5322b171de
Fix tonemapper shader to correctly apply alpha channel
2022-05-18 06:43:07 +03:00
clayjohn
9b61c855ef
Add basic lighting to GLES3 renderer.
...
This includes all three light types and IBL, but does not include shadows or any form of GI
2022-05-16 15:07:09 -07:00
Somnath Sarkar
52aeaf5d16
Fix computation of screen_uv
2022-05-16 00:00:01 -04:00
clayjohn
652adcd5bf
Basic 3D rendering
2022-05-12 10:37:27 -07:00
clayjohn
2bf8831dd6
SceneShader compiling
2022-05-11 21:00:21 -07:00
clayjohn
3bb8e6a9fe
SkyShaders working
2022-05-11 21:00:21 -07:00
Aaron Franke
b831fb0a54
Rename Transform2D "elements" to "columns"
2022-04-29 08:02:39 -05:00
Rémi Verschelde
f394388aa2
Merge pull request #60503 from clayjohn/OPENGL-3D
2022-04-28 19:56:16 +02:00
clayjohn
2f2064fe3d
Overhaul GLES3: Add basis for 3D renderer, overhaul materials and textures
2022-04-26 11:48:39 -07:00
bruvzg
be611c1c05
Implement Label3D node.
...
Add "generate_mipmap" font import option.
Add some missing features to the Sprite3D.
Move BiDi override code from Control to TextServer.
Add functions to access TextServer font cache textures.
Add MSDF related flags and shader to the standard material.
Change standard material cache to use HashMap instead of Vector.
2022-04-22 12:08:46 +03:00
Yuri Roubinsky
0d9aecd967
Rename several transform built-ins in shaders
2022-03-18 12:10:55 +03:00
clayjohn
fe49244611
Use Filament specular models and parametrization
2022-02-22 19:39:41 -08:00
clayjohn
99064d57db
New OpenGL batching canvas renderer
2022-01-11 22:26:18 -08:00
reduz
98ac002c34
WIP New GLES3 Shader Compiler
...
Uses versions and specializations (more similar to RenderingDevice version)
2022-01-11 22:25:01 -08:00
luz paz
a124f1effe
Fix various typos
...
Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
2022-01-02 01:03:58 -05:00
Clay John
8a10bb7d0d
Use OpenGL 3.3 core profile instead of compatibility profile
...
- Rename OpenGL to GLES3 in the source code per community feedback.
- The renderer is still exposed as "OpenGL 3" to the user.
- Hide renderer selection dropdown until OpenGL support is more mature.
- The renderer can still be changed in the Project Settings or using
the `--rendering-driver opengl` command line argument.
- Remove commented out exporter code.
- Remove some OpenGL/DisplayServer-related debugging prints.
2021-10-31 15:56:45 +01:00
Rémi Verschelde
386968ea97
Remove obsolete GLES3 backend
...
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.
The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.
Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.
So long, OpenGL driver bugs!
2020-02-13 10:36:44 +01:00
Rémi Verschelde
4faaf6089a
Remove unused #if 0'ed code
2020-01-21 21:41:54 +01:00
Rémi Verschelde
90a224c6eb
Merge pull request #35310 from akien-mga/gles3-irradiance-small-optimization
...
GLES3: Slight optimization to irradiance compute
2020-01-19 18:55:51 +01:00
Rémi Verschelde
dc4db4ab45
GLES3: Slight optimization to irradiance compute
...
All the calculations leading up to `mipLevel` are only relevant for
Panorama mode. Similarly, the `source_resolution` uniform is only
needed for that mode.
2020-01-19 11:03:11 +01:00
clayjohn
0979411cad
reduce complexity of irradiance map generation
2020-01-18 16:51:52 -08:00
clayjohn
796d35d8b3
Fix generation of irradiance map
2020-01-12 14:45:31 -08:00
Rémi Verschelde
2d6586ec78
Merge pull request #34551 from MadEqua/fix-light-with-skeleton
...
Fix 2D lighting when using skeleton.
2020-01-03 08:32:29 +01:00
Tritium Oxide
bb6f04c9f5
Fix wrong return type
...
`ERROR: _display_error_with_code: CanvasShaderGLES3: Fragment Program Compilation Failed:
0:166(2): error: `return' with wrong type int, in function `map_ninepatch_axis' returning float` caused by #34704
2020-01-01 19:14:51 +07:00
Rémi Verschelde
e4907e50fe
GLES3: Fix false positive in ninepatch axis stretch code
...
See #34704 .
2020-01-01 11:49:58 +01:00
Winston
c9fe11dec1
Use correct omni light attenuation
...
fixes godotengine/godot#34683
2019-12-29 17:22:34 +01:00
Bruno Lourenço
f26c9d650b
Fix 2D lighting when using skeleton.
2019-12-23 00:00:18 +00:00
Rémi Verschelde
e21872f4b9
Merge pull request #34527 from MadEqua/fix-gles3-light-cutoff
...
Fix GLES3 light cutoff.
2019-12-21 23:40:15 +01:00
Bruno Lourenço
d47374385c
Fix GLES3 light cutoff.
2019-12-21 20:52:54 +00:00
Bruno Lourenço
d7f9d71be2
Fix contact shadow when light is outside of viewport.
2019-12-21 16:55:41 +00:00
clayjohn
676f647c74
Add a default POINT_SIZE
2019-12-10 23:08:20 -08:00
Rémi Verschelde
65e6efaa3b
Merge pull request #33836 from clayjohn/blinn-fix
...
Fix Specular Blinn function
2019-12-03 07:50:37 +01:00
PouleyKetchoupp
299b85c46f
Disable shadow map sampling when shadows are not used in GLES3
...
Fixes #20742
2019-11-29 06:21:17 +01:00
clayjohn
334d41d7cc
Fix Specular Blinn function
2019-11-22 22:03:26 -08:00
clayjohn
203fb1b348
Fix GL error by properly using float uniform
2019-11-21 07:44:09 -08:00
clayjohn
cd40154890
Fix issues with environment mapping
2019-11-19 22:30:48 -08:00
Rémi Verschelde
a39aeade5b
Merge pull request #32170 from puthre/ninepatch-fix
...
GLES2 & GLES3 Fixes ninepatch margins for high resolution textures.
2019-10-09 08:33:56 +02:00
Valentin Zagura
100d05cbec
GLES3 Fixes for ninepatch margins when patch size is smaller than the patch texture resolution
...
Scaled ninepatch margins in screen space to be relative of the ninepatch size when the patch size is smaller than the patch texture resolution.
2019-10-07 13:19:27 +01:00
Rémi Verschelde
823c3def72
Fix copyright headers and style issues
2019-09-24 11:52:06 +02:00
Rémi Verschelde
159470df08
Merge pull request #32275 from godotengine/skin_support
...
Added skin support and simplified APIs to override bone position + glTF 2.0 import fixes
2019-09-23 15:02:15 +02:00
Rémi Verschelde
28265fb526
Merge pull request #31202 from azagaya/light-data
...
Create shadow_vec for altering shadow computation
2019-09-19 20:03:04 +02:00
Juan Linietsky
d81ddaf33e
Added skin support and simplified APIs to override bone position.
2019-09-18 19:46:32 -03:00
azagaya
b835868067
Create shadow_vec for altering shadow computation
...
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-09-06 13:55:49 -03:00
Holger Dammertz
aa3ef8893b
Removed clamping of the Linear tonemapping when KEEP_3D_LINEAR
...
Changed the behaviour of the Linear tonemapping operator to not clamp to [0, 1] range
in the case when KEEP_3D_LINEAR is defined. This allows to render values > 1.0 in
floating point texture targets (via Viewport) for further processing or saving high
dynamic range data into files. This only works when no color conversion is active.
2019-08-29 18:14:19 +02:00
Holger Dammertz
8fb80788df
changed the constant scale of cube_normal to -1.0 instead of -1000000.0; this fixes a rendering issue on oculus quest and does not change the computation as the vector is normalized afterwards.
...
Adapted the comment above the code to reflect the change made as it already mentioned that z could be set to 1.
2019-08-17 14:01:55 +02:00
RaphaelHunter
47df933c27
update algorithm about paking float to vec4 to fix shadow shift and change rgba_shdow options
2019-07-28 11:43:01 +08:00
BastiaanOlij
02ea99129e
Adding a new Camera Server implementation to Godot.
...
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-15 21:30:32 +10:00
clayjohn
2b8b1d7c46
added MultiMeshInstance2D node for using MultiMesh in 2D
2019-06-03 12:11:54 -07:00
Rémi Verschelde
603bb98340
Merge pull request #29188 from Calinou/improve-ssao-performance-quality
...
Improve SSAO performance and quality
2019-05-30 14:27:25 +02:00
Hugo Locurcio
eb0cced3c0
Improve SSAO performance and quality
...
This decreases the number of samples significantly, leading to a
notable performance increase with only a very slight loss in
visual quality.
This also tweaks the default SSAO settings to use 3×3 blurring,
which makes noise patterns much less visible.
2019-05-26 12:01:01 +02:00
clayjohn
4c55a909ad
fix radiance map settings
2019-05-25 18:57:32 -07:00
Rémi Verschelde
2b1c3878f9
Merge pull request #29031 from BastiaanOlij/alpha_shadow
...
Implement shadow to opacity
2019-05-23 13:37:54 +02:00
Bastiaan Olij
3ea778e66e
Implement shadow to opacity
2019-05-21 20:07:46 +10:00
clayjohn
cc2d862733
Scale environment lighting correctly in GLES3
2019-05-19 17:59:23 -07:00
clayjohn
55d11330b0
fix lighting bug introduced in clear color changes
2019-05-14 15:04:54 -07:00
Rémi Verschelde
aa3c5f59f2
Merge pull request #27898 from clayjohn/metallic_radiance
...
Added radiance when using clear color
2019-05-14 07:32:01 +02:00
clayjohn
5c252092e1
added radiance when using clear color and fixed brdf
2019-05-13 12:26:54 -07:00
clayjohn
670c1b10b2
fixed bug in mip map sigma
2019-04-12 17:48:38 -07:00
Rémi Verschelde
b753223ac2
Merge pull request #26567 from clayjohn/pixel_snap_artifact
...
Fixed pixel snap precision artifact
2019-03-04 16:58:08 +01:00
clayjohn
b804c491b7
fixed pixel snap precision artifact
2019-03-04 07:18:02 -08:00
Juan Linietsky
2f32a75d2e
Skeletons can now choose between using local or world coords for processing, fixes #26468
2019-03-03 12:24:00 -03:00
Hein-Pieter van Braam
a83e77fded
Explicitly use floating point numbers in the our shaders
...
We need to be explicit about using floating point numbers in our shaders
for compatibility with mobile GLES drivers.
2019-02-24 23:35:10 +00:00
Juan Linietsky
95e34967d8
Fix precision issue with skeletons, closes #26057 , closes #26062
2019-02-22 13:27:19 -03:00
JFonS
32e7641667
Revert back to ignoring LIGHT_VEC for 2D shadows
2019-02-21 12:16:10 +01:00
Rémi Verschelde
5fc86026ca
Fix typos with codespell
...
Using codespell 1.14.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
JFonS
076a342a4e
Make LIGHT_VEC affect 2D shadows again
2019-02-10 21:14:32 +01:00
thomas.herzog
dddfe9a2df
implemented texture_get_data() for TextureLayered
2019-01-23 16:12:29 +01:00
Rémi Verschelde
769341e180
Cleanup after @reduz :)
...
Fixes #25172 .
2019-01-21 11:12:55 +01:00
Juan Linietsky
9ed34d4423
Use GLES2 approach to vertex shading in GLES3, which has been more developed. Fixes #21852
2019-01-14 20:41:12 -03:00
Bastiaan Olij
9f266cf7e5
Override GL_position
2018-12-29 23:56:50 +11:00
PouleyKetchoupp
ab7759dbd1
Fixed fragment shader compilation error on android (S0001: Cannot compare 'float' with 'int')
2018-12-21 20:31:10 +01:00
Bastiaan Olij
f3dd3c0830
Adding option to re-orient our sky
2018-12-15 19:41:34 +11:00
QbieShay
7c55228f5c
fixed uv missing in vertex shader of canvas.
2018-12-13 07:48:30 +01:00
Rémi Verschelde
37e198c320
Merge pull request #23483 from clayjohn/fragment_camera_view
...
Make VIEW vector available in fragment shader
2018-12-11 20:44:41 +01:00
clayjohn
2042d6214e
make VIEW vector available in fragment
2018-12-11 09:44:38 -08:00
Rémi Verschelde
dd06f6ee70
Fix style issues and signature mismatch
2018-11-28 10:21:07 +01:00
Juan Linietsky
af8d941c55
Added luminance capping to avoid glitches on small dots. closes #17996
2018-11-28 01:22:20 -03:00
Juan Linietsky
e6bc152de8
NORMALMAP was not working (no normal being used detected), fixes #9263
2018-11-27 18:05:20 -03:00
Juan Linietsky
a397d3a46a
Avoid voxel cone trace from going full 180 degrees, fixes #20716
2018-11-23 08:42:35 -03:00
Juan Linietsky
78624ad22c
Ensure double sided normalmaps work, fixes #23760
2018-11-21 08:48:33 -03:00
Juan Linietsky
8aa38c9ad8
Fix shader bug likely introduced recently.
2018-11-16 14:30:34 -03:00
Juan Linietsky
bb9127a78b
Removed unnecesary normal multiplication (only culling was really needed), fixes #17776
2018-11-16 10:52:31 -03:00
Juan Linietsky
55f5f4757e
Merge pull request #23248 from dlasalle/fog
...
Add parameters for fog end depth and use alpha as density.
2018-11-14 10:24:55 -03:00
Dominique LaSalle
6eae6247e4
Add parameter for fog max depth and use alpha as density.
2018-11-13 17:19:11 -08:00
JFonS
cbfb7bd613
Make 2D particles work OOTB (again)
2018-11-13 23:25:05 +01:00
Rémi Verschelde
8849d3b47d
Merge pull request #22639 from tagcup/opt
...
Avoid some unnecessary calculations in scene.glsl.
2018-11-12 21:22:57 +01:00
JFonS
85ce4a67ed
Remove animation loop from ParticlesMaterial + improvements to CPUParticles2D
...
Remove animation loop from ParticlesMaterial and move it to
SpatialMaterial for 3D particles and Particles2D for the 2D case.
Added animation to CPUParticles2D as well as the "Convert to
CPUParticles2D" to the PAarticles2D menu.
2018-11-04 15:58:12 +01:00
Dominique LaSalle
f39d14dd61
Fix gles3 shader to actually multiply specular light by rev_amount for fog calculations.
2018-10-22 21:09:34 -07:00
Ferenc Arn
35ea827e83
Avoid some unnecessary calculations in scene.glsl.
2018-10-11 10:34:37 -04:00
Juan Linietsky
e0871b0f52
Baker fixes
2018-10-07 11:18:44 -03:00
Rémi Verschelde
45842c0ea9
Merge pull request #22627 from akien-mga/gles2-pixel-snap
...
GLES2: Implement pixel snap 2D option
2018-10-02 19:09:34 +02:00
Rémi Verschelde
ac2a4771d5
GLES2: Implement pixel snap 2D option
2018-10-02 15:53:24 +02:00
Rémi Verschelde
8c9c1d6882
Merge pull request #21436 from CptPotato/tonemap-fixes
...
tonemapping fixes
2018-10-02 15:42:15 +02:00
Rémi Verschelde
9c93a401b9
Merge pull request #22483 from tagcup/fresnel
...
Restore the Fresnel term in the BRDF.
2018-10-02 15:18:31 +02:00
Bastiaan Olij
a6df366b23
Moving lens distortion shader into drivers and adding GLES2 support
2018-10-02 17:14:43 +10:00
tagcup
9f4e9fcb81
Optimized GGX G function for GLES2.
...
Also changed the mapping of anisotropy to match the common definition.
2018-09-30 16:33:50 -04:00
Ferenc Arn
e94f6aacee
Restore the Fresnel term in the BRDF.
...
Was uncommented in 65fd37c
, mostly likely by mistake since its important.
Also made a few corrections of specular -> specular_blob_intensity (gles2).
2018-09-30 12:17:48 -04:00
Juan Linietsky
0de8309b2c
Many fixes to GLES2 renderer, fixed compilation issues in GLES3 shaders.
2018-09-29 13:49:34 -03:00
Rémi Verschelde
60312915dc
Fix build after 65fd37c1
, using Math_PI
...
Also fix style in shaders.
2018-09-23 18:26:57 +02:00
Juan Linietsky
65fd37c149
-Rewrote GLES2 lighting and shadows and optimized state changes, did many optimizations, added vertex lighting.
...
-Did some fixes to GLES3 too
2018-09-23 12:14:50 -03:00
JFonS
8f4f79c767
Fix lighting of rotated particles in 2D
...
Custom instance transform was not taken into account for normal map
calculation. Also renamed `extra_matrix2` to `extra_matrix_instance` for
more clarity.
2018-09-18 22:58:13 +02:00
luz.paz
08bde5b2de
Misc. typos
...
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
alex-poe
5cd00c3780
fix reinhard tonemapper, modified filmic tonemapper, added internal exposure bias
2018-08-27 10:08:38 +02:00
Rémi Verschelde
4226d56ca9
Style: Enable clang-format on GLSL shaders
...
As of clang-format 6.0.1, putting the `/* clang-format off */` hint
around our "invalid" `[vertex]` and `[shader]` statements isn't enough
to prevent a bogus indent of the next comments and first valid statement,
so we need to enclose that first valid statement in the unformatted chunk.
2018-08-27 07:34:14 +02:00
Juan Linietsky
62233423c7
Fix generation of env map, closes #18880
2018-08-24 13:31:31 -03:00
Rémi Verschelde
1b6d75a599
Style: Fix code formatting in GLES3 shaders
2018-08-24 13:42:18 +02:00
Nick Hahn
66eba18969
Fix handling of normals that approach 1
2018-08-12 12:45:43 +02:00
Hugo Locurcio
31c12f05c4
Tweak the default SpatialMaterial properties
...
Roughness is now set to 1 by default and albedo is now white,
even on meshes that do not have any materials defined.
This means there is no longer a visual difference between a
mesh with no materials defined and a mesh with a default
SpatialMaterial defined.
2018-08-07 17:04:30 +02:00
Juan Linietsky
4b549faaab
transmission was broken, fix was made. Also fixed treshold.
2018-07-22 14:04:11 -03:00
Juan Linietsky
ad88979841
Fix opaque pre pass not casting shadows
2018-07-22 13:18:27 -03:00
Alex Roman
2ce1118faa
Add disable ambient light flag to shaders and materials
2018-07-17 21:30:43 +02:00
alex-poe
37357c86cd
reformatted and restructured tonemap.glsl
2018-07-12 17:10:00 +02:00
alex-2b17x4
7fe75bb43b
added 'whitepoint' to ACES tonemapping
2018-07-11 15:59:14 +02:00