Hi,
I'm an inexperienced developer and I'm not sure how I should be setting the ParticleGroup of a ObiParticleAttachment component via c# script.
I've checked the sample code and google, but it's still holding me up, anyone care to help out?
Thanks in advance,
Bobs
Anyone able to assist? this is still holding me back.
Thanks
(09-01-2020, 03:17 PM)Bobsalot Wrote: [ -> ]Anyone able to assist? this is still holding me back.
Thanks
Hi Bob,
Particle groups are stored in the "groups" list of the blueprint. So simply do:
Code:
attachment.particleGroup = blueprint.groups[index];
(If you don't already have a reference to the actor's blueprint, you can get it like this):
Code:
var blueprint = attachment.actor.blueprint;
That's it.
You can see an example in ObiParticleAttachmentEditor.cs, which is the script for the particle group inspector.
There you'll see we use a GenericMenu to show a dropdown menu listing all the particle groups in the blueprint (by name). When the user picks one, the OnParticleGroupSelected() method is called (passing the group as a parameter). This method then assigns the particle group to the attachment's
particleGroup property.
(11-01-2020, 03:22 PM)josemendez Wrote: [ -> ]Hi Bob,
Particle groups are stored in the "groups" list of the blueprint. So simply do:
Code:
attachment.particleGroup = blueprint.groups[index];
(If you don't already have a reference to the actor's blueprint, you can get it like this):
Code:
var blueprint = attachment.actor.blueprint;
That's it.
You can see an example in ObiParticleAttachmentEditor.cs, which is the script for the particle group inspector.
There you'll see we use a GenericMenu to show a dropdown menu listing all the particle groups in the blueprint (by name). When the user picks one, the OnParticleGroupSelected() method is called (passing the group as a parameter). This method then assigns the particle group to the attachment's particleGroup property.
Thanks, Jose! Much appreciated
(11-01-2020, 03:22 PM)josemendez Wrote: [ -> ]Hi Bob,
Particle groups are stored in the "groups" list of the blueprint. So simply do:
Code:
attachment.particleGroup = blueprint.groups[index];
(If you don't already have a reference to the actor's blueprint, you can get it like this):
Code:
var blueprint = attachment.actor.blueprint;
That's it.
You can see an example in ObiParticleAttachmentEditor.cs, which is the script for the particle group inspector.
There you'll see we use a GenericMenu to show a dropdown menu listing all the particle groups in the blueprint (by name). When the user picks one, the OnParticleGroupSelected() method is called (passing the group as a parameter). This method then assigns the particle group to the attachment's particleGroup property.
Is there a way to access the particles within that group, so you can create particles groups and then do different things with them?
(23-01-2020, 11:09 AM)jalee Wrote: [ -> ]Is there a way to access the particles within that group, so you can create particles groups and then do different things with them?
Yes, that's the point of particle groups.
A particle group contains a List<int> of particle indices in the actor:
Code:
group.particleIndices