C#스크립트를 생성후에 작성합니다.
using UnityEngine;
using System.Collections;
public class Test1: MonoBehaviour {
// 빨간색 material과 초록색 material을 선언하고 private 타입으로 해당 클래스에서만 사용가능하도록 선언합니다.
// 이때 [SerializeField]를 private 앞에 붙여주면 다른 클래스에서는 접근이 불가능하지만 인스펙터에서는 접근이
// 가능합니다.
[SerializeField]
private Material red_mat;
[SerializeField]
private Material green_mat;
private MeshRenderer mesh;
// start 메소드는 게임이 실행되었을 떄 한번만 실행되는 메소드입니다.
// start 메소드에서 MeshRenderer를 가져와서 mesh 변수에 저장합니다.
void Start () {
mesh = GetComponent<MeshRenderer> ();
}
// update 메소드는 실행 후 매초마다 실행되는 메소드입니다.
// Input.GetMouseButton(0)로 입력값이 0이라면 왼쪽마우스 버튼이 눌린것이고 컴포넌트의 색을 초록색으로 변화
// 시킵니다.
// false값을 반환한다면 왼쪽마우스 버튼을 누른 상태가 아니기 떄문에 컴포넌트의 색은 빨간색입니다.
void Update () {
if(Input.GetMouseButton(0)){
mesh.material = green_mat;
}else{
mesh.material = red_mat;
}
}
}
C#스크립트를 Inspector창에 넣어주고 Red_mat과 Green_mat에 맞는 material을 넣어줍니다.
'GAME > 유니티' 카테고리의 다른 글
플레이어 설정 (0) | 2022.03.10 |
---|---|
컴포넌트 패턴 (0) | 2022.03.04 |
Instantiate() 메소드 (0) | 2021.06.01 |
1.유니티 시작하기 (0) | 2021.05.26 |