Advertisement

Responsive Advertisement

Transformasi Objek 2 Dimensi dalam OpenGL

Transformasi dua dimensi adalah  suatu  model  atau  bentuk  atau  teknik  memindahkan  atau  mengubah nilai posisi objek dalam sistem koordinat dua dimensi. Pemindahan objek ini dapat diartikan sebagai pemindahan titik. Pada pemrograman dasar open GL terdapat 4 objek yang dibuat, yaitu :

Titik. Penulisan pada program adalah GL_POINTS
Garis. Penulisan pada program adalah GL_LINES
Polyline. Penulisan pada program adalah GL_LINE_STRIP
Polygon. Penulisan pada program adalah GL_LINE_LOOP

Contoh coding untuk pembuatan titik :

glBegin(GL_POINTS);
glVertex2(tipe_data)(koordinat X, koordinat Y);
glEnd();

Contoh coding untuk pembuatan garis :

glBegin(GL_LINES);
glVertex2(tipe_data)(koordinat X1, koordinat Y1);
glVertex2(tipe_data)(koordinat X2, koordinat Y2);
glEnd();

Contoh coding untuk pembuatan polyline :

glBegin(GL_LINE_STRIP);
glVertex2(tipe_data)(koordinat X1, koordinat Y1);
glVertex2(tipe_data)(koordinat X2, koordinat Y2);
glVertex2(tipe_data)(koordinat X3, koordinat Y3);
glVertex2(tipe_data)(koordinat X4, koordinat Y4);
glEnd();

Contoh coding untuk pembuatan polyline :

glBegin(GL_LINE_LOOP);
glVertex2(tipe_data)(koordinat X1, koordinat Y1);
glVertex2(tipe_data)(koordinat X2, koordinat Y2);
glVertex2(tipe_data)(koordinat X3, koordinat Y3);
glVertex2(tipe_data)(koordinat X4, koordinat Y4);
glEnd();


3D graphics sering mengacu pada 3D Models. Hal ini dikarenakan karena adanya persamaan dalam hal graphical data file. Namun sebenarnya dua hal ini adalah dua hal yang berbeda. 3 D model lebih mengacu pada representasi secara matematis dari suatu objek. Sedangkan 3D graphics lebih mengacu pada representasi objek secara visual yang mendekati realitas.

Pada pencitraan 3D kita mengenal vector 3D dimana terdapat representasi arah pada sumbu x, y dan z. Beberapa bagian dari Objek 3D adalah :


  1. Vertex : titik yang merupakan ujung (node) dari Objek biasanya dihubungkan oleh sebuah garis.
  2. Edge : garis yang menghubungkan antar vertex dari Objek.
  3. Face : merupakan kesatuan antara garis dan titik yang membentuk sebuah ruang 2D, biasanya berupa      persegi (polygonal) dan segitiga (tris).
  4. Node : pada games modeling tipa face yang biasanya sering digunakan adalah tris (segitiga).
  5. Element : kesatuan sebuah Objek secara utuh.


Metode dalam Graphic 3D

  • Ray Tracing : sebuah teknik untuk menghasilkan gambar dengan pencahayaan yang mendekati sebenarnya. Komputasi yang lebih lama dan memakan resources. Ray Tracing cocok pada gambar diam dan animasi (film) , dan lebih kurang cocok untuk real-time aplikasi seperti permainan komputer. Ray tracing mampu mensimulasikan berbagai efek optis, seperti refleksi dan pembiasan.
  • Lighting atau Illumination : teknik pencahayaan untuk penggunaan sumber cahaya buatan seperti lampu dan penerangan alami seperti skylight, matahari dll.
  • Shadow : efek dari pencahayaan, area di mana cahaya tidak dapat mencapai-nya karena terhalang oleh sebuah objek.
  • Difuse Color : warna sebenarnya dari objek
  • Reflection : efek pencahayaan, pemantulan cahaya.
  • Refraction : efek pencahayaan, pembiasan cahaya ketika terkena objek.
  • Rendering : proses menghasilkan sebuah gambar dari sebuah model, dengan menggunakan program computer.
  • Shading : efek pencahayaan, bagaimana warna dan kecerahan dari permukaan bervariasi dengan pencahayaan.
  • Texture Mapping : memberikan kulit / pola (pattern) pada objek 3D, contohnya memberikan material dinding pada objek box.
  • Bump Mapping : memberikan kesan seakan-akan kasar pada objek 3D yang halus dengan menggunakan textures / map.
  • Normal Mapping (height map) : sebuah textures yang mendeskripsikan normal dari tiap pixel, membuat objek 3D memiliki ketinggian yang berbeda (lekukan, goresan dll) karena itu disebut juga Normal Map
  • Transparency : kemampuan objek untuk ditembus cahaya.
  • Translucency : penyebaran cahaya ketika melalui benda padat.
  • Caustic : suatu bentuk pencahayaan tidak langsung. Pantulan cahaya dari sebuah benda yang shiny, atau memfokuskan cahaya melalui objek yang transparan, untuk menghasilkan cahaya warna cerah pada objek lain.


Atribut Primitif 3D
Dalam dunia 3D terdapat beberapa primitif seperti :

Titik (point)
Posisi sebuah titik dalam grafika 3D diekspresikan dengan (x,y,z)

Garis (line)
Sebuah garis dibentuk dengan mendeskripsikan dua buah titik, yaitu (x1,y1,z1) dan (x2,y2,z2) yang sebagai ujung dari sebuah garis.

Bidang/Permukaan (plane/surface)
Pada grafika 3D, terdapat sebuah geometri yang sangat penting, yaitu bidang datar (plane). Sebuah bidang datar pada grafika 3D dispesifikasikan dengan sebuah persamaan, yaitu :
Ax + By + Cz + D = 0

Bola (sphere)
Membentuk bola penuh atau bola dengan proporsi tertentu.

Kubus(cube)
Membentuk prisma kotak. Kubus atau balok denganparameter length, width dan height dari box yang dapat diatur.

Kerucut (cone)
Membentuk cone dengan dasar lingkaran.

Cincin (torus)
Membentuk seperti cincin atau donut.

Pyramid
Membentuk limas dengan dasar persegi.

Geosphere
GeoSphere menghasilkan spheres and hemispheres berdasarkan 3 kelas dari regular polyhedrons.


Representasi Object 3D
Untuk merepresentasikan object 3D, dapat menggunakan beberapa cara berikut :

- Persamaan Geometri
Suatu object 3D dapat direpresentasikan langsung dengan menggunakan persamaan

geometri dari object tersebut.

- Constructive Solid Geometry (CSG)
CSG adalah suatu cara membentuk object dengan jalan menggabungkan atau memotong(mengurangi) dari beberapa object primitif 3D. CSG dalam POV-Ray melibatkan : difference, union, intersect.

- Fractal
Fractal dalam arti tertentu dapat disebut sebagai fragment, tetapi arti sebenarnya adalah suatu objek atau kuantitas yang menampilkan kesamaan diri sendiri. Dengan menggunakan fractal dapat dihasilkan banyak macam gambar dengan pola rekursif seperti awan, batu, lambang-lambang khusus, dan sebagainya.
Ada dua jenis fractal, yang pertama adalah fractal yang dihasilkan dari suatu rumus matematika, contohnya adalah Mandelbrot dan Julia. Yang kedua adalah fractal yang dihasilkan tidak dari rumus matematika, melainkan dari suatu pengulangan bentuk tertentu dengan rekursive algorithm. Dalam penelitian ini, digunakan pengulangan bentuk tertentu dengan rekursive algorithm untuk menghasilkan gambar dengan pola batu-batuan. Selain itu untuk meng-hasilkan efek dan pola batu yang lebih realistis akan digunakan warna tertentu saja.
Fractal adalah suatu objek atau kuantitas yang menampilkan kesamaan diri sendiri (self-similarity). Ada juga yang menyebutkan fractal adalah pola pengulangan yang menampilkan kekompleksan lebih dalam jika diperbesar.

Post a Comment

0 Comments