This week for 2d class. We are working on adding more details to our environment.
I made a particle system for smoke coming out from Tinman's house.
It's a very simple set up.
I used flip book texture of smoke from starter content to make my particle material.
I also made some adjustment on leave texture. I change the blend mode to translucent instead mask since GPU particle's collision module do not work with opaque material.
I also increase the life time range on leaves particles and add collision module so that leave will hit the ground and stay for a while then died
One of the feed back from last week is that we want our falling apple pickable. I discard the apple particles since it can not reference class blueprint as its mesh data.
Kay made a trigger box for the tree animation. I call the trigger box on actor beginoverlap function in level blueprint and pipe it to a spawn actor function that would trigger physic on apple blueprint class which is pick-able.
Another task for me this week is making some flying butterflies in the scene. I found a butterfly with AI behavior example in UE4 example content, so I decide to recreate a similar AI behavior butterfly blueprint for our level.
The major components in this blue print is 2 plane meshes as butterfly's wings and a particle trail and several arrow component as my position and target indicators.
The texture is created by Leah. I made a very simple material for wings.
In my construction script, I assigned material to my mesh and the initial location for my attractor.
First thing I did is setting up butterfly animation through blueprint with set Relative rotation function, set relative location function and timeline. I have left wing rotate 80 degree on x, right wing rotate 80 degree on, and the butterfly body doing a slightly move up and down. My timeline is set to loop and my length of animation is 0.5 second so that my butterfly flip twice every second.
Now, the butterfly is flipping its wing, we want it to fly forward with time. I set up a float variable data second which gets its value from event tick and a boolean variable Fly forward with true as my default. To make it actually fly foward, I have the forward speed (position x) set to 100 and multiply to my delta second and feed into my add localoffset funcion that drive my butterfly foward with my delta time variable.
Then I link a Branch statement after the line Trace function. When it is true( means butterfly hit something), it plays my butterfly landing animation for once.
After landing animation is finished, 3 things happened.
1. the butterfly flying animation is stopped.
2.resting animation is played
3. deactivate my butterfly trail particles,
After some delay, butterfly got reactivated. This is the part I haven't really figure out tho.