[펌] 러너게임 질문

|

출처 : http://devkorea.co.kr/bbs/board.php?bo_table=m03_qna&wr_id=32884&sca=&sfl=wr_subject||wr_content&stx=%EB%A7%B5+%EC%83%9D%EC%84%B1&sop=and&page=2&currentId=44


[Unity3D] 2D 러닝게임에서 필드 프리펩 생성 및 이동 관련 질문입니다

이제 막 유니티를 공부하고 있는 초보 개발자입니다.

지금 쿠키런 처럼 고정된 이 쭉 스크롤 되는 러닝 게임을 만들어 보고 있는데요.

필드 조각6종류를 a_01, a_02, a_03, b_01, b_02, b_03 이렇게 총 6가지 프리팹으로 만들어 놓고(이미지를 큐브에 넣는 식으로 제작했습니다.)

a_01 -> b_01 -> a_02 -> a_03 -> b_02 -> b_03 -> .....  이런 식으로 기획한 순서대로 쭉 생성해서 스크롤 하고 싶습니다.

물론 화면 밖으로 나간 프리팹은 삭제해서 메모리를 절약하고 싶구요.

이럴 경우에 어떻게 코드를 짜야 효율적일까요? 예제 코드는 C#으로 부탁드리겠습니다.

포인트가 적어 죄송합니다. 꼭 답변 부탁드리겠습니다.




우선 기본적으로 어떤순서로 불러올건지에 대한 이름의 순서버퍼가 필요하구요.
이경우에 코드로 설명하기 애매한데,
하이라키로 대충 보여드리면

MAP
  - TRACK1
  - TRACK2
  - TRACK3
  ....

형태로 게임오브젝트들이 구성됩니다.
이때 플레이어는 이동량에 따른 현재 위치를 가지고 있어야하며
해당위치가 현재 생성된 트랙의 인덱스 + 트랙의 크기보다 크다면 이전트랙을 지나친것이므로
이전트랙을 제거하면됩니다.
새싹1단계 김재근 2013.07.15 15:15:01 댓글달기
딕셔너리 쓰셔서 리소스들을 담아두시고 화면밖으로 나간건 삭제하지 마시고
나중에 위치값만 옮겨주세요
a01 -> b01 -> c01 -> 했다 다시 a01 이 나오게 된다했을때 생성삭제보다는 화면밖에 있던 a01의 위치만 옮겨주는게
더 효율적일꺼 같네요

그리고 a01 - > a01 이 나올경우를 대비해 리소스는 2개씩 가지고 계시고 기획한 정보를 미리 읽어와서 쓰는 리소스들만
가지고계시다가 재활용하는게 나을것 같습니다


Trackback 0 And Comment 0