C# Sprite swap Fading
Hey people, first time posting.
Got a Small Dilemma here. Im using something similar to this
public Sprite img1 , img2;
void SetSprite()
{
gameObject.GetComponent<SpriteRenderer>().sprite = img1;
}
void SetSprite2()
{
gameObject.GetComponent<SpriteRenderer>().sprite = img2;
}
Now, all find and dandy and working like a charm. My problem is:
void Update () {
if (Camera.main.fieldOfView <= 32f) // If Zoom is less = 32; Hitboxes gets activated & Sprite is changed
{ BLA BLA BLA
So, user scrolls wheel, zooms in and sprite changes, but its very ugly. I Have tried to see if I some how could bake Mathf.lerp, or Mathf.Smoothstep into the transition.
But its in a Update, so.. fade in fade out, fade in, fade out.
I was thinging of setting a public bool and then an If Statment, but did not work as expected.
Have you guys got any ideas, or examples on how to do this better? How would you structure the Bool if that would work?
Thanks People! Really appriciate you taking your time on this.
/Adgn
Answer by Acidgen · Mar 11, 2016 at 02:54 PM
Hi, Sorted by using two Colors pointed to Alpha
As well as two different Bools. Instead of Time.time used Delta time. Works ok, need to clean it thou so please sorry for the messy code.
if (Camera.main.fieldOfView <= 32f) // If Zoom is less = 32; Hitboxes gets activated & Sprite is changed
{
/* THIS IS FOR CUTSHIP */
/* PLEASE CLEAN YOUR SHIT UP */
doneFade2 = false;
if (!doneFade) {
shitb.a = Mathf.SmoothStep(shitb.a, 0, Time.deltaTime * duration);
GetComponent<SpriteRenderer>().color = shitb;
shitb.a = 0;
doneFade = true;
}
this.GetComponent<SpriteRenderer>().sprite = CutShip;
// shit.a = Mathf.SmoothStep(shit.a, 1, t);
shitb.a = Mathf.SmoothStep(shitb.a,1,Time.deltaTime*duration);
GetComponent<SpriteRenderer>().color = shitb;
if (hboxbool==false) {
hitBoxes.SetActive(true);
hboxbool = true;
}
I can prob put a If statment on shitb.color so it ignores walking through that if Alpha is >=1
Hope this solves stuff for other people as well.
/ADGN
Your answer
Follow this Question
Related Questions
Animated Sprites blocked by Canvas 1 Answer
[Solved ]Zoom Main Camera Smoothly 3 Answers
Camera Shake not working due to LateUpdate 0 Answers
everything keeps disappearing 0 Answers
Can you use transform.Translate with pixels instead of units? 0 Answers