분류 전체보기
-
[Rollick 개발 일지] 04. 플레이어 움직이기, 점수 계산하기카테고리 없음 2023. 10. 27. 21:36
지난 시간에는 장애물이 무작위로 나오는 기능을 구현하였다. 이제 게임에 걸맞는 핵심 기능 중 하나인 유저의 드래그에 맞춰 플레이어가 움직이는 기능을 구현할 예정이다. private void Update() { MoveSkateBoard(); } private void MoveSkateBoard() { Ray ray = _mainCam.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Input.GetMouseButton(0) && Physics.Raycast(ray, out hit, 100, _roadMask)) { Vector3 pos = new Vector3(transform.position.x, transform.position.y, hit.p..
-
[Rollick 개발 일지] 03. 장애물 무작위로 생성하기카테고리 없음 2023. 10. 22. 19:56
지난 시간엔 주변 건물들이 무작위로 생성되는 기능을 구현하였다. 주변 건물들은 게임의 전체적인 퀄리티를 올리기 위함이었다. 이번 시간에 구현할 장애물 (자동차들)의 랜덤 배치는 게임의 난의도에 직접적으로 영향을 미치는 중요한 로직이다. 현재 생성되는 도로의 프리팹은 자동차가 있긴 하지만 도로에 고정돼있어 장애물이 등장하는 패턴이 동일하다. 우선 깔끔하게 도로에 존재하는 모든 장애물(자동차)들을 프리팹으로 빼주었다. 자동차들은 도로의 두 갈레에서만 등장해야 하며 (동일한 Z포지션) 자동차와 자동차 사이의 배차간격은 랜덤으로 설정돼야 한다. 생각한 로직에 맞춰 작성한 코드이다. public class ObstacleInstallFunc : MonoBehaviour { Dictionary _obstacleDa..
-
[Rollick 개발 일지] 02. 주변 건물 무작로 생성하기카테고리 없음 2023. 10. 21. 22:07
지난 시간엔 스케이트 보드가 길을 끊김 없이 가는 기능을 구현하였다. 하지만 이렇게만 구현한다면 주변 건물들이 계속 반복적으로만 나타나 플레이어가 단조로움을 느낄 수 있다. 우선 랜덤적으로 배치할 건물들을 4개씩 묶어 총 7개의 프리팹을 제작하였다. 이 프리팹들을 도로의 주변에 랜덤적으로 배치할 예정이다. 생각한 로직은 이렇다. 이 로직을 기반으로 작성한 코드는 아래와 같다. [System.Serializable] public class BuildingElement { public Transform building; // 빌딩 프리팹 public float nextBuildingPosIdx; // 다음 빌딩과 떨어져야 하는 간격 } public class BuildingInstallFunc : MonoB..
-
[Rollick 개발 일지] 01. 간단한 기능 구현카테고리 없음 2023. 10. 20. 01:35
유튜브에서 우연히 Subway Surfers플레이 영상을 보게 됐다. 괭장히 빠른 속도에서도 여유럽게 장애물을 넘어가는 것을 보고 대단하다고 생각이 들었지만 한 편으로는 '조금 더 아슬아슬하게 피하면 짜릿하고 보는 맛도 살지 않을까?' 라는 생각이 들었다. 스케이드 보드와 엮어 '장애물을 아슬아슬하게 피하면 점수를 더 주는 게임을 만드는 건 어떨까?'라는 생각을 하게 돼었고 위의 생각을 토대로 아이디어를 다듬어 게임을 제작하기로 했다. 에셋을 다운받아 내가 원하는 형태로 맵을 배치해 보았다. 맵이 뒤쪽으로 이동해 스케이트 보드가 맵을 달리는 기능 또한 간단하게 구현했다. [SerializeField] private Transform _baseMapObj; public float _moveSpeed; pr..