Patrick
323ff657c0
Fix LinearDepth calculation for GLES3
...
This change will calculate the depth ndc differently for GLES3 and Vulkan as described in here:
stable:
https://docs.godotengine.org/en/stable/tutorials/shaders/advanced_postprocessing.html
godot 4 with vulkan:
https://docs.godotengine.org/en/latest/tutorials/shaders/advanced_postprocessing.html
2022-08-31 21:00:13 +02:00
Patrick Exner
55bbcc54e7
Implement custom non-trivial shader functions
2022-08-27 22:59:12 +02:00
Clay John
547e64d226
Merge pull request #63999 from QbieShay/qbie/vs-qol
...
Quality of life visual shaders updates
2022-08-18 14:47:23 -06:00
QbieShay
ecbeb8de1b
Improve visual shader defaults for quality of life
...
- multiply part of addmultiply defaults to 1
- curvetexture's repeat is turned off
- vectors into float takes first component instead of average
2022-08-12 19:39:56 +02:00
Rémi Verschelde
f754dd20be
Merge pull request #62454 from Geometror/reflect-refract-vec2-vec4
...
Allow for vec2/vec4 to be used in reflect and refract
2022-08-07 19:16:05 +02:00
Hendrik Brucker
b8d5f4bdd5
Allow vec2 and vec4 for reflect and refract
2022-08-07 18:03:16 +02:00
Hugo Locurcio
813f6a5d57
Add `hint_transparent` to use a transparent black placeholder texture
...
This can be used in shaders to avoid the need to supply a transparent
placeholder texture manually.
2022-08-01 23:38:06 +02:00
Aaron Record
14df02b21f
Fix typo "Frac" instead of "Fract"
2022-06-05 19:20:32 -06:00
Rémi Verschelde
1314e6cbcc
Merge pull request #60803 from Chaosus/shader_hint_rename
...
Rename `hint_albedo`, `hint_white/black` in shaders
2022-05-24 08:15:33 +02:00
reduz
746dddc067
Replace most uses of Map by HashMap
...
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
(order matters) but use is discouraged.
There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Yuri Roubinsky
a8bbe570ca
Rename `hint_albedo`, `hint_white/black` in shaders
2022-05-09 22:50:18 +03:00
Yuri Rubinsky
033e211724
Merge pull request #60845 from Chaosus/vs_color_func
2022-05-09 21:34:34 +03:00
Yuri Roubinsky
ee1b7a033d
Push `HSV2RGB/RGB2HSV` to `ColorFunc` (from `VecFunc`) in visual shaders
2022-05-07 09:49:12 +03:00
Yuri Roubinsky
edd3b1274e
Change output port of `VisualShaderNodeColorUniform` to vec4
2022-05-07 08:40:19 +03:00
Aaron Franke
fa7a7795f0
Rename Basis get_axis to get_column, remove redundant methods
2022-05-03 09:37:47 -05:00
Yuri Roubinsky
8bf632240d
Continue to improve vector4 type in visual shaders
2022-04-22 22:29:26 +03:00
Hendrik Brucker
cf58d23a72
Add Vector4 to VisualShader
2022-04-12 19:09:29 +02:00
Rémi Verschelde
7119d355eb
String: Remove TTR and DTR defines in non-tools build
...
This ensures we don't use TTR in runtime code, as it's specifically meant
to source translations for the editor.
2022-03-28 20:26:35 +02:00
Yuri Roubinsky
0d9aecd967
Rename several transform built-ins in shaders
2022-03-18 12:10:55 +03:00
Yuri Roubinsky
4d6790e9df
Add `_get_func_code/_is_available` virtual functions to custom nodes
2022-03-08 16:23:44 +03:00
Markus Sauermann
79a75cd683
simplify calculation of max in grayscale
2022-02-20 18:36:46 +01:00
Yuri Roubinsky
a6e280c5de
Add some more fixes to visual shader
2022-02-07 11:28:42 +03:00
Yuri Roubinsky
db18faf660
Rename `PORT_TYPE_VECTOR` to `PORT_TYPE_VECTOR_3D`
2022-02-06 20:15:28 +03:00
Yuri Roubinsky
59af063636
Add support for 2D vector type to visual shaders
2022-02-02 19:59:34 +03:00
Yuri Roubinsky
88b2afa28f
[VisualShader] Merge scalar and vector derivative functions into one
2022-01-28 22:19:10 +03:00
Yuri Roubinsky
538cff1351
Fix default input port hints for some modes in visual shader
2022-01-22 11:12:56 +03:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Yuri Roubinsky
1eb40904ce
Add texture filtering properties to `VisualShaderNodeTextureUniform`
2021-12-16 11:50:33 +03:00
Hugo Locurcio
92e9cca5be
Rename `hint_aniso` to `hint_anisotropy` in the shader language
...
The word "anisotropy" is used in full form in BaseMaterial3D's
anisotropy-related properties.
2021-12-10 17:41:17 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
...
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Yuri Roubinsky
b12fea5b52
Add bitwise operators to `VisualShaderNodeIntOp`
2021-12-03 12:48:35 +03:00
Yuri Roubinsky
d0fbc467a6
Fix editor crash due incorrect setup of default texture in visual shader
2021-11-12 18:23:45 +03:00
Yuri Roubinsky
826e781bfa
Fix default_texture_param in shader pipeline to support uniform arrays
2021-11-12 12:53:40 +03:00
Yuri Roubinsky
80b563672b
Added `MeshEmitter` node for particles in visual shader
2021-11-06 17:45:38 +03:00
Yuri Roubinsky
e270644b20
Add a default input parameter field to CurveTexture (in visual shaders)
2021-10-13 15:25:12 +03:00
Yuri Roubinsky
e537a1f10e
Added missed limiters for Visual Shader node enums
2021-08-15 19:10:51 +03:00
Rémi Verschelde
24ec20414a
Merge pull request #50114 from Chaosus/vs_constants
...
Few improvements for constants in visual shader
2021-08-13 14:45:13 +02:00
Rémi Verschelde
f0e420e981
Merge pull request #51519 from Chaosus/vs_transform_operator
...
Changed `TransformMult` node to `TransformOp` in visual shaders
2021-08-13 14:44:14 +02:00
Yuri Roubinsky
c43b7c113f
Fix printing error about unsupported modifier on `TransformUniform`
2021-08-12 19:40:45 +03:00
Yuri Roubinsky
9cf158019d
Changed `TransformMult` node to `TransformOp` in visual shaders
2021-08-11 22:05:04 +03:00
Yuri Roubinsky
0eb97c11cf
Few improvements for constants in visual shader
2021-08-11 13:14:16 +03:00
Rémi Verschelde
394191c02f
Merge pull request #50605 from Calinou/tweak-shader-code-style
...
Use C++11 raw literals for shader code to improve readability
2021-07-20 10:05:13 +02:00
Hugo Locurcio
abc38b8d66
Use C++11 raw literals for shader code to improve readability
...
In files that have lots of branching, `\t` was replaced with a
tab character instead.
2021-07-19 08:19:50 +02:00
reduz
6631f66c2a
Optimize StringName usage
...
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
Rémi Verschelde
536825d004
Rename Curve3Texture to CurveXYZTexture
...
Neither name is a perfect match but `Curve3Texture` looked too similar to
`CurveTexture` and `Curve3D`, which made things confusing when picking a
texture type or browsing the API reference.
2021-07-14 00:30:58 +02:00
Yuri Roubinsky
4cf2f79892
Added Curve3Texture to Visual Shaders
2021-07-04 12:21:19 +03:00
Yuri Roubinsky
f632e36ae5
Continuation of work on visual particles system
2021-06-07 20:33:17 +03:00
Yuri Roubinsky
b2d2822a39
Adds `UVFunc` for panning/scaling on UV's to VisualShader's.
2021-06-07 08:31:48 +03:00
Aaron Franke
08a85352fb
Rename Variant TRANSFORM to TRANSFORM3D
...
Also _transform to _transform3d
2021-06-03 07:30:01 -04:00
Aaron Franke
de3f6699a5
Rename Transform to Transform3D in core
2021-06-03 07:30:01 -04:00