FoliMesh

three.js용 사실적 스타일 수중 세계

PBR 나무껍질·잎 텍스처, 노멀 맵, 알파 테스트 잎 카드를 사용한 사실적인 식생. 웹을 위한 가벼운 GLB 식생. GLTFLoader로 불러오고 LOD 메시를 THREE.LOD에 연결하면 씬에 숲이 생깁니다. 이 그룹은 해저, 석호, 얕은 바다에 쓰는 수중 식물과 암초 형태를 담고 있습니다. 사슴뿔 산호, 붉은 산호, 뇌산호, 부채산호와 함께 다시마, 해초, 수련이 포함됩니다. 함께 쓰면 산호초나 잔잔한 호수 바닥의 겹겹이 쌓인 느낌을 살릴 수 있습니다. 각 모델에는 LOD0부터 LOD3까지, 충돌 메시, 밑면 피벗이 들어 있어 산호가 바닥에 단단히 고정되고 떠다니지 않습니다. 다시마와 해초에는 부드럽게 흔들리는 움직임을 위한 가중치가 있습니다. 새 시드마다 가지 뻗음이나 잎의 배열이 달라지며, 모델은 GLB, FBX, OBJ로 내보내 Unity, Unreal Engine, Godot, Bevy에서 사용할 수 있습니다. 이 컬렉션에는 게임용 모델 7개가 있습니다. 모든 모델에 LOD0–LOD3, 콜리전, 밑면 피벗이 포함되며, 새 시드마다 같은 종의 새로운 변형이 만들어집니다.

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

사실적 스타일 소개

사실적인 모델은 glTF 2.0, Unity, Unreal, Godot, three.js가 그대로 읽는 PBR metal/roughness 워크플로를 사용합니다.

  • 나무껍질: 줄기와 가지에 베이스 컬러, 노멀, 러프니스 맵.
  • 잎: 잎 뭉치 텍스처를 쓴 알파 테스트(Masked) 카드로, 알파 블렌딩이 아니어서 깊이를 기록하고 정렬이 필요 없으며 그림자도 정확합니다.
  • 나무껍질과 잎은 별도 머티리얼이라 드로우 콜 수를 예측하기 쉽고 GPU 인스턴싱과 잘 맞습니다.
  • LOD0은 근경용이고, LOD1–LOD3은 가지와 잎 카드를 줄여 마지막 단계는 원경에 충분히 가볍습니다.

PC·콘솔의 1인칭/3인칭 게임, 서바이벌, 오픈 월드, 시뮬레이터에 가장 잘 맞습니다. 모바일에서는 LOD1 또는 LOD2를 가장 가까운 단계로 쓰고 잎의 오버드로를 확인하세요.

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 모두에서 동작합니다.

다른 카테고리

다른 스타일로 보기

다른 엔진용으로 보기