02 Introduction to Open GL Imam Cholissodin imam

  • Slides: 14
Download presentation
02 |Introduction to Open. GL Imam Cholissodin| imam. cholissodin@gmail. com

02 |Introduction to Open. GL Imam Cholissodin| imam. cholissodin@gmail. com

Introduction to Open. GL 1. Computer Graphics 2. What’s Open. GL ? 3. Open.

Introduction to Open. GL 1. Computer Graphics 2. What’s Open. GL ? 3. Open. GL History 4. Open. GL Architecture 5. Fixed-Function vs Programmability 6. Related Libraries 7. Open. GL Syntax 8. Simple CG Program Architecture 9. Setup Open. GL 10. Demo Open. GL Program

Computer Graphics • Grafika komputer (Inggris: Computer graphics) adalah bagian dari ilmu komputer yang

Computer Graphics • Grafika komputer (Inggris: Computer graphics) adalah bagian dari ilmu komputer yang berkaitan dengan pembuatan dan manipulasi gambar (visual) secara digital (sumber : Wiki). • Bagaimana menurut pemahaman anda?

What is Open. GL ? • Low-level Graphics API (Application Programming Interface) / antarmuka

What is Open. GL ? • Low-level Graphics API (Application Programming Interface) / antarmuka perangkat lunak ke kartu grafis. • Independen terhadap platform (hanya menyediakan fungsi grafis, tidak menyediakan fungsi yang dependen terhadap platform : input handling, windowing, dsb). • Banyak digunakan di aplikasi grafis : CAD programs, games, data visualization, dsb.

Open. GL History • Dikembangkan pertama kali oleh SGI (Silicon Graphics, Inc). • 1992

Open. GL History • Dikembangkan pertama kali oleh SGI (Silicon Graphics, Inc). • 1992 diambil alih oleh Open. GL ARB (Architecture Review Board) : 3 DLabs, ATI, Dell, Evans & Sutherland, Hewlett-Packard, IBM, Intel, Matrox, NVIDIA, SGI, Sun Microsystems sebagai pembuat dan pengelola spesifikasi Open. GL. • 2006 dikontrol oleh The Khronos group.

Open. GL Architecture • Sebuah state machine, contoh untuk menggambar objek dengan warna merah

Open. GL Architecture • Sebuah state machine, contoh untuk menggambar objek dengan warna merah programmer harus merubah color state ke merah lalu menggambar objek tersebut. • Tetapi sejak Open. GL 3. 0 (programmable pipeline/shader based) menjadi less stateoriented API : state functions untuk color, normals, lighting deprecated (kadaluarsa).

Fixed-Function vs Programmability • Fixed-function pipeline dirancang utk berjalan di CPU (single-path rendering). •

Fixed-Function vs Programmability • Fixed-function pipeline dirancang utk berjalan di CPU (single-path rendering). • Programmable pipeline (shader based) dirancang utk berjalan di GPU sehingga lebih flexible dan mudah dikontrol oleh programmer. • Ada 3 jenis shaders : Vertex shaders (memodifikasi vertex), Fragment shaders (memodifikasi pixel), Geometry shaders (menggenerate vertices, dan bukan fitur inti).

Related Libraries • GLUT (Open. GL Utility Toolkit) menyediakan fungsi untuk windowing, menus, inputhandling.

Related Libraries • GLUT (Open. GL Utility Toolkit) menyediakan fungsi untuk windowing, menus, inputhandling. • SDL (Simple Direct Media Layer) : librari multimedia cross-platform. • GLFW : windowing, creating an Open. GL context and managing input.

Open. GL Syntax • Diawali dengan awalan gl : gl. Vertex 3 f() •

Open. GL Syntax • Diawali dengan awalan gl : gl. Vertex 3 f() • Nomor menunjukkan jumlah parameter : gl. Vertex 3 f(1. 0 f, 1. 0 f) punya 3 parameter • Huruf setelah nomor menunjukkan tipe data parameter : gl. Vertex 3 f() bertipe data float.

Simple CG Program Architecture • Berisi kode inisialisasi : penciptaan window, loading resource, dsb.

Simple CG Program Architecture • Berisi kode inisialisasi : penciptaan window, loading resource, dsb. • berisi finite loop untuk logika, dan rendering. Inisialisasi Update logika Rendering Keluar ? De. Inisialisasi

Setup Open. GL (using GLUT) • Windows : http: //www. csustan. edu/%7 ersc/SDSU/GL UTinstall.

Setup Open. GL (using GLUT) • Windows : http: //www. csustan. edu/%7 ersc/SDSU/GL UTinstall. html • GLUT download : http: //www. opengl. org/resources/libraries/gl ut/glut_downloads. php

Setup Open. GL • 3 file penting dalam Open. GL yang akan digunakan, yaitu

Setup Open. GL • 3 file penting dalam Open. GL yang akan digunakan, yaitu : glut. h, glut 32. lib dan glu 32. dll • Letakkan glut. h ke dalam direktori : “Programs FilesVCinclude” • Letakkan glut 32. lib ke dalam direktori : “Programs FilesVClib” • Letakkan glut 32. dll ke dalam direktori : “WindowsSystem 32”

Demo Configuration Open. GL • Live Demo Setup Open. GL di Kelas • Live

Demo Configuration Open. GL • Live Demo Setup Open. GL di Kelas • Live Demo Open. GL Code Base – Create Line – Contoh code online dapat di akses pada link berikut : • http: //www. glprogramming. com/red/chapter 01. html (hello. c & double. c)

Selesai Imam Cholissodin| imam. cholissodin@gmail. com

Selesai Imam Cholissodin| imam. cholissodin@gmail. com