Has anyone got an event collision talking to bp for the Beam emitter ?
I think a work around in case you can’t find one is to fire an invisible projectile behind it (or many dunno what beam setup you go for constant or not). I haven’t done BP experiments with beam particles yet so i’m not sure about the actual question.
Thanks for the reply. One thing I had considered is to set an invisible actor as the target actor for the target module, however besides manually adding the actor can’t find a node to specify the actor via the blueprint ?
I’m not sure but as i recall the beam emitter has a source and target modules. Think those are exposed to blueprints, If you know how to access particle parameters from Blueprints it should be straight forward, Unfortunately i don’t know too much about BPs yet so i can’t be much more of help sorry. However i hope i’ve pointed you in the right direction.
Followed and tried anything I can find but no luck. The parameters are definitely exposed but for some reason can’t change them.
Think there are different options inside of the particle editor in order to have them changed. Did u try changing the source and target type default ones to something like “User set” ?
Yes thanks, like I said I can manually change them just not by blueprint nodes. I created an Emitter BP and in there should be able to use the node “Set Actor Parameter” for particle system component where to specify the “Target Name” for the target module name specified, however no luck.
I was playing around with it last night and what I did is make a blueprint that will randomly change the beam target point to a random bone on my character. Is this the kind of thing you’d like to do? If so, here’s a screenshot that shows how I did it:
Let me know if this is the kind of thing you’d like to reproduce!
I have created a laser beam blueprint which detects collision using traces. I spawn the blueprint actor, pass in source and target destination vectors and use these to update the beam source/target location and trace source/target locations. My beams are all straight-line, so I’m not sure how you’d use this method if you have curved tangents on your beam.
Make sure you have your beam set up with source/target modules like towards the end of this video Intro to Cascade: Creating a Beam Emitter | 07 | v4.2 Tutorial Series | Unreal Engine - YouTube and then when you spawn your blueprint get all you need to do is drag off the created particle emitter actor and use the ‘Set Beam Source Point’ and ‘Set Beam Target Point’ nodes. I have found someone else’s uploaded image here, if you have your beam setup as in the youtube video that image shows all you need to do to move the source and target location.
Thanks timetravel, whichever setup it ends up as seems to just involve setting a location. As far as I am aware if I manage to set the actor for the target it should follow it around, but then it’s just the same as setting location anyway.
Doug when you say “detects collision” that’s where the line trace hits ? so the bp with the line trace deals with the collision. What about the opposite way round, how does the other actor pickup on this ?
The point of using an invisible actor is they can both pickup a collision event.
I’m really wanting to know the proper use of the particle system’s “event generator” to create the collision event, if anyone knows ?
Ah I see, yes that becomes problematic with a trace. Unfortunately I don’t think you can cast straight to whatever you have just hit during the trace.
I worked around this by getting all actors of a current class currently spawned in game (a ball in my case) and calling a custom event in each spawned actor to see if the component reference that had just been hit matched. My apologies if this is unhelpful - a hidden projectile may be best for blanket collision of everything.
Never found a way to cast to any actor either. There is the node “cast to actor class” and used to be “cast to class” but seems a bit redundant.
Just to let you know Doug … Using an Blueprint Interface if you setup in the BP with the Line Trace then with an event created in the Interface you can attach the Hit Actor to it’s “Target Object Reference”. Not sure if your familiar with Interfaces.