Commit Graph

92 Commits

Author SHA1 Message Date
Rémi Verschelde de329556f7
Merge pull request #91449 from Arnklit/particles-emission-ring-shape-fix2
Fix sqrt application for radius in particle ring emission
2024-05-14 18:09:47 +02:00
Kasper Arnklit Frandsen 94eefe168a Fix sqrt application for radius in particle ring emission 2024-05-14 12:22:21 +01:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
kobewi a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
Rémi Verschelde 16eb8dbdc0
Merge pull request #89595 from apples/89559-cpuparticles3d-angle-rotate_y-fix
Fix `CPUParticles3D` using angle incorrectly when `ROTATE_Y` is set.
2024-05-06 15:14:53 +02:00
Kasper Arnklit Frandsen af22d504da Fix particle cylinder emission shape random distribution 2024-04-30 17:24:58 +01:00
Kasper Frandsen f8d08a8376 fix: avoid shader crash on null vector and negative x vector 2024-04-17 17:33:30 +01:00
QbieShay 1d81068be7 Fixed INSTANCE_CUSTOM.w not being assigned correctly in CPUParticles 2D and 3D 2024-04-01 14:00:40 +02:00
Apples a002b212df Fixed CPUParticles3D using angle incorrectly when ROTATE_Y is set. 2024-03-17 01:07:10 -05:00
Arman Elgudzhyan c41725c9c6 Removed unnecessary AABB initialization for CPUParticles
Setting an AABB manually for CPUParticles unnecessarily registers as a custom AABB and can cause issues on some platforms and hardware.
2024-02-20 09:48:18 -08:00
Rémi Verschelde 21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
This reverts commit d3852deaa4.
2024-02-17 19:03:21 +01:00
Arman Elgudzhyan ec6518d9cd Custom ("visiblity") AABB support for CPUParticles
- Improves performance by reducing time spent on AABB generation.
- Also adds an option to generate the AABB manually in the CPUParticles3D dropdown.
2024-02-15 22:37:07 -08:00
RedMser d3852deaa4 Update Node::get_configuration_warnings signature 2024-02-08 23:05:20 +01:00
Hendrik Brucker 7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
HolonProduction a1c0d206e8 Add `finished` signal to CPUParticles 2023-07-12 13:45:02 +02:00
Ninni Pipping dcd2b883eb Use NULL instead of COND checks when appropriate
Restricted to scene
2023-06-10 08:56:30 +02:00
Hugo Locurcio fc4ec42a09
Increase precision in particle damping properties in the editor 2023-06-07 15:26:02 +02:00
clayjohn 821917ba9f Use angle_rand to calculate base_angle in particles process material 2023-04-13 15:10:47 -07:00
RedworkDE 89980dd9c9 Fix buffer overrun in CPUParticles3D 2023-03-07 15:46:51 +01:00
Albin 82b90c0e08 Remove visual limit for damping in CPUParticles
Issue #56324 notes that you may can't set the damping property of
CPUParticles2D to anything more that 100 in the editor inspector
while you may set it to anything in code, this is considered a bug and
changed in this commit
2023-02-19 12:47:34 +01:00
Rémi Verschelde 91713ced81
Merge pull request #70716 from Calinou/particles-tweak-animation-offset-property-hint
Tweak particles animation offset property hint to allow more precise values
2023-01-10 11:01:14 +01:00
Rémi Verschelde 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
Adam Scott ea33001b95 Add safety-checks before some servers `free()` 2022-12-29 16:23:38 -05:00
Hugo Locurcio 8df24835e0
Tweak particles animation offset property hint to allow more precise values
Values above 1.0 (or below 0.0) are no longer allowed, as these make
no visual difference whatsoever (and may cause particles not to appear
at all if looping is disabled).
2022-12-29 22:15:17 +01:00
Markus Sauermann 3b14f0334c Remove redundant Variant-types initializations 2022-11-14 19:35:19 +01:00
bruvzg 0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Marc Gilleron aed3822a93 Change return type of `get_configuration_warnings` to `PackedStringArray` 2022-09-19 16:43:15 +01:00
Hugo Locurcio f7292dbeb3
Rename `or_lesser` range property hint to `or_less`
"less" should be used for quantity, rather than "lesser".

Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
Hugo Locurcio ae18928748
Rename Curve/Curve2D/Curve3D/Gradient `interpolate()` to `sample()`
"sampling" is a more accurate term than "interpolating" for what's
happening when using that function.
2022-08-30 22:08:38 +02:00
Rémi Verschelde f9f2446972
Merge pull request #64367 from Mickeon/rename-var-to-str
Rename `str2var` to `str_to_var` and similar
2022-08-26 23:04:06 +02:00
Micky 59e11934d8 Rename `str2var` to `str_to_var` and similar
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too.

- `var2str` -> `var_to_str`
- `str2var` -> `str_to_var`
- `bytes2var` -> `bytes_to_var`
- `bytes2var_with_objects` -> `bytes_to_var_with_objects`
- `var2bytes` -> `var_to_bytes`
- `var2bytes_with_objects` -> `var_to_bytes_with_objects`
- `linear2db` -> `linear_to_db`
- `db2linear` -> `db_to_linear`
- `deg2rad` -> `deg_to_rad`
- `rad2deg` -> `rad_to_deg`

- `dict2inst` -> `dict_to_inst`
- `inst2dict` -> `inst_to_dict`
2022-08-26 14:58:22 +02:00
Micky 723bf85145 Rename ParticlesMaterial to ParticleProcessMaterial
Also affects their file names, related classes and documentation.
2022-08-26 02:53:08 +02:00
Yuri Sizov 1a24c9e14b Make `_validate_property` a multilevel method 2022-08-22 18:35:11 +03:00
Rémi Verschelde 5d9e56ecec Particles: Fix missing configuration warning updates
Fixes #33488.
2022-07-03 16:04:20 +02:00
Aaron Franke 5dc3bfb80e
Use suffixes for units in nodes and resources 2022-05-19 14:34:27 -05:00
Aaron Franke fa7a7795f0
Rename Basis get_axis to get_column, remove redundant methods 2022-05-03 09:37:47 -05:00
Aaron Franke 1bf94dff3a
Rename Basis "elements" to "rows" 2022-04-29 08:02:56 -05: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
Rémi Verschelde acc9b5b390
Merge pull request #55399 from RPicster/particlesmaterial-sphere-emittershape
ParticleMaterial: Sphere emission shape emitting from the volume.
2022-03-18 08:21:59 +01:00
reduz 6f51eca1e3 Discern between virtual and abstract class bindings
* Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract".
* Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions.
* Converted a large amount of classes from "abstract" to "virtual" where it makes sense.

Most classes that make sense have been converted. Missing:

* Physics servers
* VideoStream
* Script* classes.

which will go in a separate PR due to the complexity involved.
2022-03-10 12:28:11 +01:00
Rémi Verschelde 0f5455230c
Use `switch` consistently in `_notification` (`scene` folder) 2022-02-15 18:44:55 +01: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
Rémi Verschelde 3c448437f6
Merge pull request #55263 from RPicster/ParticleMaterial-random-start-color 2021-12-10 10:06:46 +01:00
Aaron Franke e9808e3d9a
Add a double-precision editor build to CI 2021-12-09 09:52:48 -06:00
Raffaele Picca 76e2c87f57 Fixed sphere emission shape to emit particles in a spheres volume and added "Sphere Surface" to keep the old behaviour. 2021-12-06 20:48:02 +01:00
Raffaele Picca ddf82697d7 Random initial color parameter for ParticleMaterial
Works with 2D and 3D GPU Particles
2021-12-03 13:58:17 +01:00
Raffaele Picca 459e2a4b6f Fixed texture animation speed when using random lifetime ( Particle2D gpu + cpu) as mentioned here: https://github.com/godotengine/godot/issues/54993 2021-11-26 01:12:23 +01:00
Andrii Doroshenko (Xrayez) 6742a338a8 Rename `GradientTexture` to `GradientTexture1D`
1. Explicit and unambiguous when comparing to `GradientTexture2D`
2. Consistent with other class names where 1D is used in the engine.
2021-11-07 15:11:04 +02: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
reduz d03b7fbe09 Refactored Node3D rotation modes
* Made the Basis euler orders indexed via enum.
* Node3D has a new rotation_order property to choose Euler rotation order.
* Node3D has also a rotation_mode property to choose between Euler, Quaternion and Basis

Exposing these modes as well as the order makes Godot a lot friendlier for animators, which can choose the best way to interpolate rotations.
The new *Basis* mode makes the (exposed) transform property obsolete, so it was removed (can still be accessed by code of course).
2021-10-25 14:34:00 -03:00