Melalui kuliah ini, para mahasiswa diajarkan berbagai materi dan latihan, sehingga mereka mampu mendesain objek-objek tertentu sesuai dengan permintaan pengguna di dunia nyata dan membuat program grafika interaktif menggunakan pustaka grafika seperti WebGL dan Three.js. Through this course, students are taught various materials and practices, so that they can design certain objects according to user's needs in the real world and create interactive graphics programs respectively using graphics libraries, e.g. WebGL and Three.js.
Ada dua buku referensi utama yang digunakan di kuliah ini: Interactive Computer Graphics A Top-Down Approach with WebGL (2014) oleh Edward Angel and Dave Shreiner; DAN Learning Three.js: Programming 3D Animations and Visualizations for The Web with HTML5 and WebGL (2018) oleh Jos Dirksen. There are two main book references used in this course: Interactive Computer Graphics A Top-Down Approach with WebGL (2014) by Edward Angel and Dave Shreiner; AND Learning Three.js: Programming 3D Animations and Visualizations for The Web with HTML5 and WebGL (2018) by Jos Dirksen.
Capaian Pembelajaran | Learning Outcomes
Mahasiswa mampu | Students are able to
- Menjelaskan dasar-dasar sistem dan jalur pipa grafika dalam pustaka-pustaka grafika | Explain the basics of graphics system and pipeline in the graphics libraries
- Mendemonstrasikan program grafika berdasarkan contoh | Demonstrate graphics programs based on examples
- Membuat program grafika interaktif | Create interactive graphics programs
- Menjelaskan konsep-konsep geometri, representasi, dan transformasi objek | Explain the concepts of geometry, representation, and object transformation
- Membuat program grafika yang melibatkan konsep transformasi objek | Create graphics programs that involves the concept of object transformation
- Menerapkan konsep penampilan tiga dimensi ke program grafika | Apply the concept of 3D viewing to graphics programs
- Menerapkan konsep rendering ke program grafika | Apply the concept of rendering into graphics programs
- Bekerja dalam tim mengeksplorasi pustaka grafika modern | Work in a team exploring modern graphics libraries
- Bekerja dalam tim mengembangkan aplikasi baru menggunakan pustaka grafika | Work in a team developing novel application utilizing graphics libraries
Pokok Bahasan | Learning Topics
- Pengenalan Grafika Komputer | Introduction to Computer Graphics
- Sistem Grafika pada WebGL | Graphics System on WebGL
- Grafika Interaktif | Interactive Graphics
- Geometri Tiga Dimensi | 3D Geometry
- Transformasi Tiga Dimensi | 3D Transformation
- Koordinat Homogen | Homogeneous Coordinate
- Pencahayaan dan Pembayangan | Lighting and Shading
- Pemetaan Tekstur | Texture Mapping
- Quaternion
- Pemandangan Tiga Dimensi Dasar di Three.js | Basic 3D Scene in Three.js
- Bekerja dengan Sumber-sumber Cahaya di Three.js | Working with Light Sources in Three.js
- Bekerja dengan Material Three.js | Working with Three.js Materials
- Bekerja dengan Geometri di Three.js | Working with Geometries in Three.js
- Geometri dan Sirat/Jala Tingkat Lanjut di Three.js | Advanced Geometries and Meshes in Three.js
- Titik dan Sprite di Three.js | Points and Sprites in Three.js
- Animasi dan Pergerakan Kamera di Three.js | Animations and Camera Movement in Three.js
- Bekerja dengan Tekstur di Three.js | Working with Textures in Three.js
- Penambahan Hukum Fisika ke Three.js | Adding Physics to Three.js scenes