• Tidak ada hasil yang ditemukan

BAB III ANALISA DAN PERANCANGAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISA DAN PERANCANGAN"

Copied!
40
0
0

Teks penuh

(1)

BAB III

ANALISA DAN PERANCANGAN

3.1 Landasan Matematis

Dalam penerapan pemodelan visualisasi 3D kantin Universitas Mercu Buana, penulis menggunakan perangkat lunak Blitz3D sebagai penerapan modeling 3 dimensi, dan untuk pembuatan objek-objek 3D yang dibutuhkan penulis menggunakan 3D Studio Max 7, sehingga akan menghasilkan sebuah visualisasi 3D yang di harapkan oleh penulis.

Untuk menghasilkan visualisasi 3 dimensi yang maksimal dengan menggunakan Blitz3D dibutuhkan pencahayaan, skala dan letak kamera yang sesuai, sehingga bentuk modeling akan menjadi maksimal baik secara tekstur maupun secara ukuran sesuai dengan sudut pandang.

Dalam menentukan posisi atau pergeseran pada objek-objek 3d kita dapat menggunakan operasi-operasi pada matrik, karena untuk memperoleh posisi dan arah pada setiap modeling 3 dimensi harus diketahui dahulu titik-titik atau sumbu-sumbunya, selain itu untuk melakukan rotasi, pergeseran atau translasi, dan perubahan skala atau distalasi. Disini penulis akan coba menjelaskan secara singkat tentang matrik dan operasi-operasinya yang digunakan dalam pembuatan visualisasi 3D ini. Hal ini dimaksudkan agar kita paham dan mengerti bahwa dasar-dasar untuk melakukan rotasi, translasi, dan distalasi. Tujuan dari visualisasi 3D adalah untuk mempresentasikan alam tiga dimensi kedalam alam dua dimensi. Representasi

(2)

dilakukan dalam dua dimensi karena media untuk menampilkan grafik tersebut yaitu layar monitor adalah dua dimensi.

3.1.1 Sistem Koordinat

Mempresentasikan objek dalam tiga dimensi dapat dilakukan dengan menggunakan sistem koordinat yang menyediakan tiga sumbu koordinat. Tiga sumbu ini biasanya dinamakan sumbu X, sumbu Y, dan sumbu Z. Dalam pembuatan visualisasi 3D terdapat dua macam sistem koordinat 3D yaitu sistem tangan kanan dan sistem tangan kiri. Perbedaan kedua sistem ini terletak pada arah sumbu Z. Pada sistem tangan kiri koordinat yang lebih jauh mempuya nilai Z yang lebih besar, sedangkan koordinat yang lebih dekat mempunyai nilai Z yang lebih kecil. Pada sistem tangan kanan sumbu Z berkebalikan arah dengan sistem tangan kiri.

Dalam pembuatan visualisasi 3D kantin Universitas Mercu Buana menggunakan kedua sistem koordinat untuk penggunaan sistem tangan kanan penulis munggunakannya dalam membuat modeling 3 dimensi dalam 3D Studio Max 7. Sedang sistem tangan kanan digunakan dalam penerapan modeling 3 dimensi kedalam Blitz3D.

Setiap titik pada ruang 3D dapat direpresentasikan oleh tiga nilai (X, Y, Z). Nilai-nilai ini menunjukan posisi titik pada sumbu koordinat. Titik dimana seluruh sumbu bertemu titik awal. Titik yang terletak pada awal mempunyai nilai X, Y, Z (0, 0, 0). Titik yang terletak dikanan titik awal mempunyai nilai X positif, sedangkan yang di kiri mempunyai nilai X negatif

(3)

Gambar 3.1 Sistem koordinat tangan kanan

(4)

3.1.2 Matrik dan Tranformasi

Matrik dan operasi-operasinya sering dijumpai dalam banyak sistem. Pada umumnya matrik menyederhanakan penggambaran suatu sistem dengan mentranformasikannya de dalam bentuk-bentuk yang lebih kompak dan sekaligus menawarkan teknik-teknik penyelesaian yang lebih efisien. Dalam animasi 3D matrik dapat digunakan untuk membuat ruangan 3D, memutar objek, translasi dan lainnya.

Matrik dapat didefinisikan sebagai susunan empat persegi panjang unsur-unsur yang ditempatkan dalam satu baris atau lebih yang mengandung satu lajur (kolom) atau lebih. (Pemograman Dengan C/C++ Dan Aplikasi Numerik Edwar E. H. Halawa dan Setyawan p. Sakti, Hal 126).

Secara lebih spesifik, matrik A dengan ukuran m x n adalah unsur-unsur dalam m baris dan n kolom.

Contoh matrik :

a

11

a

12 ...

a

1n

a

11

a

12 ...

a

1n ... ...

a

11

a

12 ...

a

1n

Dimana matrik A setiap unsur ditentukan oleh besar dan posisinya. Matrik A memiliki sebanyak m x n unsur. Aturan-aturan operasi matematika

(5)

(seperti penjumlahan dan perkalian) untuk matrik telah dirumuskan sedemikian rupa agar berguna untuk perhitungan-perhitungan praktis. Penjumlahan dua buah matrik dapat berlangsung jika kedua matrik itu berordo sama (ukuran m x n). Matrik-matrik seperti itu disebut matrik-matrik yang sesuai dengan penjumlahan. Berikut ini adalah contoh dari penjumlahan dua buah matrik yang memiliki ordo sama :

Penjumlahan matrik

A(3x3) = dan B(3x3) = maka

A + B = + =

=

Untuk perkalian dua buah matrik dapat dilakukan dengan syarat jumlah banyaknya kolom matriks pertama = jumlah banyaknya baris matrik kedua. Misalnya ada sebuah matrik A = (aij) berukuran (p x q) dan B = (bij)

1 2 3 1 2 4 2 1 3 6 5 2 0 0 4 1 1 1 1+6 2+5 3+2 1+0 2+0 4+4 2+1 1+1 3+1 7 7 5 1 2 8 3 2 4 1 2 3 1 2 4 2 1 3 6 5 2 0 0 4 1 1 1

(6)

berukuran(q x r). Maka perkalian AB adalah suatu matrik C = (cij) berukuran

(p x r) dimana :

Cij = aij bij + aij bij + ... + aiq bqj

Contoh perkalian matrik :

A(3x3) = B(3x3) =

Karena banyaknya kolom matrik A = 3 dan banyaknya baris matrik B = 3, maka AB ada, dan berukuran (3 x 3).

AB = AB = C(3x3) = 1 2 3 1 2 4 2 1 3 6 5 2 0 0 4 1 1 1 1 2 3 1 2 4 2 1 3 6 5 2 0 0 4 1 1 1 1.6+2.0 + 3.1 1.5+2.0 + 3.1 1.2+2.4 + 3.4 1.6+2.0 + 4.1 1.5+2.0 + 4.1 1.2+2.4 + 4.1 2.6+1.0 + 3.1 2.5+1.0 + 3.1 2.2+1.4 + 3.1 9 8 22 10 9 12 15 13 11

(7)

Ada operasi-operasi tertentu yang terdapat pada matrik, yang lebih dikenal lagi sebagai transformasi yang kadang-kadang harus dinyatakan dalam bentuk matrik, dan digunakan dengan jalan melakukan perkalian matriks. Transformasi adalah suatu cara untuk mengubah bentuk objek (memutar, menggeser, dan juga mengubah ukuran). Suatu objek apabila ditransformasikan dari titik koordinat awal (X, Y, Z), maka akan menghasilkan titik koordinat yang baru (X’, Y’, Z’).

Berikut ini bentuk-bentuk dari transformasi yang digunakan di dalam pembuatan animasi 3D :

3.1.2.1 Rotasi

Rotasi adalah transformasi dengan memutar sebuah objek. Objek-objek tersebut dapat diputar terhadap sumbu X, sumbu Y, dan sumbu Z. Dalam pemograman Direct3D untuk memutar sebuah objek, kita dapat menggunakan fungsi SetRotation, yaitu sebuah fungsi yang dapat digunakan untuk mengatur rotasi objek secara kontinyu.

Apabila ada sebuah matrik Pi dengan titik koordinat awal (Xi, Yi, Zi)

kemudian dirotasi dengan sudut putar 0, maka akan dihasilkan matrik baru Pi’

dengan titik-titik koordinat baru (Xi’, Yi’, Zi’). Jika diturunkan dengan persamaan

adalah seperti berikut :

Xi’ = cos ( + 0) = cos cos 0 – sin sin 0 = xi cos 0 – yi sin

0

Yi’ = sin ( + 0) = cos sin 0 + sin cos 0 = xi sin 0 + yi cos

0 Zi’ = zi

(8)

Persamaan-persamaan ini dapat ditulis dalam bentuk matrik seperti berikut : Xi’ cos 0 -sin 0 0 Xi

Yi’ = sin 0 cos 0 0 Yi

Zi’ 0 0 1 Zi

Gambar 3.3 Rotasi Pada Sumbu Koordinat tegak Lurus

Berikut ini contoh suatu objek kubus yang akan dirotasikan terhadap sumbu X, Y, atau Z, dimana kubus ini berada pada sistem koordinat tegak lurus yang arahnya menurut sumbu-sumbu x, y, dan z positif. Kubus ini akan dirotasi terhadap sumbu X, Y, dan Z dengan sudut 900. gambar di bawah ini merupakan gambaran dimana kubus tersebut berada pada posisi awal (sudut 0) dan nantinya akan dirotasikan terhadap sumbu X, Y, dan Z.

(9)

Gambar 3.4 Kubus dirotasikan terhadap sumbu X dengan sudut besar 900

Gambar 3.5 kubus dirotasikan terhadap sumbu Y dengan sudut sebesar 900

(10)

Penerapan pada masing-masing sumbu tersebut diimplementasikan dengan Addrotation (sumbu x, sumbu y, sumbu z, radian), yaitu fungsi anggota yang terdapat pada TbaseObject.

3.1.2.2 Translasi

Translasi merupakan tranformasi yang paling sederhana, yaitu memindahkan koordinat asal ke tempat yang baru. Sebagai contoh misalnya ada sebuah objek yang akan ditranslasi dengan vektor translasi (Tx, Ty, Tz).

1 0 0 Tx

0 1 0 Ty

0 0 1 Tz

Maka akan didapat kordinat baru dari translasi

X’ = X + Y Y’ = y + Ty Z’ = Z + Tz

Gambar di bawah ini memperlihatkan translasi sebuah segitiga dengan garis putus-putus ke posisi yang baru dengan translasi (2,-3)

(11)

Gambar 3.7 translasi pada objek segititga

3.1.2.3 Dilatasi

Dilatasi adalah operator untuk membuat sebuah benda lebih besar atau lebih kecil. Kita dapat mengubah ukuran benda dengan skala tertentu terhadap masing-masing sumbu.

Jenis tranformasi dilatasi yang akan kita tinjau terdiri dari pengubahan skala dari sebuah gambaran sepanjang arah x, y, dan z berturut-turut oleh faktor-faktor , , . Dengan ini kita artikan bahwa jika sebuah titik Pi mempunyai koordinat (xi, yi,

zi) dalam gambaran aslinya, maka titik tersebut akan bergerak ke sebuah titik Pi’

yang baru dengan koordinat ( xi, yi, zi) dalam gambar yang baru itu. Misalkan kita

ingin mentranformasikan sebuah kubus satuan dalam gambar asli menjadi lebih besar dengan siku-siku yang dimensinya x x . Secara sistematis, hal ini dapat dirampungkan dengan perkalian matrik seperti berikut. Definisikanlah sebuah matrik diagonal 3 x 3.

(12)

0 0 S = 0 0 0 0

Maka, jika titk Pi dalam gambar aslinya dinyatakan oleh vektor kolom.

Xi

Yi

Zi

Titik Pi yang dihasilkan oleh tranformasi itu akan dinyatakan dalam vektor kolom.

X’i 0 0 Xi

Y’i 0 0 Yi

Z’i 0 0 Zi

Dengan menggunakan matrik koordinat P yang mengandung koordinat-koordinat dari semua n titik dari gambaran yang asli sebagai kolom-kolomnya, maka ke-n titik ini dapat ditranformasikan secara serempak untuk menghasilkan matrik koordinat p’ dari gambaran yang berskala baru.

0 0 X 1 X 2 ... X n

S = 0 0 Y 1 Y 2 ... Y n

(13)

x 1 x 2 ... x n

= y 1 y 2 ... y n = P’

z 1 z 2 ... z n

Gambar 3.8 penskalaan (scale) pada kubus

Modeling 3 dimensi yang digunakan berformat x yang dibuat menggunakan 3D Studio Max 7 akan menjadi modeling yang sesuai dengan yang diinginkan ketika di masukan dalam Blitz3D sehingga untuk menskalakan mesh diberikan nilai yang sama ke segala arah, artinya nilai-nilai tersebut sama besarnya baik untuk sumbu X, Y, Z. Dari data ini akan didapat ukuran panjang, lebar, dan tinggi yang diinginkan. Untuk meletakkan objek mesh kedalam Blitz3D yamg menunjukan parameter X, Y, Z, berhubungan dengan rotasi dan translasi yamg merupakan implementasi dari teori matrix transformasi rotasi dan teori matrix transformasi translasi, serta teori matrix transformasi distalasi yang mana dalam Blitz3D digunakan untuk fungsi kamera dan mesh dengan menentukan parameter yang ditentukan.

Untuk mengatur kamera dimana akan dihasilkan sudut pandang yang susuai dapat di atur sehingga akan menghasilkan posisi kamera yang maksimal, seperti kita

(14)

sedang dalam hadapan dengan objek asli akan terlihat dengan memberi nilai yang sesuai dan akan menghasilkan sudut pandang dimana dalam visualisasi 3 dimensi ini akan menyesuaikan dengan sudut pandang terhadap objek asli.

3.2 Perancangan Program Untuk Visualisasi Modeling 3 Dimensi Dalam Blitz3D

Sebuah visualisasi 3D yang dibangun atau dibuat mengguanakan bahasa pemrograman berorientasi objek selalu memiliki file-file header. Layaknya seperti sebuah flash movie yang didalamnya memiliki satu atau beberapa scene yang antara scene satu dengan scene yang lainnya saling berkaitan dan mendukung, biasanya satu scene menampilkan suatu adegan yang telah di skenenariokan. Begitu pula dengan bahasa pemrograman basic yang merupakan dasar dari Blitz3D dimana file-file header memiliki fungsi dan tujuan yang berbeda-beda tetapi saling berkaitan antara file header satu dengan yang lainnya didalam program utamanya. Tujuan dibuat file-file header ini adalah untuk memudahkan bagi seorang programer untuk menganalisi maupun mengembangkan lagi kode program yang sudah jadi dibuat. Aplikasi ini memiliki 2 program anak, dan 1 sebagai program utamanya, yang mana program uatama selalu menunjuk program anak dan file-file header yang dibutuhkan dan menjalakan aplikasi yang dibangun.

Program pertama yang disebut program utama diberi nama kantin.bb yaitu program yang mengatur semua kebutuhan aplikasi yang ditampilkan kelayar monitor inilah program kunci yang muncul pertama kali pada saat program dijalankan pada program dijalankan maka semua kebutuhan yang dibutuhkan oleh program utama

(15)

akan dipanggil, seperti untuk menampilkan objek 3 dimensi, untuk menggerakan objek tersebut baik ke arah kanan, kiri, bawah maupun perintah untuk menutup layar.

3.2.1 Bagian Program utama

Pada program utama yang diberi nama kantin.bb terdapat beberapa baris kode perintah yang dipakai atau digunakan untuk menjalankan visualisasi 3D yang dibuat, semua kode yang berbeda-beda fungsi dan kegunaan dijadikan satu wadah atau tempat. Misalnya menampilkan gambar 3 dimensi (gambar beformat x) kedalam layar aplikasi yang sedang dijalankan (run). Gambar tersebut akan terlihat nyata seperti aslinya dengan merender atau memberikan kulit (texture) kedalam gambar 3 dimensi tersebut. Ditambah beberapa baris perintah yang digunakan untuk menggerakan objek 3 dimensi sehingga terbentuklah sebuah gerak

3.2.1.1 Mendefinisikan Variable

Dalam perangkat lunak Blitz3D variable tidak di definisikan secara panjang dan spesifik tapi cukup dengan perintah Global.

Global escape_key = 1, QUIT = False

Global screen_width = 800, screen_height = 600

Global up_key = 200, down_key=208, left_key=203, right_key=205 Global run_vol#, runchannel

(16)

3.2.1.2 Membuat Tampilan layar

Sebelum membuat landscape dan langit penulis membuat layar untuk menampilakan hasil visualisasi, untuk membuat layar dalam visualisasi ini di mulai dengan perintah Graphics3D yang yang berfungsi untuk menyiapkan graphics yang penulis butuhkan untuk meletakkan objek-objek 3D di dalamnya, perintah Graphics3D diikuti parameter berupa panjang, lebar, kedalaman dan windowed option, parameter terakhir bersifat optional.

Global screen_width = 800, screen_height = 600 Graphics3D screen_width,screen_height, 16, 2 SetBuffer BackBuffer()

Panjang, lebar, kedalaman adalah resolusi yang di pakai oleh penulis, nilai yang sering di pakai adalah (640,480) dan (800,600). Untuk window option yang nilainya 2 dalam menjalankan visualisasi dalam mode window sedangkan apabila diberi nilai 1 maka akan terlihat layar penuh. Dan perintah SetBuffer BackBuffer() untuk mengarahkan proses penggambaran.

3.2.1.3 Membuat Objek Camera

Setelah layar sudah di siapkan, langkah selanjutnya adalah membuat objek-objek dasar, objek-objek di sini bukan berarti sebuah benda tapi untuk memberikan tampilan atau sudut pandang dalam visualisasi 3D. dan objek yang terdapat dalam program utama adalah camera disini objek terpenting dalam visualisasi 3D, semua

(17)

modeling 3 dimensi akan terlihat melalui sudut pandang kamera. Tanpa kamera maka layar akan terlihat kosong tanpa apa-apa.

Setelah kita membuat camera, maka yang kita lakukan selanjutnya adalah memposisikan kamera kita ke posisi yang baik dan benar. Perintah yang digunakan adalah PositionEntity yang berfungsi untuk meletakkan entity pada koordinat X, Y, Z. Dengan meletakkan kamera yang sesuai maka akan melihat dengan pemandangan jelas.

Global cam1 = CreateCamera()

CameraViewport cam1, 0, 0, screen_width, screen_height PositionEntity cam1, 0, 6, -2

3.2.1.4 Membuat Tipe untuk Collision

Tipe collision ini berfungsi untuk membedakan ketika pemain sedang bergerak maju dan di depan ada objek atau dinding pemain ini akan berhenti tidak menembus dinding gedung.

type_ character=1 type_kantin=3 Collisions type_character,type_kantin,2,3 - - If EntityCollided(player,type_kantin) MoveEntity player,0,.63,0 EndIf

(18)

3.2.1.5 Membuat Pencahayaan

Pencahayaan berfungsi untuk menyediakan sumber cahaya yang akan memberikan cahaya sehingga semua modeling 3 dimensi akan terlihat dengan pencahayaan yang merata, di samping untuk menyediakan cahaya tertentu misalnya untuk menambahkan lampu yang akan memberikan efek pencahayaan yang realistis. Untuk pencahayaan apabila dimasukan nilai yang kurang sesuai maka hasil tekstur dari modeling akan sedikit banyak berpengaruh dimana disini terdapat tiga fungsi parameter untuk mengatur pencahayaan yaitu R, G, B yang mewakili Red, Green, Blue. Misalkan nilai R, G, B tersebut (0,0,0) maka akan dihasilkan cahaya berwarna hitam atau gelap dan sebaliknya misalkan diberi nilai (100, 100, 100) maka cahaya yang akan dihasilkan berwarna putih atau terang. Oleh karena itu untuk menentukan hasil dari pencahayaan tersebut bisa saja langsung memberi nilai pada R, G, B tersebut sesuai dengan yang diinginkan. Semakin besarnya nilai yang diberikan maka akan semakin terang cahaya yang dihasilkan

3.2.1.6 Memberikan suara

Di sini suara yang di gunakan adalah musik sebagai backsound maupun untuk memberikan suara langkah dalam visualisasi 3 dimensi. Dan untuk detail program tersedia dalam bagian program yang menguraikan fungsi program.

LoadMusic() LoadSFX()

(19)

3.2.1.7 Menampilkan Modeling

Untuk visualisasi terdapat sisi modeling dan animasi. Dan dalam hal ini terdapat dua perintah yang berfungsi untuk mengatasi hal tersebut.

• Updateworld() berfungsi untuk mengurusi hal-hal seperti animasi dan collision (tumbukan)

• Renderworld() berfungsi untuk menampilkan modeling 3 dimensi ke layar. Updateworld() dan Renderworld() adalah bawaan dari Blitz3D dan selalu berpasangan.

• Flip berfungsi untuk mengirimkan tampilan di Backbuffer() ke FrontBuffer() sehingga dapat dilihat.

- - UpdateWorld RenderWorld - - Flip

3.2.1.8 Membuat Pergerakan Pemain

Untuk menelusuri semua ruangan gedung di perlukan pemain untuk melakukan hal itu.

(20)

X #=0 y#=0 z#=0

If run_vol#>0 Then AnimSprite(player, anim_tex,200,4)

3.2.1.9 Membuat Menu

Dalam tampilan visualisasi 3D ini akan menampilkan menu yang mana akan memberi pilihan untuk langsung memasuki visualisasi 3D atau memilih pilihan yang lain, dengan menggunakan mouse sebagai media untuk memilih.

Menu()

While QUIT = False

If KeyHit( escape_key ) Then MENU() MousePick()

3.2.2 Bagian Program Untuk Fungsi Pembantu Program

Dalam bagian ini akan di bahas tentang segala fungsi yang di gunakan dalam pembuatan visualisasi 3D.

3.2.2.1 Fungsi menu

Fungsi ini berfungsi untuk membuat menu program yang akan muncul pertama kali.

Function MENU() ; MENU ShowEntity spr_menu

(21)

ShowEntity spr_start ShowEntity spr_quit ShowEntity spr_credits LeaveMenu=False

While Not KeyHit( escape_key )

MousePick()

If QUIT=True Then Return If LeaveMenu = True Then Exit

UpdateWorld RenderWorld

If ShowCredits = True Then Color 0,0,50 fntArial=LoadFont("Arial", 30, True ) SetFont fntArial Locate 300,100 Print "Created by :" Color 110,110,110 fntArial=LoadFont("Bauhaus 93", 30, True ) SetFont fntArial Locate 300,150

(22)

EndIf Flip Delay 10 Wend HideEntity spr_menu HideEntity spr_start HideEntity spr_quit HideEntity spr_credits LeaveMenu=False ShowCredits=False End Function 3.2.2.2 Fungsi Mouse

Untuk menguraikan penggunaan mouse dalam memilih dalam menu utama. Function MousePick() ; MOUSEPICK

currentpicked = CameraPick( cam1, MouseX(), MouseY() ) If currentpicked>0 And MouseHit(1)

If currentpicked = spr_start Then LeaveMenu = True If currentpicked = spr_quit Then QUIT=True

(23)

EndIf

If currentpicked

EntityAlpha currentpicked, Sin( MilliSecs() )*.3+.7 EndIf

End Function

3.2.2.3 Fungsi Keyboard

Untuk menguraikan penggunaan keyboard dalam visualisasi 3D. Function object_key_control( obj )

run_snd = False

If KeyDown( up_key )=True Then MoveEntity obj, 0, 0, 1 : run_snd=True

If KeyDown( down_key )=True Then MoveEntity obj, 0, 0,-1 : run_snd=True

If KeyDown( left_key )=True Then TurnEntity obj, 0, 2, 0 If KeyDown( right_key )=True Then TurnEntity obj, 0,-2, 0 If KeyDown(57)=True Then MoveEntity obj,0,1,0

If run_snd Then run_vol#=.5 Else run_vol#=0 End Function

3.2.2.4 Fungsi Pergerakan Pemain

Menguraikan pergerakan pemain dalam visualisasi 3D. Function AnimSprite(obj, atex, d, f)

(24)

EntityTexture obj,atex,frame End Function

3.2.2.5 Fungsi suara

Menguraikan penggunaan suara atau musik sebagai backsound ke dalam visualisasi 3D.

Function LoadMusic()

chn_music = PlayMusic ("Aku.mp3") ChannelVolume chn_music,.5

End Function

3.2.3 Bagian Program Untuk Meletakan Modeling 3 Dimensi

Dalam bagian program ini akan di bahas tentang pembuatan tampilan gambar maupun menaruh modeling 3 dimensi ke dalam Blitz3D.

3.2.3.1 Membuat Tampilan Menu Utama

Di uraikan pembuatan tampilan menu utama.

spr_menu = LoadSprite( "himti.jpg", 7, cam1 ) ScaleSprite spr_menu, 2, 1.5

MoveEntity spr_menu, 0, 0, 2 HideEntity spr_menu

(25)

ScaleSprite spr_start, .20, .10 EntityRadius spr_start, .25

MoveEntity spr_start, -1.7, 1.3, 2 HideEntity spr_start

EntityPickMode spr_start,1

spr_quit = LoadSprite( "exit.jpg", 7, cam1 ) ScaleSprite spr_quit, .20, .10

EntityRadius spr_quit, .25

MoveEntity spr_quit, -1.2, 1.3, 2 HideEntity spr_quit

EntityPickMode spr_quit,1

spr_credits = LoadSprite( "credit.jpg", 7, cam1 ) ScaleSprite spr_credits, .20, .10 EntityRadius spr_credits, .25 MoveEntity spr_credits, -.7, 1.3, 2 HideEntity spr_credits EntityPickMode spr_credits,1 3.2.3.2 Membuat Terrain

Untuk membuat hamparan yang luas sebagai tempat untuk meletakan modeling 3 dimensi.

(26)

tex_terrain = LoadTexture( "terrain_tex1.jpg" ) ScaleTexture tex_terrain, 10, 10

EntityTexture land, tex_terrain PositionEntity land,-500,0,-400 ScaleEntity land,4,1,4

EntityType land,type_object

3.2.3.3 Membuat Pemain

Di uraikan pembuatan pemain untuk pergerakan dalam visualisasi 3D. player = CreateSprite()

anim_tex=LoadAnimTexture( "char_back.bmp",7,32,48,0,4) EntityTexture player, anim_tex, 1

HandleSprite player,0,-1 ScaleSprite player, 2,2 PositionEntity player, 0, 1, 5 EntityParent cam1, player

EntityType player,type_character EntityRadius player,.1

3.2.3.4 Membuat Tampilan langit

Di uraikan pembuatan, pemberian tekstur langit, dan ukuran luas pemandangan langit dalam visualisasi 3D.

sky=CreateSphere()

(27)

EntityTexture sky,skytexture ScaleEntity sky,600,600,600

FlipMesh

3.2.3.5 Meletakan Hasil Modeling 3 Dimensi

Disini akan di uraikan peletakan hasil modeling kantin 3 dimensi yang sudah di export dalam bentuk file x.

kantin=LoadMesh("kantin.x") ;mesh

PositionEntity kantin,2,12,100 ;position the mesh ScaleEntity kantin,.2,.2,.2

EntityType kantin,type_ kantin RotateMesh kantin, 0,0,0 EntityRadius kantin,2

3.3 Denah dan Modeling Kantin Universitas MercuBuana

Dan sebelum penulis menerapkan dalam Blitz3D, penulis membuat modeling 3 dimensi yang mana penulis membuat modeling 3 dimensi ini dalam 3D Studio Max 7.

Dalam pembuatan visualisasi 3D dimana penulis menggunakan media Blitz3D untuk penerapan modeling, dan untuk pembuatan modeling kantin Universitas MercuBuana penulis menggunakan 3D Studio Max 7.

Dalam membangun sebuah bentuk bangunan dalam 3D, sebaiknya penulis melakukan metodologi penelitian secara langsung dimana penulis melakukan

(28)

pengukuran ukuran kantin mercubuana, dan setelah mendapatkan ukuran penulis membuat denah Kantin untuk kebutuhan pembuatan sebuah bangunan 3D.

Sebelum membentuk kantin secara 3D, penulis membuat denah untuk tiap lantai sehingga akan mempermudah dalam membuat kantin dalam 3D. Hal ini dilakukan oleh penulis di maksudkan untuk memberi gambaran kepada pembaca sehingga mengerti baik secara ukuran keseluruhan maupun untuk detail-detail tiap ruangan. Berikut ini akan dijelaskan melalui denah sehingga akan di ketahui ukuran kantin secara keseluruhan dan ukuran ruangan di tiap-tiap lantai. Dan untuk pemodelan kantin universitas mercu buana penulis menggunakan skala 1:10 untuk membuat semua ruangan dalam gedung.

(29)

Gambar 3.10 Denah Lt 2 Kantin

3.4 Modeling Objek 3D

Dalam Pembuatan objek-objek 3D hanya akan dijelaskan secara garis besar saja, untuk lebih rincinya akan di jelaskan secara lisan.

3.4.1 Membuat lantai Satu

Untuk lantai satu Kantin Universitas Mercu Buana terdapat Outlet-outlet Penjualan, dan gudang,. Dan berikut pembuatan ruangan untuk lantai satu.

• Pastikan viewport Top dalam keadaan aktif untuk memudahkan • Tekan Alt+W untuk memaksimalkan viewport Top.

• Pada menu bar, pilih Create > Standar Primitives > Box. • Klik dab tarik pada viewport Top unutk membuat objek kotak.

• Pada panel create atau Modify > rollout parameters, tentukan Length = 1452 , Width = 1216 , heigth = 60

• Pada panel Create > Rollout Name and Colors, ganti nama objek menjadi lantai 1.

(30)

• Ulangi langkah ke tiga sampai kelima untuk bentuk lantai 1 bagian barat dengan mengisikan parameter Length = 670 , Width = 1216 , heigth = 60, posisikan mengikuti denah Pastikan keempat viewport aktif.

• Pada menu bar, pilih Create > AEC Objects > Straigth Stairs. Tentukan parameters layout Length = 60, Width = 1216 dan Rise Overall = 3, sehingga tampak seperti gambar.

Gambar 3.11 Lantai 1 3 Dimensi

3.4.2 Membuat Objek Compound

Objek Compound di gunakan untuk membentuk lubang maupun memotong objek untuk di ambil bagian objek lain untuk keperluan tertentu. Di sini Objek Compound di gunakan untuk membuat lubang di dinding untuk pintu. Aktifkan Select and Move untuk objek yang akan di lubangi atau di potong, kemudian pada menu bar, pilih Create > Compound > Boolean > Pick Operand B. pastikan pointer pada Move.

(31)

3.4.3 Membuat outlet lantai Satu

Sebelum membuat dinding penulis menggunakan fasilitas box untuk bantuan dalam mengukur tiap ruangan lantai satu.

• Pada menu bar, pilih Create > Standar Primitives > Box

• Untuk Outlet1 pada lantai 1 membuat box dengan mengisi Length = 792, Width = 60, Heigth = 130 dan posisikan objek pada ujung kiri atas pada denah dan Create > Rollout and Colors ganti warnanya menjadi putih

• Pada menu bar, pilih Create > AEC Objects > Wall. Dan untuk parameters diisi width (ketebalan dinding) = 0.5 , dan Heigth = 330.posisikan mengikuti denah dengan menarik dari titik ke titik. Dengan

• Untuk parameters di tiap ruangan lantai satu di isi sesuai kotak bantuan yang dibuat terlebih dahulu dan kemudian hapus kotak bantuan dengan fasilitas select and Move untuk tiap kotak bantuan dan tekan delete pada keyboard

(32)

3.4.4 Membuat Pintu

Untuk lantai satu pintu hanya terdapat pada gudang outlet1 dan menggunakan jenis pintu single swing, yaitu pintu yang hanya terdiri dari satu daun pintu. Berikut cara pembuatannya:

• Pastikan viewport Top dalam keadaan aktif untuk memudahkan • Tekan Alt+W untuk memaksimalkan viewport.

• Pada menu bar, pilih Create > AEC Objects > Pivot Door arah kan ke dinding Ruang gudang outlet1 mendekati tembok, klik dan tarik ke kanan dan ke bawah kemudiantarik ke atas untuk membentuk tinggi pintu.

• Untuk parameters isi Heigth = 23,8, Width = 70, Depth = 9

Gambar 3.13 Pintu Ruang gudang outlet1 Lantai 1

3.4.5 Membuat Ventilasi Pintu

Ventilasi pada pintu di kanin Universitas Mercu Buana hanya terdapat pada outlet 1. Dan untuk membuatnya sebagai berikut,

(33)

• Pastikan viewport Top dalam keadaan aktif untuk memudahkan. • Tekan Alt+W untuk memaksimalkan viewport.

• Pada menu bar, pilih Create > AEC Objects > Railing arah kan ke pintu yang sudah di buat dan tarik ke kanan sehingga tampak sejajar dengan pintu kemudian tarik ke atas untuk membentuk tinggi ventilasi.

• Untuk parameters isikan Profile = Square, depth = 0,4 , width 1,5 , Heigth = 4. Dan railing spacing isikan parameters count 5, klik ok.

• Gunakan fasilitas select and Move dan pada menu bar, pilih Edit > clone dan arahkan pointer ke Copy dan ganti nama dengan ventilasi 1 dan seterusnya sesuai kebutuhan. Dan posisikan semua ventilasi di atas pintu.

3.4.6 Membuat Meja

Kursi dan meja lantai satu dan dua berbeda bentuk. Dan berikut cara pembuatan dan hasilnya.

• Pastikan keempat viewport dalam keadaan aktif.

• Buat kotak dengan cara yang sudah di jelaskan di atas dan isi parameternya Length = 80, width = 80, Heigth = 5.

• Buat penyangga meja dengan pilih pada menu bar, pilih Create > Standar Primitives > Cylinder

• Beri nilai \Radius = 10, Heigth = 75, kemudian posisikan kedalama titik tengah kotak yang sudah di buat.

• Untuk membuat kaki meja dibuat dengan pilih pada menu bar, pilih Create > Standar Primitives > Sphere, isikan parameternya Radius = 15, Segments = 32

(34)

• Membuat bagian tengah lubang dengan membuat Sphere bantuan dengan parameter Radius = 13, Segments =32.

• Aktifkan Select and Move untuk objek yang akan di lubangi atau di potong, kemudian pada menu bar, pilih Create > Compound > Boolean > Pick Operand B. pastikan pointer pada Move. Klik objek bola bantuan.

• Potong menjadi dua bagian objek bola dengan aktifkan objek klik kanan dan klik convert to pilih convert to editable mesh. Aktivkan vertex kemudian pilih semua bagian bawah bola sehingga terpilih sebagian bola kemudian tekan delete.

• Untuk membuat lubang untuk kaki meja membutuhkan kotak bantuan.

• Buat kotak dengan cara yang sudah di jelaskan di atas dan isi parameternya Length = 15, width = 15, Heigth = 17. Dan posiskan sehingga tampak pada gambar.

Gambar 3.14 Hasil Objek Bola Kaki Meja Dengan Kotak Bantuan

• Aktifkan Select and Move untuk objek yang akan di lubangi atau di potong, kemudian pada menu bar, pilih Create > Compound > Boolean > Pick Operand B. pastikan pointer pada Move.

(35)

• Klik bola bantuan, kemudian aktifkan kembali Select and Move dan ulangi cara seperti di atas sampai sesuai kebutuhan dan terlihat seperti gambar di bawah ini.

Gambar 3.15 Hasil Pemotongan Dengan Objek Compound

• Posisikan menjadi satu hingga menjadi satu kesatuan bentuk meja sehingga tercipta seperti gambar.

(36)

3.4.7 Membuat lantai dua

• Pastikan Top viewport aktif.

• Tekan Alt+W untuk memaksimalkan viewport. • Pastikan objek Lantai01 terpilih.

• Pada menu bar, pilih Edit > Clone. Dan di beri nama Lantai02.

• Aktifkan kembali keempat viewport dan pilih Front viewport, tekan Alt+W untuk memaksimalkan viewport.

• Gunakan Select and Move dan posisikan Lantai02 sejajar dengan tinggi ruangan di lantai satu.

3.4.8 Membuat Outlet Lantai 2.

Untuk outlet lantai dua bentuk sama seperti outlet lantai satu dan berikut adalah ukuran dan langkah pembuatannya.

• Pada menu bar, pilih Create > Standar Primitives > Box

• Untuk Outlet1 pada lantai 1 membuat box dengan mengisi Length = 792, Width = 60, Heigth = 130 dan posisikan objek pada ujung kiri atas pada denah dan Create > Rollout and Colors ganti warnanya menjadi putih

• Pada menu bar, pilih Create > AEC Objects > Wall. Dan untuk parameters diisi width (ketebalan dinding) = 0.5 , dan Heigth = 330.posisikan mengikuti denah dengan menarik dari titik ke titik. Dengan

• Untuk parameters di tiap ruangan lantai satu di isi sesuai kotak bantuan yang dibuat terlebih dahulu dan kemudian hapus kotak bantuan dengan fasilitas select and Move untuk tiap kotak bantuan dan tekan delete pada keyboard

(37)

3.4.9 Membuat Mini Bar.

Untuk lantai terdapat outlet di tengah ruang yang tampak seperti mini bar. Berikut adalah pembuatannya

• Pastikan keempat viewport dalam keadaan aktif ini berguna untuk melihat bagian yang akan di potong atau di lubangi.

• Buat kotak dengan cara yang sudah di jelaskan di atas dan isi parameternya Length = 373, width = 360, Heigth = 120.

• Untuk membuat lubang untuk bagian tengah membutuhkan kotak bantuan. • Buat kotak dengan cara yang sudah di jelaskan di atas dan isi parameternya

Length = 313, width = 300, Heigth = 120. Dan posisikan ditengah kotak yang pertama secara sejajar.

• Aktifkan Select and Move untuk objek yang akan di lubangi atau di potong, kemudian pada menu bar, pilih Create > Compound > Boolean > Pick Operand B. pastikan pointer pada Move.

(38)

3.4.10 Membuat Pintu Kaca.

Untuk lantai dua terdapat pembatas dan pintu kaca untuk masuk kedalamnya. Langkah pembuatan dan ukuran adalah sebagai berikut.

• Pastikan Top viewport aktif.

• Buat kotak dengan parameters, Length = 80 , Width = 0.5, Heigth = 330. • Posisikan kedalam lubang untuk paembatas kaca.

• Pada material Editor tentukan opacity menjadi 5, klik dan tarik material ini ke kotak yang sudah di buat sehingga akan tampak transparan. Pilih Edit > Clone dan posisikan kaca pembatas dan pintu kaca ini sesuai dengan jumlah jendela yang tersedia dalam gedung.

(39)

3.5 Membuat Tekstur.

Untuk membuat pintu kayu seperti alami, bentuk lantai yang berbentuk pecahan batu, maupun lantai plesteran dengan semen. Untuk pemberian tekstur dilakukan seperti di bawah ini,

• Pastikan keempat viewport dalam keadaan aktif untuk melihat dari berbagai sudut.

• Pilih Material Editor > Difuse > Bitmap. Pilih gambar yang sudah ada dalam librari maupun gambar yang sudah disiapkan oleh penulis dengan tipe file *.bmp. pilih gambar sesuai dengan kebutuhan tekstur yang terdapat dalam kantin sehingga akan terlihat alami.

• Klik dan tarik material yang di butuhkan ke objek yang akan di beri teksur. Sehingga masing-masing objek akan terlihat seperti nyata dengan tekstur yang sudah di tambahkan.

3.6 Menggabungkan Seluruh Objek.

Langkah yang dilakukan yaitu dengan menarik seluruh objek pada koordinat yang telah ditentukan, berikut hasil dari penggabungan seluruh objek.

(40)

Gambar

Gambar 3.1 Sistem koordinat tangan kanan
Gambar 3.3 Rotasi Pada Sumbu Koordinat tegak Lurus
Gambar 3.5 kubus dirotasikan terhadap sumbu Y dengan sudut sebesar 90 0
Gambar 3.8 penskalaan (scale) pada kubus
+7

Referensi

Dokumen terkait

Penyebabnya adalah dengan adanya efek dopler dan tidak adanya perancangan jaringan se luler yang dikhususkan untuk pengguna jasa transportasi kereta api dan teknologi

Penelitian ini bertujuan untuk memberikan gambaran mengenai impostor phenomenon pada mahasiswa psikologi Universitas Surabaya angkatan 2004 dan 2005, dan mengetahui

Serat Wedhatama, yang merupakan karya besar Sri Mangkunegara IV dapat dijadikan rujukan utama dalam pembelajaran muatan lokal Bahasa, Sastra, dan Budaya Jawa,

Karena-Nya, penyusun dapat menyelesaikan skripsi yang berjudul “Kajian Pengaruh Tinggi Bukaan Pintu Air Tegak Terhadap Kondisi Aliran Di Bagian Hilir Saluran

pemikiran di atas dapat disimpulkan bahwa peran Agama dalam Antropologi sebagai panduan untuk membimbing manusia untuk memiliki moral dan perilaku sesuai dengan

Tersangka Wahyudi,23, yang sempat sembunyi selama 6 hari di rumah sau- dara di Karawang, Jawa Barat, terpaksa dibedil kakinya karena mencoba kabur saat mencari barang bukti

Idealnya antibiotika yang dipilih untuk pengobatan ISK harus memiliki sifat-sifat sebagai berikut : dapat diabsorpsi dengan baik, ditoleransi oleh pasien, dapat mencapai kadar

Penelitian ini bertujuan untuk mengetahui hubungan pengetahuan tentang keputihan dengan usaha preventif terjadinya keputihan pada remaja putri MA