이 주의 학습 키워드
1. 클릭하면 캐릭터 방향을 좌우로 바꾸기
기대 결과 : 클릭을 한다 ▶ 방향이 바뀐다. (좌우)
* 방향을 좌우로 바꾸는 방법은?
클릭할 때마다 direction 에 -1을 곱한다.
즉, 클릭할 때마다 캐릭터 방향의 부호가 바뀜으로써 방향을 좌우로 바꿀 수 있다.
float direction = 0.05f;
float toward = 1.0f;
//
if (Input.GetMouseButtonDown(0))
{
toward *= -1;
direction *= -1;
2. 세 가지 타입의 빗방울 만들기
기대 결과 : 등장하는 빗방울이 3가지 타입으로 랜덤하게 등장한다. (크기,점수, 색깔)
1) type, size, score 세 가지 변수 선언
2) 색깔은 GetComponent<SpriteRenderer>().color 사용
3. if, else if, else 활용
* type = Random.Range : 범위 안의 값 중 랜덤한 하나의 값을 갖게 한다.
TIP ) 변수가 3개라면, if / else if / else 로 처리하는 습관을 갖자!
int type;
float size;
int score;
// Start is called before the first frame update
void Start()
{
float x = Random.Range(-2.7f, 2.7f);
float y = Random.Range(3.0f, 5.0f);
transform.position = new Vector3(x, y, 0);
type = Random.Range(1, 4);
if (type == 1)
{
size = 1.2f;
score = 3;
GetComponent<SpriteRenderer>().color = new Color(100 / 255f, 100 / 255f, 255 / 255f, 255 / 255f);
}
else if (type == 2)
{
size = 1.0f;
score = 2;
GetComponent<SpriteRenderer>().color = new Color(130 / 255f, 130 / 255f, 255 / 255f, 255 / 255f);
}
else
{
size = 0.8f;
score = 1;
GetComponent<SpriteRenderer>().color = new Color(150 / 255f, 150 / 255f, 255 / 255f, 255 / 255f);
}
transform.localScale = new Vector3(size, size, 0);
}
3. GameManager의 역할
GameManager 는 모든 게임에 존재하는 관리자이자 '신'이다.
대표적으로 점수 계산, 다시 시작하기, 재시작하면 아이템 지급하기, 광고 시청 등의 역할을 수행한다.
GameManager 는 무조건 하나여야만 한다!! (게임에 중요한 각종 역할을 수행하기 때문에)
* GameManager 하나만 존재하도록 하는 법 = 싱글톤 화
public static gameManager I;
void Awake()
{
I = this;
}
4. 빗방울 여러 개 떨어지게 하기
아이디어 : 몇 초마다 동작 반복 + 특정 요소를 즉시 생성
두 기능은 모두 GameManager가 수행할 수 있다.
이 때, GameManager에 Prefabs가 필요하다.
Prefabs : 동작을 하나의 틀처럼 인식해 찍어내게 함. (Prefabs는 유니티의 Asset 폴더 밑에 존재)
Instantiate : 같은 동작을 계속 반복하게 함.
이 주의 회고
사전캠프 참여하고 첫 주였다.
월~목 4일 간은 예비군 훈련으로 인해 공부 시간이 많이 부족했다. 쉬는 시간 틈틈이 C# 문법을 공부했다.
사전캠프 1주차 강의를 따라 Unity와 Visual Studio를 설치하고 직접 만져보았다.
코딩이라는 거대한 산 앞에 장비 없이 선 초보 등반자가 된 기분이었다.
[빗물 받는 르탄이] 미니게임을 만들면서 유니티의 기능과 C#의 함수에 대해 공부했다.
백지에서 직접 프로그래밍을 할 수 있는 수준은 안 되지만, 교재를 보고 하나씩 따라하면서 과정을 이해하기 위해 노력하고 있다.
다음 주 본 캠프 시작하는데 조금 떨리고 긴장된다.
잘 적응해서 프로젝트에 기여할 수 있는 좋은 팀원이 되고 싶다.
'게임 개발 일지 > 내일배움캠프 WIL' 카테고리의 다른 글
객체지향 SOLID 원칙 / git commit (0) | 2023.11.26 |
---|---|
C#, Unity 기능 복습 (0) | 2023.11.05 |
댓글