Про стиль 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.