-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Description
You can create particle types with different "types" of color behavior.
For example flat constant color like part_type_color1() or fading over lifetime using part_type_color3() or even randomized color with part_type_color_hsv()
However, when inspecting the ptype retrieved by using particle_get_info() we find that it always returns color1,color2 and color3 as struct members with no way to concern what "mode" it is using and even with missing data entirely when thinking about modes such as part_type_color_hsv(). When using static color (see part_type_color1()) we still have color2 and color3 in the struct, but with a value equal to c_white. Which is not really helpful, since the particle couldve also used part_type_color2() mode with c_white as secondary color. This would result in the exact same values.
Either this is a bug or missing functionality.
The struct members should be dynamic depending on which color mode is actually used and then provide all necessary data to rebuild the ptype.
For alpha it at least kind of works. But for color not even interpolation seems to be set up in the info struct.
e.g. my particle has a fade from c_white to c_black (part_type_color2) I expected to at least have color1 be c_white and color3 be c_black and color2 be halfway there (like merge_color(c_white,c_black,0.5) which would match what alpha is doing) but instead it's color2 being c_black, color3 being c_black and color1 being c_white. Not useful if I want a reliable way to reproduce the exact same particle type from scratch.
Which version of GameMaker are you reporting this issue for?
IDE v2024.14.3.217 Runtime v2024.14.3.260
Which operating system(s) are you seeing the problem on?
Windows 10.0.26100.0
Which platform(s) are you seeing the problem on?
Windows
Metadata
Metadata
Labels
Type
Projects
Status