FoliMesh

Кущі в стилі Low-poly для three.js

Лоу-полі кущі — найдешевший спосіб заповнити простір між стовбурами у сцені three.js. Завантажте GLB через GLTFLoader з three/addons, а потім передайте меші LOD0–LOD3 у THREE.LOD через lod.addLevel(mesh, distance) — рівні змінюються за відстанню до камери щокадру. Листя тут суцільна геометрія з вершинними кольорами, а не альфа-карти: немає ні alpha test, ні прозорого overdraw, що критично для мобільних GPU.

У наборі Бамбук, Кущ, Самшит, Живопліт, Ялівець, Шипшина, Малина та Ліщина. Плоске затінення тримає LOD0 у межах від кількох сотень до двох тисяч трикутників, а спільний матеріал дає змогу InstancedMesh і BatchedMesh малювати довгі живоплоти мінімумом викликів. Колізійний меш залишайте невидимим і передавайте його в Rapier або cannon-es — для стратегій, містобудівних симуляторів і стилізованих VR-проєктів на WebGLRenderer та WebGPURenderer.

Моделі
8
Рівні деталізації
LOD0 – LOD3
Формати
GLB · FBX · OBJ

Про стиль Low-poly

Low-poly — найдешевший стиль і в рендері, і за розміром білда.

  • Пласке затінення: одна нормаль на грань дає чіткі грані, карти нормалей не потрібні.
  • Колір зберігається у вершинах (glTF COLOR_0): немає текстур, немає роботи з UV, майже не витрачається відеопам’ять.
  • Листя — суцільна геометрія, а не картки з альфою: немає alpha-test і прозорого overdraw, що важливо для мобільних GPU.
  • Один матеріал можна використати для всіх моделей сцени, тож дерева легко батчаться та інстансяться.
  • Типовий бюджет LOD0 — від кількох сотень до кількох тисяч трикутників.

Підходить для мобільних ігор, WebGL/WebGPU, VR, стратегій, містобудівних і стилізованих інді-ігор. У рушії використовуйте матеріал, що враховує колір вершин.

Використання в three.js

У three.js завантажуйте GLB через GLTFLoader з three/addons; DRACOLoader або KTX2Loader потрібні, лише якщо файл використовує ці розширення.

  • LOD за відстанню: THREE.LOD і lod.addLevel(mesh, distance) для LOD0–LOD3; рівні перемикаються за відстанню до камери щокадру.
  • Ліси: InstancedMesh малює тисячі копій за один draw call, а BatchedMesh дає змогу змішувати кілька варіацій дерев. THREE.LOD не працює на рівні окремих інстансів, тож групуйте інстанси за LOD для кожного чанка самі.
  • Листя: alphaMode MASK з glTF перетворюється на material.alphaTest, а двобічні матеріали автоматично отримують side: THREE.DoubleSide.
  • Меш колізії: зробіть невидимим і передайте у фізичну бібліотеку, наприклад Rapier або cannon-es.

Працює і з WebGLRenderer, і з WebGPURenderer.

Набори

Інші категорії

Те саме в інших стилях

Те саме для інших рушіїв