Update leave material with Will's new texture. Adjust the subUV setting since the new texture is a 2 times 2 sprite sheet.
I create a new atmosphere fog particle system. It's used for place in background and give more depth to our environment.
Make two fire fly particle system. The one on the right side also serve as talking tree's eyeball. I set up a simple blue print that contains both particles and a trigger box. As player enter the trigger box, it deactivated the orbit particle and activated the burst particle.
For this week in 2D, I kept on working on my AI butterfly, change some setting for my old particles.
1. Apple falling: enable physic through trigger box.
I am trying to figure out how to make 2 blue print communicate. I have a pickable apple blueprint and a trigger box blueprint.
I created a interface blueprint with one function called toggle on/off.
Inside trigger box blueprint I called toggle on/off function from interactive blueprint. When player enter the trigger volume, it called my toggle on/off function and set the return value to true.
Then inside apple blueprint I make the toggle on/off as my begin event. When the toggle event is true, it will turn simulate physic on my apples inside apple blueprint
2.AI_Butterfly continue from last week
Continue from last week. When the butterfly lands on the mesh, the flying animation stopped, the resting animation began, then the trail particle got deactivated.
Before butterfly take off again, I have the retriggerable delay function in between so that the butterfly would take a rest before it take off again. The duration of the retriggerable delay function is link to a random range which is link to an integer variable that represent its time in flight.
For take off and flying back sequence, I take the landing begin position and set it as my new location and activated the particle trail, play the flight animation and stop the resting animation, reset my time in flight to 0 and reset my upward/forward speed, then delay about 2 second.
Then I enable the collision again, zero out the upward speed, increase the forward speed, increase play rate for flight animation so that it will fly faster farword.
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.
I had my target attractor initial in my construction script which is an interactive component for user that can be place anywhere in the level. To make my butterfly always facing the target attractor so it can fly toward it. I set up a set world rotation function for my butterfly base. The function I used to feed the new rotation is Find Look at Rotation (Find Look at Rotation take my butterfly base to point at my fight target).
I used a lineTraceForObject function to do a collision trace along the path which between butterfly and target point. When it encounters a static mesh obstacle it give out True value.
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.
For 2d this week, I keep working on some effect stuff.
I made a mesh particle for apples falling from tree to the ground.
I slow down the dust particle more
I have the leave initial size randomized and random rotate as it falls down. I also increase the acceleration so leaves fall down faster so it goes with the tree animation.
I also set up another particle for settle movement leaves.
Fixed my god ray flickering problem. Finally, all the parameters are set right and it is usable now.
I will talk about how to use it during class Tomorrow.