FoliMesh

three.js için Low-poly tarzında Palmiyeler

Low-poly palmiyeler three.js sahnesine neredeyse hiç ayar gerektirmeden girer: GLB dosyasını three/addons içindeki GLTFLoader ile yükleyin, LOD0–LOD3 mesh'lerini THREE.LOD'a lod.addLevel(mesh, distance) ile bağlayın; seviye her karede kamera mesafesine göre değişir. Köşeli görünüm flat shading ve tepe rengi (COLOR_0) ile oluşur, doku yoktur: tek bir malzeme tüm sahneye yeter ve yapraklar katı geometridir — mobil GPU'larda alpha test ve şeffaf overdraw olmaz.

Seçkide beş palmiye var: Hindistan cevizi palmiyesi, Hurma palmiyesi, Kanarya hurması, Washingtonia ve Cüce palmiye. LOD0'da birkaç yüz ile iki bin üçgen arasında kalırlar; pivot tabanda, görünmez collision mesh'ini Rapier veya cannon-es'e verebilirsiniz. Kıyı şeridini InstancedMesh ile doldurun ya da BatchedMesh ve yeni bir seed ile çeşitlendirin.

Modeller
5
Detay seviyeleri
LOD0 – LOD3
Formatlar
GLB · FBX · OBJ

Low-poly tarzı hakkında

Low-poly bitki örtüsü, hem render hem de build boyutu açısından en ucuz stildir.

  • Düz gölgelendirme: yüz başına tek normal net, köşeli görünümü verir; normal map yoktur.
  • Renk vertex’lerde saklanır (glTF COLOR_0): doku yok, UV işi yok, neredeyse hiç video belleği yok.
  • Yapraklar alpha kart değil, katı geometridir: alpha test ve şeffaf overdraw yoktur; bu, mobil GPU’larda önemlidir.
  • Sahnedeki tüm modeller tek bir materyali paylaşabilir, böylece ağaçlar kolayca batch’lenir ve instance’lanır.
  • LOD0 için tipik bütçe birkaç yüz ile birkaç bin üçgen arasındadır.

Mobil, WebGL/WebGPU, VR, strateji, şehir kurma ve stilize bağımsız oyunlar için uygundur. Motorda vertex rengiyle çarpan bir materyal kullanın.

three.js içinde kullanım

three.js’te GLB’yi three/addons içindeki GLTFLoader ile yükleyin; DRACOLoader veya KTX2Loader’ı yalnızca dosya bu uzantıları kullanıyorsa ekleyin.

  • Mesafeye göre LOD: LOD0–LOD3 için lod.addLevel(mesh, distance) ile THREE.LOD; seviye her karede kamera mesafesine göre değişir.
  • Ormanlar: InstancedMesh binlerce kopyayı tek draw call’da çizer, BatchedMesh ise birkaç ağaç varyasyonunu karıştırır. THREE.LOD instance bazında çalışmaz; instance’ları her chunk için LOD’a göre kendiniz gruplayın.
  • Yapraklar: glTF alphaMode MASK, material.alphaTest’e dönüşür; çift yüzlü materyaller otomatik olarak side: THREE.DoubleSide alır.
  • Çarpışma mesh’i: görünmez tutun ve Rapier veya cannon-es gibi bir fizik kütüphanesine verin.

Hem WebGLRenderer hem de WebGPURenderer ile çalışır.

Diğer kategoriler

Diğer tarzlarda aynısı

Diğer motorlar için aynısı