SlideShare a Scribd company logo
1 of 31
Download to read offline
1
LAPORAN PRAKTIKUM
KOMPUTER GRAFIK
Nama
praktikan
Nomor
mahasiswa
Tanggal
kumpul
Tanda tangan
praktikan
Sri Ramadhani 1214370338 12 juni 2014
Nama Penilai Tanggal
koreksi
Nilai Tanda tangan
Dosen
Indri Sulistianingsih, S.kom 12 juni 2014
Universitas Pembangunan Panca Budi
Fakultas Teknik
Jurusan Sistem Komputer
Medan
2014
KELAS
TI4-D SORE
2
KATA PENGANTAR
Segala puji syukur saya ucapkan kehadirat Allah SWT, atas berkat rahmatnya penulis
dapat menyelesaikan tugas “Laporan Praktikum Kompuer Grafik” guna memenuhi syarat
dalam menyelesaikan tugas UAS (ujian akhir semester), Adapun pembuatan laporan ini
ditujukan untuk penyelesaian tugas untuk mata kuliah Grafika Kmputer Program studi
Teknik Perangkat Lunak FTEKNIK UNHALU, lain juga sebagai pengantar kepada kita
untuk lebih mengerti tentang OpenGL dan Penggambaran Obyek dengan OpenGL selain itu
untuk menambah khasanah keilmuan tentang bahasa pemrograman yang lebih berminat pada
bidang pemrograman.
Penulis menyadari baahwa laporan ini masih jauh dari kesempurnaan dan masih
banyak kekurangan, baik dari segipenulisan maupun dari tata bahasa,oleh karena itu penulis
mengharapkan kritik dan saran kepada ibu . atas bimbingannya saya ucapkan terima kasih.
Medan, 12 juni 2014
Penulis
3
DAFTAR ISI
Kata Pengantar …………………………………………………………. 2
Daftar isi ………………………………………………………………... 3
BAB I PENDAHULUAN
I.I latar Belakang ………………………………………………………. 4
I.II tujuan ………………………………………………………………. 4
BAB II LANDASAN TEORI
I.I Transformasi 2 dimensi …………………………………………….. 6
I.II Transformasi 3 dimensi …………………………………………… 7
I.V Defenisi 3 dimensi ………………………………………………....10
I.V pengertian dari OpenGL ………………………………………….. 13
BAB III HASIL PERCOBAAN
1. Primitif drawing ………………………………………………. 17
2. Contoh 2 dimensi dan 3 dimensi ……………………………… 25
BAB IV
Analisa percobaan …………………………………………………….. 29
Penutup ……………………………………………………………….. 30
Saran ………………………………………………………………….. 30
Daftar pustaka ………………………………………………………... 31
4
BAB I
PENDAHULUAN
1.Latar belakang
Grafik komputer adalah bagian dari ilmu komputer yang berkaitan dengan
pembuatan dan manipulasi gambar (visual ) secara digital. Dengan adanya kemajuan
teknologi, terutama teknologi komputer maka banyak bidang yang memanfaatkannya. Salah
satunya adalah bidang entertainmen yang meliputi film, iklan, animasi maupun game.
Kesemuanya itu membutuhkan adanya obyek yang dimanipulasi. Sebelum komputer grafik
berkembang maka obyek yang digunakan adalah obyek yang sesungguhnya sehingga sering
terjadi kesulitan mencari obyek yang sesuai dengan keinginan. Setelah komputer grafik
berkembang dan semakin maju maka obyek yang digunakan dibentuk dengan menggunakan
rekayasa komputer. Kelebihan obyek yang direkayasa dengan menggunakan komputer adalah
bentuk yang bisa disesuaikan dengan kebutuhan dan biaya pengadaan obyek yang relatif
lebih murah.
Dalam pemanfaatan komputer grafik untuk manipulasi obyek, ada dua jenis obyek
yang bisa dimodelkan, yaitu obyek sederhana dan obyek kompleks. Obyek sederhana
dimodelkan dengan menggunakan persamaan geometri, sedangkan obyek kompleks
dimodelkan dengan merangkai banyak segitiga menjadi satu kesatuan obyek. Obyek
sederhana mudah dimodelkan tetapi bentuk yang dihasilkan kurang bervariasi. Sedangkan
obyek kompleks lebih sulit dimodelkan tetapi bentuknya sangat bervariasi. Untuk
memodelkan obyek dengan cukup mudah dan bentuk bisa bervariasi, biasanya digunakan
gabungan dari obyek sederhana dan obyek kompleks. Untuk menghasilkan bentuk
permukaan yang lebih bervariasi, dapat digunakan kurva bezier. Bahasa pemograman
Delphipun juga dapat digunakan.
2.Tujuan praktikum
 Mahasiswa mampu menggambar objek 2 dimensi dan 3 dimensi menggunakan bahasa
pemrograman visual C++ dan OpenGL
 Mahasiswa mampu mengimplementasikan fungsi transformasi 2 dimensi dan 3
dimensi.
5
BAB II
LANDASAN TEORI
I.I TRANSFORMASI DUA DIMENSI
a. Translasi
Translasi dilakukan dengan penambahan translasi pada suatu titik koordiant dengan
translation vector atau shif vector yaitu (tx, ty).
Translasi adalah transformasi dengan bentuk yang tetap memindahkan objek apa adanya.
Titik akan di translasi akan di pindahkan ke lokasi menurut garis lurus.. obyek grafik 2D,
dalam hal ini di gunakan bentuk struktur (type data oracle) dan array. Menggambarka
obyek 2D yang sudah di tentukan.
b. Rotasi
Rotasi 2 dimensi memindahkan sebuah obyek menurut garis melingkar. Untuk melakukan
rotasi di perlukan sudut rotasi a’ dan pivot point. Nilai positif dari sudut rotasi
menentukan arah rutasi berlawanan dengan arah jarum jam.sedangka sudut rotasi negatif
memutar objet searah jarum jam.
I.II DEFENISI OBYEK 2 DIMENSI
Grafik komputer 2 dimensi biasa disebut dengan 2D atau bidang adalah bentuk dari benda
yang memiliki panjang dan lebar. Grafik 2 Dimensi merupakan teknik penggambaran
yang berpatokan pada titik koordinat sumbu x (datar) dan sumbu y (tegak). Agar dapat
tampil dengan sempurna, gambar yang akan ditampilkan dengan teknik ini harus
memiliki nilai koordinat x dan y minimum 0 dan maksimum sebesar resolusi yang
digunakan.
 2 Dimensi Dalam Komputer Grafik
a. Grafik komputer 2 dimensi
Yaitu sebuah generasi gambar digital berbasis komputer. Yang kebanyakan
mengambil objek 2 dimensi. Model Grafik 2D merupakan kombinasi dari
model geometri (juga disebut sebagai grafik vektor), gambar digital (raster
6
graphics), fungsi matematika, dan sebagainya. Komponen-komponen ini dapat
dimodifikasi dan dimanipulasi oleh transformasi geometri dua dimensi, Cara
yang paling mudah untuk membuat sebuah gambar 2D kompleks yaitu dimulai
dengan sebuah "canvas" kosong yang diisi dengan warna latar tertentu, yang
kemudian kita "draw", "paint", atau "paste" suatu warna kedalamnya, dengan
urutan-urutan tertentu. Intinya, kanvas tersebut merupakan "frame buffer" atau
bayangan dari layar komputer.
Model-model yang digunakan pada disain grafis 2D biasanya tidak
mendukung bentuk-bentuk tiga-dimensi, atau fenomena yang bersifat tiga
dimensi, seperti pencahayaan, bayangan, pantulan, refraksi, dan sebagainya.
Namun demikian, mereka dapat membuat model berlapis-lapis (layer); nyata,
translusen, dan transparan, yang dapat ditumpuk dalam urutan tertentu.
Banyak antarmuka grafis atau yang kita kenal dengan GUI (Grapical User
Interface) yang berbasiskan model grafis 2D. Software-software yang
mendukung GUI dapat menciptakan "keadaan visual" dalam berinteraksi
dengan komputer, sehingga para pengguna tidak selalu harus melihat tulisan.
Grafik 2D juga penting bagi kendali peralatan-peralatan semacam printer,
plotter, shredder, dan sebagainya. Mereka juga digunakan pada beberapa video
dan games sederhana seperti solitaire, chess, atau mahjong.
I.III TRANSFORMASI 3 DIMENSI
Grafika komputer 3D menggunakan matriks 4x4 untuk mengubah dan mentayangkan model
3D dalam bentuk citra 2D. Grafika komputer 3D memiliki 5 jenis dasar matriks transformasi:
 Matriks model (Model matrix): Menyimpan orientasi dan posisi model relatif
terhadap suatu posisi.
 Matriks pandangan (View matrix): Menyimpan transformasi pandangan relatif
terhadap posisi asal (yang bernilai (0,0,0)).
 Matriks proyeksi (Projection matrix): Menyimpan transformasi untuk mengubah
ruang 3D menjadi citra 2D, dan sebaliknya.
 Matriks dunia (World matrix): Menyimpan orientasi dan posisi suatu posisi relatif
terhadap posisi asal.
7
 Matriks lokal (Local matrix): Menyimpan orientasi dan posisi suatu posisi relatif
terhadap suatu posisi lain.
Saat penayangan citra, kamera pandangan digunakan sebagai kerangka acuan ruang maya.
Apabila kamera harus berpindah (translate) sejarak +10 unit di Poros-Z, maka seluruh model
di ruang maya harus berpindah -10 di Poros-Z. Jadi, kamera sebenarnya tidak berpindah,
melainkan ruang maya yang berpindah. Setiap benda (termasuk kamera) grafika komputer
mempunyai matriks model yang menyimpan posisi dan orientasi model. Sementara, kamera
juga memiliki matriks pandangan dan proyeksi. Matriks dunia dan matriks lokal tidak wajib
diperlukan, dan bisa dianggap bernilai identitas.
Berikut adalah contoh transformasi matriks dengan kode palsu OpenGL:
void Draw(void)
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glViewport(0,0,1024,768);
gluPerspective(45.0f,(GLFloat)(1024)/(GLFloat)(768),0.125f,1024.0f); /* Kode
viewport di sini, transformasi matriks proyeksi di sini*/
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt ( 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,-1.0f, 0.0f, 1.0f, 0.0f); /* Kode kamera,
transformasi matriks pandangan */
glTranslatef(1.0f,2.0f,3.0f); /* Kode perpindahan, transformasi matriks dunia */
glPushMatrix();
{
glTranslatef(4.0f,5.0f,6.0f); /* Kode perpindahan, transformasi matriks lokal */
glPushMatrix();
{
glTranslatef(7.0f,8.0f,9.0f); /* Kode perpindahan, transformasi matriks model */
DrawModel(); /* Menggambarkan model nomor 1 */
8
}
glPopMatrix();
glPushMatrix();
{
glTranslatef(7.0f,8.0f,9.0f);/* Kode perpindahan, transformasi matriks model */
DrawModel(); /* Menggambarkan model nomor 2 */
}
glPopMatrix();
}
glPopMatrix();
glPushMatrix();
{
glTranslatef(10.0f,11.0f,12.0f);/* Kode perpindahan, transformasi matriks lokal */
glPushMatrix();
{
glTranslatef(13.0f,14.0f,15.0f);/* Kode perpindahan, transformasi matriks model */
DrawModel(); /* Menggambarkan model nomor 3 */
}
glPopMatrix();
glPushMatrix();
{
glTranslatef(16.0f,17.0f,18.0f); /* Kode perpindahan, transformasi matriks model
*/DrawModel(); /* Menggambarkan model nomor 4 */
}
glPopMatrix();
}
glPopMatrix();
}
9
I.IV DEFENISI 3 DIMENSI
Grafika komputer 3D (Inggris: 3D Computer graphics) adalah representasi dari data
geometrik 3 dimensi sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap
grafika komputer 2D. Hasil ini kadang kala ditampilkan secara waktu nyata (real time) untuk
keperluan simulasi. Secara umum prinsip yang dipakai adalah mirip dengan grafika komputer
2D, dalam hal: penggunaan algoritma, grafika vektor, model frame kawat (wire frame
model), dan grafika rasternya.
Grafik 3 Dimensi merupakan teknik penggambaran yg berpatokan pada titik koordinat sumbu
x(datar), sumbu y(tegak), dan sumbu z(miring).Representasi dari data geometrik 3 dimensi
sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D.
Tiga Dimensi, biasanya digunakan dalam penanganan grafis. 3D secara umum merujuk pada
kemampuan dari sebuah video card (link). Saat ini video card menggunakan variasi dari
instruksi-instruksi yang ditanamkan dalam video card itu sendiri (bukan berasal dari
software) untuk mencapai hasil grafik yang lebih realistis dalam memainkan game komputer.
Grafika komputer 3D sering disebut sebagai model 3D. Namun, model 3D ini lebih
menekankan pada representasi matematis untuk objek 3 dimensi. Data matematis ini belum
bisa dikatakan sebagai gambar grafis hingga saat ditampilkan secara visual pada layar
komputer atau printer. Proses penampilan suatu model matematis ke bentuk citra 2 D
biasanya dikenal dengan proses 3D rendering.
Grafik 3D merupakan perkembangan dari grafik 2D. Didalam grafika komputer, 3D
merupakan bentuk grafik yang menggunakan representasi data geometri tiga dimensi.
Suatu objek rangka 3D apabila disinari dari arah tertentu akan membentuk bayangan pada
permukaan gambar.
Proses pembuatan grafik komputer 3D dapat dibagi ke dalam tiga fase, yaitu 3D modeling
yang mendeskripsikan bentuk dari sebuah objek, layout dan animation yang mendeskripsikan
gerakan dan tata letak sebuah objek, dan 3D rendering yang memproduksi image dari objek
tersebut.
Di dalam dunia game, 3D secara umum merujuk pada kemampuan dari sebuah video card
(link). Saat ini video card menggunakan variasi dari instruksi-instruksi yang ditanamkan
10
dalam video card itu sendiri (bukan berasal dari software) untuk mencapai hasil grafik yang
lebih realistis dalam memainkan game komputer.
 2D dan 3D dalam bentuk animasi
Animasi adalah suatu rangkaian gambar diam secara inbetween dengan jumlah yang banyak,
bila kita proyeksikan akan terlihat seolah – olah hidup (bergerak), seperti yang pernah kita
lihat film – film kartun di tevisi maupun dilayar lebar jadi Animasi kita simpulkan
menghidupkan benda diam diproyeksikan menjadi bergerak.
Untuk membuat ilusi gerakan tersebut, sebuah gambar pada layar komputer dengan sangat
cepat digantikan oleh gambar lainnya yang mirip dengan gambit sebelumnya
Animasi komputer adalah seni menghasilkan gambar bergerak melalui penggunaan komputer
dan merupakan sebagian bidang komputer grafik dan animasi. Animasi semakin banyak
dihasilkan melalui grafik komputer 3D, walaupun grafik komputer 2D masih banyak ada.
Kadangkala sasaran animasi adalah komputer itu sendiri, kadangkala sasaran adalah antara
lain, seperti filem. Untuk menghasilkan gambar pergerakan, image (gambar) dipaparkan pada
screen komputer dan diganti dengan image (gambar) baru yang selaras gambar sebelumnya
dengan pantas. Teknik ini serupa dengan bagaimana gambar bergerak dihasilkan melalui
televi dan film. Animasi komputer 3D pada asasnya merupakan pengganti digit bagi seni
animasi gerak (stop motion); patung animasi dibina pada screen komputer dan dipasang
dengan rangka siber. Kemudian anggota badan, mata, mulut, pakaian, dan lain-lain bagi
patung 3D digerakkan oleh juru animasi. Akhirnya, animasi dihasilkan.
Jenis animasi yang banyak dikenal adalah animasi 2D dan 3D. Perbedaan dari animasi 2D
dan 3D adalah dilihat dari sudut pandangnya. Animasi 2D menggunakan koordinat x dan y,
sedangkan animasi 3D menggunakan koordinat x, y dan z yang memungkinkan kita dapat
melihat sudut pandang objek secara lebih nyata.
A. animasi 2 dimensi
Animasi jenis ini juga biasa disebut dengan film kartun. Kartun sendiri berasal dari kata
Cartoon, yang artinya gambar yang lucu. Contohnya misalnya: Looney Tunes, Tom and
Jerry, Scooby Doo, Doraemon, dan lainnya.
11
B. animasi 3 dimensi
Animasi 3D adalah pengembangan dari animasi 2D. Dengan animasi 3D, karakter yang
diperlihatkan semakin hidup dan nyata, mendekati wujud manusia aslinya. Contohnya Toy
Story, Monster Inc., Finding Nemo, The Incredible, Shark Tale. Cars, hingga Final Fantasy.
Disini kita bisa melihat perbedaan visual jika dbandingkan dengan animasi 2D. Kesemuanya
itu biasa juga disebut dengan animasi 3D atau CGI (Computer Generated Imagery).
Untuk model animasi 3D, objek atau model tersebut dibuat dengan komputer dengan
menggunakan software tertentu, seperti 3d Max atau lainnya, yang kemudian dirangkakan
dengan tulang rangka virtual untuk membuat efek 3 dimensi nya.
Sedangkan untuk model animasi 2D, animasi dibuat dengan menggunakan beberapa gambar
yang memiliki layer terpisah yang berarti tanpa menggunakan rangka virtual. Kemudian
anggota badan, mata, mulut dan sebagainya dari objek tersebut dibuat seolah – olah bergerak
oleh animator dengan menggunakan ”key frame” secara terus menerus atau frame by frame.
Proses tersebut disebut sebagai proses ‘tweening motion” atau “morphing
C. Game 2 dimensi
Game dua dimensi dapat diketahui berdasarkan ruangnya yang hanya memiliki dua sisi ( X
dan Y). Sedangkan untuk gambarnya sendiri dapat menggunakan Vector maupun Bitmap.
Untuk membuat animasi bergerak (berjalan,melompat,berlari,dll) kita harus membuat gambar
satu persatu yang disebut dengan(frame).
Kerealisasian gerakan ditentukan dari gambar yang dibuat, jumlah gambar(frame) yang
digunakan, serta hitungan gambar per detik (frame per second ( semakin tinggi hitungan
gambar per detik maka semakin mulus gerakan yang akan dihasilkan)).
Game dua dimensi ini memiliki 2 konsep, yaitu:
- Static View, dimana semua objek berada pada satu bidang dan gerakan karakter utama
hanya terbatas pada bidang itu saja.
- Side Scrolling View, dimana objek-objek dan gambar latar akan terus bergerak ke
kanan dan ke kiri sesuai dengan kecepatan gerakan karakter yang dimainkan.
Contoh game berbasis 2 dimensi diantaranya adalah Pac-man, Space Invader, Mario Bros,
dan game-game sederhana lainnya.
12
D. Game 3 Dimensi
Setelah munculnya game 2D muncullah game dengan tampilan 3D datar (3D Plaine) hal ini
sering membuat bingung karena sering disebut game 2D tapi mereka tidaklah sama. Game
seperti ini bukan 2D tapi tidak juga full 3D. Biasanya gameplaynya memang mirip game 2D
dimana kita hanya bisa bergerak secara horizontal dan vertical namun beberapa gambarnya di
render secara 3D. Teori grafik seperti ini disebut dengan 2.5D atau pseudo-3D sedangkan
pada istilah game lebih dikenal dengan isometric/diametric atau bahkan trimetric projection.
Berbeda dengan game 2D, dalam game 3D anda akan menemui tiga sisi (X,Y,Z).
Game bertipe ini menggunakan 2 macam tipe pemodelan:
-3d ini merupakan model/ object 3 dimensi yang nantinya akan anda jadikan sebagai karakter
utama, bangunan, object-object seperti senjata,musuh, permukaan tanah ,pohon, bukit,dll.
Object 3d seperti ini bisa anda buat dengan menggunakan program seperti “3D
S.Max”,”Maya”,”Hash”,dll
E. grafik 2 dimensi
gambar 2d juga berperan dalam membuat game bertipe 3D fungsi gambar 2d antara lain:
- sebagai texture untuk object
- sebagai latar belakang ( langit , pemandangan,dll)
- sebagai meteran untuk nyawa , gambar untuk speedometer (untuk game racing), dll.
Sedangkan untuk membuat animasi dalam 3D dapat digunakan bones(tulang) yang layaknya
manusia dapat digerakkan. Selain itu animasi tetap juga dapat menggunakan bitmap (gambar
2d) untuk animasi pada texture air, api,dll
I.V Penertian syntax pada OpenGL
1. fungsi OpenGL
Pada komputer memory untuk menampilkan gambar biasanya di isi dengan gambar yang
berasal dari peringatan gambar paling akhir, jadi perlu di bersihkan dengan warna latar
belakang sebelum di gambar lagi.
13
Contoh berikut ini perintah yang di gunakan untuk membersihkan layar latar belakang
dengan warna hitam dan buffer apa yang di bersihkan. Dalam hal ini, buffer yang akn di
bersihkan karena buffer warna merupakan tempat gambar di simpan,
glClearColor 0, 0, 0, 0
glClear GL_BUFFER_BIT OR GL_DEPTH_BUFFER_BIT
2. Spesifikasi warna
Pada OpenGL mendeskripsikan objek dengan warna objek proses yang berjalan sendiri –
sendiri. Sebelum warna di ubah maka semua objek yang di gambarkan sesudah perintah
tersebut akan menggunakan warna terakhir yang dapat pada coloring scheme. Untuk warna di
gunakan perintah glcolor3f. Contoh berikut menunjukkan warna yang di tampilkan adalah
warna merah.
glColor3f 1, 0, 0
3. Menggambar Dibidang 3D dan 2D
Untuk menggambar grafik jenis apapun pada komputer biasanya di mulai engan pixel. Pixel
adalah elemen terkecil dari layar monitor yang mempunyai aitribut warna posisi..
Sedangkan untuk membentukgaris poligon, bjek dan lain – lain dapat di lakukan melalui
urutan pixel yang berbeda. Menggambarkan dengan menggunakanOpenGL mempunyai
perbedaan dengan bahasa lain, yaitu tidak perlu memikirkan koordinat layar secara fisik
tetapi hanya perlu menspesifikasikan posisi koordinat dengan volume penglihatan. OpenGL
memikirkan sendiri bagaimana caranya menggambar titik, garis, dan lainnya yang berada
dalam ruang 3 dimensi dan 2 dimensi pada layar monitor.
Area gambar yang di batasi ini adalah ruang koordinat kartesian yang mempunyai range dari
-100 hingga 100 untuk sumbu x, y dan z. Secara sederhana bidang inidapat di anggap sebagai
bidang gambar untuk perintah OpenGL.
Untuk menggambar titik di gunakan satu perintah OpenGL yaitu : glVertex. Fungsi ini dapat
mempunyai 2 sampai 4 parameter dan berbagai macam tipe data. Sebagai contoh perintah
glVertex di bawah ini akan menspesifikasikan sebuah titik pada posisi 4 sumbu x, 4 sumbuy,
14
dan 0 untuk sumbu z. glVertex3f 4, 4, 0. Setelah di ketahui cara untuk menspesifikasina
sebuah titik di ruang pada OpenGL. Selanjutnya yang harus di tambahkan adalah informasi
tambahan mengenai titik tersebut, apakah titik tersebut akhir dari sebuah garis atau merupan
sebuah titik sudut dari sebuah poligon atau lainnya, karena defenisi geometrik dari sebuah
Vertex sebenarnya bkanlah hanya sebuah titik pada layar tetapi lebih merupakan sebuah titik
dimana terjadi interksi antara dua buah garis atau kurva.
Primitif adalah interpretasi sejumlah set atau deretan titik pada sebuah bentuk yang di gambar
pada layar. Pada OpenGL terdapat sepuluh macam primitif dari mulai menggambar sebuah
titik hingga poligon. Untuk itu di gunakan perintah glBigen sebagai cara memberi tau
OpenGL untuk memulai menginterpretasi sederetan titik sebagai titik sebagai salah satu
bentuk primitif. Dn untuk mengakhiri deretan titik ini di gunakan perintah glend.
sebagai contoh :
glBegin bmpolygon //spesifikasikan titik sebagai primitif
glVertex3f 4, 4, 0 //spesifikasi posisi titik
glEnd //mengakhiri perintah gambar titik
maksud dari :
 #include <GL/glut.h> untuk mendefenisi file hider, membaca file atau memanggil file
hider pertama.
 Void draw dot(int x, int y) untuk menggambar dari titik x ke y
 Gl Vertex 2i untuk menentukan 2 titik koordinat
 Int main untuk menentukan atau mengatur tampilan dengan menggunakan RGB (red
grend blue).
 Grafik komputer 3D merupakan suatu grafis yang menggunakan 3 titik perspektif
dengan cara matematis dalam melihat suatu objek, dimana gambar tersebut dapat
dilihat secara menyeluruh dan nyata. Untuk perangkat-perangkat lunak yang
digunakan untuk grafik komputer 3D ini banyak bergantung pada aloritma-algoritma.
15
 Animasi Komputer

 Animasi Komputer adalah seni membuat gambar bergerak melalui komputer.
Biasanya ini digunakan pada film-film animasi berbudget besar. Tetapi film-film non
animasi juga banyak yang menggunakan teknik ini, sebut saja Lord Of The Ring,
Harry Potter, dsb.
16
BAB III
HASI PERCOBAAN
1. Primitive drawing
Pada tutorial 01 telah diberikan contoh program untuk merepresentasikan model obyek
segiempat 2D. OpenGL memiliki beberapa komponen dasar untuk merepresentasikan suatu
obyek. Komponen dasar tersebut, disebut sebagai OpenGL Geometric primitives. Gambar 2
menggambarkan semua OpenGL Geometric primitives yang tersedia.
openGL Primitives
Setiap obyek harus dimodelkan sebagai kombinasi dari komponen-komponen dasar tersebut.
Sebagai contoh, obyek segiempat pada tutorial 01 tersebut dimodelkan dengan menggunakan
17
komponen dasar GL_POLYGON. Obyek tersebut dapat pula dimodelkan dengan komponen
dasar GL_TRIANGLES atau pun GL_QUAD.
Secara umum perintah-perintah dalam OpenGL memenuhi aturan sebagai berikut:
openGL Commands
Dalam OpenGL, menggambar geometric primitives selalu dilakukan di antara fungsi
glBegin(PRIMITIVES)
// Fungsi Menggambar Primitives di sini
glEnd()
18
Obyek kompleks dapat dibuat dengan kombinasi dari primitif ini. Adapun contoh grafik
primitif yang lain adalah :
-simbol tertentu. Teks merupakan
kumpulan lebih dari dua karakter.
angan dan
warna. Citra raster disimpan dalam komputer sebagai larik bernilai numerik. Larik tersebut
dikenal sebagai piksel map atau bitmap. Ada tiga cara untuk menghasilkan citra grafik yaitu
citra didisain dengan tangan, citra yang didapat dari perhitungan dan citra yang discan.
Pemaparan citra raster dinyatakan oleh piksel dengan video displays (Cathod-ray Tube CRT),
flat panel dispalys (LCD), hardcopy (printer laser, dot matrix printers, ink-jet printers).
Contoh proses pemaparan permukaan adalah citra yang ditangkap lalu disimpan di frame
buffer, kemudian digunakan untuk mewarnai sebuah titik pada permukaan pemapar.
Selanjutnya proses scan di CRT. Frame buffer adalah matriks 2 dimensi yang mewakili piksel
pada pemapar. Ukuran matriks harus cukup untuk menyimpan kedalam warna pemapar untuk
semua piksel. Sebagai contoh pemapar (monitor) berresolusi 1280 x 1024 mempunya
kedalaman warna 24 bit (~16 juta warna) membutuhkan ruang simpan sekitar 4 Mb.
 Contoh fungsi dari primitive drawing
2 dimensi
#include <GL/glut.h>
void userdraw()
{
static int tick=0;
void drawDot(int x, int y);
glBegin(GL_LINES);
glVertex2i(300,250);
glVertex2i(300,250);
glVertex2i(50,50);
glVertex2i(300,250);
19
glVertex2i(50,250);
glVertex2i(300,250);
glVertex2i(300,50);
glVertex2i(50,250);
glEnd();
}
void display(void)
{
//BERSIH LAYAR
glClear(GL_COLOR_BUFFER_BIT);
userdraw();
glutSwapBuffers();
}
int main(int argc, char **argv)
{
glutInit(&argc,argv);//Inisialisasi Toolkit
glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(640,480);
glutCreateWindow("Diamond");
glClearColor(1.0f,0.0f,0.0f,0.0f);
gluOrtho2D(0.,700.,0.,400.);
glutIdleFunc(display);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
20
2. Contoh projek gambar 5 titik
#include <GL/glut.h>
void display(void)
{
/* bersihkan layar dari titik pixel yang masih ada */
glClear (GL_COLOR_BUFFER_BIT);
/* gambar 5 titik di layar */
glColor3f (1.0, 1.0, 0.0);
/* posisi vertex */
21
glBegin(GL_POINTS);
glVertex3f (0.0, 0.0, 0.0);
glVertex3f (0.0, 0.8, 0.0);
glVertex3f (0.8, 0.0, 0.0);
glVertex3f (0.0, -0.8, 0.0);
glVertex3f (-0.8, 0.0, 0.0);
glEnd();
glFlush ();
}
void kunci(unsigned char key, int x, int y)
{
switch (key)
{
/* aplikasi berhenti ketika tombol q ditekan */
case 27 : case 'q': exit(0); break;
}
glutPostRedisplay();
}
22
int main(int argc, char *argv[])
{
glutInitWindowSize(400,400);
glutInitWindowPosition(100,100);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutCreateWindow("Primitif");
glutDisplayFunc(display);
glutKeyboardFunc(kunci);
glutMainLoop();
return 0;
}
23
3. Contoh latihan fungsi dari 3 dimensi
 DIAMON
#include <GL/glut.h>
void userdraw()
{
static int tick=0;
void drawDot(int x, int y);
glBegin(GL_LINES);
glVertex2i(100,250);
glVertex2i(300,250);
glVertex2i(100,250);
glVertex2i(200,200);
glVertex2i(200,200);
glVertex2i(300,250);
glVertex2i(100,250);
glVertex2i(200,50);
glVertex2i(200,200);
glVertex2i(200,50);
glVertex2i(300,250);
glVertex2i(200,50);
glEnd();
}
void display(void)
{
//BERSIH LAYAR
glClear(GL_COLOR_BUFFER_BIT);
userdraw();
24
glutSwapBuffers();
}
int main(int argc, char **argv)
{
glutInit(&argc,argv);//Inisialisasi Toolkit
glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(640,480);
glutCreateWindow("Diamond");
glClearColor(1.0f,0.0f,0.0f,0.0f);
gluOrtho2D(0.,640.,0.,350.);
glutIdleFunc(display);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
25
#include <Windows.h>
#include <iostream>
#include <glGL.h>
#include <glGLU.h>
#include <glglut.h>
#include <math.h>
void cube()
{
//menggambar kubus dan transformasi tarnslasi ke titik 0.5 0.5 0.5 dan skala 1 1 1
glPushMatrix();
glTranslated(0.5,0.5,0.5);//cube
glScaled(1.0,1.0,1.0);
glutSolidCube(1.0);
glPopMatrix();
}
void setMaterial()
{
//set properties of surfaces material
GLfloat mat_ambient[] = {0.7f,0.7f,0.7f,1.0f}; // ada 4 jenis material yang dipakai,
dengan kombinasi warna tertentu
GLfloat mat_diffuse[] = {0.6f,0.6f,0.6f,1.0f};
GLfloat mat_specular[] = {1.0f,1.0f,1.0f,1.0f};
GLfloat mat_shininess[] = {50.0f};
glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient);
glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse);
glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular);
glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess);
}
26
void setLighting()
{
//set light sources
GLfloat lightIntensity[] = {0.7f,0.7f,0.7f,1.0f};//mensetting pencahayaan
GLfloat light_position[] = {2.0f,6.0f,3.0f,0.0f};
glLightfv(GL_LIGHT0,GL_DIFFUSE,lightIntensity);
glLightfv(GL_LIGHT0,GL_POSITION,light_position);
}
void setViewport()
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
double winHt = 1.0;//half height of the window
glOrtho(-winHt*64/48,winHt*64/48,-winHt,winHt,0.1,100.0);
}
void setCamera()
{
//set the camera
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(3.3,3.3,3.0,0,0.25,0,0.0,1.0,0.0);
}
void displayObject()
{
setMaterial();
setLighting();
setViewport();
setCamera();
27
//startDrawing
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
cube();//memanggil fungsi menggambar kubus
glFlush();//mengirim smua objek untuk dirender
}
void main(int argc, char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH);
glutInitWindowSize(640,480);
glutInitWindowPosition(100,100);
glutCreateWindow("simple 3d scene");
glutDisplayFunc(displayObject);//fungsi dari display object yang menggabungkan
kubus lighting material dan kamera
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glShadeModel(GL_SMOOTH);
glEnable(GL_DEPTH_TEST);
glEnable(GL_NORMALIZE);
glClearColor(1.0f,1.0f,1.0f,0.0f);
glViewport(0,0,640,480);
glutMainLoop();
}
28
29
BAB IV
HASIL ANALISA PERCOBAAN
Perencanaan bangunan bertingkat memerlukan suatu analisa yang tepat lewat penggunaan
program
komputer yang tepat pula. Salah satu program komputer yang digunakan dalam perhitungan
gedung tersebut
adalah ETABS. Namun tidak menutup kemungkinan adanya penggunaan program komputer
lain dalam
membantu mendapatkan beban yang terjadi pada struktur utama yang berasal dari struktur
pendukung.
Bangunan perkantoran tingkat menengah dengan denah sederhana dalam skripsi ini akan
dianalisa dan
dibandingkan perilaku yang terjadi padanya. Beban yang diberikan adalah beban statik dan
beban dinamik.
Beban statik yang terjadi adalah beban akibat gaya gravitasi sedangkan untuk beban gempa
adalah dengan
analisa statik ekivalen dan analisa respon spektrum. Dengan mengambil portal yang mewakili
dari bangunan
tersebut, baik arah-x maupun arah-y, maka dilakukan pula analisa yang sama seperti pada
kasus 3 dimensi
tersebut. Hasil perhitungan yang dianalisa didapatkan dari output program ETABS baik
displacement
maupun gaya dalam kolom. Perilaku struktur dalam hal ini ditunjukkan oleh displacement
dan gaya-gaya
dalam tadi. Dengan demikian akan diketahui masing-masing perilaku portal sebagai wujud
struktur 2
dimensi dan gedung yang diwujudkan sebagai struktur 3 dimensi. Dalam hal ini pula, akan
disusun tabeltabel
perbandingan analisa statik-dinamik yang terjadi pada struktur 2 dimensi dan 3 dimensi serta
prosentase selisih perbandingan analisa statik-dinamik pada perwujudan struktur yang sama.
Dengan hasil
yang diperoleh lewat perbandingan yang ada, maka akan lebih optimal jika perancang
struktur.
30
PENUTUP
a. Kesimpulan
jadi, perbedaan antara grafik 3D dan 2D secara umum terletak pada komposisi objeknya.
Pada bidang Cartesian, grafik 2D hanya memiliki sumbu X dan Y, sedangkan grafik 3D
memiliki axis X, Y, dan Z. Dimana hal ini membuat objek grafik 3D memiliki volume
atau memiliki isi. Sehingga objek 3D dapat dilihat dari berbagai macam sudut. Sedangkan
Grafik 2D hanya memiliki satu sudut pandang saja, yaitu sisi yang sejajar dengan posisi si
penglihat. Oleh sebab itu kita tidak dapat melihat bagian belakang maupun samping
sebuah objek 2D.
Contoh penggunaan grafik 2D misalnya pada typhography, cartography, menggambar
teknik, periklanan, dll. Sedangkan contoh objek 3D misalkan benda-benda yang ada di
sekitar kita. Contoh lain yang paling sering menggunakan grafik 2D dan 3D adalah
pembuatan animasi dan game seperti yang telah dijelaskan diatas.
b. Saran
Setelah melihat uraian di atas, penyusun mempunyai saran.
Terlebih dahulu harus belajar algoritma, karena algorima adalah salah satu kunci untuk
dapat memahami permasalahan yang akan dihadapi didalam pembuatan grafik komputer.
Bila ingin membuat suatu gambar/grafik, pilihlah program aplikasi yang lebih bagus
menurut anda, lebih kompleks, dan yang khusus menanganipembuatan gambar/grafik
serta yang mengikuti perkembangan jaman .
Harus memahami sintak-sintak (gaya bahasa penulisan dalam bahasa pemrograman ) yang
terdapat dalam bahasa pemrograman ataupun fitur – fitur yang terdapat didalam program
aplikasi.
31
DAFTAR PUSTAKA
https://docs.google.com/document/d/15Us0Xa9Su30BmYysaQ8vTWnivvJbOT-
84BvOJFkBJM0/edit?pli=1
DARI CATATAN DARI PERTEMUAN 1 SAMPAI AKHIR
file:///C:/Users/User/Documents/Makalah%20Grafik%20Komputer%20Yoga%20Finish.ht
m
file:///C:/Users/User/Documents/Laporan%20Tugas%20Grafika%20Komputer%20bangun
%202%20dimensi%20Code%20Block.htm

More Related Content

What's hot

Data Base Tiket Pesawat
Data Base Tiket PesawatData Base Tiket Pesawat
Data Base Tiket Pesawatnaufals11
 
Pertemuan 05 Teknik Pencarian (Search) -lanjutan
Pertemuan 05 Teknik Pencarian (Search) -lanjutanPertemuan 05 Teknik Pencarian (Search) -lanjutan
Pertemuan 05 Teknik Pencarian (Search) -lanjutanEndang Retnoningsih
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeAcomic Comic
 
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...Muhammad Kennedy Ginting
 
3-konsep dasar sistem terdistribusi
3-konsep dasar sistem terdistribusi3-konsep dasar sistem terdistribusi
3-konsep dasar sistem terdistribusiCoretan Rissa
 
Model simulasi(2)
Model simulasi(2)Model simulasi(2)
Model simulasi(2)cofry
 
Cara menggambar graf sederhana matematika diskrit
Cara menggambar graf sederhana matematika diskritCara menggambar graf sederhana matematika diskrit
Cara menggambar graf sederhana matematika diskritOka Ambalie
 
Analisa Website Traveloka - Makalah IMK
Analisa Website Traveloka - Makalah IMKAnalisa Website Traveloka - Makalah IMK
Analisa Website Traveloka - Makalah IMKMiftahul Muttaqin
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)Simon Patabang
 
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanAlgoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanputraindo
 
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Nabil Muhammad Firdaus
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)zachrison htg
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsiSiti Khotijah
 
5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar KriptografiRoziq Bahtiar
 
Tugas IMK : Ragam Dialog
Tugas IMK : Ragam DialogTugas IMK : Ragam Dialog
Tugas IMK : Ragam DialogPio
 
Software requirements specification atm ijal
Software requirements specification atm ijalSoftware requirements specification atm ijal
Software requirements specification atm ijalSyahrizal Geneiryodan
 

What's hot (20)

Data Base Tiket Pesawat
Data Base Tiket PesawatData Base Tiket Pesawat
Data Base Tiket Pesawat
 
Pertemuan 05 Teknik Pencarian (Search) -lanjutan
Pertemuan 05 Teknik Pencarian (Search) -lanjutanPertemuan 05 Teknik Pencarian (Search) -lanjutan
Pertemuan 05 Teknik Pencarian (Search) -lanjutan
 
Notasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression treeNotasi prefix infix-postifx- expression tree
Notasi prefix infix-postifx- expression tree
 
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...
Laporan Laboratorium Dasar Pemrograman dengan Bahasa C by Muhammad Kennedy Gi...
 
3-konsep dasar sistem terdistribusi
3-konsep dasar sistem terdistribusi3-konsep dasar sistem terdistribusi
3-konsep dasar sistem terdistribusi
 
Model simulasi(2)
Model simulasi(2)Model simulasi(2)
Model simulasi(2)
 
Cara menggambar graf sederhana matematika diskrit
Cara menggambar graf sederhana matematika diskritCara menggambar graf sederhana matematika diskrit
Cara menggambar graf sederhana matematika diskrit
 
Analisa Website Traveloka - Makalah IMK
Analisa Website Traveloka - Makalah IMKAnalisa Website Traveloka - Makalah IMK
Analisa Website Traveloka - Makalah IMK
 
relasi himpunan
relasi himpunanrelasi himpunan
relasi himpunan
 
4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)4 diagram relasi antar entitas (ERD)
4 diagram relasi antar entitas (ERD)
 
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukanAlgoritma untuk mengecek bilangan di antara 2 bilangan masukan
Algoritma untuk mengecek bilangan di antara 2 bilangan masukan
 
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
Algoritma dan Pemrograman C++ (Pseudocode & Flowchart)
 
Materi 6. perulangan
Materi 6. perulanganMateri 6. perulangan
Materi 6. perulangan
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Pengenalan SPK
Pengenalan SPKPengenalan SPK
Pengenalan SPK
 
Matematika Diskrit matriks relasi-dan_fungsi
Matematika Diskrit  matriks relasi-dan_fungsiMatematika Diskrit  matriks relasi-dan_fungsi
Matematika Diskrit matriks relasi-dan_fungsi
 
5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi5 Macam Metode Dasar Kriptografi
5 Macam Metode Dasar Kriptografi
 
Sistem bus komputer
Sistem bus komputerSistem bus komputer
Sistem bus komputer
 
Tugas IMK : Ragam Dialog
Tugas IMK : Ragam DialogTugas IMK : Ragam Dialog
Tugas IMK : Ragam Dialog
 
Software requirements specification atm ijal
Software requirements specification atm ijalSoftware requirements specification atm ijal
Software requirements specification atm ijal
 

Viewers also liked

Grafika 130631100018 ainun_najib_modul1
Grafika 130631100018 ainun_najib_modul1Grafika 130631100018 ainun_najib_modul1
Grafika 130631100018 ainun_najib_modul1Ainun Najib
 
Laporan Tugas Grafika Komputer bangun 2 dimensi Code Block
Laporan Tugas Grafika Komputer bangun 2 dimensi Code BlockLaporan Tugas Grafika Komputer bangun 2 dimensi Code Block
Laporan Tugas Grafika Komputer bangun 2 dimensi Code BlockIhsan Nurhalim
 
Laporan Praktikum Aplikasi Komputer Multimedia
Laporan Praktikum Aplikasi Komputer MultimediaLaporan Praktikum Aplikasi Komputer Multimedia
Laporan Praktikum Aplikasi Komputer MultimediaAMJ Premium Fashion
 
Minggu 1 pendahuluan dan kontrak
Minggu 1 pendahuluan dan kontrakMinggu 1 pendahuluan dan kontrak
Minggu 1 pendahuluan dan kontrakAsjar Zitus
 
2 laporan pemantapan kemampuan profesionalisme
2 laporan pemantapan kemampuan profesionalisme2 laporan pemantapan kemampuan profesionalisme
2 laporan pemantapan kemampuan profesionalismeUlia Ichijo
 
Desain Pemodelan Grafik - Bab 4 Tugas 4
Desain Pemodelan Grafik - Bab 4 Tugas 4Desain Pemodelan Grafik - Bab 4 Tugas 4
Desain Pemodelan Grafik - Bab 4 Tugas 4Bayu Radityo
 
Journal komputer garfik
Journal komputer garfikJournal komputer garfik
Journal komputer garfikLela Warni
 
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR B
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR BTRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR B
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR Boriza steva andra
 
Media Pembelajaran "Tiga dimensi" ppt.
Media Pembelajaran "Tiga dimensi" ppt.Media Pembelajaran "Tiga dimensi" ppt.
Media Pembelajaran "Tiga dimensi" ppt.zaida.masruroh
 
Makalah interpolasi kelompok 2
Makalah interpolasi kelompok 2Makalah interpolasi kelompok 2
Makalah interpolasi kelompok 2Arin Ayundhita
 
Pengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLABPengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLABSimesterious TheMaster
 
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padat
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda PadatLAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padat
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padatyudhodanto
 

Viewers also liked (18)

Grafika 130631100018 ainun_najib_modul1
Grafika 130631100018 ainun_najib_modul1Grafika 130631100018 ainun_najib_modul1
Grafika 130631100018 ainun_najib_modul1
 
Laporan Tugas Grafika Komputer bangun 2 dimensi Code Block
Laporan Tugas Grafika Komputer bangun 2 dimensi Code BlockLaporan Tugas Grafika Komputer bangun 2 dimensi Code Block
Laporan Tugas Grafika Komputer bangun 2 dimensi Code Block
 
Analisa Tutorial Open GL
Analisa Tutorial Open GLAnalisa Tutorial Open GL
Analisa Tutorial Open GL
 
Buku grafkom
Buku grafkomBuku grafkom
Buku grafkom
 
Laporan Praktikum Aplikasi Komputer Multimedia
Laporan Praktikum Aplikasi Komputer MultimediaLaporan Praktikum Aplikasi Komputer Multimedia
Laporan Praktikum Aplikasi Komputer Multimedia
 
Minggu 1 pendahuluan dan kontrak
Minggu 1 pendahuluan dan kontrakMinggu 1 pendahuluan dan kontrak
Minggu 1 pendahuluan dan kontrak
 
KERJA PRAKTEK
KERJA PRAKTEKKERJA PRAKTEK
KERJA PRAKTEK
 
Modul praktikum Bahasa assembly
Modul praktikum Bahasa assemblyModul praktikum Bahasa assembly
Modul praktikum Bahasa assembly
 
2 laporan pemantapan kemampuan profesionalisme
2 laporan pemantapan kemampuan profesionalisme2 laporan pemantapan kemampuan profesionalisme
2 laporan pemantapan kemampuan profesionalisme
 
Laporan pengolahan citra digital
Laporan pengolahan citra digitalLaporan pengolahan citra digital
Laporan pengolahan citra digital
 
Laporan praktikum penginderaan jauh
Laporan praktikum penginderaan jauhLaporan praktikum penginderaan jauh
Laporan praktikum penginderaan jauh
 
Desain Pemodelan Grafik - Bab 4 Tugas 4
Desain Pemodelan Grafik - Bab 4 Tugas 4Desain Pemodelan Grafik - Bab 4 Tugas 4
Desain Pemodelan Grafik - Bab 4 Tugas 4
 
Journal komputer garfik
Journal komputer garfikJournal komputer garfik
Journal komputer garfik
 
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR B
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR BTRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR B
TRACKING JALUR EVAKUASI TSUNAMI KOTA PADANG SEKTOR B
 
Media Pembelajaran "Tiga dimensi" ppt.
Media Pembelajaran "Tiga dimensi" ppt.Media Pembelajaran "Tiga dimensi" ppt.
Media Pembelajaran "Tiga dimensi" ppt.
 
Makalah interpolasi kelompok 2
Makalah interpolasi kelompok 2Makalah interpolasi kelompok 2
Makalah interpolasi kelompok 2
 
Pengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLABPengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLAB
 
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padat
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda PadatLAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padat
LAPORAN PRAKTIKUM FISIKA : Pengukuran Dasar Pada Benda Padat
 

Similar to 229334287 laporan-praktikum-dhani

Pengantar grafika1
Pengantar grafika1Pengantar grafika1
Pengantar grafika1Hanz Skyblue
 
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docx
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docxLaporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docx
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docxkomzud
 
Materi 3 rendering graphic dan game
Materi 3   rendering graphic dan gameMateri 3   rendering graphic dan game
Materi 3 rendering graphic dan gameFahuda E
 
3 grafik komp konsep dasar
3 grafik komp konsep dasar3 grafik komp konsep dasar
3 grafik komp konsep dasarandika668538
 
Pengantar_Grafika_3D_Transformasi_3D.ppt
Pengantar_Grafika_3D_Transformasi_3D.pptPengantar_Grafika_3D_Transformasi_3D.ppt
Pengantar_Grafika_3D_Transformasi_3D.pptMimiMariyami
 
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...Anindya N. Rafitricia
 
7 grafik komp konsep 3 d
7 grafik komp konsep  3 d7 grafik komp konsep  3 d
7 grafik komp konsep 3 dandika668538
 
Makalah Komgraf
Makalah KomgrafMakalah Komgraf
Makalah Komgrafkiuntoro
 
Silabus IF-311 Grafika Komputer
Silabus IF-311 Grafika KomputerSilabus IF-311 Grafika Komputer
Silabus IF-311 Grafika Komputerstaffpengajar
 
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdfZainul Arifin
 
Penerapan metode drill dalam kecakapan bahasa asing
Penerapan metode drill dalam kecakapan bahasa asingPenerapan metode drill dalam kecakapan bahasa asing
Penerapan metode drill dalam kecakapan bahasa asingACHMADAINULYAQINAmru1
 
17._Memahami_teknik_rendering_pada_object_3d.pdf
17._Memahami_teknik_rendering_pada_object_3d.pdf17._Memahami_teknik_rendering_pada_object_3d.pdf
17._Memahami_teknik_rendering_pada_object_3d.pdfZainul Arifin
 
Silabus Grafika Komputer sns
Silabus Grafika Komputer snsSilabus Grafika Komputer sns
Silabus Grafika Komputer snsstaffpengajar
 

Similar to 229334287 laporan-praktikum-dhani (20)

Pengantar grafika1
Pengantar grafika1Pengantar grafika1
Pengantar grafika1
 
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docx
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docxLaporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docx
Laporan tugasgrafikakomputer merancangbangun3ddenganopeng-ldanvb6.docx
 
Materi 3 rendering graphic dan game
Materi 3   rendering graphic dan gameMateri 3   rendering graphic dan game
Materi 3 rendering graphic dan game
 
Konsep dasar warna
Konsep dasar warnaKonsep dasar warna
Konsep dasar warna
 
3 grafik komp konsep dasar
3 grafik komp konsep dasar3 grafik komp konsep dasar
3 grafik komp konsep dasar
 
Pengantar_Grafika_3D_Transformasi_3D.ppt
Pengantar_Grafika_3D_Transformasi_3D.pptPengantar_Grafika_3D_Transformasi_3D.ppt
Pengantar_Grafika_3D_Transformasi_3D.ppt
 
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...
Pembuatan model 3 dimensi dan basis data spasial gedung teknik geomatika its ...
 
Grafik 3 dimensi
Grafik 3 dimensiGrafik 3 dimensi
Grafik 3 dimensi
 
7 grafik komp konsep 3 d
7 grafik komp konsep  3 d7 grafik komp konsep  3 d
7 grafik komp konsep 3 d
 
Makalah Komgraf
Makalah KomgrafMakalah Komgraf
Makalah Komgraf
 
Silabus IF-311 Grafika Komputer
Silabus IF-311 Grafika KomputerSilabus IF-311 Grafika Komputer
Silabus IF-311 Grafika Komputer
 
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf
12._Pengolahan_permodelan_obyek_sederhana_berbasis_3d_hardsurface.pdf
 
Penerapan metode drill dalam kecakapan bahasa asing
Penerapan metode drill dalam kecakapan bahasa asingPenerapan metode drill dalam kecakapan bahasa asing
Penerapan metode drill dalam kecakapan bahasa asing
 
Komputer grafik 1
Komputer grafik 1Komputer grafik 1
Komputer grafik 1
 
Komputer grafik 1
Komputer grafik 1Komputer grafik 1
Komputer grafik 1
 
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurfaceANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
ANIMASI 2D dan 3D KD : Menerapkan model obyek sederhana berbasis 3 d hardsurface
 
Kumpulan 11
Kumpulan 11Kumpulan 11
Kumpulan 11
 
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3dAnimasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
Animasi 2D dan 3D KD: Memahami teknik rendering pada object 3d
 
17._Memahami_teknik_rendering_pada_object_3d.pdf
17._Memahami_teknik_rendering_pada_object_3d.pdf17._Memahami_teknik_rendering_pada_object_3d.pdf
17._Memahami_teknik_rendering_pada_object_3d.pdf
 
Silabus Grafika Komputer sns
Silabus Grafika Komputer snsSilabus Grafika Komputer sns
Silabus Grafika Komputer sns
 

229334287 laporan-praktikum-dhani

  • 1. 1 LAPORAN PRAKTIKUM KOMPUTER GRAFIK Nama praktikan Nomor mahasiswa Tanggal kumpul Tanda tangan praktikan Sri Ramadhani 1214370338 12 juni 2014 Nama Penilai Tanggal koreksi Nilai Tanda tangan Dosen Indri Sulistianingsih, S.kom 12 juni 2014 Universitas Pembangunan Panca Budi Fakultas Teknik Jurusan Sistem Komputer Medan 2014 KELAS TI4-D SORE
  • 2. 2 KATA PENGANTAR Segala puji syukur saya ucapkan kehadirat Allah SWT, atas berkat rahmatnya penulis dapat menyelesaikan tugas “Laporan Praktikum Kompuer Grafik” guna memenuhi syarat dalam menyelesaikan tugas UAS (ujian akhir semester), Adapun pembuatan laporan ini ditujukan untuk penyelesaian tugas untuk mata kuliah Grafika Kmputer Program studi Teknik Perangkat Lunak FTEKNIK UNHALU, lain juga sebagai pengantar kepada kita untuk lebih mengerti tentang OpenGL dan Penggambaran Obyek dengan OpenGL selain itu untuk menambah khasanah keilmuan tentang bahasa pemrograman yang lebih berminat pada bidang pemrograman. Penulis menyadari baahwa laporan ini masih jauh dari kesempurnaan dan masih banyak kekurangan, baik dari segipenulisan maupun dari tata bahasa,oleh karena itu penulis mengharapkan kritik dan saran kepada ibu . atas bimbingannya saya ucapkan terima kasih. Medan, 12 juni 2014 Penulis
  • 3. 3 DAFTAR ISI Kata Pengantar …………………………………………………………. 2 Daftar isi ………………………………………………………………... 3 BAB I PENDAHULUAN I.I latar Belakang ………………………………………………………. 4 I.II tujuan ………………………………………………………………. 4 BAB II LANDASAN TEORI I.I Transformasi 2 dimensi …………………………………………….. 6 I.II Transformasi 3 dimensi …………………………………………… 7 I.V Defenisi 3 dimensi ………………………………………………....10 I.V pengertian dari OpenGL ………………………………………….. 13 BAB III HASIL PERCOBAAN 1. Primitif drawing ………………………………………………. 17 2. Contoh 2 dimensi dan 3 dimensi ……………………………… 25 BAB IV Analisa percobaan …………………………………………………….. 29 Penutup ……………………………………………………………….. 30 Saran ………………………………………………………………….. 30 Daftar pustaka ………………………………………………………... 31
  • 4. 4 BAB I PENDAHULUAN 1.Latar belakang Grafik komputer adalah bagian dari ilmu komputer yang berkaitan dengan pembuatan dan manipulasi gambar (visual ) secara digital. Dengan adanya kemajuan teknologi, terutama teknologi komputer maka banyak bidang yang memanfaatkannya. Salah satunya adalah bidang entertainmen yang meliputi film, iklan, animasi maupun game. Kesemuanya itu membutuhkan adanya obyek yang dimanipulasi. Sebelum komputer grafik berkembang maka obyek yang digunakan adalah obyek yang sesungguhnya sehingga sering terjadi kesulitan mencari obyek yang sesuai dengan keinginan. Setelah komputer grafik berkembang dan semakin maju maka obyek yang digunakan dibentuk dengan menggunakan rekayasa komputer. Kelebihan obyek yang direkayasa dengan menggunakan komputer adalah bentuk yang bisa disesuaikan dengan kebutuhan dan biaya pengadaan obyek yang relatif lebih murah. Dalam pemanfaatan komputer grafik untuk manipulasi obyek, ada dua jenis obyek yang bisa dimodelkan, yaitu obyek sederhana dan obyek kompleks. Obyek sederhana dimodelkan dengan menggunakan persamaan geometri, sedangkan obyek kompleks dimodelkan dengan merangkai banyak segitiga menjadi satu kesatuan obyek. Obyek sederhana mudah dimodelkan tetapi bentuk yang dihasilkan kurang bervariasi. Sedangkan obyek kompleks lebih sulit dimodelkan tetapi bentuknya sangat bervariasi. Untuk memodelkan obyek dengan cukup mudah dan bentuk bisa bervariasi, biasanya digunakan gabungan dari obyek sederhana dan obyek kompleks. Untuk menghasilkan bentuk permukaan yang lebih bervariasi, dapat digunakan kurva bezier. Bahasa pemograman Delphipun juga dapat digunakan. 2.Tujuan praktikum  Mahasiswa mampu menggambar objek 2 dimensi dan 3 dimensi menggunakan bahasa pemrograman visual C++ dan OpenGL  Mahasiswa mampu mengimplementasikan fungsi transformasi 2 dimensi dan 3 dimensi.
  • 5. 5 BAB II LANDASAN TEORI I.I TRANSFORMASI DUA DIMENSI a. Translasi Translasi dilakukan dengan penambahan translasi pada suatu titik koordiant dengan translation vector atau shif vector yaitu (tx, ty). Translasi adalah transformasi dengan bentuk yang tetap memindahkan objek apa adanya. Titik akan di translasi akan di pindahkan ke lokasi menurut garis lurus.. obyek grafik 2D, dalam hal ini di gunakan bentuk struktur (type data oracle) dan array. Menggambarka obyek 2D yang sudah di tentukan. b. Rotasi Rotasi 2 dimensi memindahkan sebuah obyek menurut garis melingkar. Untuk melakukan rotasi di perlukan sudut rotasi a’ dan pivot point. Nilai positif dari sudut rotasi menentukan arah rutasi berlawanan dengan arah jarum jam.sedangka sudut rotasi negatif memutar objet searah jarum jam. I.II DEFENISI OBYEK 2 DIMENSI Grafik komputer 2 dimensi biasa disebut dengan 2D atau bidang adalah bentuk dari benda yang memiliki panjang dan lebar. Grafik 2 Dimensi merupakan teknik penggambaran yang berpatokan pada titik koordinat sumbu x (datar) dan sumbu y (tegak). Agar dapat tampil dengan sempurna, gambar yang akan ditampilkan dengan teknik ini harus memiliki nilai koordinat x dan y minimum 0 dan maksimum sebesar resolusi yang digunakan.  2 Dimensi Dalam Komputer Grafik a. Grafik komputer 2 dimensi Yaitu sebuah generasi gambar digital berbasis komputer. Yang kebanyakan mengambil objek 2 dimensi. Model Grafik 2D merupakan kombinasi dari model geometri (juga disebut sebagai grafik vektor), gambar digital (raster
  • 6. 6 graphics), fungsi matematika, dan sebagainya. Komponen-komponen ini dapat dimodifikasi dan dimanipulasi oleh transformasi geometri dua dimensi, Cara yang paling mudah untuk membuat sebuah gambar 2D kompleks yaitu dimulai dengan sebuah "canvas" kosong yang diisi dengan warna latar tertentu, yang kemudian kita "draw", "paint", atau "paste" suatu warna kedalamnya, dengan urutan-urutan tertentu. Intinya, kanvas tersebut merupakan "frame buffer" atau bayangan dari layar komputer. Model-model yang digunakan pada disain grafis 2D biasanya tidak mendukung bentuk-bentuk tiga-dimensi, atau fenomena yang bersifat tiga dimensi, seperti pencahayaan, bayangan, pantulan, refraksi, dan sebagainya. Namun demikian, mereka dapat membuat model berlapis-lapis (layer); nyata, translusen, dan transparan, yang dapat ditumpuk dalam urutan tertentu. Banyak antarmuka grafis atau yang kita kenal dengan GUI (Grapical User Interface) yang berbasiskan model grafis 2D. Software-software yang mendukung GUI dapat menciptakan "keadaan visual" dalam berinteraksi dengan komputer, sehingga para pengguna tidak selalu harus melihat tulisan. Grafik 2D juga penting bagi kendali peralatan-peralatan semacam printer, plotter, shredder, dan sebagainya. Mereka juga digunakan pada beberapa video dan games sederhana seperti solitaire, chess, atau mahjong. I.III TRANSFORMASI 3 DIMENSI Grafika komputer 3D menggunakan matriks 4x4 untuk mengubah dan mentayangkan model 3D dalam bentuk citra 2D. Grafika komputer 3D memiliki 5 jenis dasar matriks transformasi:  Matriks model (Model matrix): Menyimpan orientasi dan posisi model relatif terhadap suatu posisi.  Matriks pandangan (View matrix): Menyimpan transformasi pandangan relatif terhadap posisi asal (yang bernilai (0,0,0)).  Matriks proyeksi (Projection matrix): Menyimpan transformasi untuk mengubah ruang 3D menjadi citra 2D, dan sebaliknya.  Matriks dunia (World matrix): Menyimpan orientasi dan posisi suatu posisi relatif terhadap posisi asal.
  • 7. 7  Matriks lokal (Local matrix): Menyimpan orientasi dan posisi suatu posisi relatif terhadap suatu posisi lain. Saat penayangan citra, kamera pandangan digunakan sebagai kerangka acuan ruang maya. Apabila kamera harus berpindah (translate) sejarak +10 unit di Poros-Z, maka seluruh model di ruang maya harus berpindah -10 di Poros-Z. Jadi, kamera sebenarnya tidak berpindah, melainkan ruang maya yang berpindah. Setiap benda (termasuk kamera) grafika komputer mempunyai matriks model yang menyimpan posisi dan orientasi model. Sementara, kamera juga memiliki matriks pandangan dan proyeksi. Matriks dunia dan matriks lokal tidak wajib diperlukan, dan bisa dianggap bernilai identitas. Berikut adalah contoh transformasi matriks dengan kode palsu OpenGL: void Draw(void) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); glViewport(0,0,1024,768); gluPerspective(45.0f,(GLFloat)(1024)/(GLFloat)(768),0.125f,1024.0f); /* Kode viewport di sini, transformasi matriks proyeksi di sini*/ glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt ( 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,-1.0f, 0.0f, 1.0f, 0.0f); /* Kode kamera, transformasi matriks pandangan */ glTranslatef(1.0f,2.0f,3.0f); /* Kode perpindahan, transformasi matriks dunia */ glPushMatrix(); { glTranslatef(4.0f,5.0f,6.0f); /* Kode perpindahan, transformasi matriks lokal */ glPushMatrix(); { glTranslatef(7.0f,8.0f,9.0f); /* Kode perpindahan, transformasi matriks model */ DrawModel(); /* Menggambarkan model nomor 1 */
  • 8. 8 } glPopMatrix(); glPushMatrix(); { glTranslatef(7.0f,8.0f,9.0f);/* Kode perpindahan, transformasi matriks model */ DrawModel(); /* Menggambarkan model nomor 2 */ } glPopMatrix(); } glPopMatrix(); glPushMatrix(); { glTranslatef(10.0f,11.0f,12.0f);/* Kode perpindahan, transformasi matriks lokal */ glPushMatrix(); { glTranslatef(13.0f,14.0f,15.0f);/* Kode perpindahan, transformasi matriks model */ DrawModel(); /* Menggambarkan model nomor 3 */ } glPopMatrix(); glPushMatrix(); { glTranslatef(16.0f,17.0f,18.0f); /* Kode perpindahan, transformasi matriks model */DrawModel(); /* Menggambarkan model nomor 4 */ } glPopMatrix(); } glPopMatrix(); }
  • 9. 9 I.IV DEFENISI 3 DIMENSI Grafika komputer 3D (Inggris: 3D Computer graphics) adalah representasi dari data geometrik 3 dimensi sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D. Hasil ini kadang kala ditampilkan secara waktu nyata (real time) untuk keperluan simulasi. Secara umum prinsip yang dipakai adalah mirip dengan grafika komputer 2D, dalam hal: penggunaan algoritma, grafika vektor, model frame kawat (wire frame model), dan grafika rasternya. Grafik 3 Dimensi merupakan teknik penggambaran yg berpatokan pada titik koordinat sumbu x(datar), sumbu y(tegak), dan sumbu z(miring).Representasi dari data geometrik 3 dimensi sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D. Tiga Dimensi, biasanya digunakan dalam penanganan grafis. 3D secara umum merujuk pada kemampuan dari sebuah video card (link). Saat ini video card menggunakan variasi dari instruksi-instruksi yang ditanamkan dalam video card itu sendiri (bukan berasal dari software) untuk mencapai hasil grafik yang lebih realistis dalam memainkan game komputer. Grafika komputer 3D sering disebut sebagai model 3D. Namun, model 3D ini lebih menekankan pada representasi matematis untuk objek 3 dimensi. Data matematis ini belum bisa dikatakan sebagai gambar grafis hingga saat ditampilkan secara visual pada layar komputer atau printer. Proses penampilan suatu model matematis ke bentuk citra 2 D biasanya dikenal dengan proses 3D rendering. Grafik 3D merupakan perkembangan dari grafik 2D. Didalam grafika komputer, 3D merupakan bentuk grafik yang menggunakan representasi data geometri tiga dimensi. Suatu objek rangka 3D apabila disinari dari arah tertentu akan membentuk bayangan pada permukaan gambar. Proses pembuatan grafik komputer 3D dapat dibagi ke dalam tiga fase, yaitu 3D modeling yang mendeskripsikan bentuk dari sebuah objek, layout dan animation yang mendeskripsikan gerakan dan tata letak sebuah objek, dan 3D rendering yang memproduksi image dari objek tersebut. Di dalam dunia game, 3D secara umum merujuk pada kemampuan dari sebuah video card (link). Saat ini video card menggunakan variasi dari instruksi-instruksi yang ditanamkan
  • 10. 10 dalam video card itu sendiri (bukan berasal dari software) untuk mencapai hasil grafik yang lebih realistis dalam memainkan game komputer.  2D dan 3D dalam bentuk animasi Animasi adalah suatu rangkaian gambar diam secara inbetween dengan jumlah yang banyak, bila kita proyeksikan akan terlihat seolah – olah hidup (bergerak), seperti yang pernah kita lihat film – film kartun di tevisi maupun dilayar lebar jadi Animasi kita simpulkan menghidupkan benda diam diproyeksikan menjadi bergerak. Untuk membuat ilusi gerakan tersebut, sebuah gambar pada layar komputer dengan sangat cepat digantikan oleh gambar lainnya yang mirip dengan gambit sebelumnya Animasi komputer adalah seni menghasilkan gambar bergerak melalui penggunaan komputer dan merupakan sebagian bidang komputer grafik dan animasi. Animasi semakin banyak dihasilkan melalui grafik komputer 3D, walaupun grafik komputer 2D masih banyak ada. Kadangkala sasaran animasi adalah komputer itu sendiri, kadangkala sasaran adalah antara lain, seperti filem. Untuk menghasilkan gambar pergerakan, image (gambar) dipaparkan pada screen komputer dan diganti dengan image (gambar) baru yang selaras gambar sebelumnya dengan pantas. Teknik ini serupa dengan bagaimana gambar bergerak dihasilkan melalui televi dan film. Animasi komputer 3D pada asasnya merupakan pengganti digit bagi seni animasi gerak (stop motion); patung animasi dibina pada screen komputer dan dipasang dengan rangka siber. Kemudian anggota badan, mata, mulut, pakaian, dan lain-lain bagi patung 3D digerakkan oleh juru animasi. Akhirnya, animasi dihasilkan. Jenis animasi yang banyak dikenal adalah animasi 2D dan 3D. Perbedaan dari animasi 2D dan 3D adalah dilihat dari sudut pandangnya. Animasi 2D menggunakan koordinat x dan y, sedangkan animasi 3D menggunakan koordinat x, y dan z yang memungkinkan kita dapat melihat sudut pandang objek secara lebih nyata. A. animasi 2 dimensi Animasi jenis ini juga biasa disebut dengan film kartun. Kartun sendiri berasal dari kata Cartoon, yang artinya gambar yang lucu. Contohnya misalnya: Looney Tunes, Tom and Jerry, Scooby Doo, Doraemon, dan lainnya.
  • 11. 11 B. animasi 3 dimensi Animasi 3D adalah pengembangan dari animasi 2D. Dengan animasi 3D, karakter yang diperlihatkan semakin hidup dan nyata, mendekati wujud manusia aslinya. Contohnya Toy Story, Monster Inc., Finding Nemo, The Incredible, Shark Tale. Cars, hingga Final Fantasy. Disini kita bisa melihat perbedaan visual jika dbandingkan dengan animasi 2D. Kesemuanya itu biasa juga disebut dengan animasi 3D atau CGI (Computer Generated Imagery). Untuk model animasi 3D, objek atau model tersebut dibuat dengan komputer dengan menggunakan software tertentu, seperti 3d Max atau lainnya, yang kemudian dirangkakan dengan tulang rangka virtual untuk membuat efek 3 dimensi nya. Sedangkan untuk model animasi 2D, animasi dibuat dengan menggunakan beberapa gambar yang memiliki layer terpisah yang berarti tanpa menggunakan rangka virtual. Kemudian anggota badan, mata, mulut dan sebagainya dari objek tersebut dibuat seolah – olah bergerak oleh animator dengan menggunakan ”key frame” secara terus menerus atau frame by frame. Proses tersebut disebut sebagai proses ‘tweening motion” atau “morphing C. Game 2 dimensi Game dua dimensi dapat diketahui berdasarkan ruangnya yang hanya memiliki dua sisi ( X dan Y). Sedangkan untuk gambarnya sendiri dapat menggunakan Vector maupun Bitmap. Untuk membuat animasi bergerak (berjalan,melompat,berlari,dll) kita harus membuat gambar satu persatu yang disebut dengan(frame). Kerealisasian gerakan ditentukan dari gambar yang dibuat, jumlah gambar(frame) yang digunakan, serta hitungan gambar per detik (frame per second ( semakin tinggi hitungan gambar per detik maka semakin mulus gerakan yang akan dihasilkan)). Game dua dimensi ini memiliki 2 konsep, yaitu: - Static View, dimana semua objek berada pada satu bidang dan gerakan karakter utama hanya terbatas pada bidang itu saja. - Side Scrolling View, dimana objek-objek dan gambar latar akan terus bergerak ke kanan dan ke kiri sesuai dengan kecepatan gerakan karakter yang dimainkan. Contoh game berbasis 2 dimensi diantaranya adalah Pac-man, Space Invader, Mario Bros, dan game-game sederhana lainnya.
  • 12. 12 D. Game 3 Dimensi Setelah munculnya game 2D muncullah game dengan tampilan 3D datar (3D Plaine) hal ini sering membuat bingung karena sering disebut game 2D tapi mereka tidaklah sama. Game seperti ini bukan 2D tapi tidak juga full 3D. Biasanya gameplaynya memang mirip game 2D dimana kita hanya bisa bergerak secara horizontal dan vertical namun beberapa gambarnya di render secara 3D. Teori grafik seperti ini disebut dengan 2.5D atau pseudo-3D sedangkan pada istilah game lebih dikenal dengan isometric/diametric atau bahkan trimetric projection. Berbeda dengan game 2D, dalam game 3D anda akan menemui tiga sisi (X,Y,Z). Game bertipe ini menggunakan 2 macam tipe pemodelan: -3d ini merupakan model/ object 3 dimensi yang nantinya akan anda jadikan sebagai karakter utama, bangunan, object-object seperti senjata,musuh, permukaan tanah ,pohon, bukit,dll. Object 3d seperti ini bisa anda buat dengan menggunakan program seperti “3D S.Max”,”Maya”,”Hash”,dll E. grafik 2 dimensi gambar 2d juga berperan dalam membuat game bertipe 3D fungsi gambar 2d antara lain: - sebagai texture untuk object - sebagai latar belakang ( langit , pemandangan,dll) - sebagai meteran untuk nyawa , gambar untuk speedometer (untuk game racing), dll. Sedangkan untuk membuat animasi dalam 3D dapat digunakan bones(tulang) yang layaknya manusia dapat digerakkan. Selain itu animasi tetap juga dapat menggunakan bitmap (gambar 2d) untuk animasi pada texture air, api,dll I.V Penertian syntax pada OpenGL 1. fungsi OpenGL Pada komputer memory untuk menampilkan gambar biasanya di isi dengan gambar yang berasal dari peringatan gambar paling akhir, jadi perlu di bersihkan dengan warna latar belakang sebelum di gambar lagi.
  • 13. 13 Contoh berikut ini perintah yang di gunakan untuk membersihkan layar latar belakang dengan warna hitam dan buffer apa yang di bersihkan. Dalam hal ini, buffer yang akn di bersihkan karena buffer warna merupakan tempat gambar di simpan, glClearColor 0, 0, 0, 0 glClear GL_BUFFER_BIT OR GL_DEPTH_BUFFER_BIT 2. Spesifikasi warna Pada OpenGL mendeskripsikan objek dengan warna objek proses yang berjalan sendiri – sendiri. Sebelum warna di ubah maka semua objek yang di gambarkan sesudah perintah tersebut akan menggunakan warna terakhir yang dapat pada coloring scheme. Untuk warna di gunakan perintah glcolor3f. Contoh berikut menunjukkan warna yang di tampilkan adalah warna merah. glColor3f 1, 0, 0 3. Menggambar Dibidang 3D dan 2D Untuk menggambar grafik jenis apapun pada komputer biasanya di mulai engan pixel. Pixel adalah elemen terkecil dari layar monitor yang mempunyai aitribut warna posisi.. Sedangkan untuk membentukgaris poligon, bjek dan lain – lain dapat di lakukan melalui urutan pixel yang berbeda. Menggambarkan dengan menggunakanOpenGL mempunyai perbedaan dengan bahasa lain, yaitu tidak perlu memikirkan koordinat layar secara fisik tetapi hanya perlu menspesifikasikan posisi koordinat dengan volume penglihatan. OpenGL memikirkan sendiri bagaimana caranya menggambar titik, garis, dan lainnya yang berada dalam ruang 3 dimensi dan 2 dimensi pada layar monitor. Area gambar yang di batasi ini adalah ruang koordinat kartesian yang mempunyai range dari -100 hingga 100 untuk sumbu x, y dan z. Secara sederhana bidang inidapat di anggap sebagai bidang gambar untuk perintah OpenGL. Untuk menggambar titik di gunakan satu perintah OpenGL yaitu : glVertex. Fungsi ini dapat mempunyai 2 sampai 4 parameter dan berbagai macam tipe data. Sebagai contoh perintah glVertex di bawah ini akan menspesifikasikan sebuah titik pada posisi 4 sumbu x, 4 sumbuy,
  • 14. 14 dan 0 untuk sumbu z. glVertex3f 4, 4, 0. Setelah di ketahui cara untuk menspesifikasina sebuah titik di ruang pada OpenGL. Selanjutnya yang harus di tambahkan adalah informasi tambahan mengenai titik tersebut, apakah titik tersebut akhir dari sebuah garis atau merupan sebuah titik sudut dari sebuah poligon atau lainnya, karena defenisi geometrik dari sebuah Vertex sebenarnya bkanlah hanya sebuah titik pada layar tetapi lebih merupakan sebuah titik dimana terjadi interksi antara dua buah garis atau kurva. Primitif adalah interpretasi sejumlah set atau deretan titik pada sebuah bentuk yang di gambar pada layar. Pada OpenGL terdapat sepuluh macam primitif dari mulai menggambar sebuah titik hingga poligon. Untuk itu di gunakan perintah glBigen sebagai cara memberi tau OpenGL untuk memulai menginterpretasi sederetan titik sebagai titik sebagai salah satu bentuk primitif. Dn untuk mengakhiri deretan titik ini di gunakan perintah glend. sebagai contoh : glBegin bmpolygon //spesifikasikan titik sebagai primitif glVertex3f 4, 4, 0 //spesifikasi posisi titik glEnd //mengakhiri perintah gambar titik maksud dari :  #include <GL/glut.h> untuk mendefenisi file hider, membaca file atau memanggil file hider pertama.  Void draw dot(int x, int y) untuk menggambar dari titik x ke y  Gl Vertex 2i untuk menentukan 2 titik koordinat  Int main untuk menentukan atau mengatur tampilan dengan menggunakan RGB (red grend blue).  Grafik komputer 3D merupakan suatu grafis yang menggunakan 3 titik perspektif dengan cara matematis dalam melihat suatu objek, dimana gambar tersebut dapat dilihat secara menyeluruh dan nyata. Untuk perangkat-perangkat lunak yang digunakan untuk grafik komputer 3D ini banyak bergantung pada aloritma-algoritma.
  • 15. 15  Animasi Komputer   Animasi Komputer adalah seni membuat gambar bergerak melalui komputer. Biasanya ini digunakan pada film-film animasi berbudget besar. Tetapi film-film non animasi juga banyak yang menggunakan teknik ini, sebut saja Lord Of The Ring, Harry Potter, dsb.
  • 16. 16 BAB III HASI PERCOBAAN 1. Primitive drawing Pada tutorial 01 telah diberikan contoh program untuk merepresentasikan model obyek segiempat 2D. OpenGL memiliki beberapa komponen dasar untuk merepresentasikan suatu obyek. Komponen dasar tersebut, disebut sebagai OpenGL Geometric primitives. Gambar 2 menggambarkan semua OpenGL Geometric primitives yang tersedia. openGL Primitives Setiap obyek harus dimodelkan sebagai kombinasi dari komponen-komponen dasar tersebut. Sebagai contoh, obyek segiempat pada tutorial 01 tersebut dimodelkan dengan menggunakan
  • 17. 17 komponen dasar GL_POLYGON. Obyek tersebut dapat pula dimodelkan dengan komponen dasar GL_TRIANGLES atau pun GL_QUAD. Secara umum perintah-perintah dalam OpenGL memenuhi aturan sebagai berikut: openGL Commands Dalam OpenGL, menggambar geometric primitives selalu dilakukan di antara fungsi glBegin(PRIMITIVES) // Fungsi Menggambar Primitives di sini glEnd()
  • 18. 18 Obyek kompleks dapat dibuat dengan kombinasi dari primitif ini. Adapun contoh grafik primitif yang lain adalah : -simbol tertentu. Teks merupakan kumpulan lebih dari dua karakter. angan dan warna. Citra raster disimpan dalam komputer sebagai larik bernilai numerik. Larik tersebut dikenal sebagai piksel map atau bitmap. Ada tiga cara untuk menghasilkan citra grafik yaitu citra didisain dengan tangan, citra yang didapat dari perhitungan dan citra yang discan. Pemaparan citra raster dinyatakan oleh piksel dengan video displays (Cathod-ray Tube CRT), flat panel dispalys (LCD), hardcopy (printer laser, dot matrix printers, ink-jet printers). Contoh proses pemaparan permukaan adalah citra yang ditangkap lalu disimpan di frame buffer, kemudian digunakan untuk mewarnai sebuah titik pada permukaan pemapar. Selanjutnya proses scan di CRT. Frame buffer adalah matriks 2 dimensi yang mewakili piksel pada pemapar. Ukuran matriks harus cukup untuk menyimpan kedalam warna pemapar untuk semua piksel. Sebagai contoh pemapar (monitor) berresolusi 1280 x 1024 mempunya kedalaman warna 24 bit (~16 juta warna) membutuhkan ruang simpan sekitar 4 Mb.  Contoh fungsi dari primitive drawing 2 dimensi #include <GL/glut.h> void userdraw() { static int tick=0; void drawDot(int x, int y); glBegin(GL_LINES); glVertex2i(300,250); glVertex2i(300,250); glVertex2i(50,50); glVertex2i(300,250);
  • 19. 19 glVertex2i(50,250); glVertex2i(300,250); glVertex2i(300,50); glVertex2i(50,250); glEnd(); } void display(void) { //BERSIH LAYAR glClear(GL_COLOR_BUFFER_BIT); userdraw(); glutSwapBuffers(); } int main(int argc, char **argv) { glutInit(&argc,argv);//Inisialisasi Toolkit glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB); glutInitWindowPosition(100,100); glutInitWindowSize(640,480); glutCreateWindow("Diamond"); glClearColor(1.0f,0.0f,0.0f,0.0f); gluOrtho2D(0.,700.,0.,400.); glutIdleFunc(display); glutDisplayFunc(display); glutMainLoop(); return 0; }
  • 20. 20 2. Contoh projek gambar 5 titik #include <GL/glut.h> void display(void) { /* bersihkan layar dari titik pixel yang masih ada */ glClear (GL_COLOR_BUFFER_BIT); /* gambar 5 titik di layar */ glColor3f (1.0, 1.0, 0.0); /* posisi vertex */
  • 21. 21 glBegin(GL_POINTS); glVertex3f (0.0, 0.0, 0.0); glVertex3f (0.0, 0.8, 0.0); glVertex3f (0.8, 0.0, 0.0); glVertex3f (0.0, -0.8, 0.0); glVertex3f (-0.8, 0.0, 0.0); glEnd(); glFlush (); } void kunci(unsigned char key, int x, int y) { switch (key) { /* aplikasi berhenti ketika tombol q ditekan */ case 27 : case 'q': exit(0); break; } glutPostRedisplay(); }
  • 22. 22 int main(int argc, char *argv[]) { glutInitWindowSize(400,400); glutInitWindowPosition(100,100); glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); glutCreateWindow("Primitif"); glutDisplayFunc(display); glutKeyboardFunc(kunci); glutMainLoop(); return 0; }
  • 23. 23 3. Contoh latihan fungsi dari 3 dimensi  DIAMON #include <GL/glut.h> void userdraw() { static int tick=0; void drawDot(int x, int y); glBegin(GL_LINES); glVertex2i(100,250); glVertex2i(300,250); glVertex2i(100,250); glVertex2i(200,200); glVertex2i(200,200); glVertex2i(300,250); glVertex2i(100,250); glVertex2i(200,50); glVertex2i(200,200); glVertex2i(200,50); glVertex2i(300,250); glVertex2i(200,50); glEnd(); } void display(void) { //BERSIH LAYAR glClear(GL_COLOR_BUFFER_BIT); userdraw();
  • 24. 24 glutSwapBuffers(); } int main(int argc, char **argv) { glutInit(&argc,argv);//Inisialisasi Toolkit glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB); glutInitWindowPosition(100,100); glutInitWindowSize(640,480); glutCreateWindow("Diamond"); glClearColor(1.0f,0.0f,0.0f,0.0f); gluOrtho2D(0.,640.,0.,350.); glutIdleFunc(display); glutDisplayFunc(display); glutMainLoop(); return 0; }
  • 25. 25 #include <Windows.h> #include <iostream> #include <glGL.h> #include <glGLU.h> #include <glglut.h> #include <math.h> void cube() { //menggambar kubus dan transformasi tarnslasi ke titik 0.5 0.5 0.5 dan skala 1 1 1 glPushMatrix(); glTranslated(0.5,0.5,0.5);//cube glScaled(1.0,1.0,1.0); glutSolidCube(1.0); glPopMatrix(); } void setMaterial() { //set properties of surfaces material GLfloat mat_ambient[] = {0.7f,0.7f,0.7f,1.0f}; // ada 4 jenis material yang dipakai, dengan kombinasi warna tertentu GLfloat mat_diffuse[] = {0.6f,0.6f,0.6f,1.0f}; GLfloat mat_specular[] = {1.0f,1.0f,1.0f,1.0f}; GLfloat mat_shininess[] = {50.0f}; glMaterialfv(GL_FRONT,GL_AMBIENT,mat_ambient); glMaterialfv(GL_FRONT,GL_DIFFUSE,mat_diffuse); glMaterialfv(GL_FRONT,GL_SPECULAR,mat_specular); glMaterialfv(GL_FRONT,GL_SHININESS,mat_shininess); }
  • 26. 26 void setLighting() { //set light sources GLfloat lightIntensity[] = {0.7f,0.7f,0.7f,1.0f};//mensetting pencahayaan GLfloat light_position[] = {2.0f,6.0f,3.0f,0.0f}; glLightfv(GL_LIGHT0,GL_DIFFUSE,lightIntensity); glLightfv(GL_LIGHT0,GL_POSITION,light_position); } void setViewport() { glMatrixMode(GL_PROJECTION); glLoadIdentity(); double winHt = 1.0;//half height of the window glOrtho(-winHt*64/48,winHt*64/48,-winHt,winHt,0.1,100.0); } void setCamera() { //set the camera glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(3.3,3.3,3.0,0,0.25,0,0.0,1.0,0.0); } void displayObject() { setMaterial(); setLighting(); setViewport(); setCamera();
  • 27. 27 //startDrawing glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); cube();//memanggil fungsi menggambar kubus glFlush();//mengirim smua objek untuk dirender } void main(int argc, char **argv) { glutInit(&argc,argv); glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH); glutInitWindowSize(640,480); glutInitWindowPosition(100,100); glutCreateWindow("simple 3d scene"); glutDisplayFunc(displayObject);//fungsi dari display object yang menggabungkan kubus lighting material dan kamera glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glShadeModel(GL_SMOOTH); glEnable(GL_DEPTH_TEST); glEnable(GL_NORMALIZE); glClearColor(1.0f,1.0f,1.0f,0.0f); glViewport(0,0,640,480); glutMainLoop(); }
  • 28. 28
  • 29. 29 BAB IV HASIL ANALISA PERCOBAAN Perencanaan bangunan bertingkat memerlukan suatu analisa yang tepat lewat penggunaan program komputer yang tepat pula. Salah satu program komputer yang digunakan dalam perhitungan gedung tersebut adalah ETABS. Namun tidak menutup kemungkinan adanya penggunaan program komputer lain dalam membantu mendapatkan beban yang terjadi pada struktur utama yang berasal dari struktur pendukung. Bangunan perkantoran tingkat menengah dengan denah sederhana dalam skripsi ini akan dianalisa dan dibandingkan perilaku yang terjadi padanya. Beban yang diberikan adalah beban statik dan beban dinamik. Beban statik yang terjadi adalah beban akibat gaya gravitasi sedangkan untuk beban gempa adalah dengan analisa statik ekivalen dan analisa respon spektrum. Dengan mengambil portal yang mewakili dari bangunan tersebut, baik arah-x maupun arah-y, maka dilakukan pula analisa yang sama seperti pada kasus 3 dimensi tersebut. Hasil perhitungan yang dianalisa didapatkan dari output program ETABS baik displacement maupun gaya dalam kolom. Perilaku struktur dalam hal ini ditunjukkan oleh displacement dan gaya-gaya dalam tadi. Dengan demikian akan diketahui masing-masing perilaku portal sebagai wujud struktur 2 dimensi dan gedung yang diwujudkan sebagai struktur 3 dimensi. Dalam hal ini pula, akan disusun tabeltabel perbandingan analisa statik-dinamik yang terjadi pada struktur 2 dimensi dan 3 dimensi serta prosentase selisih perbandingan analisa statik-dinamik pada perwujudan struktur yang sama. Dengan hasil yang diperoleh lewat perbandingan yang ada, maka akan lebih optimal jika perancang struktur.
  • 30. 30 PENUTUP a. Kesimpulan jadi, perbedaan antara grafik 3D dan 2D secara umum terletak pada komposisi objeknya. Pada bidang Cartesian, grafik 2D hanya memiliki sumbu X dan Y, sedangkan grafik 3D memiliki axis X, Y, dan Z. Dimana hal ini membuat objek grafik 3D memiliki volume atau memiliki isi. Sehingga objek 3D dapat dilihat dari berbagai macam sudut. Sedangkan Grafik 2D hanya memiliki satu sudut pandang saja, yaitu sisi yang sejajar dengan posisi si penglihat. Oleh sebab itu kita tidak dapat melihat bagian belakang maupun samping sebuah objek 2D. Contoh penggunaan grafik 2D misalnya pada typhography, cartography, menggambar teknik, periklanan, dll. Sedangkan contoh objek 3D misalkan benda-benda yang ada di sekitar kita. Contoh lain yang paling sering menggunakan grafik 2D dan 3D adalah pembuatan animasi dan game seperti yang telah dijelaskan diatas. b. Saran Setelah melihat uraian di atas, penyusun mempunyai saran. Terlebih dahulu harus belajar algoritma, karena algorima adalah salah satu kunci untuk dapat memahami permasalahan yang akan dihadapi didalam pembuatan grafik komputer. Bila ingin membuat suatu gambar/grafik, pilihlah program aplikasi yang lebih bagus menurut anda, lebih kompleks, dan yang khusus menanganipembuatan gambar/grafik serta yang mengikuti perkembangan jaman . Harus memahami sintak-sintak (gaya bahasa penulisan dalam bahasa pemrograman ) yang terdapat dalam bahasa pemrograman ataupun fitur – fitur yang terdapat didalam program aplikasi.
  • 31. 31 DAFTAR PUSTAKA https://docs.google.com/document/d/15Us0Xa9Su30BmYysaQ8vTWnivvJbOT- 84BvOJFkBJM0/edit?pli=1 DARI CATATAN DARI PERTEMUAN 1 SAMPAI AKHIR file:///C:/Users/User/Documents/Makalah%20Grafik%20Komputer%20Yoga%20Finish.ht m file:///C:/Users/User/Documents/Laporan%20Tugas%20Grafika%20Komputer%20bangun %202%20dimensi%20Code%20Block.htm