187e5ef258
Let materials' shaders update happen on loader threads
2024-05-06 19:40:00 +02:00
41a2b0e83e
Added premult alpha blending to 3D (spatial) shaders.
...
Co-authored-by: jitspoe <jitspoe@yahoo.com >
Co-authored-by: Clay John <claynjohn@gmail.com >
2024-05-01 00:53:29 +02:00
0c0723c659
Fix shader compilation error when enabling texture MSDF and UV1 Triplanar at the same time
2024-03-15 12:52:28 +08:00
1e2b8992ae
Use raw string literals for BaseMaterial3D shader code generation
...
- Add range hints to all uniforms that match the BaseMaterial3D
property hints, so that ranges in the inspector remain identical
after converting to a shader.
- Add comments to describe selected options within the shader.
This makes it easier to remember what each block of code does.
- Format code to follow the Godot shader language style guide.
2024-03-13 23:54:23 +01:00
f4c6c807eb
Set a minimum of 0.01 for proximity fade to avoid undefined behavior in shader
2024-03-12 17:10:58 -07:00
cd2032a90b
Optimise Object's get_argument_options
2024-02-29 18:00:54 +01:00
eab95698cd
Fix shadows for billboarded Sprite3D's
2024-02-13 10:36:38 +01:00
f04b584ed3
Fix ShaderMaterial::_property_get_revert crash when given non-exist p_name
2024-01-29 10:39:51 +08:00
96a95cb974
Add const lvalue ref to container parameters
2024-01-05 14:49:57 -03:00
ca2f340384
Fix missing autocompletion for inheriting classes
2024-01-03 00:13:04 +01:00
70959a9c04
Fix typo in BaseMaterial3D conversion from 3.x SpatialMaterial
2023-11-23 15:18:03 +01:00
1ec97a7b91
Fix several Material texture parameter updates
2023-11-01 03:10:46 +02:00
73918b0c70
Fixing incorrect normal map when using triplanar world mapping and mesh rotation
2023-10-23 14:53:59 +02:00
45f2ef4c0f
Fix BaseMaterial3D update with certain material settings
2023-10-11 13:51:52 +03:00
45a33cc749
Implement render mode fog_disabled and BaseMaterial3D setting Disable Fog
2023-09-05 18:15:02 +02:00
d275a7487d
Initialize MSDF parameters in BaseMaterial3D with default
2023-07-28 13:24:44 +02:00
de4a3fa151
Unify and streamline connecting to Resource changes
2023-07-17 19:35:57 +02:00
581d081ded
Take eye offset into account for depth in StandardMaterial3D
2023-07-06 21:13:46 +10:00
166643df32
Merge pull request #74937 from bitsawer/fix_uniform_storage
...
Fix shader uniform storage conversions and crash
2023-06-09 11:04:16 +02:00
197b54370a
Fix materials' shaders not updated if loaded on a non-main thread
2023-05-31 12:50:27 +02:00
23c375d6b4
Fix shader uniform storage conversions and crash
2023-05-29 15:17:13 +03:00
69f2bc2751
Improve SelfList and fix error in BaseMaterial3D when running doctool
2023-05-22 16:38:57 +02:00
b6647a5808
Avoid sync issues in materials with scheduled shader updates
2023-05-10 18:53:41 +02:00
12e4323f17
Merge pull request #75427 from Chaosus/shader_fix_groups_ordering
...
Fix shader uniform groups to prevent it sorting in alphabet order
2023-05-05 09:08:37 -07:00
35b06f05a2
Revert "Fix ShaderMaterial uniform type changes"
...
This reverts commit e55c6bfb7b .
2023-04-28 11:37:29 +03:00
e55c6bfb7b
Fix ShaderMaterial uniform type changes
2023-04-25 15:01:56 +03:00
9be0a73294
Add EXPOSURE built in to spatial shaders
...
This allows users to restore light values to pre-pre-exposure amounts
2023-04-12 10:35:13 -07:00
8ea4acee49
Fix shader uniform groups to prevent it sorting in alphabet order
2023-03-28 18:36:10 +03:00
c69b14e96e
Add warnings for unsupported features in mobile and gl_compatibility backends
2023-02-26 12:28:02 -08:00
34fd128723
Fix shader parameter assign
...
-Make sure the remap is created properly if never assigned before.
Fixes #72923 . Supersedes #73066 .
2023-02-18 13:13:54 +01:00
7881422901
make particle billboard take into account non-uniform scale
2023-02-13 21:18:55 +01:00
b4fe514aa3
[Sprite3D/Label3D] Expose alpha antialiasing properties.
2023-01-31 10:46:38 +02:00
1c774a6083
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D.
2023-01-24 12:24:53 +02:00
1dfd236f15
Merge pull request #70377 from dsnopek/server-export-mk2
...
Add "dedicated server" export mode which can strip unneeded visual resources
2023-01-23 22:13:28 +01:00
74458b6e9b
Add "dedicated server" export mode which can strip unneeded visual resources
2023-01-23 13:24:54 -06:00
5b1df48c6c
Convert en_GB spelling to en_US with codespell
2023-01-23 11:02:20 +01:00
7dbc458bb4
Clean up shader parameter remap
...
This PR is a follow up to #64092 , which fixed important issues but it was implemented in an overly complex and inefficient way (because it forced the default code path to always go through string operations).
This cleans up all the shader parameter code.
This fixes #54336 . Also fixes #56219 because, as the new code never queries the RenderingServer on load, potential deadlocks are avoided.
**NOTE**: materials saved between #62972 and #64092 will no longer work and will need to be resaved in an earlier version.
2023-01-21 12:56:28 +01:00
faea9f5c10
Remove SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTURE
...
in favour of texture hints
2023-01-18 19:52:47 -08:00
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
ea33001b95
Add safety-checks before some servers free()
2022-12-29 16:23:38 -05:00
d926be72ed
Use circular fade instead of linear fade for distance fade
...
This makes distance fade look the same regardless of the camera angle,
for all distance fade modes (Pixel Alpha, Pixel Dither, Object Dither).
Distance fade now behaves like fog in this regard.
2022-12-05 22:35:11 +01:00
9a3960daa5
Simplify GDVIRTUAL_REQUIRED_CALL calls
2022-11-30 18:36:57 +01:00
d06a8320e5
Simplify GDVIRTUAL_CALL calls
2022-10-19 00:05:48 +02:00
6d534f6e89
Merge pull request #66221 from Mickeon/painstakingly-appending-ds-en-you-tea-es
...
Rename remaining "*_enable" to "*_enabled"
2022-10-11 16:17:02 +02:00
7ab01450cf
Fix MSVC warning C4702: unreachable code
...
Part of #66537 .
2022-09-28 16:46:48 +02:00
c1b5b68eee
Rename remaining "*_enable" to "*_enabled"
...
Material.`proximity_fade_enable` -> `proximity_fade_enabled`
Material.`set_proximity_fade` -> `set_proximity_fade_enabled`
(Material.`is_proximity_fade_enabled` is unchanged)
Area3D.`reverb_bus_enable` -> `reverb_bus_enabled`
(`set_use_reverb_bus` & `is_using_reverb_bus` are unchanged)
RDPipelineRasterizationState:
`depth_bias_enable` -> `depth_bias_enabled`
`set_depth_bias_enable` -> `set_depth_bias_enabled`
`get_depth_bias_enable` -> `get_depth_bias_enabled`
Bonus:
Area3D.`set_reverb_bus` -> `set_reverb_bus_name`
Area3D.`get_reverb_bus` -> `set_get_reverb_bus_name`
2022-09-21 22:47:46 +02:00
4f0e0f1650
Fix sorting of uniform items in the material properties
...
Co-authored-by: Chia-Hsiang Cheng <garychia@users.noreply.github.com >
2022-09-16 08:59:13 +03:00
b094e4f1a1
Merge pull request #64092 from nathanfranke/shader-uniform
2022-09-14 22:07:15 +02:00
bb657c04fc
Calculate MODELVIEW_NORMAL_MATRIX for billboard materials
...
Solves #65627
2022-09-10 21:08:29 +02:00
82d2a97a83
prefix shader parameters with "shader_parameter/"
2022-09-02 20:41:00 -05:00