2020. 3. 7. 16:14ㆍUnity/Unity [Tutorial]
* 참조된 영상 혹은 구글링을 바탕으로 제작했습니다.
링크 > https://www.youtube.com/channel/UCw_N-Q_eYJo-IJFbNkhiYDA
기능 : Shooting Game입니다. 적 기체를 물리치고 라운드를 올라가세요!
주요 기능
1. 무한 스크롤링 (스크롤링 & 패럴랙스) 기법
- 가까운 거리는 빠르게 움직이고 멀리 있는 사물은 느리게 움직여 원근감 있는 스크롤을 구현합니다.
- 스크롤을 담당하는 Background script 입니다.
2. Object Pool 기법
- Instantiate와 Destory의 무차별적인 사용은 프로그램의 부하를 일으킵니다. (가비지 컬렉터)
이를 해결하기 위해 정적으로 미리 생성된 오브젝트를 활성화, 비활성화하는 방식으로
오브젝트를 재활용합니다.
* 현재 스크립트 로직의 단점은 프리 팹을 사용하게 되면 오브젝트 풀을 관리하는 스크립트에
하나하나 등록을 해줘야 하는 번거로움이 있습니다.
3. BOSS player
- Boss는 일정 패턴을 가집니다.
- sin, cos 함수를 사용하여 파동 그래프로 구현합니다.
4. Text 파일로 적 기체의 스폰 위치 조절
- GameManager script의 ReadSpawnFile 메서드에서 담당합니다.
- Resources 폴더의 stage 1, stage 2의 텍스트를 읽어옵니다.
- 개발자는 텍스트 파일을 고쳐 적 기체의 스폰 위치를 정할 수 있습니다.
5. Queue를 활용한 보조무기
- Power Item을 3개 이상 습득하면 보조무기가 생성됩니다.
- 부모의 위치를 Queue에 넣어서 움직임을 감지하면 하나하나씩 빼주며 자식 위치 값에 넣어줍니다.
깃 허브 링크
https://github.com/jeaho0613/Unity_Tutorial
느낀 점
BOSS 패턴과 Queue를 이용한 위치값 설정 등등 길지 않은 강좌임에도 정말 많은 기법들이 담겨있다.
곧 있을 Unity Seoul 2020에 프로젝트를 만들 예정인데 좋은 참고 자료가 될 거 같다.