Commit Graph

119 Commits

Author SHA1 Message Date
Yuri Roubinsky
f0a58af12f Rename shader hint filter_anisotropy to filter_anisotropic 2021-12-15 22:12:38 +03:00
Yuri Roubinsky
25a2241e7d Fix shader array parsing in variable declaration 2021-12-15 17:54:15 +03:00
Rémi Verschelde
de8348a9b3
Merge pull request #55903 from Chaosus/shader_struct 2021-12-15 13:07:48 +01:00
Yuri Roubinsky
09185d76ac Rename shader hint filter_aniso to filter_anisotropy 2021-12-15 13:18:32 +03:00
Yuri Roubinsky
31cc6ba622 Allow declaring multiple members in one expression in shader structs 2021-12-13 19:10:08 +03:00
Yuri Roubinsky
8862d1426d Restore shader parsing errors with lack of semicolon in a block 2021-12-11 17:30:40 +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
Yuri Roubinsky
bcbcf14469 Refactor constant suffix parsing in a shader 2021-12-10 15:38:27 +03:00
Yuri Roubinsky
dcf3594500
Merge pull request #55763 from Chaosus/shader_hint_completion 2021-12-10 11:44:01 +03:00
Yuri Roubinsky
b66510d509 Added completion for uniform hints in a shader 2021-12-10 10:12:25 +03: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
76f6c0849c Make compile shader function to use struct instead long parameter list 2021-12-08 11:34:40 +03:00
Yuri Roubinsky
10b10ae1fa Fix ^= operator in shaders 2021-12-03 10:20:44 +03:00
Yuri Roubinsky
5ee73dc5a6 Fix shader crash when using existed constant name for struct 2021-12-01 18:11:45 +03:00
Yuri Roubinsky
a48c205191 Fix declaring array size twice in global shader constant 2021-12-01 16:44:25 +03:00
Yuri Roubinsky
5ba93619fa Allow using empty statements in the shader, added formatting warning 2021-12-01 11:52:25 +03:00
Rémi Verschelde
5643f5e616
Merge pull request #55490 from Chaosus/fix_shader_crash 2021-11-30 20:13:12 +01:00
Yuri Roubinsky
be7c03779a Fix shader crash when assigning array to non-array in global constant 2021-11-30 21:28:55 +03:00
Yuri Roubinsky
6e80e97b0f Fix built-in(PI, TAU, E) assignment to a global constant in a shader 2021-11-29 10:32:36 +03:00
Yuri Roubinsky
9b1f8f7a96 Revert "Pushes array of uniforms to first place in the buffer" 2021-11-25 16:13:19 +03:00
Lightning_A
e078f970db Rename remove() to remove_at() when removing by index 2021-11-23 18:58:57 -07:00
Yuri Roubinsky
c7043dbfdc Prevent return statement from using in block in shader main functions 2021-11-23 10:36:33 +03:00
Yuri Roubinsky
f4c0e90fd9 Allow passing non-variable constant to const function param in shaders 2021-11-19 12:14:13 +03:00
Yuri Roubinsky
bbfa5f29c7 Pushes array of uniforms to first place in the buffer to prevent bug 2021-11-07 23:30:09 +03:00
Rémi Verschelde
02ae47154c
Merge pull request #54356 from Chaosus/shader_fix_matrix_autocompletion 2021-11-01 14:06:04 +01:00
clayjohn
1b2cd9f251 Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFog
Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
2021-10-28 22:02:23 -07:00
Yuri Roubinsky
04a2053f9b Removed incorrect autocompletion of matrixes in shader 2021-10-28 20:21:18 +03:00
Rémi Verschelde
3b11e33a09
clang-format: Disable alignment of operands, too unreliable
Sets `AlignOperands` to `DontAlign`.

`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 15:19:35 +02:00
Yuri Roubinsky
57fd362fe1 Prevent shader crash when passing constant expression to textureGather 2021-10-21 19:46:05 +03:00
Yuri Roubinsky
e9b7ffd1fa Added few more built-ins to shader language 2021-10-13 20:27:36 +03:00
Rémi Verschelde
09b0293fad
Merge pull request #53066 from Chaosus/shader_funcs 2021-10-10 21:37:07 +02:00
Yuri Roubinsky
b1ac3e256f Allow declare the shader arrays with a size defined before identifier 2021-10-08 10:28:31 +03:00
Yuri Roubinsky
e707391fb8 Fix shader crash when passing array to index expression 2021-10-07 10:48:32 +03:00
Yuri Roubinsky
be6f36a66d Add missing shader built-ins 2021-10-05 20:50:26 +03:00
Yuri Roubinsky
7c07ae4c50 Fix shader crash when passing array.length to functions
and similar cases
2021-10-05 12:49:59 +03:00
Yuri Roubinsky
69ece73653 Fix syntax parsing error of uniform arrays declaration in shader 2021-10-04 23:19:43 +03:00
Yuri Roubinsky
6873ecaaf9 Added support for uniform arrays in shaders 2021-10-04 13:57:44 +03:00
Lightning_A
c63b18507d Use range iterators for Map 2021-09-30 15:09:12 -06:00
Yuri Roubinsky
e9e21a592e Prevents editor crash when compare with negative float in shader 2021-09-22 13:26:40 +03:00
Yuri Roubinsky
f68d3f67b5 Fix shader crash when passing array to built-in function without index 2021-09-18 14:05:14 +03:00
reduz
700f9d916d More fixes to mobile renderer
* Specify all precision qualifiers
* Makes renderer work on Adreno Vulkan
2021-08-18 12:20:19 -03:00
Yuri Roubinsky
fa96c98bdf Fix shader crash when using local var with the same name as varying 2021-08-13 09:20:16 +03:00
Rémi Verschelde
b63af73435
Merge pull request #51391 from Chaosus/shader_param_names
Added parameter names to shader built-in function autocompletion
2021-08-12 14:58:11 +02:00
Yuri Roubinsky
fb37846b00 Added parameter names to shader built-in function autocompletion 2021-08-12 11:19:53 +03:00
Yuri Roubinsky
efc6b29601
Merge pull request #51505 from Chaosus/shader_fix_shadetype-errorline 2021-08-11 14:46:04 +03:00
Yuri Roubinsky
2fb5231bbc Break futher shader compilation after missing ; aftershader_type 2021-08-11 12:37:59 +03:00
Yuri Roubinsky
0f42a29864 Allow using more assignment operators on matrixes in shaders 2021-08-11 11:51:39 +03:00
Yuri Roubinsky
fead1595f9 Fix shader crash when using varying array in fragment->light context 2021-08-11 09:44:00 +03:00
Yuri Roubinsky
c082982a47 Fix editor crash if passing index as variable to function parameter 2021-07-26 17:42:52 +03:00
Yuri Roubinsky
b47b3a9957 Prevents shader crashing if varying assigned incorrectly 2021-07-26 14:47:14 +03:00