Laporan Akhir Proyek Computer Graphics #comgraf_LB2122

Data Anggota Kelompok

2301883643

ALBERTIUS CHRISTOPHER NATHAN

2301855135

NICHOLAS CALVIN

2301865773

ALRAFLY DEVARA ADYATAMA

2301892074

EUGENE REGINALD PATRICK

2301862891

ONGKY FEBRIANDY

Latar Belakang

Catur adalah permainan papan yang terdiri dari 64 kotak, 8x8 dengan warna hitam putih setiap kotak secara bergantian. Catur diyakini berasal dari India, sejak abad 6. Catur merupakan salah satu permainan papan sekaligus permainan berpikir. Catur terbagi menjadi 2 pemain, pemain pertama menggunakan bidak warna putih, pemain kedua menggunakan bidak warna hitam. Setiap pemain memiliki 16 bidak catur, setiap bidak mempunyai cara geraknya masing-masing. Cara bermain catur cukup mudah, akan tetapi membutuhkan strategi yang kuat untuk memenangkan permainan ini. Ada banyak manfaat yang diberikan dari bermain catur. Dapat meningkatkan konsentrasi, melatih kemampuan perencanaan, mampu memecahkan masalah, meningkatkan IQ dan lainnya. Permainan catur ini sangat berguna untuk anak dibawah umur 7 untuk melatih kemampuan berpikirnya. Pada kesempatan ini, kami akan membuat object 3 dimensi berupa berupa papan catur dan seluruh bidaknya untuk memberi tahu bentuk dari setiap bidaknya dengan harapan pemain dapat memahami bentuk setiap bidaknya secara tepat.

Unsur-unsur Computer Graphics

Dalam pengerjaan project yang kami buat, beberapa unsur computer graphics telah kami terapkan.

  1. Transformasi geometri, yaitu objek-objek yang ada dapat di translasi, rotasi, dan skala. Hal-hal ini dapat dicapai dengan interaksi user dengan camera. Jika user klik kanan, maka akan kontrol rotate akan aktif. Mode ini menunjukkan objek yang ada di layar berotasi. Jika user klik kiri, maka kontrol drag akan aktif. Mode ini menunjukkan objek yang ada di layar bergeser atau bertranslasi. Jika user menggunakan scroll wheel pada mouse, maka camera akan mendekat atau menjauh. Hal ini menunjukkan objek yang ada pada layar lebih besar atau lebih kecil sesuai dengan skalanya.
  2. Camera. Camera ini menjadi dasar dan fundamental pada project yang kami buat sebagai titik pandang atas objek-objek yang ada. Kamera yang kami pakai adalah kamera perspektif. Posisi dari camera dapat diatur secara dinamis pada mode camera control. Aspect ratio yang kami gunakan diterapkan secara dinamis sesuai dengan window size pada web browser.
  3. Image processing. Kami tidak banyak menerapkan banyak dari unsur ini. Hal-hal yang kami terapkan dalam unsur ini adalah shadow mapping, yaitu objek-objek yang ada diberi aspek shadow dari lighting yang ada. Kemudian, objek-objek yang kami buat juga diberi aspek anti-aliasing agar garis-garis terlihat lebih natural.
  4. Clipping. Unsur ini kami terapkan pada penumpukan objek antara satu dengan yang lainnya. Bagian dari objek yang tertimpa dengan objek lain tidak akan ter-render oleh camera.
  5. Lighting. Kami memakai dua jenis lighting di projek kami, yaitu point light dan ambient light. Point light dalam hal ini adalah non-global illumination, sedangkan ambient light adalah global illumination. Kemudian, objek-objek yang ada menggunakan tekstur dengan material Phong agar lighting yang ada dapat terlihat bagus pada objek.
  6. Texture mapping. Kami memakai default dari three.js untuk mapping dari texture yang kami terapkan pada objek-objeknya. Mapping tersebut adalah UV Mapping, yaitu menggunakan koordinat u dan v pada objek untuk menerapkan mapping dari texture yang dipakai.

Penjelasan Codingan

Seperti yang bisa dilihat, kami lebih sering menggunakan library BoxGeometry, SphereGeometry, dan CylinderGeometry. Dimana kami memainkan variable-variable yang terdapat agar dapat membentuk bidak-bidak catur sesuai keinginan. Disini juga kita menggunakan function, dimana nanti dapat kita gunakan ulang secara mudah.

Guna membantu untuk melihat obyek yang kami kerjakan, kami menambahkan fitur OrbitControls yang mana berguna untuk melihat benda melalui berbagai sudut pandang dan dapat dilakukan zoom in ataupun zoom out dengan cara meng-scroll scroll bar pada mouse. Untuk mengakses OrbitControls ini, Anda dapat menekan key Q untuk mengaktifkan OrbitControlsnya


Lampiran

  1. Link Youtube

https://youtu.be/K6RPzqNnO_M

        2. Link Codingan

        
        3. Link Laporan Akhir
            
https://docs.google.com/document/d/1ZrWfacO_j-PExQz_6l1MkIzfNSna9v_ysBtfWNYWjGI/edit?usp=sharing 
 

 

Komentar

Postingan populer dari blog ini

Heap and Tries

AVL Tree