FoliMesh

three.js용 나무

모든 나무는 three/addons의 GLTFLoader로 불러오는 가벼운 GLB입니다. DRACOLoader나 KTX2Loader는 파일이 실제로 그 확장을 쓸 때만 필요합니다. 전 모델에 LOD0–LOD3가 있어 네 개의 메시를 THREE.LOD에 넣고 lod.addLevel(mesh, distance)로 등록하면 이후 카메라 거리에 따라 매 프레임 단계가 바뀝니다. WebGLRenderer와 WebGPURenderer 모두에서 동작합니다. glTF alphaMode MASK를 쓰는 잎은 material.alphaTest가 되고, 양면 재질은 side: THREE.DoubleSide로 이미 설정되어 있습니다.

14종이 숲과 공원, 마을 장면을 두루 커버합니다. 온대에는 참나무, 유럽소나무, 가문비나무, 자작나무, 수양버들, 사시나무, 단풍나무, 포플러를, 지중해에는 올리브나무, 사이프러스, 우산소나무를, 건조 지대에는 아카시아와 바오바브나무를 쓰고 고사목도 있습니다. 피벗이 밑동에 있어 지형에 놓을 때는 위치만 지정하면 됩니다. InstancedMesh로 수천 그루를 한 번의 드로우로 그리고, BatchedMesh는 여러 변형을 한 호출에 섞습니다. THREE.LOD는 인스턴스 단위로 적용되지 않으므로 청크별로 레벨을 나눠 묶으세요. 보이지 않는 콜리전 메시는 Rapier나 cannon-es로 넘깁니다.

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

three.js에서 사용하기

three.js에서는 three/addons의 GLTFLoader로 GLB를 불러오며, DRACOLoader나 KTX2Loader는 파일이 해당 확장을 쓸 때만 필요합니다.

  • 거리 기반 LOD: THREE.LOD에 lod.addLevel(mesh, distance)로 LOD0–LOD3을 등록하면 매 프레임 카메라 거리에 따라 단계가 바뀝니다.
  • 숲: InstancedMesh는 수천 개의 복제본을 드로우 콜 하나로 그리고, BatchedMesh는 여러 나무 변형을 섞을 수 있습니다. THREE.LOD는 인스턴스 단위로 동작하지 않으므로 청크마다 LOD별로 인스턴스를 직접 묶으세요.
  • 잎: glTF alphaMode MASK는 material.alphaTest로, 양면 머티리얼은 자동으로 side: THREE.DoubleSide가 됩니다.
  • 콜리전 메시: 보이지 않게 두고 Rapier나 cannon-es 같은 물리 라이브러리에 넘기세요.

WebGLRenderer와 WebGPURenderer 모두에서 동작합니다.

팩

다른 카테고리

다른 스타일로 보기

다른 엔진용으로 보기