inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

C#과 유니티, 실전 게임으로 제대로 시작하기 (저자 직강)

game manager 서두에

해결된 질문

73

신진

작성한 질문수 102

0

삭제된 글입니다

C# unity

답변 1

1

백현우

메서드가 static이 아니라면 '클래스이름.메서드()'와 같은 방식으로 클래스의 메서드에 접근할 수 없습니다! 보내주신 코드에서 spawnManager라는 변수에 담은 것은 SpawnManager 클래스가 아니라 SpawnManager 클래스에 의해 생성된 객체입니다.

즉, static이 아닌 메서드는 클래스의 객체를 생성해서 접근해야 하며, 그 때문에 spawnManager라는 변수에 객체를 담아 메서드에 접근하는 것입니다! 감사합니다 :)

0

신진

객체를생성한다고 하셨는데

SpawnManager spawnManager = new spawnManager();

의 형식으로 인스턴스화하지 않은 이유가 궁금해요

0

백현우

네 너무 좋은 질문 주셨네요! 2.16강 후반부에서 설명드렸듯이 유니티에서 객체를 생성하는 방법은 2가지가 있습니다. 

첫 번째는 생성자를 이용하는 것(SpawnManager spawnManager = new spawnManager();)

두 번째는 게임 오브젝트에 스크립트를 부착하는 것 (에디터에서 SpawnManager 게임 오브젝트에 SpawnManager 스크립트를 부착)

위 예제에서는 스크립트를 게임오브젝트에 부착함으로써 객체를 생성한 것이니 생성자를 이용해서 또 객체를 생성할 필요가 없겠죠! 추가적으로, MonoBehaviour를 상속받은 클래스는 생성자를 이용해서 객체를 생성하지 않고,  스크립트를 게임오브젝트에 부착함으로써 객체를 생성합니다.

감사합니다 ^^

EXTENSIONS

0

55

1

총알발사 Vector3

0

129

1

Invoke 오류

0

163

1

4.10 델리게이트 예문이 이해되지 않습니다.

0

121

1

기존에 있던 스크립트에 워링이 새로운 스크립트에서도 콘솔에 뜹니다.

0

116

2

강의 영상 2.5 객체 중 객체와 class관련 질문입니다

0

115

1

델리게이트를 이용하여 멀티캐스트를 할 때, 같은 타입만 담을 수 있나요?

0

183

1

사용하시는 테마가 궁금합니다

0

224

1

저도 이동이 안돼요.....ㅠㅠ

0

207

1

작동이 안되네요

0

650

1

2.17강에서 피격부분이 작동하지 않습니다

0

226

1

교재 관련 질문

0

312

1

유니티 vscode 연결

0

1848

1

Vector2 Vectoe3

-1

377

1

실행시 콘솔창 출력안됨

0

2166

1

왜 이 책에서는 Time.deltaTime을 쓰지 않았는지?

0

795

1

혹시 강의 내용 정리한 것을 블로그에 포스팅 해도 될까요??

0

380

0

collision 발생 조건

0

451

0

강의 2.11 protected와 this/base 에서 객체생성 오류가 발생합니다.

0

332

0

class 작성 스크립트와 객체를 생성하는 스크립트가 다른 경우

0

286

1

질문이 있습니다! 컴파일 에러 관련입니다.

0

276

0

Peek에 대해서 질문드립니다.

0

368

1

이런식으로 코드를 짜도 될까요?

1

593

0

visual studio code

0

381

1