게시글
질문&답변
2023.07.21
섹션2: 에너미 이동2
안녕하세요. 게임 트레이너입니다.dir은 Vector2로 방향을 나타내는 2차원 벡터입니다. 즉, Vector2는 실수형 변수인 x, y를 포함하고 있으며 x는 가로 이동 방향, y는 세로 이동 방향이 됩니다. x, y의 범위는 보통 0 ~ 1 사이의 값을 갖게 됩니다.전에는 실수형 변수인 float로 x(가로)나 y(세로) 중 하나의 방향을 나타냈지만, 2D 화면에서는 x, y를 같이 사용하기 때문에 Vector2 구조체를 사용하게 됩니다. 이것을 사용하면 편리한 것이 곱셈을 한번에 해준다는 것이죠.전에는 x, y에 대해 speed * Time.deltaTime을 각각 곱해주었다면, Vector2 구조체인 dir에 한번만 곱하면 dir.x, dir.y에 모두 적용되기 때문에 코드의 양을 줄여주는 역할도 있습니다.
- 0
- 2
- 262
질문&답변
2023.07.11
섹션2: 서브루틴
안녕하세요.코루틴은 개념상으로는 스타트나 업데이트 함수와 별개로 진행됩니다. 즉, 코루틴은 스타트나 업데이트 함수의 진행과 무관하게 따로 실행된다고 생각하시면 됩니다.cortDT1이 Start()에서 시작하고, 1초 기다리는 동안 Start()의 그 밑에 있는 함수가 실행되는 건가요?맞습니다. 코루틴은 스타트 함수에서 호출하는 그 순간부터 별도의 프로세스로 진행됩니다.그러면 Update()는 언제 실행되는 건가요? 실행순서가 궁금합니다!정확히는 코루틴은 업데이트 함수 다음에 실행되고, yield가 있을 경우 지정된 시간만큼 대기하다가 지정된 시간이 경과하면 업데이트 다음에 다시 실행됩니다.
- 0
- 1
- 293
질문&답변
2023.07.08
섹션1 유니티기초: 사용자 오브젝트 제어2
안녕하세요. 게임 트레이너입니다.요즘은 시대가 좋아져서 AI가 답변을 달아주는군요 ^^사용자가 입력한 키보드에 의해 vec 값이 지정되는데, 만일 vec = Vector3.zero;가 없으면 이 값이 남아서 delta에 값이 들어가고, 다시 transform.Translate(delta)에 들어가게 되어, 입력이 없는 상태에서도 vec에 있는 x나 y 값에 의해 계속 이동하게 됩니다. 이것을 막기 위해 vec의 x, y, z 값을 모두 0으로 만들어주는 Vector3.zero를 대입하는 것이죠.
- 0
- 2
- 241