• Tidak ada hasil yang ditemukan

Animasi Gerak Benda 3 Dimensi Menggunakan Java 3D API Mufti Ali 1, Agung B.P. 2, Aghus sofwan 2

N/A
N/A
Protected

Academic year: 2021

Membagikan "Animasi Gerak Benda 3 Dimensi Menggunakan Java 3D API Mufti Ali 1, Agung B.P. 2, Aghus sofwan 2"

Copied!
6
0
0

Teks penuh

(1)

Makalah Seminar Tugas Akhir 

Animasi Gerak Benda 3 Dimensi Menggunakan Java 3D API 

Mufti Ali 1 , Agung B.P. 2 , Aghus sofwan 2 

1  Mahasiswa dan 2 Dosen Jurusan Teknik Elektro, Fakultas Teknik, Universitas Diponegoro,  Jl. Prof. Sudharto, Tembalang, Semarang, Indonesia  Abstrak  Dalam dunia grafika komputer khususnya 3D, transformasi, pencahayaan, pewarnaan dan texturing merupakan  hal yang yang mendasar untuk membuat suatu animasi. Dengan transformasi, suatu objek dapat dipindahkan dari suatu  titik ke  titik yang  lain.  Namun  objek  tersebut  tidak  akan  nampak  apabila  tidak  ada  pencahayaan.  Kemudian,  diperlukan  juga pewarnaan dan  texturing agar objek tersebut terlihat lebih nyata. 

Tugas  akhir  ini  mencoba  untuk  mengimplentasikan  fungsi­fungsi  transformasi,  pencahayaan,  pewarnaan  dan  texturing    kedalam  bentuk  suatu    animasi  gerak  benda  3D.  Analisis  dan  desain  aplikasi  menggunakan  pendekatan  berorientasi objek. Aplikasi dibuat menggunakan bahasa pemrograman Java dan Java3D API (Application Programming  Interface). 

Kata  kunci: transformasi, pencahayaan, pewarnaan, texturin  1.  Pendahuluan 

1.1  Latar Belakang Masalah 

Pengenalan  mengenai  konsep    animasi  sangat  diperlukan  untuk  pengembangan  3D.  Transformasi  ,  pewarnaan  ,  pencahayaan,  texturing  dan  ray  tracing  merupakan dasar yang sangat penting dalam pengembangan  animasi 3D. 

1.2  Identifikasi Masalah 

Dalam  mengimplementasikan  aplikasi  grafika  komputer  untuk  animasi  gerak  benda  3  dimensi  dapat  diidentifikasi  beberapa masalah utama, yaitu: 

1.  Melakukan transformasi pada objek 3 dimensi.  2.  Pencahayaan. 

3.  Pewarnaan terhadap objek 3 dimensi. 

4.  Texturing  yang  diimplementasikan  pada  objek  agar  terlihat lebih nyata. 

5.  Antarmuka pengguna dengan program. 

1.3  Batasan Masalah 

1.  Transformasi  yang  dibahas  terdiri  atas  translasi,  skala 

dan rotasi.  2.  Pencahayaan, pewarnaan dan texturing.  3.  Bahasa pemrograman yang digunakan J2SE dan Java 3D  API.  1.4  Tujuan Penelitian  Tujuan dalam tugas akhir ini adalah membuat program  yang  bertemakan  grafis  3D  yang  dapat  digunakan  sebagai  kajian  tentang  transformasi,  pencahayaan,  pewarnaan  dan 

texturing. 

1.5  Kegunaan Hasil Penelitian 

Kegunaan dari Tugas Akhir  Animasi Gerak Benda 3  Dimensi Menggunakan Java 3D API ini adalah: 

1.  Mengetahui  bagaimana  mengimplementasikan  transformasi  3  dimensi,  pencahayaan,  pewarnaan  dan 

texturing  pada aplikasi 3 dimensi menggunakan Java 3D 

API dan J2SE dengan pendekatan berorientasi objek.  2.  Menghasilkan  suatu  aplikasi  yang  dapat  melakukan 

animasi gerak benda 3 dimensi. 

2.  Java 3D API 

Java  3D  API  adalah  sebuah  interface  untuk  membuat  program atau aplikasi grafika 3 dimensi. 

2.1 Java 3D API 

Java  3D  API  adalah  hirarki  dari  class­class  Java  yang  menyediakan  interface  untuk  3D  graphics  rendering,  manipulasi  objek  geometri,  pencahayaan  dan  sound 

rendering system. 

2.2  Membuat Scene Graph 

Suatu  virtual  universe  dalam  Java  3D,  dibuat  dengan  menggunakan  scene  graph.  Scene  graph  dibuat  dengan 

instances  dari  kelas­kelas  Java  3D.  Scene  graph  adalah 

suatu susunan dari objek­objek. Objek tersebut bisa berupa  suatu  objek  geometri,  sound,  cahaya,  lokasi,  orientasi,  tampilan  suatu  objek  ,  objek  audio,  atau  gabungan  dari  objek tersebut yang disusun ke dalam suatu scene garph. 

Untuk  mendesain  suatu  scene  graph,  digunakan  simbol grafik standar seperti ditunjukan pada gambar 2.1 

Gambar 2.1 Simbol untuk menggambarkan objek dalam scene graph 

Gambar  2.2  merupakan  contoh  sederhana  scene 

(2)

Gambar 2.2 Contoh bentuk scene graph  2.3  Transformasi 

Transformasi  terdiri  atas  translasi,  rotasi,  dan  skala.  Pada  Java  3D  API,  class  Transform3D  digunakan  untuk  menampilkan  transformasi  3D  seperti  translasi,  rotasi,  dan  skala.  Class  Transform3D  digunakan  untuk  pembuatan  objek TransformGroup. Langkah pertama adalah membuat  objek  Transform3D,  dapat  juga  kombinasi  dari  dua  atau  lebih  Transform3D,  lalu  TransformGroup  dibuat 

menggunakan objek Transform3D tersebut. 

2.4  Pencahayaan 

Dalam  dunia  nyata,  warna  yang  kita  lihat  adalah  kombinasi dari sifat fisik dari suatu objek, karakteristik dari  sumber cahaya, posisi   terhadap sumber cahaya, dan sudut  dari mana  objek dilihat [3] . 

Menurut Bouvier [3] , persamaan dari model cahaya  tergantung  pada  tiga  vektor,  yaitu  Normal  permukaan  bidang  (N),  arah  cahaya  (L),  dan  sudut  pandang  mata  terhadap  bidang  atau    (E)  ditambah  dengan  karakteristik  material  objek  dan  karakteristik  dari  cahaya.  Gambar  2.3  menunjukan  tiga  buah  vektor  dari  vertex  pada  sebuah  permukaan bidang berbentuk bola.  N  L  E  Gambar 2.3 Permukaan bidang (N), arah cahaya(L), dan sudut pandang  terhadap benda(E) 

Model  cahaya  menggabungkan  tiga  bentuk  refleksi cahaya pada dunia nyata, yaitu : ambient reflection, 

diffuse  reflection,  dan  specular  reflection.  Ambient  reflection  merupakan  refleksi  cahaya  dengan  intensitas 

yang  rendah  yang  dihasilkan  oleh  ambient  light,  diffuse 

reflection  adalah  refleksi  normal  dari  sumber  cahaya 

terhadap  benda  tertentu  (warna  dari  benda  tersebut),  dan 

specular reflection adalah refleksi cahaya dengan intensitas 

yang tinggi dari sumber cahaya. 

DirectionalLight  merupakan  cahaya  yang  bertindak 

seperti  matahari  (sumber  cahaya  sangat  jauh),  mempunyai 

satu arah sinar cahaya, intensitas cahayanya tidak melemah,  dengan arah vektor cahaya konstan. 

PointLight  merupakan  lawan  dari  DirectionalLight. 

Bila intensitas sinar dari DirectionalLight tidak terpengaruh  oleh  jarak,  maka  intensitas  sinar  dari  PointLight  berpengaruh terhadap jarak dan lokasi. 

SpotLight adalah subclass dari PointLight. Class  SpotLight  menambahkan  arah  dan  konsentrasi  pada 

parameter  posisi  dan  pelemahan  (attenuation)  dari 

PointLight. Contoh SpotLight adalah lampu senter.  2.5  Pewarnaan 

Untuk  mengimplementasikan  pewarnaan  dalam  java3D,  dilakukan  oleh  objek  appearance.  Informasi  mengenai penampakan visual dari objek geometri, disimpan  dalam “bundle appearance,”  seperti yang ditunjukan pada  gambar 2.5. 

Gambar 2.5. Bundle Objek Appearance.  2.6  Texturing 

Texturing  adalah  suatu  cara  untuk  menambahkan 

suatu  penampakan  visual  dari  suatu  objek  tanpa  menambahkan  suatu  geometri  secara  detail.  Penampakan  ini    berupa  suatu  image  (gambar)  atau  disebut  dengan 

texture,  yang  diimplentasikan  dalam  suatu  objek,  sehingga 

objek  tersebut  mempunyai  penampakan  visual  dari  image  tersebut. 

3.  Pemodelan  Animasi  Gerak  Benda  3  Dimensi  Menggunakan Java 3D API 

Pemodelan  animasi  gerak  benda  3  dimensi  menggunakan  Java  3D  API  menggunakan  pendekatan  berorientasi  objek  (objek  oriented  analysis  and  design).  Langkah­langkah  yang  dilakukan  seperti  model  yang  diutarakan oleh Pressman [9] , yaitu:  1.  Use case,  2.  Kartu Index CRC,  3.  Diagram Kelas,  4.  Model Hubungan Objek (Object Relationship), dan  5.  Model Tingkah Laku Objek (Object Behaviour).  Langkah­langkah  tersebut  kemudian  dibuat  dalam  bentuk  diagram UML seperti berikut. 

3.1.  Use Case 

Use  case  merupakan  rangkaian  skenario  yang 

mengidentifikasikan  urutan  pemakaian  aplikasi  yang  akan  dibangun.  Skenario  penggunaan  animasi  gerak  benda  3  dimensi menggunakan java 3D API adalah sebagai berikut:  1.  Pengguna mengemudikan objek mobil. 

2.  Pengguna  memilih  posisi  kamera  relatif  terhadap  objek mobil. 

(3)

Turn Left  Turn Right  Accelerate Brake  Steering  Pengguna  Load Objek Mobil  <<include>>  Ubah Posisi Kamera  <<include>> 

Gambar 3.1 Diagram use case untuk 

animasi gerak benda 3 dimensi menggunakan java 3D API.  3.2  Kartu Index CRC 

Pemodelan  CRC  memberikan  cara  sederhana  untuk  mengidentifikasi  dan  mengumpulkan  kelas­kelas  yang  relevan [9] yang  akan  digunakan  untuk  animasi  gerak  benda 3 dimensi menggunakan java 3D API. 

Dari  analisis  use  case,  dapat  diidentifikasi  kelas­  kelas  yang  relevan  dengan  persyaratan  sistem.  Sebagai  kelas utama dipilih  kelas RacingGame.  Tabel 3.1 Kartu index CRC kelas RacingGame  Kelas: RacingGame  Tanggung Jawab:  Atribut:  DEFAULT_FPS  Operasi: ·  RacingGame  Kolaborator: ·  ­  Tabel 3.2 Kartu index CRC kelas GamePanel  Kelas: GamePanel  Tanggung Jawab:  Atribut: ·  BOUNDSIZE ·  NO_DELAYS_PER_YIELD ·  MAX_FRAME_SKIPS ·  Running ·  isPaused ·  period ·  gameOver  Operasi: ·  processKey ·  createSceneGraph ·  addCircuit ·  addSprite ·  lightScene ·  initUserPosition ·  addCamera ·  addNotify ·  startGame ·  resumeGame ·  pauseGame ·  stopGame ·  run ·  gameUpdate  Kolaborator: ·  ­  Tabel 3.3 Kartu index CRC kelas LoadObject  Kelas: LoadObject  Tanggung Jawab:  Atribut:  filename  Operasi: ·  loadFile ·  getExtension ·  getTG ·  getSceneGroup ·  getRadius ·  scale  Kolaborator: ·  ­  Tabel 3.4 Kartu index CRC Circuit  Kelas: Circuit  Tanggung Jawab:  Atribut:  Operasi: ·  nearObstacle ·  getTG()  Kolaborator: ·  AppManager 

Tabel 3.5 Kartu index CRC kelas CarSprite 

Kelas: RacingGame  Tanggung Jawab:  Atribut: ·  MAX_SPEED ·  MIN_SPEED ·  Delta ·  pos ·  speed  Operasi: ·  getTG ·  gettime ·  moveBy ·  doMove ·  tryMove ·  rotate ·  doRotateY ·  accelerate ·  getspeed ·  breaking ·  update  Kolaborator: ·  KeyBehavior ·  AppManager  Tabel 3.6 Kartu index CRC kelas KeyBehavior  Tabel 3.7 Kartu index CRC kelas AppManager  Kelas: AppManager  Tanggung Jawab:  Atribut: ·  ap  Operasi: ·  createTexture ·  createFixTexture ·  texApp ·  stampTexCoords ·  makeAlmostTransparent ·  setMaterial  Kolaborator: ·  Kelas:  KeyBehavior  Tanggung Jawab:  Atribut: ·  keyPress ·  ROTATE ·  car  Operasi: ·  initialize ·  processStimulus ·  keyPressed  Kolaborator: ·  CarSprite

(4)

3.3  Diagram Kelas 

Dari  kartu  index  CRC  pada  subbab  3.2,  penyusun  membuat diagram kelas­nya seperti pada gambar 3.2.  RacingGame  DEFAULT_FPS : int  windowActivated()  windowDeactivated()  windowDeiconified()  windowClosing()  windowClosed()  windowOpened()  BGCanvas  backIm : BufferedImage  render2D : J3DGraphics2D  loadImage()  preRender()  postRender()  clearSurface()  loc()  LoadObject  filename : String  opname()  loadFile()  getExtension()  setBSPosn()  getTG()  getSceneGroup()  getRadius()  scale()  getBoundingSphere()  Circuit  cRadius  nearObstacle()  getTG()  GamePanel  BOUNDSIZE : int  running : boolean  isPaused : boolean  period : Long  gameOver : boolean  car : String  processKey()  createSceneGraph()  addCircuit()  addSprite()  initUserPosition()  addCamera()  startGame()  resumeGame()  pauseGame()  stopGame()  run()  gameUpdate()  AppManager  ap : Appearance  createTexture()  createFixTexture()  texApp()  stampTexCoords()  stampFixTexCoords()  makeAlmostTransparent()  setMaterial()  CarSprite  radius : double  MAX_SPEED : double  MIN_SPEED : double  delta : double  pos : double  breakingM ultiplier : double  lasttime : long  getTG()  opname2()  gettime()  moveBy()  doMove()  doMove()  tryMove()  brake()  getspeed()  rotate()  update()  rotate()  KeyBehavior  initialize()  processStimulus()  postProcessKeyEvent()  keyReleased()  keyPressed()  Gambar 3.2 Diagram kelas animasi gerak benda 3 dimensi menggunakan  java3D API.  3.4  Model Hubungan Objek (Object Relationship) 

Model  hubungan  objek  dapat  digambarkan  dengan  menggunakan diagram runtun (sequence diagram). Dengan  diagram  runtun,  interaksi  antar  objek  dapar  diperlihatkan  dengan  baik.  Pada  gambar  3.3  pengguna  melakukan  transformasi  pada  objek.  Transformasi  tersebut  meliputi  translasi dan rotasi pada sumbu XZ. 

: Pengguna  Transformasi  Layar 

Transformasi terhadap objek  Tampilkan objek  pada layar  Update layar  Gambar 3.3 Diagram runtun animasi gerak benda 3 dimensi  menggunakan java3D API  3.5  Model Tingkah Laku Objek (Object Behaviour) 

Gambar  3.4  merupakan  diagram  statechart  yang  menggambarkan perilaku  objek. Model tingkah laku objek  menunjukkan  bagaimana  system  akan  merespon  kejadian  atau stimulus eksternal.  Objek terc ipta  Mulai  Menunggu transformasi  selanjutnya  Load Object  Mentransformasi objek  Selesai 

4.0.  Implementasi  dan  Pengujian  Animasi  Gerak  Benda 3 Dimensi Menggunakan Java 3D API  4.1  Implementasi 

4.1.1.  Implementasi Tampilan Aplikasi 

Gambar  4.1(a)  menunjukan  tampilan  utama  animasi gerak benda 3 dimensi menggunakan java 3D API.  Gambar  4.1(b)  juga  merupakan  tampilan  utama  apilikasi,  namun untuk gambar 4.1(b) sudut pandang (posisi user atau  kamera) terletak di atas. 

(a)  (b) 

Gambar 4.1 Tampilan utama animasi gerak benda 3 dimensi menggunakan  java 3D API: (a) sudut pandang normal; (b) sudut pandang dari atas 

Gambar  4.2  merupakan  menu  untuk  keluar  dari  animasi.  Menu  ini  akan  muncul  ketika  proses  animasi  sedang  berlangsung, kemudian user menginput tombol escape pada 

keyboard. 

Gambar 4.2  Menu untuk keluar dari animasi.  4.1.2.  Implementasi Objek Geometri  a.  Mobil 

Untuk  menciptakan  objek  mobil,  dilakukan  dengan  cara  meload  model  objek  mobil  yang  berekstensi  3ds  ke  dalam canvas3D. Proses load objek ini dilakukan oleh kelas  LoadObject 

b.  Circuit 

Untuk menciptakan objek circuit, caranya sama dengan  penciptaan  objek  mobil.  Hanya  saja  pada  objek  circuit,  perlu  dilakukan  penskalaan  sebesar  15  kali  karena  model  circuit  terlalu  kecil.  Penskalaan  ini  perlu  dilakukan  agar  besar objek circuit sesuai dengan besar mobil. 

4.2.  Pengujian Transformasi 

4.2.1.  Pengujian Transformasi Translasi 

Saat  tombol  panah  atas  (up)  ditekan,  objek  mobil  mengalami  perpindahan  dari  titik  asal  menuju  titik  di  depanya searah laju objek mobil dan kelajuan objek mobil  juga  bertambah.  Sedangkan  saat  tombol  panah  arah  ke  bawah  (down)  ditekan,  kelajuan  objek  mobil  akan  berkurang,  kemudian  dalam  selang  waktu  tertentu,  objek  mobil berhenti, setelah itu,  objek mobil bergerak mundur.

(5)

(a)  (b)  Gambar 4.3 Posisi mobil: (a) sebelum translasi (pada posisi(0,­3.7,30));  (b) sesudah translasi (pada posisi (­129.08,­3.7,186.86))  Tabel 4.1  Menunjukan translasi yang terjadi pada objek mobil saat  penekanan tombol pada keyboard.  Tombol yang ditekan  Gerakan yang terjadi pada objek mobil  UP  Terjadi perpindahan ke arah depan mobil,  kelajuan mobil bertambah  DOWN  Selang waktu tertentu objek mobil berhenti,  setelah berhenti, terjadi perpindahan ke arah  belakang mobil  4.2.2  Pengujian Transformasi Skala 

Pengujian  penskalaan  dilakukan  dengan  cara  membandingkan  objek  antara  sebelum  dan  sesudah  dilakukan  penskalaan.  Objek  yang  diimplementasikan  penskalaan  adalah  objek  circuit,  yaitu  dengan  penskalaan  sebesar 15 kali.

(a)  (b) 

Gambar 4.4 Objek circuit: (a) sebelum diperbesar  (b) sesudah diperbesar (15 kali)  4.2.3  Pengujian Transformasi Rotasi 

Pengujian  transformasi  rotasi  dilakukan  dengan  cara  menjalankan  aplikasi  dan  melakukan  penekanan  tombol  pada  keyboard.  Hasil  dari  rotasi  ini  seperti  ditunjukan pada gambar 4.8.  (a)  (b)  Gambar 4.5 Objek mobil: (a) sebelum rotasi;  (b) sesudah rotasi  Tabel 4.2 Rotasi yang terjadi pada objek mobil saat penekanan tombol  pada keyboard.  Tombol yang  ditekan  Gerakan yang terjadi pada objek mobil  LEFT  Terjadi rotasi dengan arah rotasi berlawanan  dengan arah jarum jam sebesar 1 derajat.  RIGHT  Terjadi rotasi dengan arah rotasi searah  dengan arah jarum jam sebesar 1 derajat.  4.3. Pengujian Pencahayaan 

Pengujian  pencahayaan  dilakukan  dengan  membandingkan  visual  objek  sebelum  diberi  cahaya  dengan  visual  objek  setelah  diberi  cahaya.  Gambar  4.9  menunjukan tampilan yang dihasilkan aplikasi sebelum dan  sesudah diberi cahaya.  (a)  (b)  (c)  Gambar 4.6 Objek mobil: (a) sebelum diberi cahaya;  (b) sesudah diberi cahaya;  (c) sesudah diberi cahaya dengan nilai parameter yang berbeda  Tabel 4.3 Parameter­parameter yang dipakai dalam pencahayaan pada  gambar 4.6 (b)  Warna  Arah  Jenis sumber cahaya 

merah  hijau  biru 

AmbientLight  0.5f  0.5f  0.5 

DirectionalLight1  0.5f  0.56f  0.5f  ­1.0f  ­1.0f  ­1.0f 

DirectionalLight2  0.5f  0.56f  0.5f  1.0f  1.0f  1.0f 

Tabel  4.4  menunjukan  parameter­parameter  yang  dipakai  dalam  implementasi pencahayaan gambar  pada 4.9 (c) 

Warna  Arah 

Jenis sumber cahaya 

merah  hijau  biru 

AmbientLight  0.75f  0.75f  0.7f 

DirectionalLight1  0.7  0.7  0.5f  ­1.0f  ­1.0f  ­1.0f 

DirectionalLight2  0.7  0.7  0.5f  1.0f  1.0f  1.0f 

4.4.  Pengujian Pewarnaan 

Pengujian  pewarnaan  dilakukan  dengan  membandingkan visual objek sebelum diberi warna dengan  sesudah  diberi  warna.  Gambar  4.10    menunjukan  tampilan  yang dihasilkan aplikasi sebelum dan sesudah diberi warna. 

(6)

(c) 

Gambar 4.7 Objek mobil: (a) sebelum diberi warna;  (b) sesudah diberi warna merah; (c) sesudah diberi warna biru.  4.5.  Pengujian Texturing 

Pengujian  texturing  dilakukan  dengan  membandingkan  visual  objek  sebelum  diberi  texture  dengan  visual  objek  setelah  diberi  texture.  Gambar  4.11  menunjukan tampilan yang dihasilkan aplikasi sebelum dan  sesudah diberi texture.  Gambar 4.11 Objek mobil: (a) sebelum diberi texture;  (b) sesudah diberi texture  5.  Kesimpulan dan Saran  Kesimpulan 

1.  Java3D  API  telah  menyediakan  fungsi­fungsi  standar  untuk  mengembangkan      aplikasi  grafika  3  dimensi,  fungsi­fungsi tersebut meliputi fungsi untuk keperluan  pembuatan  objek  3  dimensi,  transformasi,  pencahayaan, pewarnaan dan texture mapping.  2.  Fungsi­fungsi  transformasi  pada  java  3D  API  yang 

digunakan dalam aplikasi ini meliputi translasi, rotasi  dan    dilatasi,  dapat  bekerja  sesuai  dengan  yang  diharapkan. 

3.  Dalam  java  3D  API,  terdapat  fungsi­fungsi  untuk  keperluan  pencahayaan  yang  dapat  digunakan  untuk  memodelkan objek seperti dalam dunia nyata. 

4.  Java  3D  API  sudah  menyediakan  fungsi  untuk  melakukan  pewarnaan  pada  objek  3  dimensi.  Pewarnaan pada objek 3 dimensi ini tidak akan terlihat  hasilnya  apabila  tidak  diimplementasikan  pencahayaan pada objek tersebut. 

5.  Fungsi­fungsi  untuk  keperluan  texture  mapping  yang  disediakan java 3D API sudah cukup memadai. Objek  yang  mengimentasikan  texturing  akan  tetap  terlihat  hasilnya meskipun belum diberi objek cahaya. 

Saran 

1.  Seiring  dengan  perkembangan  hardware  yang  mendukung  grafika  komputer,  aplikasi  dapat  dikembangkan  lebih  lanjut  dengan  meningkatkan  kualitas grafis 3D yang dihasilkan. 

2.  Aplikasi  dapat  dikembangkan  lebih  lanjut  dengan  menerapkan  kecerdasan  buatan  seperti  terrain 

following, path following dan collission detection serta 

memodelkan  bentuk  fisik  tiap  objek  sehingga  dapat 

6.  Referensi 

[1]  Adjie, Bayu, Modeling dan Animasi dengan 3D  Studio  Max  7.x,  Elex  Media  Komputindo,  Jakarta, 2005. 

[2]  Boughen,  Nicholas,  3ds  Max  Lighting,  Wordware Publishing, 2005. 

[3]  Bouvier, Dennis J, Getting Started with the Java  3D API, Sun microsystems, 1999. 

[4]  Chandra,  Handi,  3ds  max  6  Untuk  Orang  Awam, Maxicom, Palembang, 2004.  [5]  Clingman,  Dustin,  Kendall  Shawn,  Mesdaghi, 

Syrus,  Practical  Java  Game  Programming,  Charles River Media, 2004. 

[6]  Davison, Andrew, Killer Game Programming in  Java, O’Reilly, 2005 

[7]  Deitel, H, Java How To Program, Prentice­Hall,  1999. 

[8]  Hong  Zhang,  Y.  Daniel  Liang,  Computer  Graphics Using Java™ 2D and 3D, Prentice  Hall Publishing, 2006. 

[9]  Pressman,  R.S.,  Rekayasa  Perangkat  Lunak 

Pendekatan  Praktisi,  Buku  Satu  dan  Dua, 

McGraw­Hil Book Co., Penerbit ANDI, 2003.  [10]  Selman,  Daniel,  Java  3D  Programming, 

Manning Publishing, 2003.  [11] ­­­, http://www.gamelan.com/, 2007. 

BIOGRAFI PENULIS 

Mufti  Ali,  mahasiswa  Jurusan  Teknik  Elektro  Universitas  Diponegoro,  mengambil konsentrasi teknik informatika  dan komputer.  Menyetujui dan mengesahkan,  Dosen Pembimbing I  Agung B. P., S.T., M.I.T.  NIP. 132 137 932  Tanggal………...  Dosen Pembimbing II  Aghus Sofwan, S.T., M.T.  NIP. 132 163 757 

Gambar

Gambar 2.1 Simbol untuk menggambarkan objek dalam scene graph 
Gambar 2.2 Contoh bentuk scene graph 
Tabel 3.5 Kartu index CRC kelas CarSprite  Kelas: RacingGame  Tanggung Jawab:  Atribut:  ·  MAX_SPEED  ·  MIN_SPEED  ·  Delta  ·  pos  ·  speed  Operasi:  ·  getTG  ·  gettime  ·  moveBy  ·  doMove  ·  tryMove  ·  rotate  ·  doRotateY  ·  accelerate  ·  ge
Gambar  4.1(a)  menunjukan  tampilan  utama  animasi gerak benda 3 dimensi menggunakan java 3D API. 
+3

Referensi

Dokumen terkait

Jika Propotional Shift bernilai positif (+) maka menunjukkan bahwa perkembangan aktivitas ekonomi daerah yang bersangkutan lebih cepat dari pada perkembangan

[r]

Yang menjadi faktor penghambat antara lain, (1) rendahnya pemahaman perangkat desa terkait legal drafting dan peraturan perundang-undangan, (2) belum adanya ketentuan

Hasil uji secara simultan dengan F hitung sebesar 18,056, oleh karena itu F hitung &gt; F tabel (18,056 &gt; 2,45), maka Ho ditolak dan Ha diterima yang berarti terdapat

Hal ini di dukung juga oleh riset yang menyatakan bahwa kesuksesan suatu program pelatihan tergantung kepada penggunaan pendekatan sistematik instruksi penyampaian

Pesatnya perkembangan dunia Teknologi Informasi pada saat ini memberikan dampak positif dan dampak negatif bagi kehidupan manusia, khususnya di bidang

Keselamatan akal juga diutamakan dalam tamadun Islam kerana dengan akal manusia boleh.. menguruskan alam ini. Oleh itu Islam mengharamkan sesuatu perkara yang boleh

FIRMANSAH KEPUH 1971-12-10 Matematika MTSS MATHLAUL ANWAR KEPUH Kab.. Al Khairiyah Bunihara