본문 바로가기

Unity/Unity2D_TopDown

Unity2D_TopDown - 초상화애니메이션

1. 초상화 이펙트

 (1) - potraitAnimator 와 potraitAnimation 생성

 

(2) - 비어있는 New State 를 기본 상태로 지정, 위에서 생성한 PotraitAnimation을 Animator 창으로 드래그 앤 드랍

    - doEffect Trigger 파라미터를 생성하고 

    - Transition을 아래와같이 구성

    -New State-> PotraitAnim Conditions에 doEffect 추가, Has Exit Time 체크해제, Transition Duration 0 설정 

 

 

-PotraitAnim  -> New State Conditions은 빈상태로 , Has Exit Time 체크, Transition Duration 0 설정

*이렇게 하면 doEffect Trigger에 의해 New State에서 PotraitAnim로 넘어와 애니메이션이 1번 실행되고

  곧바로 다시 New State로 전환된다 (***Trigger 파라미터와 Has Exit Time의 활용)

 

 

(3) - potraitAnimation을 Anchored Position을 이용해 초상화가 살짝 내려갔다가 다시 원위치로 올라오는 애니메이션

      구현

 

 

(4) - 스크립트 작성

    - GameManigerScript에서 상단에 public sprite prePotrait 를 선언하고 inspector창에 아무 NPC 초상화 sprite를

      드래그 앤 드랍

   -  GameManigerScript 대화에 따라 sprite가 변경되도록 구현한 지점에서 

      만약 이전 초상화인 prePotrait와 변경된 초상화인 potrait.sprite가 다르면 초상화애니메이션을 발동(setTrigger("doEffect"))시키고 prePotrait를 변경한 potrait.sprite로 바꾸어 준다 그래야 이후 초상화가 바뀔때마다 

이전 초상화도 함께 바뀌기 전 초상화로 계속 갱신이 된다