FoliMesh

PlayCanvas용 로우폴리 스타일 지피식물

PlayCanvas는 GLB를 container 에셋으로 다룹니다. 고사리, 풀 무더기, 갈대를 에디터에 올리면 모델 계층이 담긴 템플릿이 만들어지고, 에디터 없이 코드로 쓸 때는 app.assets.loadFromUrl(url, 'container')와 asset.resource.instantiateRenderEntity()를 사용합니다. LOD 컴포넌트가 내장되어 있지 않으므로 짧은 스크립트로 카메라 거리를 비교해 LOD0–LOD3 엔티티의 render 컴포넌트를 켜고 끕니다. LOD0 기준 삼각형 수는 수백에서 2천 개 정도입니다.

로우폴리 지피식물은 색을 정점 색상(glTF COLOR_0)에 담고 플랫 셰이딩을 쓰기 때문에 텍스처도, UV 작업도 없고 비디오 메모리 사용량이 거의 없습니다. 잎은 알파 카드가 아니라 실제 지오메트리라서 알파 테스트와 반투명 오버드로가 없고, 모바일 GPU에서 유리합니다. 재질 하나를 모든 모델이 공유할 수 있어 고사리와 풀, 갈대를 배치 그룹으로 묶거나 하드웨어 인스턴싱으로 그리기 좋습니다.

모델
3
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 컴포넌트는 끕니다.

다른 카테고리

다른 스타일로 보기

다른 엔진용으로 보기