inflearn logo
강의

Course

Instructor

Game Development with Unity: Part 3. Shooting Game Development

GameObject class

gameObject.setActive(false);

Resolved

575

hbtrain77244

4 asked

0

start 함수 안에서
gameObject.setActive(false); 다음에
gameObject.AddComponent<AddScript>(); 를 작성해 보았습니다.
해당 오브젝트가 비활성화 되었음에도 플레이 시 인스팩터창에 해당 스크립트가 붙은것이 확인됩니다.
그런데 AddScript 내부에 작성된 Debug.Log("AddScript");
는 실행되지 않는 것 같습니다.
 
이 동작 구조가 궁금합니다.

unity C#

Answer 1

1

akehrn122557

Start 함수 안에서

gameObject.setActive(false);

gameObject.AddComponent<AddScript>();

가 실행되면 게임 오브젝트를 비활성화 한 후 AddScript라는 스크립트를 해당 오브젝트에 추가하겠단 의미이고

 

AddScript가 추가 된 후에는 이 AddScript에 있는 기능 즉 print 문을 실행 하여야 하는데 이미 비활성화 되버리고 난 후의 시점이라 print문이 실행되지 않는거 같습니다

간단히 예를들자면

1. 은행에서 돈을 인출하려고 은행원한테 계좌랑 신분증을 주고 이제 돈을 받아야 하는데

2. 은행이 문을 닫아버리는 눈뜨고 코베이는 상황이랄까요 

이렇게 된 경우에는 저 print 문이 아무 쓸모가 없어지겠네요 SetActive값이 false면은..

0

hbtrain77244

To 진성일

답변 감사힙니다. 대댓글 기능이 없는것 같아서 글 남깁니다.

gameObject.SetActive(false);라 하더라도

함수 안에서는 브레이스가 닫히기 전까지 아래문장까지 실행을 한다고 보면 될까요?

0

akehrn122557

그런거 같습니다 애매하게 답변드리는 이유는 저도 이 강의에서 들은거 같아서.. ㅋㅋ

캐릭터 변경에 관해

0

220

1

Asteroid 생성에 관련해서

0

182

1

Part4 유니티로 세가지의 게임만들기 강의

0

206

1

Clamp 사용 시 앞서 설정한 ViewportToWorldPoint의 min, max를 사용하지 않고 새로 설정하는 이유가 있을까요

0

268

1

섹션8 슈팅게임 프로토타입 만들기3(적과 발사체)

0

261

1

캐릭터 고정데이터 로딩 강의

0

320

1

Destroy 함수 질문

0

407

1

GetComponent 강의 질문

0

339

1

transform.position과 transform.Translate 의 차이가 뭔가요??

0

1912

1

강의도중 질문이 있습니다

0

485

1

강의자료

0

279

0

117강 구조체를 정의하여 ShipData 구성

0

218

0

굳이 InitTime을 만들어서 호출 하는 이유가 있나요?

0

287

0

GameManager 의 Start()가 스페이스 누를때마다 반복실행됩니다.

0

409

1

Collider인 other.gameObject;

0

423

0

Generic에 대한 질문이 있습니다.

0

257

0

애플 앱스토어

0

240

0

비주얼스튜디오 오류

0

2140

1

part4강의

0

307

1

발사체 스피드

0

292

1

4분 44초 제가 이해한게 맞는지 궁금합니다

0

263

1

2분 44초 왜 void 함수를 써야하나욤..?

0

352

1

해당 부분 업데이트

0

258

1

인터페이스를 쓰는 근본적인 이유

0

503

1