Sebuah art yang saya buat sekaligus perjalanan belajar pertama saya mempelajari logic Math.random() JavaScript dan shader (GLSL), yang bersumber dari konsep abstrak. Elemen dalam wildflower dipadukan secara sederhana, menggambarkan keindahan yang muncul secara alami tanpa harus terlihat rumit.

Setiap bentuk dan susunannya merepresentasikan pola yang lahir dari proses logic math random, namun tetap memiliki batas dan keteraturan, seperti bagaimana logika dalam program mengubah sesuatu yang acak menjadi hasil yang dapat dipahami.
Melalui wildflower, saya mencoba menghubungkan antara logika dalam program dengan rasa yang sering kali tidak sepenuhnya terstruktur. Ada hal-hal yang terjadi secara acak, tetapi tetap memiliki batas dan arah tertentu.
Dari situlah ide visual ini terbentuk: sebuah perpaduan antara kode program, konsep abstrak, dan rasa yang secara tidak langsung menjadi inspirasi dibalik wildflower.
Elemen-elemen dalam Wildflower dibuat dengan sederhana. Bukan dari gambar bunga statis, semuanya dihasilkan melalui pola, noise shader, dan random seed yang membuat setiap bunga muncul dengan bentuk yang sedikit berbeda.
Visual ini merupakan hasil eksplorasi pertama saya dengan JavaScript random logic dan shader.
Salah satu inti dari proyek ini adalah penggunaan Math.random() di
JavaScript.
Ketika pengguna melakukan klik di layar, kode ini akan menghasilkan tiga nilai acak yang kemudian dikirim ke shader sebagai parameter.
shaderMaterial.uniforms.u_stop_randomizer.value =
new THREE.Vector3(Math.random(), Math.random(), Math.random());
Nilai-nilai ini menentukan berbagai karakteristik bunga, seperti:
Dengan cara ini, setiap bunga yang muncul tidak pernah benar-benar sama.
Wildflower dirancang dengan interaksi yang sangat minimal.
Ketika layar diklik, posisi pointer dikirim ke shader dan bunga akan mulai tumbuh dari titik tersebut.
pointer.x = clientX / window.innerWidth;
pointer.y = clientY / window.innerHeight;
pointer.clicked = true;
Shader kemudian akan:
Hasilnya adalah animasi yang terasa organik dan tidak sepenuhnya terprediksi.
Hal yang menarik dari proyek ini bagi saya bukan hanya sisi teknisnya, tetapi juga hubungan antara logika program dan abstraksi.
Dalam kode, sesuatu yang acak tetap memiliki batas:
Wildflower menjadi satu bentuk yang lahir dari randomness, tetapi tetap memiliki batas dan keteraturan.
Proyek ini juga menjadi titik awal saya memahami beberapa konsep yang sebelumnya terasa asing, seperti:
Walaupun sederhana, proyek ini memberi saya perspektif baru tentang bagaimana kode dapat digunakan sebagai medium ekspresi visual.
Wildflower mungkin hanya eksperimen kecil, tetapi bagi saya wildflower merepresentasikan pertemuan antara logika dan abstraksi. Wildflower menjadi art, pelajaran, sekaligus perayaan kecil dari sebuah ungkapan sederhana di bulan november tahun lalu (2025).