Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Particle layer #1842

Merged
merged 13 commits into from
Apr 24, 2020
Merged

Particle layer #1842

merged 13 commits into from
Apr 24, 2020

Conversation

Wibble199
Copy link
Collaborator

@Wibble199 Wibble199 commented Dec 13, 2019

Adds an experimental particle layer that can be customised for different effects. The layer periodically spawns "particles" (from any edge of the canvas or from a configurable region) which are then procedurely animated. The particles can be given an initial velocity in X and Y directions, and then will be affected by an acceleration amount each frame. The particles last for a set amount of time and are removed at the end of their life. They can also be coloured based on their remaining life (so it could, for example fade out over time).

Fire preset demo
Demo of the fire preset

Wibble199 and others added 10 commits April 24, 2020 09:12
This control is based on the equalizer's preview and is able to preview the output of a single layer. Layers wishing to have a preview need to implement the new INotifyRender interface (in the Aurora.Settings.Layers namespace).
Added preview to the particle control.
Does not respect rotated freeform objects, but that would be a real pain and would be doing somewhat expensive trigonomentry to do, so I'm not gonna.
…dition.

This is different to just enabling the layer itself, as disabling this means any currently spawned particles continue as normal.
Similar to acceleration in that it affects the velocity of the particle each frame, but does so as a proportion of the particle's current velocity instead of a fixed amount.
This can be used to slow particles down without having them move in the opposite direction.
Also made the presets apply the default particle layer settings before applying the preset. This means that if more properties are added in future, the presets will use the default values for these.
…he location of the pressed key.

(Note that it currently uses the regular particle layer control and the spawn location needs to be set to region).
@Wibble199 Wibble199 force-pushed the feature/particle-layer branch from b2c7146 to 1e779b9 Compare April 24, 2020 09:10
@Wibble199 Wibble199 marked this pull request as ready for review April 24, 2020 09:11
@Wibble199 Wibble199 force-pushed the feature/particle-layer branch from f17f6ff to 91882e7 Compare April 24, 2020 10:48
diogotr7
diogotr7 previously approved these changes Apr 24, 2020
@diogotr7 diogotr7 merged commit 80ac565 into antonpup:dev Apr 24, 2020
@Wibble199 Wibble199 deleted the feature/particle-layer branch April 24, 2020 14:12
@xQwexx xQwexx mentioned this pull request May 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants