영웅 (객체)의 스크립트 코드 안에 스프라이트를 변경할 수있는 가능성을 추가하고 싶습니다.
플레이어가 스페이스 버튼을 누르면 스프라이트가 프로젝트에 이미 추가 된 다른 스프라이트로 바뀝니다.
이를 위해 샘플 코드를 제공해 주시겠습니까?
답변
코드가 주석 처리되었습니다. 즐겨.
public Sprite sprite1; // Drag your first sprite here
public Sprite sprite2; // Drag your second sprite here
private SpriteRenderer spriteRenderer;
void Start ()
{
spriteRenderer = GetComponent<SpriteRenderer>(); // we are accessing the SpriteRenderer that is attached to the Gameobject
if (spriteRenderer.sprite == null) // if the sprite on spriteRenderer is null then
spriteRenderer.sprite = sprite1; // set the sprite to sprite1
}
void Update ()
{
if (Input.GetKeyDown (KeyCode.Space)) // If the space bar is pushed down
{
ChangeTheDamnSprite (); // call method to change sprite
}
}
void ChangeTheDamnSprite ()
{
if (spriteRenderer.sprite == sprite1) // if the spriteRenderer sprite = sprite1 then change to sprite2
{
spriteRenderer.sprite = sprite2;
}
else
{
spriteRenderer.sprite = sprite1; // otherwise change it back to sprite1
}
}
게임 오브젝트에 스프라이트 렌더러가 연결되어 있어야합니다. 새로운 C # 스크립트를 생성하고 GameObject에 첨부하십시오. 괄호 사이에 코드를 붙여 넣으십시오. 여기에서 알아낼 수 있습니다. 🙂