본문 바로가기
유니티5 독학 & 게임 제작

유니티5 독학하기 그 73번째 걸음-화면내에서 발판이 생성되는 문제의 해결

by 인터넷떠돌이 2018. 8. 21.
반응형

안녕하세요?


오늘하루는 아메리카노만 만들어서 5잔을 마시고는 그 동안 많이 나가지 못한 진도를 한꺼번에 나간다는 느낌이 강한 날이 되었습니다. 아무튼 오늘의 3번째 포스팅에서는 다른 것 없이 그 동안 화면 내에서 발판이 생성되어지는 것을 볼 수 있었는데, 이걸 어떻게 해서 화면 밖에서 생성이 되고 파괴가 되는 것으로 만들어서 그 내용을 포스팅 하고자 합니다.



일단 기존의 14까지 있는 발판들에서 15번째 발판을 추가 하도록 합니다. 추가하는 방법은 간단하게 다른 Floor를 복사해서 계층뷰에서 붙여넣기를 하는 것 입니다.



그리고 일단 인스펙터 뷰에서 Transform을 변형해야 합니다.



이런식으로 여러개의 발판을 추가해서 길이를 늘리는 데는 성공했습니다.



그럼 이제는 이 발판의 세트가 끝나는 것인 ExitPoint의 위치도 옮겨야 합니다. 계층뷰에서 ExitPoint를 선택하도록 합니다.



이제 X축의 좌표를 옆으로 증가시키도록 합니다.




그 다음에는 발판이 없어지는 것을 나타내는 지점인 LeaveTrigger의 위치도 역시 변경할 필요가 있습니다.



위 스크린샷처럼 발판의 X축 길이 * 갯수 해서 나온 수치만큼 원래의 X축 좌표에 더해서 더 증가시키도록 합니다.



이제 너무 떨어지면 죽는 지점이 멀리 있으니, 여기를 더 늘려야 합니다.



여기서는 S라고 Scale을 더 키우도록 합니다. 그리고 X축의 위치도 옮기도록 합니다.



이제 이렇게 한개의 LevelPieceBasic이 완성이 되었습니다. 같은 원리로 먼저 만들어 놓은 LevelPieceHole도 추가할 것은 추가를 해 주고, 변경할 것은 변경을 해 주도록 합니다.




그런데 여전히 화면 오른쪽 끝에서 없던 발판이 생성되는 것이 나오기 때문에, 하는 수 없이 Floor를 더 추가해 주도록 해야 했습니다.



그리고 이에 따라 ExitPoint도 옮겨야 했습니다.



더 추가된 값 만큼 더 옆으로 이동시켜 주도록 합니다.



그리고 이번에는 복사해서 화면의 왼쪽에서, 카메라에 들어오고 있는데도 발판이 사라지는 현상이 보이는데, 이 역시 막기 위해서 블럭을 추가 해 놓도록 합니다.



이렇게 해서 제일 왼쪽에 블럭 2개를 추가 해 놓도록 합니다.




그런데 이번에는 무슨일이 생겼는지, 이전에 생성된 발판이 그대로 계속 유지가 되는 현상이 벌어졌습니다. 이게 단기간의 게임에는 문제가 안될듯 한데, 너무 오래 놔두면 메모리를 많이 잡아 먹을 수 있기 때문에, 하는 수 없이 제거가 되도록 수정해야 합니다.



방법은 간단하게도, 가장 첫 발판을 가장 왼쪽으로 끌어오는 것으로 해결할 수 있었습니다.



이제 문제가 해결된 것을 유니티5의 플레이 버튼을 누른 다음 일시정지를 눌렀을 때 확인할 수 있었습니다.



위 동영상을 보시면, 어느정도 완성이 된 것을 보실 수는 있습니다. 하지만 아직도 가야할 길이 많고, 게임으로서는 모자란 측면도 많이 있습니다. 우선 저 동전이 점수에라도 반영이 되어야 하는데, 그렇지가 않고, 그리고 게임도 빠지면 죽는 구멍 하나만 있다는 것이 많이 에러는 에러입니다. 그래도 미완의 예제를 어느정도 완성은 시켰고, 이제부터는 게임의 재미를 위해서 어찌어찌 더 다른 요소를 구현해서 추가해야 하는 일이 남았습니다.

반응형