ADVERTISEMENT - ADSENSE LEADERBOARD
728x90 (Responsive Header Banner)

00:00:00

Procedural Scattering dengan Geometry Nodes: Bikin Lingkungan Dinamis di Blender


Procedural Scattering dengan Geometry Nodes: Bikin Lingkungan Dinamis di Blender

Tutorial ini bakal nuntun lu buat manfaatin fitur Geometry Nodes di Blender buat nyebar objek secara prosedural di atas permukaan, sehingga lu bisa bikin lingkungan yang kompleks dan bervariasi dengan cepat. Di sini lu bakal belajar cara nyiapin sistem yang fleksibel buat nge-instance elemen seperti batu atau dedaunan dengan atribut acak.

Persiapan Awal

Sebelum mulai, pastikan lu udah install Blender versi 3.0 atau yang lebih baru (disarankan pakai Blender 4.0+ buat dapetin fitur dan performa terbaru). Paham dasar-dasar antarmuka Blender, manipulasi objek, dan Node Editor bakal ngebantu banget di sini.

Langkah 1: Menyiapkan Base Mesh dan Geometry Nodes Awal

Mulai dengan buka Blender dan pilih base mesh lu (misalnya plane atau objek terrain) yang mau dijadiin tempat sebaran objek. Sambil base mesh-nya kepilih, pindah ke workspace Geometry Nodes atau buka jendela Geometry Nodes editor baru. Klik 'New' buat bikin node tree baru.

Secara default, lu bakal lihat node 'Group Input' dan 'Group Output'. Keduanya mewakili mesh asli lu dan hasil akhirnya. Langkah pertama adalah nyebar titik-titik di permukaan base mesh tempat instance bakal ditaruh:

  1. Tekan tombol `Shift + A` buat buka menu Add, cari 'Distribute Points on Faces', terus taruh di antara node 'Group Input' dan 'Group Output'.
  2. Sambungin port 'Geometry' dari 'Group Input' ke port 'Mesh' di node 'Distribute Points on Faces', lalu sambungin port 'Points'-nya ke port 'Geometry' di node 'Group Output'.
  3. Di node 'Distribute Points on Faces', lu bisa ngatur nilai 'Density' buat nentuin seberapa banyak titik yang kebuat. Buat sebaran yang kelihatan alami, ubah metode 'Distribution' dari 'Random' jadi 'Poisson Disk' supaya jarak antar titik lebih merata tanpa bikin instance saling numpuk, lalu atur 'Distance Min' buat ngontrol jarak minimum antar titik.

Langkah 2: Instancing Objek dan Menambahkan Variasi

Sekarang setelah titik-titiknya udah ada, lu perlu naro objek yang diinginkan (misalnya batu, pohon, atau rumpput) ke titik-titik tersebut:

  1. Bikin atau impor objek yang mau disebar, terus masukin ke collection baru (misalnya 'Scattered_Assets') di Outliner. Sembunyikan objek asli ini dari viewport dan render kalau lu cuma mau lihat hasil sebarannya aja.
  2. Balik ke Geometry Nodes editor, tambahin node 'Instance on Points' (`Shift + A` > Cari > 'Instance on Points'). Taruh node ini setelah 'Distribute Points on Faces'. Sambungin port 'Points' dari 'Distribute Points on Faces' ke port 'Points' di 'Instance on Points'.
  3. Buat nentuin objek mana yang mau di-instance, tambahin node 'Collection Info' (`Shift + A` > Cari > 'Collection Info'). Di node ini, pilih collection 'Scattered_Assets' lu. Yang paling penting, centang opsi 'Separate Children' dan 'Reset Children' biar objek individual di dalam collection bisa di-instance dengan benar dan transformasinya di-reset. Sambungin port 'Geometry' dari 'Collection Info' ke port 'Instance' di node 'Instance on Points'.
  4. Buat nambahin variasi, acak skala dan rotasi instance-nya. Tambahin node 'Random Value' (`Shift + A` > Cari > 'Random Value') terus ubah 'Type'-nya jadi 'Vector'. Sambungin port 'Value'-nya ke port 'Scale' di node 'Instance on Points'. Atur nilai 'Min' dan 'Max' di node 'Random Value' buat nentuin rentang variasi skala (misalnya Min: 0.5, Max: 1.5).
  5. Ulangi proses ini buat rotasi: tambahin node 'Random Value' lagi (Type: 'Vector'), sambungin ke port 'Rotation', dan atur nilai 'Min' serta 'Max' yang sesuai (misalnya buat rotasi sumbu Z: Min: -PI, Max: PI atau -180 sampai 180 derajat kalau pakai pengaturan derajat).
  6. Terakhir, supaya base mesh asli lu tetep kelihatan bareng sama instance yang disebar, tambahin node 'Join Geometry' (`Shift + A` > Cari > 'Join Geometry') sebelum 'Group Output'. Sambungin port 'Geometry' dari 'Group Input' awal dan port 'Geometry' dari 'Instance on Points' ke node 'Join Geometry' ini. Langkah ini bakal menggabungkan kedua geometri tersebut ke output akhir.

Tips Profesional

  • Density Painting: Buat kontrol presisi atas kerapatan sebaran, tambahin 'Vertex Group' ke base mesh lu dan lukis bobotnya (weight paint). Di node 'Distribute Points on Faces', pakai node 'Attribute Sample' buat baca vertex group ini dan sambungin outputnya ke port 'Density'. Cara ini ngebolehin lu ngelukis area tempat objek bakal muncul atau tidak.
  • Attribute Randomization: Selain skala dan rotasi, lu bisa ngacak atribut lain seperti indeks material atau properti kustom pakai node 'Random Value' serta node 'Set Material' atau 'Set Custom Attribute', biar variasi visualnya makin mantap.
  • Performance Optimization: Kalau ngadepin banyak instance, pastikan objek sebaran lu udah di-optimize (low poly, UV efisien). Pertimbangkan buat pakai tampilan 'Bounding Box' buat instance di viewport (Viewport Shading > Options > Instancing: Bounding Box) supaya interaksi waktu setup tetap lancar.
  • Seed Value: Manfaatin input 'Seed' di node 'Random Value' buat cepet-cepet bikin susunan acak yang berbeda tanpa harus ganti parameter lain. Ini ngebantu banget pas lagi iterasi.
  • Realize Instances: Kalau lu butuh nerapin modifier atau nge-sculpt instance individual, nantinya lu harus nambahin node 'Realize Instances' sebelum 'Group Output'. Tapi ingat, cara ini bakal ngubah instance jadi data mesh beneran, yang bisa bikin ukuran file dan penggunaan memori naik drastis.

    Gimana asik kan? blender ini memang powerfull banget buat animasi 2d maupun 3d. bagi lu yang bener-bener baru belajar blender boleh tengok dulu tutorial gua di : https://youtu.be/a9aX9E7c-BU 
    Good Luck brader....
ADVERTISEMENT - POST END BANNER
336x280 (Responsive Content Banner)

Diskusi & Komentar

Posting Komentar