오늘은 그동안 만들었던 똑같은 카드 찾기 게임을
다시금 정리하는 시간을 가졌다.
그래도 강의를 들으며 예제를 따라 만들었을 때, 나는 꽤 잘 알고 있다고 생각했지만,
튜터님과 함께 수업을 하고 질문도 하니
의외로 잘 모르고 있었다는 생각이 들었다.
항상 GameManager.cs 의
Start 함수에 게임의 시간을 설정했었는데
Time.deltaTime이 문자 그대로 해석을 해도
'시간차'를 의미하는 건 알고 있었지만
정확히 '언제부터 언제까지의' 시간차를 의미하는 지는 몰랐다.
하지만, 이는 fps(frames per second, 단위 시간(초)당 프레임의 수)와 관계가 있으며
60fps로 설정할 시 1/60초에 1프레임이 흘러가며
지금 우리가 느끼는 것과 똑같은 시간이 흘러가는 것이다.
잘 생각해보면 당연하면서도 중요한 개념이다.
Visual Studio를 다룰 때 가끔 처음보는 생소한 함수가 나오면
해당 함수가 어떤 기능을 하고, 들어가는 파라미터는 뭔지,
나오는 값의 형식은 어떤 것인지 잘 모를 때가 많다.
특히나 이제 막 C#을 배워서 툴을 다루는 나에게는 비일비재하다.
여기서 함수의 정의를 쉽게 열람할 수 있는 단축키가 있는데,
F12이다.
물론, 거의 대부분은 영어 독해를 해야 알아 먹을 수 있지만,
함수 정의의 구조를 봐서 어떤 값을 내뱉는지 알 수 있는 것만으로도
충분히 값어치가 있는 정보라고 생각한다.
카드 게임 만들 때 4x4 배열의 카드를 배치할 때 썼던 코드가
행렬의 구조를 게임 내에 구현할 때 매우 자주 쓰인다고 한다.
for 문 {
x값 = i / 4
y값 = i % 4
}
이런 형태이다.
이 외에도 Invoke는 지연 실행을 의미하는 것이고,
어제 한참 고민했던 자식 오브젝트에 접근하는 법을 질문했다.
하지만, 제대로 적용하기 엔 내 실력이 아직 부족한 것 같다.
이로써 짧다면 짧고 길다면 긴 사전캠프가 마무리 되었는데,
내가 가장 의의를 두고 싶은 점은
Unity로 게임을 개발하는 데 어떻게 접근해야 하는 지를 알게 되었다는 것이다.
이제 어떤 게임을 마주하더라도
대강은, 게임의 구조가 생각날 것 같다.
조만간 github에 예전에 노트북에서 작업했던 작업물들을 업로드해야겠다.
'TIL(Today I Learned)' 카테고리의 다른 글
C# 문법 기초, 콘솔 숫자야구 게임 만들기 - TIL#7 (2) | 2024.01.02 |
---|---|
C# 문법 기초, 새로 알게 된 사실과 느낀 점 - TIL#6 (0) | 2023.12.29 |
카드 섞는 기능 구현하기 - TIL#4 (0) | 2023.12.27 |
Unity로 체스 만들기 외 - TIL#3 (0) | 2023.12.26 |
Git의 사용법을 배우다 - TIL#2 (0) | 2023.12.22 |