DAFTAR PUSTAKA
Brown, Tim H., et.al. The Art of Maya: An Introduction to 3D Computer Graphics.Maya Press and Sybex, Toronto,2002. Dharwiyanti, Sri. Pengantar Unified Modeling Language, Ilmu Komputer.com, Jakarta, 2003. Dale, Ryan. 2006. Introduction to Character Animation. Blender Summer of Documentation. David Ward (2010). Getting a character into Blender Game Engine. Retrieved January 6, 2012. Flavell,Lance. Beginning Blender: Open Source 3D Modeling, Animation, and Game Design, 2010.
Fowler, Martin. 2005. UML Distilled (Panduan Singkat Bahasa Pemodelan Objek Standart). Yogyakarta. Andi
www.blender.org www.pyhton.org www.blendtuts.com
http://digilib.mercubuana.ac.id/
#Tugas Akhir Sistem Animasi Kereta Api #W, S, A, D, untuk menggerakkan kamera # M, untuk menampilkan petunjuk penggunaan #Inisialiasi untuk game engine dan proses akhir game engine from bge import logic as G from bge import render as R from bge import events
#Jika mouse di gerakkan dapat mengukur seberapa cepat mouse tersebut dan mengerakkan mouse tersebut speed = 0.02 # walk speed sensitivity = 0.2 # mouse sensitivity owner = G.getCurrentController().owner # center mouse on first frame, create temp variables # Mouse dapat di letakkan pada ke posisi tengah if "oldX" not in owner: G.mouse.position = (0.5,0.5)# titik koordinat sumbu x dan y owner["oldX"] = 0.0 owner["oldY"] = 0.0 else: x= 0.5 - G.mouse.position[0] y = 0.5 - G.mouse.position[1] x *= sensitivity#kepekaan pada mouse y *= sensitivity # Smooth movement owner['oldX'] = (owner['oldX']*0.9 + x*0.1) sumbu x owner['oldY'] = (owner['oldY']*0.9 + y*0.1) sumbu y x = owner['oldX']# inisialilasi y = owner['oldY']
# smooth movement pada # smooth movement pada
# set the values owner.applyRotation([0, 0, x], False)
#perputaran pada rotasi sumbu
owner.applyRotation([y, 0, 0], True)
#perputaran pada rotasi sumbu
x y # Center mouse in game window G.mouse.position = (0.5,0.5) # keyboard control
http://digilib.mercubuana.ac.id/
keyboard = G.keyboard.events # Jika keyboard di tekan maka perintah keyboard tersebut mengikuti perintah yang lainnya pada tombol tersebut if keyboard[events.WKEY]: owner.applyMovement([0,0,-speed], True) #menggerakan kamera ke depan if keyboard[events.SKEY]: owner.applyMovement([0,0, speed], True) #menggerakan kamera ke belakang if keyboard[events.AKEY]: owner.applyMovement([-speed,0,0], True) #menggerakan kamera ke kiri if keyboard[events.DKEY]: owner.applyMovement([speed,0,0], True) #menggerakan kamera ke kanan if keyboard[events.EKEY]: owner.applyMovement([0,speed,0], True) #menggerakkan kamera ke atas if keyboard[events.QKEY]: owner.applyMovement([0,-speed,0], True) #menggerakkan kamera ke bawah
Implementasi Game Game adalah, kode program untuk Blender game engine untuk menggerakkan Roda menggunakan input keyboard.
#Tugas Akhir Sistem Animasi Kereta Api
#Inisialiasi untuk game engine dan proses akhir game engine import mathutils #penamaan variabel class Van: Velocity = 0.0 MaxVelocity = 0.8 Spinning = 0.0 MaxSpinning = 0.2 def Update(self, a): vel = a.actuators[0].dLoc #mengatur kecepatan putaran roda if vel[0] > 0.05:
http://digilib.mercubuana.ac.id/
a.actuators[0].dLoc = mathutils.Vector([vel[0] - 0.05,vel[1],vel[2]]) elif vel[0] < -0.05: a.actuators[0].dLoc = mathutils.Vector([vel[0] + 0.05,vel[1],vel[2]]) else: a.actuators[0].dLoc = [0,0,0] self.Velocity = a.actuators[0].dLoc[0] def Accelerate(self, a): vel = a.actuators[0].dLoc if vel[0] > (self.MaxVelocity / -2): a.actuators[0].dLoc = mathutils.Vector([vel[0] - 0.0100,vel[1],vel[2]])
#pemanggilan variabel def UpdateWheel(self, a): spin = a.actuators[0].dRot if spin[1] > 0.00125: a.actuators[0].dRot = mathutils.Vector([spin[0],spin[1] - 0.00125,spin[2]]) elif spin[1] < -0.00125: a.actuators[0].dRot = mathutils.Vector([spin[0],spin[1] + 0.00125,spin[2]]) else: a.actuators[0].dRot = [0,0,0] print (spin[1]) self.Spinning = a.actuators[0].dRot[0] def WheelFwd(self, a): spin = a.actuators[0].dRot if spin[1] > (self.MaxSpinning / -2): a.actuators[0].dRot = [spin[0],spin[1] - 0.05,spin[2]]
#pemanggilan variable untuk module di game engine Body = Van() def Update(a): Body.Update(a) def Accelerate(a): Body.Accelerate(a) def Accelerate(a): Body.Accelerate(a) def UpdateWheel(a): Body.UpdateWheel(a)
http://digilib.mercubuana.ac.id/
def WheelFwd(a): Body.WheelFwd(a)
Implementasi Cursor Cursor adalah, kode program untuk Blender game engine untuk menampilkan atau menyembunyikan mouse. import Rasterizer #mouse aktif Rasterizer.showMouse(1) import Rasterizer #mouse hide Rasterizer.showMouse(0)
http://digilib.mercubuana.ac.id/