inflearn logo
강의

講義

知識共有

[Unity6] 作りながら学ぶハイパーカジュアルゲームシリーズ 01

追加実装

Object를 유니티에서 직접 설정하는것과 파라미터로 전달하는것의 차이가 있나요

314

sbw91303643

投稿した質問数 6

0

ZIGZAG 추가구현 4분30초경

gameController를 Item.SetUp의 파라미터로 전달하는 부분이 있습니다.

Item오브젝트의 Item컴포넌트에 GameController를 직접 집어넣어두지않고 파라미터로 전달하는 이유가 궁금합니다.

C# unity

回答 2

0

unitynote

Item 오브젝트는 현재 프리팹으로 Project View에 있는 파일이고,

GameController 오브젝트는 Hierarchy View에 있는 게임오브젝트입니다.

사실상 다른 공간에 존재하기 때문에 TileSpawner.cs에 있는

[SerializeField] private GameController gameController;와 같이 미리 변수를 만들어 Inspector View에서 지정할 수 없습니다.

 

그래서 타일 생성을 제어하는 TileSpawner.cs에 GameController 정보를 저장해두고,

타일을 생성할 때 TileSpawner에 저장되어 있는 GameController를 매개변수로 전달하는 것입니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴이에요.
유니티에서 Object를 직접 설정하거나 파라미터로 전달하는 방법에는 몇 가지 차이가 있습니다.

첫째로, 직접 Object를 설정하는 경우 해당 Object를 소유하고 있는 스크립트에서 다른 스크립트의 컴포넌트를 가져와서 사용할 수 있습니다. 이 경우, Object 사이의 강한 종속성이 형성되기 때문에 코드의 가독성과 유지보수가 어려울 수 있습니다. 또한, Object의 설정은 직접적으로 변경할 수 있는데, 이는 다른 부분에서 의도하지 않은 동작을 유발할 수도 있습니다.

둘째로, 파라미터로 Object를 전달하는 경우 해당 Object를 사용하는 스크립트에서 직접 Object를 설정하지 않고, 외부에서 받아와서 사용합니다. 이 경우, Object 간의 결합도가 줄어들어 코드를 더 유연하고 재사용 가능하게 만들 수 있습니다. 또한, 외부에서 Object를 전달받기 때문에 Object의 설정이 외부에서 변경되었을 때 바로 반영할 수 있습니다.

따라서, 파라미터로 Object를 전달하는 방법을 사용하면 코드의 유연성과 가독성을 높일 수 있으며, 의도하지 않은 동작을 방지할 수 있습니다. 또한, 오브젝트 간의 결합도를 낮추기 때문에 코드를 유지보수하기에도 용이할 수 있어요. 이러한 이유로, 파라미터로 Object를 전달하는 것이 권장되는 방법입니다.

더 궁금한 사항이 있으시다면 언제든지 질문해주세요. 좋은 하루 되세요!

StageController

0

73

2

ZIGZAG강의중 Start를 Coroutine으로 사용하는 이유가 무엇인가요?

0

252

1

[2D Pin Circle Game] 회전 질문

0

391

1

2D에서 navmesh를 사용하는 방법이 궁금합니다.

1

3646

1

StartCoroutine 파라미터에 함수넣는것과 문자열 넣는것의 차이가 뭔가요?

0

406

2

수업관련 질문이 있습니다

0

322

2

IEnumerator 사용이유?

0

497

1

2D Wave.Io 카메라 흔들기 질문

0

276

1

2D Wave.io 에서 IEnumerator 질문

0

319

1

여기서 래디안을 구하는 이유가 이해가 안갑니다.

0

1345

2

2020.3.0f1 Unity Package Manager Error

0

2158

2

2d pin throwablepin 관련 질문

0

336

1

ZIGZAG, 카메라 컨트롤러 질문

0

263

1

유니티 이벤트 질문

0

295

1

2d wave에서 충돌처리가 안 되요

1

348

1

오디오소스 아이콘

0

371

1

ppt 자료는 어디서 받아야 해요?

0

402

1

2D 게임에서 Z값의 변경이 영향을 주는 경우가 있을까요?

1

728

1

for 반복문 작성시 후위 증가 연산자를 쓰는 이유가 궁금합니다

1

431

1

TPinDistance 프로퍼티 관련 질문드립니다

1

231

1

리셋버튼이 스테이지1로 바꿔주지 않습니다.

2

232

1

지그재그 타일생성 질문있습니다.

1

400

1

PinSpawner 스크립트를 추가하는 과정에서 오류가 발생합니다.

0

219

1

궁금합니다.

1

814

1