FoliMesh

PlayCanvas용 로우폴리 스타일 덤불

GLB 파일을 PlayCanvas 에디터에 그대로 올리면(FBX는 가져올 때 GLB로 변환됩니다) 모델 계층을 담은 container 애셋이 만들어집니다. 에디터 없이 코드로만 쓴다면 app.assets.loadFromUrl(url, 'container')로 불러오고 asset.resource.instantiateRenderEntity()로 씬에 올립니다. 8개 모델 — 대나무, 덤불, 회양목, 산울타리, 향나무, 들장미, 산딸기, 개암나무 — 은 모두 LOD0–LOD3와 바닥 피벗을 갖췄습니다.

PlayCanvas에는 LOD 컴포넌트가 없어서 카메라 거리를 비교해 각 단계의 렌더 컴포넌트를 켜고 끄는 짧은 스크립트를 씁니다. 로우폴리는 여기서 가장 저렴한 스타일입니다. 플랫 셰이딩에 색은 버텍스 컬러(COLOR_0)로 들어가므로 텍스처도 노멀 맵도 없습니다. 잎이 알파 카드가 아닌 솔리드 지오메트리라 alphaTest와 투명 overdraw가 없어 모바일 WebGL에 유리합니다. 머티리얼 하나로 씬 전체를 처리할 수 있고, 산울타리는 batch group을 공유하거나 meshInstance.setInstancing()으로 인스턴싱합니다. LOD0는 수백에서 2천 트라이앵글 정도입니다.

모델
8
LOD 단계
LOD0 – LOD3
포맷
GLB · FBX · OBJ

로우폴리 스타일 소개

로우폴리는 렌더링 비용과 빌드 용량 모두 가장 저렴한 스타일입니다.

  • 플랫 셰이딩: 면마다 노멀 하나로 선명한 각진 느낌을 내며 노멀 맵이 필요 없습니다.
  • 색은 버텍스 컬러(glTF COLOR_0)에 저장: 텍스처도, UV 작업도 없고 VRAM도 거의 쓰지 않습니다.
  • 잎은 알파 카드가 아닌 실제 지오메트리: 알파 테스트와 투명 오버드로가 없어 모바일 GPU에 유리합니다.
  • 씬의 모든 모델이 머티리얼 하나를 공유할 수 있어 나무를 쉽게 배칭·인스턴싱할 수 있습니다.
  • LOD0의 일반적인 예산은 수백에서 2천 개 정도의 삼각형입니다.

모바일, WebGL/WebGPU, VR, 전략, 도시 건설, 스타일라이즈드 인디 게임에 잘 맞습니다. 엔진에서는 버텍스 컬러를 곱하는 머티리얼을 사용하세요.

PlayCanvas에서 사용하기

PlayCanvas는 GLB를 컨테이너 에셋으로 다룹니다. 에디터에서 GLB를 업로드하면(FBX는 임포트 시 GLB로 변환) 모델 계층이 담긴 템플릿이 생기고, 엔진 전용 코드에서는 app.assets.loadFromUrl(url, 'container')와 asset.resource.instantiateRenderEntity()를 사용합니다.

  • LOD: 내장 LOD 컴포넌트가 없으므로 작은 스크립트로 카메라 거리를 비교해 LOD0–LOD3 엔티티의 render 컴포넌트를 전환합니다.
  • 정적인 나무는 배치 그룹을 공유해 드로우 콜을 합칠 수 있고, 큰 숲에는 meshInstance.setInstancing()과 변환 행렬 버텍스 버퍼로 하드웨어 인스턴싱을 사용하세요.
  • 잎: glTF MASK가 StandardMaterial의 alphaTest를 설정하며, 양면 잎에는 컬 모드를 none으로 지정합니다.
  • 콜리전 메시: mesh 타입 collision 컴포넌트와 정적 rigidbody를 붙이고 render 컴포넌트는 끕니다.

팩

다른 카테고리

다른 스타일로 보기

다른 엔진용으로 보기