로우 폴리 레이싱 게임 — 브라우저에서 플레이하거나 직접 만들어 보세요
나만의 로우 폴리 레이싱 게임 만들기
훌륭한 로우 폴리 레이싱 게임을 만드는 요소, 지금 바로 브라우저에서 이동할 수 있는 로우 폴리 세계, 그리고 나만의 트랙을 만들 도구까지.
로우 폴리 레이싱 게임은 지오메트리가 의도적으로 거친 레이싱 게임입니다. 플랫 셰이딩 삼각형을 사용하고, 노멀 맵도, 고주파 텍스처 디테일도 없습니다. 이 제약은 참아 내야 하는 한계가 아니라, 고속에서 게임이 작동하게 만드는 핵심입니다. 차가 400미터 직선 구간을 몇 초 만에 통과할 때, 여러분의 눈은 바퀴 살을 분간하지 않습니다. 실루엣과 면의 음영, 그리고 풍경이 지나가는 속도를 읽고 있습니다. 로우 폴리 지오메트리는 렌더러가 그런 단서를 매끄럽게 유지할 여유를 줍니다.
이 페이지는 좋은 로우 폴리 레이서와 나쁜 레이서를 실제로 구분하는 요소를 다루고, 지금 바로 브라우저에서 이동할 수 있는 로우 폴리 세계를 보여 줍니다. 그다음에는 3D 게임 빌더에서 직접 트랙을 만드는 과정을 안내합니다. 그리드 위에 도로를 깔고, 속도 단서 역할을 하는 소품을 배치하고, 루프를 닫는 일입니다. 다운로드 단계도, 엔진 설치도 필요 없습니다.
로우 폴리가 레이싱에 잘 맞는 이유
핵심 논거는 지각적입니다. 시속 200킬로미터에서 화면을 가로지르는 플랫 셰이딩 면은 움직임으로 읽힙니다. 정교한 디테일이 있는 텍스처 표면은 노이즈로 읽힙니다. 텍스처가 밉 체인이 해상할 수 있는 속도보다 빠르게 축소되기 때문입니다. 로우 폴리는 이를 완전히 비껴갑니다. 면이 더 적고 더 크면 앨리어싱 문제가 줄어드는 동시에 프레임 예산이 늘어납니다. 반짝임과 싸우는 일을 멈추고 속도를 팔기 시작하는 것입니다.
두 번째 논거는 산술적입니다. 트랙 세그먼트를 40,000개가 아니라 2,000개 삼각형으로 모델링하면 단순히 더 빠르게 렌더링되는 것이 아닙니다. 프레임 한계에 도달하기 전에 더 많은 세그먼트, 더 많은 배경, 더 많은 상대를 배치할 수 있습니다. 레이싱 게임에서 프레임 시간은 편안함을 위한 기능이 아닙니다. 입력 지연입니다. GPU 시간 1밀리초는 플레이어가 코너를 보고 차가 보정에 반응하기까지의 1밀리초입니다.
로우 폴리 레이싱 게임이 보급형 하드웨어와 브라우저 탭에서 잘 돌아가는 이유가 여기 있습니다. 렌더링 비용은 원시 삼각형 처리량보다 드로우 콜과 필레이트가 좌우하므로, 공격적인 프러스텀 컬링을 적용한 로우 폴리 장면은 내장 그래픽에서도 60fps, 16.6밀리초 예산 안에 머뭅니다. 이 스타일은 약한 하드웨어를 위한 차선책이 아닙니다. 하드웨어가 방해하지 않도록 만드는 결정입니다.
플랫 셰이딩과 움직임 인지
플랫 셰이딩은 모든 삼각형에 하나의 노멀을 주므로 각 면은 하나의 휘도 값을 가집니다. 카메라가 움직이면 그 값들이 이산적인 단계로 변합니다. 눈은 그 단계를 속도 신호로 받아들입니다. 낮은 프레임 레이트의 점멸이 바퀴를 돌아가는 것처럼 보이게 하는 것과 같은 방식입니다. 스무스 셰이딩 표면에서는 그 신호가 그라디언트 전체에 번져 움직임 인지가 약해집니다.
삼각형 예산은 실제로 어디에 쓰이는가
로우 폴리 레이서에서는 차가 비싼 객체인 경우가 드뭅니다. 트랙이 비쌉니다. 5킬로미터 서킷을 100미터 세그먼트로 나누고 컬링을 적용하면 보이는 집합이 한정되지만, 단일 5킬로미터 메시는 그렇지 않습니다. 트랙은 세그먼트 단위로 예산을 잡고 컬링이 일하게 하세요. 차에는 6,000~12,000개의 삼각형을 쓸 수 있지만, 세그먼트 하나에는 그럴 수 없습니다.
훌륭한 로우 폴리 레이서의 조건
첫 번째 제약은 고속에서의 트랙 가독성입니다. 코너는 플레이어가 도착하기 전에 알아볼 수 있어야 합니다. 도로와 비도로의 시각적 분리, 도로 띠 양쪽의 일관된 가장자리 처리, 명확한 정점 단서가 필요합니다. 노면과 갓길이 같은 값과 색조를 공유하면 플레이어는 이미 코너에 들어간 뒤에야 그것을 인지합니다. 도로와 주변의 값 대비는 아스팔트의 텍스처 디테일보다 중요합니다.
두 번째 제약은 속도를 팔아 주는 지평선입니다. 평평하고 텅 빈 지평선은 여러분이 얼마나 빠른지 아무것도 전달하지 않습니다. 플레이어가 속도 기준을 가질 수 있도록 알려진 간격으로 놓인 객체, 즉 방호벽, 표지판, 기둥, 능선의 면이 필요합니다. 직선 구간을 따라 거의 균등한 간격으로 흩어 놓고, 코너를 지나며 간격이 압축되게 하세요. 눈은 그 압축을 감속으로, 확장을 가속으로 읽습니다. 속도 값이 변하지 않았는데도 말입니다.
세 번째 제약은 도로를 절대 놓치지 않는 카메라입니다. 추적 카메라는 속도에 따라 조정되는 전방 시야 거리, 차 아래의 도로 띠가 보이도록 유지하는 높이, 그리고 차의 진행 방향으로 곧바로 튀지 않고 뒤따라가는 요가 필요합니다. 카메라 요가 튀면 세계가 휙 돌아가고 플레이어는 공간 감각을 잃습니다. 짧은 시정수를 가진 감쇠된 요, 즉 반응이 빠르게 느껴질 만큼이되 즉각적이지는 않은 요가 도로를 화면 안에 고정합니다.
- 도로와 비도로의 값 분리도로 띠와 주변 지형은 한눈에 가장자리가 읽힐 만큼 휘도가 달라야 합니다. 확신이 서지 않으면 도로를 밝게 하기보다 지형을 어둡게 하세요.
- 간격 기반 속도 단서균등한 간격으로 배치된 소품은 플레이어에게 속도 기준을 줍니다. 코너를 지나며 겉으로 보이는 압축이 속도 인지입니다.
- 속도에 비례하는 카메라 전방 시야전방 시야 거리는 속도에 따라 늘어나야 합니다. 그렇지 않으면 플레이어가 고속에서 화면을 앞질러 갑니다.
- 감쇠된 카메라 요뒤따라가는 요는 도로를 고정합니다. 요가 튀는 것은 좋은 트랙을 읽을 수 없게 만드는 가장 빠른 방법입니다.
바로 여기서 직접 이동해 보세요
이 페이지에 삽입된 플레이 가능한 세계는 오늘날 브라우저에 넣을 수 있는 트랙에 가장 가까운 것입니다. 로우 폴리이고 플랫 셰이딩이며, 지켜보기보다 이동하도록 만들어졌습니다. 이동 조작을 사용해 공간을 여행해 보세요. 지오메트리가 일부러 거친 것은, 장면을 그저 보는 것이 아니라 움직임을 읽을 수 있을 만큼 프레임 레이트를 높게 유지하기 위해서입니다.
이동하는 동안 살펴볼 것: 지면의 면들이 지나가면서 서로 다른 각도로 빛을 받고, 그 각도 변화가 움직임 단서입니다. 지평선은 비어 있지 않고 채워져 있어 대조하며 추적할 대상이 있습니다. 긴 직선을 달린 뒤 코너를 돌아 보세요. 이동 속도는 그대로인데도 속도감이 어떻게 달라지는지 알게 됩니다. 그것이 지평선이 제 역할을 하는 모습입니다.
이 세계는 완성된 서킷이 아니라 시연 공간입니다. 랩 타이머도, 상대도 없습니다. 목적은 로우 폴리 인지가 여러분의 실제 하드웨어에서, 살아 있는 브라우저 세션에서 어떻게 작동하는지 보여 주는 것입니다. 브라우저 게임에서 중요한 유일한 기준은 바로 그것입니다.
나만의 트랙 만들기
3D 게임 빌더에서 트랙을 만드는 일은 메시를 조각하는 것이 아니라 그리드 위에 지오메트리를 배치하는 것입니다. 월드 단위로 작업하며, 그리드가 일관된 축척을 제공합니다. 그리드 한 칸은 정해진 거리와 같으므로, 20칸 직선은 누가 만들든 고정된 길이입니다. 도로 띠부터 시작해 소품을 배치하고, 스폰을 설정한 다음 루프를 닫으세요.
경계해야 할 실패 양상은 편집기에서는 잘 읽히지만 고속에서는 그렇지 않은 트랙입니다. 직선 하나를 만들고, 카메라를 운전자의 눈높이로 옮기고, 나머지를 짓기 전에 달려 보세요. 직선 끝의 코너가 직선 시작 지점에서 알아볼 수 없다면, 트랙을 더 추가하기 전에 값 대비나 소품 배치를 고치세요. 세그먼트 하나를 고치는 것이 스무 개를 고치는 것보다 저렴합니다.
01
그리드 위에 도로를 깔기: 도로 세그먼트를 칸 단위로 배치하되, 띠의 너비는 월드 단위로 일정하게 유지하세요. 너비가 아니라 코너 반경을 바꾸세요.
02
도로와 비도로의 값 대비 설정하기: 도로에는 한 가지 머티리얼을, 주변 지형에는 뚜렷하게 다른 값을 지정해 고속에서도 가장자리가 읽히게 하세요.
03
각 직선을 따라 속도 단서 소품을 균등한 간격으로 배치하기: 방호벽, 기둥, 표식 등을 일정한 간격으로 두어 플레이어가 속도 기준을 갖게 하세요.
04
코너를 지나며 소품 간격 압축하기: 코너에서 더 좁아진 간격은 감속을 알리고 정점에 시각적 닻을 제공합니다.
05
스폰 지점과 방향 설정하기: 스폰을 도로 중심선에 두고 진행 방향을 향하게 한 뒤, 스폰 지점에서 카메라의 전방 시야가 확보되는지 확인하세요.
06
루프 닫기: 마지막 세그먼트를 처음 세그먼트에 연결해 트랙이 연속되게 한 다음, 고속으로 한 바퀴 완주하며 읽히지 않게 되는 부분을 모두 고치세요.
로우 폴리 자동차와 에셋
자동차와 소품은 어느 쪽에서든 가져올 수 있습니다. 기존 로우 폴리 에셋 세트를 임포트하거나, 트랙 스타일에 맞는 세트를 생성하면 됩니다. 중요한 제약은 면 밀도의 일관성입니다. 12,000개의 삼각형으로 모델링한 차를 200개 삼각형 세그먼트로 만든 트랙에 올려놓으면 잘못돼 보입니다. 두 객체가 서로 다른 축척에서 디테일을 표현하기 때문입니다. 밀도를 맞추거나 음영을 맞추고, 가능하면 둘 다 맞추세요.
에이전트 스프라이트 포지는 스프라이트와 에셋 세트를 생성합니다. 개별적으로 다운로드한 모델을 쌓아 둔 것이 아니라, 같은 시각 언어를 지닌 일관된 자동차와 소품 세트가 필요할 때 유용합니다. 세트를 생성한다면 자동차와 트랙변 소품을 한 번의 작업으로 함께 생성해 팔레트와 면 밀도가 어긋나지 않게 하세요. 생성 작업이 서로 맞지 않는 것은 설계된 것이 아니라 조립된 것처럼 보이는 트랙이 생기는 가장 흔한 원인입니다.
사이클롭스의 섬은 스튜디오 에셋에 있는 로우 폴리 세계의 실제 예시입니다. 모든 객체가 하나의 음영 결정을 공유할 때 일관된 로우 폴리 환경이 어떻게 하나로 어우러지는지 보여 줍니다. 직접 세트를 만들기 전에 팔레트와 면 밀도의 참고 자료로 활용하세요.
- 면 밀도 맞추기자동차의 삼각형 수를 보이는 표면적당 트랙 세그먼트와 같은 자릿수 안에 유지하세요. 밀도가 크게 어긋나면 스타일이 깨진 것으로 읽힙니다.
- 세트당 단일 팔레트자동차와 소품을 하나의 팔레트에서 생성하세요. 나중에 두 번째 팔레트를 더하는 것이 어울리지 않아 보이는 트랙이 생기는 흔한 원인입니다.
- 전체에 플랫 셰이딩 적용세트의 모든 객체에 플랫 셰이딩을 적용하세요. 플랫 셰이딩 장면에 스무스 셰이딩 객체가 하나만 있어도 곧바로 눈에 띄고 움직임 인지를 해칩니다.
- 모델링하기 전에 재사용하기방호벽 모델 하나를 회전하고 색만 바꾸면 트랙 대부분을 채울 수 있습니다. 고유 메시가 적을수록 드로우 콜이 줄고 프레임 시간이 좋아집니다.
그것이 속한 세계로 걸어 들어가기
스프라이트는 설 자리가 없는 캐릭터입니다. 마지막 단계는 다른 누구도 제공하지 않는 것입니다. 방금 만든 시트를 누군가 걸어 다닐 수 있는 세계, 즉 작은 섬, 행성, 비 내리는 거리 모퉁이에 넣으세요. 이 사이트의 모든 세계는 하나의 글로 쓴 설명에서 만들어져 플레이할 수 있는 페이지로 공개되었습니다.
FAQ
브라우저에서 실제로 레이싱을 할 수 있나요? +
네. 이 페이지의 플레이 가능한 세계는 브라우저 탭에서 실행되며, 아무것도 설치하지 않고 이동할 수 있습니다. 프레임 레이트는 하드웨어와 장면의 드로우 콜 수에 따라 달라지지만, 보이는 세그먼트가 한정된 로우 폴리 장면은 일반적인 내장 그래픽에서도 60fps 예산 안에 머뭅니다.
로우 폴리 레이싱 게임을 만들려면 코드를 작성해야 하나요? +
아니요. 3D 게임 빌더에서는 빌더의 배치 도구를 사용해 그리드 위에 도로 세그먼트를 깔고, 소품을 배치하고, 스폰 지점을 설정하고, 루프를 닫습니다. 코드는 빌더가 제공하는 범위를 넘어서는 사용자 정의 동작을 원할 때만 관련이 있습니다.
로우 폴리 자동차와 소품은 어디서 구하나요? +
기존 로우 폴리 세트를 임포트하거나 에이전트 스프라이트 포지로 생성하면 됩니다. 중요한 것은 일관성입니다. 자동차와 트랙변 소품을 한 번의 작업으로 생성해 팔레트와 면 밀도를 공유하게 하세요.
고속에서도 잘 읽히는 트랙은 어떻게 만드나요? +
가장자리가 읽히도록 도로와 비도로의 값 대비부터 시작하고, 각 직선을 따라 소품을 균등한 간격으로 배치해 속도 단서로 삼고, 코너에서는 간격을 압축하세요. 그런 다음 스폰을 중심선에 두고 전방 시야를 확보한 뒤, 트랙을 더 추가하기 전에 고속으로 한 바퀴 완주해 보세요.
브라우저 로우 폴리 레이싱 게임에서 성능을 제한하는 것은 무엇인가요? +
원시 삼각형 수가 아니라 드로우 콜과 필레이트입니다. 2,000개 삼각형 세그먼트를 별도 메시로 렌더링하면 같은 지오메트리를 병합한 것보다 비용이 더 듭니다. 컬링으로 보이는 세그먼트 집합을 한정하고, 고유 메시를 늘리기보다 메시를 재사용하세요.
나중에 트랙을 완전한 엔진으로 내보낼 수 있나요? +
네. 브라우저 런타임이 충분하지 않게 되면 장면을 내보내 완전한 엔진으로 옮길 수 있습니다. 나중에 사용자 정의 물리나 브라우저 런타임이 감당하는 것보다 많은 상대가 필요할 때 흔히 택하는 경로입니다.
3D 게임 빌더로 돌아가기
완성된 31개의 3D 세계, 게임, 장면이 한 페이지에 모여 있으며, 그 모두를 플레이할 수 있습니다.