Implementasi Real-Time Dynamics Lighting dan Soft Shadow pada Lingkungan Game 2-Dimensi (Studi Kasus Game Wipe-It-Off)

  

Vol. 2, No. 12, Desember 2018, hlm. 6370-6377 http://j-ptiik.ub.ac.id

Implementasi Real-Time Dynamics Lighting dan Soft Shadow pada

Lingkungan Game 2-Dimensi (Studi Kasus Game Wipe-It-Off)

1 2 3 Muhammad Dikri Robinsyah , Eriq Muhammad Adams Jonemaro , Tri Afirianto

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya

  1

  2

  3 Email: krenzferalfha@gmail.com, eriq.adams@ub.ac.id, tri.afirianto@ub.ac.id

Abstrak

  Pertumbuhan industri game berawal dari berkembangnya game 2-dimensi. Namun pada perkembangannya game 2-dimensi mulai kalah dengan game 3-dimensi. Sedangkan game 2-dimensi memiliki kelebihan yaitu biaya pembuatan yang lebih murah dan proses pengerjaan yang lebih singkat dari pada game 3-dimensi. Dengan menambahkan metode real-time dynamics lighting dan soft shadow diharapkan dapat meningkatkan nilai dari game 2-dimensi itu sendiri. Oleh karena itu pada proyek skripsi ini diimplementasikan metode tersebut pada lingkungan game 2-dimensi dengan studi kasus

  . Metode real-time dynamics lighting dan soft shadow diimplementasikan dengan

  Game Wipe-It-Off

  menggunakan Graphic API OpenGL, Bahasa C++, dan GLSL. Dari performance testing didapatkan informasi mengenai frame rate, frame time, penggunaan CPU, dan penggunaan memori pada game yang menggunakan metode dan tidak menggunakan metode memiliki perbedaan yang tidak terlalu signifikan. Sehingga tidak banyak mempengaruhi performa dari game tersebut. Oleh karena itu penggunaan metode tersebut sangatlah disarankan untuk menambah nilai dari game tanpa harus mengorbankan performa

  . Selain itu implementasi metode tersebut tidak terdapat indikasi terjadinya kebocoran memori,

  game

  dimana penggunaan memori memiliki nilai yang stabil dengan selisih antara penggunaan memori terbesar dan terkecil adalah 790528 bytes.

  Kata kunci : real-time dynamics lighting, soft shadow, game 2-dimensi, performance testing

Abstract

  

The growth of the gaming industry started from the development of 2-dimensional games. But in its

development, 2-dimensional game began to lose with 3-dimensional game. While 2-dimensional games

have the advantages i.e. the development cost is cheaper and the development time is shorter than the

3-dimensional game. Adding real-time dynamics lighting and soft shadow methods is expected to

increase the value of the two-dimensional game itself. Therefore in this project is implemented by the

method in 2-dimensional game environment with case study of Game Wipe-It-Off. Real-time dynamics

lighting and soft shadow methods are implemented using OpenGL Graphic API, C ++ Language, and

GLSL. From performance testing obtained information about frame rate, frame time, CPU usage, and

memory usage in game using method and not using method has not significant difference. So it does not

affect much the performance of the game. Therefore the use of such methods is highly recommended to

add value of the game without having to sacrifice game performance. In addition, the implementation

of the method there is no indication of a memory leak, where the use of memory has a stable value with

the difference between the largest and the smallest memory usage is 790528 bytes.

  : real-time dynamics lighting, soft shadow, 2-dimensional game, performance testing Keywords

  hingga mencapai $ 121,7 Milliar dan pada tahun 1. 2021 meningkat hingga $180,1 Milliar. Hal

   PENDAHULUAN

  inipun diikuti dengan beragamnya jenis game Industri game menjadi salah satu bidang dalam skala global. Namun tidak bisa dipungkiri yang memiliki pertumbuhan sangat pesat. bahwa awal mula game adalah berkembangnya

  Menurut survey dari NewZoo pada tahun 2018 2-dimensi. Game 2-dimensi memiliki

  game

  terdapat peningkatan signifikan grafik industri peran penting dalam perkembangan game secara global. Yaitu pada tahun 2018

  game Fakultas Ilmu Komputer Universitas Brawijaya

  

6370 meskipun sekarang banyak persaingan dengan game 3-dimensi (Bandeira & Walter, 2009). Memang pada zaman sekarang game 3-dimensi memiliki pangsa pasar yang lebih besar. Meski begitu game 2-dimensi memiliki kelebihan dimana game 2-dimensi memiliki waktu pengerjaan yang relatif lebih singkat dan biaya produksi yang lebih murah jika dibandingkan dengan

  game

  Dengan dibangun di atas game engine tersebut maka metode tersebut dapat lebih fleksibel.

  Dari Gambar 2 terlihat jika semakin jauh jarak piksel terhadap cahaya maka intensitas yang dihasilkan akan semakin berkurang dan akhirnya akan menghasilkan efek pencahayaan yang sesuai dengan Gambar 1. Hubungan kedua variabel tersebut diwujudkan oleh persamaan yang menentukan atenuasi dengan memanfaatkan variabel jarak dan kekuatan cahaya yaitu yang ditunjukkan pada Persamaan 1.

  Gambar 2. Grafik Intensitas terhadap Jarak

  Gambar 1. Pointlight Perubahan intensitas tiap piksel yang digambarkan akan mengikuti nilai dari jarak dari piksel tersebut dengan kombinasi dari kekuatan cahaya itu sendiri. Kombinasi dari perhitungan antara jarak piksel dan kekuatan cahaya akan menghasilkan sebuah atenuasi cahaya dimana hal ini menandakan tingkat hilangnya intensitas cahaya terhadap jarak seperti yang terlihat pada Gambar 2 mengenai grafik hubungan antara intensitas dan jarak.

  merupakan cahaya yang memiliki sumber dengan arah cahaya yang menyebar ke segala arah (Unity, 2017). Cahaya dengan jenis ini menerapkan konsep pencahayaan yang terjadi pada lampu bulb yang terdapat di dunia nyata. Untuk membentuk sistem pencahayaan ini dibutuhkan beberapa variabel yaitu letak pusat cahaya, intensitas cahaya, dan jangkauan cahaya. Letak pusat cahaya dan jangkauan cahaya merupakan variabel yang ditentukan sendiri yang akan mempengaruhi tingkat intensitas dari suatu cahaya. Bentuk cahaya yang akan dihasilkan ditunjukkan oleh ilustrasi pada Gambar 1.

  pointlight

  merupakan salah satu metode yang digunakan untuk menerapkan konsep pencahayaan pada sebuah game secara langsung dengan kesan dinamis. Cahaya yang digunakan dalam penelitian ini adalah cahaya pointlight, dimana cahaya

  Real-time dynamics lighting

  game engine scratch yang dibangung menggunakan OpenGL, C++ dan GLSL.

  3-dimensi. Dan dengan penambahan efek grafis pada game 2-dimensi, nilai dari game ini dapat meningkat dengan drastis. Selain itu dapat mempengaruhi pengalaman serta emosi pemain (Knez & Niedenthal, 2008). Salah satu efek grafis yang dapat diimplementasikan dalam game adalah efek pencahayaan dan bayangan.

  metode yang dapat diimplementasikan dalam cara. Salah satunya adalah dengan menggunakan

  lighting dan soft shadow sejatinya merupakan

  . Selain itu dibuat sebuah shader untuk memudahkan manipulasi data yang akan digunakan di dalam pengolahan grafis. Penelitian sebelumnya seperti pada Penelitian David K. Dunnings tahun 2016 yang telah mencoba metode ini pada game engine komersial yaitu Unity. Real-time dynamics

  Graphic Processing Unit

  akan bersifat dinamis dan real-time, serta bayangan yang dihasilkan adalah bayangan yang memiliki 2 bagian yaitu umbra dan penumbra. Dimana bayangan tersebut merupakan representasi nyata dari bayangan yang ada di dunia. Untuk mewujudkan penerapan metode tersebut maka dapat diterapkan dengan memanfaatkan Central Processing Unit dan

  shadow . Pada metode tersebut pencahayaan

  Pembentukan efek cahaya dan bayangan dapat dilakukan dengan suatu metode yang bernama real-time dynamics lighting dan soft

2. REAL-TIME DYNAMICS LIGHTING

  =

  1.0

  (1)

  • ( ∗ )+( ∗ ∗ )

  Keterangan : = atenuasi pada piksel = Jarak piksel dengan sumber cahaya = Faktor konstan = Faktor linier = Faktor quadratik

  Nilai atenuasi akan menentukan tingkat intensitas cahaya pada jarak tertentu yang dilambangkan oleh att pada Persamaan 1. Pada persamaan 1 Kc, Kt, Kq merupakan faktor penentu intensitas yang melibatkan kekuatan cahaya.

  disebut sebagai shadow mapping (Wiens dan Domik, 2015). Penggunaan shadow mapping memungkinkan implementasi dilakukan berdasarkan langkah-langkah penggambaran sebagai berikut yaitu umbra mapping dan penumbra mapping yang masing-masing langkah akan membentuk bagian umbra dan bagian penumbra. Dalam langkah tersebut dibutuhkan variabel yang membantu terjadinya

  game metode penggambaran suatu bayangan

3. SOFT SHADOW

  shadow adalah metode penggambaran bayangan

  yang memiliki 2 bagian penting dalam bayangan yaitu bagian umbra dan bagian penumbra. Kedua bagian tersebut merupakan bagian penting pembentuk dari soft shadow seperti yang ditunjukkan oleh Gambar 3 yaitu bentuk soft shadow .

  , bayangan digunakan untuk memberikan kesan nyata dimana berpadu dengan lingkungan sekitarnya sesuai dengan hukum di dunia nyata (Evans, Agenjo, & Blat, 2014). Salah satu bentuk merepresentasikan bayangan di dalam video game adalah dengan menggunakan metode soft shadow. Metode soft

  Pada Gambar 3 ditunjukkan jika umbra dan penumbra mempunyai bentuk yang berbeda. Umbra memiliki bentuk yang dominan lebih besar jika dibandingkan dengan penumbra. Umbra memiliki bagian warna yang solid sedangkan penumbra memiliki perubahan atau gradasi warna pada bagian sisi luarnya. Dan yang menjadikan sebuah soft shadow mendekati bentuk nyata dari suatu bayangan adalah karena terdapat 2 bagian tersebut di dalamnya. Dalam penggambarannya bayangan akan membentuk sebuah proyeksi dari benda tersebut terhadap arah datangnya suatu cahaya. Di dalam video

  video game

  Salah satu efek yang terjadi ketika sebuah benda dikenai oleh cahaya adalah terbentuknya sebuah bayangan yang akan memproyeksikan bentuk benda tersebut terhadap cahaya. Dalam

  mapping

  yaitu posisi dari sumber cahaya dan batasan-batasan objek yang disinari. Umbra mapping merupakan langkah dalam pembentukan bayangan soft shadow dimana dalam langkah ini hanya akan membentuk bagian umbra. Dimana akan memproyeksikan benda terhadap cahaya seperti yang ditunjukkan pada yaitu skema dari umbra mapping. Bagian abu-abu pada merupakan cikal bentuk dari umbra yang dibentuk berdasarkan proyeksi cahaya terhadap bentuk objek yang diteruskan.

  Gambar 4. Skema Umbra Mapping

  Langkah berikutnya adalah Penumbra

  mapping dimana bagian penumbra akan mulai

  dibentuk. Seperti terihat pada Gambar 3 penumbra pada benda berjumlah 2 yaitu pada awal bayangan dan akhir bayangan, sehingga pada pembentukannya nanti akan dicari awal dan akhir sebuah bayangan lalu digambarkan bagian dari penumbra tersebut lengkap dengan gradasi warna yang terdapat pada penumbra. Pada ditunjukkan skema dari Penumbra Mapping untuk mempermudah pemahaman mengenai penggambaran dari penumbra.

  Gambar 3. Soft Shadow Gambar 5. Skema Penumbra Mapping

  terlihat jika mapping yang dilakukan untuk membentuk penumbra memanfaatkan ukuran dari sumber cahaya yang diihitung berdasarkan jari-jarinya. Hal ini dimungkinkan dengan adanya luasan cahaya yang berbeda menghasilkan bias yang akan membuat sebuah gradasi bayangan menuju transparan pada bayangan di dunia nyata. Untuk mewujudkan hal tersebut dalam bentuk dunia

  Pada langkah selanjutnya masuk pada metode soft shadow, dimana setiap objek yang dikenai cahaya akan diambil data titik-titik boundary.

  

  penggunaan shader pada metode ini. Algoritme dari real-time dynamics lighting sendiri akan dibentuk dalam diagram alir yang ditunjukkan pada

  shader dan fragment shader untuk menunjang

  Maka dari itu pada proses perancangan ini akan ditentukan penggunaan 2 file yang berupa vertex

  shader dengan bahasa pemrograman GLSL.

  merupakan modifikasi piksel pada scene yang telah ada akan diimplementasikan menggunakan

  Real-time dynamics lighting yang

  4.1. Perancangan Algoritme Real-time Dynamics

  5. PERANCANGAN

  Setelah didapatkan titik boundary maka akan dicari vektor normal dari setiap sisi yang dimiliki oleh objek untuk menentukan bagian yang akan menghasilkan bayangan dengan mengetahui arah vektor normal dengan arah vektor cahaya. Setelah diketahui sisi-sisi yang akan menghasilkan bayangan maka akan dihitung titik-titik proyeksi bayangan terhadap posisi cahaya, dan selanjutnya akan digambar sesuai dengan titik-titik yang diketahui.

  Gambar 6 Diagram Alir Metodologi

  video game

  terjadi pada langkah selanjutnya yaitu perhitungan setiap warna piksel terhadap perubahan posisi dari cahaya yang memiliki tingkat intensitas yang berbeda pada setiap jarak antara piksel dengan posisi cahaya.

  dynamics lighting

  dan soft shadow dapat dilakukan dengan beberapa langkah yang akan digambarkan dalam diagram alir metodologi pada Gambar 6. Pada awal diagram dijelaskan jika suatu cahaya akan diletakkan pada posisi tertentu dan diberikan nilai jangkauan, hal ini digunakan untuk memberikan informasi mengenai posisi dan jangkauan cahaya pada proses selanjutnya. Pembentukan real-time

  dynamics lighting

  Untuk mewujudkan efek grafis yang diinginkan dalam penelitian ini yaitu real-time

   METODOLOGI

  = sudut hasil proyeksi terhadap titik awal atau akhir = koordinat x sumber bayangan = koordinat y sumber bayangan 4.

  = koordinat x hasil proyeksi = koordinat y hasil proyeksi

  Keterangan : = titik proyeksi penumbra

  = { = ℎ ∗ ( ) + = ℎ ∗ ( ) + (2)

  maka dapat menggunakan persamaan seperti yang ditunjukkan pada persamaan 2 yaitu menghitung proyeksi lebar kelebihan pada luasan bayangan yang nantinya akan menghasilkan gradasi pada penumbra.

  Diagram alir pada Gambar 6 menunjukkan proses pengolahan vertex yang dilakukan pada pengolahan shader di game pada Pada Diagram alir tersebut dilakukan umumnya. penghitungan letak piksel terhadap posisi sumber cahaya untuk mengetahui tingkat intensitas cahaya yang diterima oleh piksel tersebut. Dengan menggunakan atenuasi maka penghitungan intensitas akan dilakukan dengan menginterpolasi hasil nilai warna sesungguhnya dengan nilai yang didapatkan. Maka nilai warna yang telah diinterpolasi akan menjadi nilai warna yang akan menjadi hasil dari real-time

  dynamics lighting .

  4.2. Perancangan Algoritme Soft Shadow

  Perancangan algoritme soft shadow akan dibagi menjadi 2 bagian yaitu perancangan untuk umbra dan perancangan untuk penumbra. dalam membentuk 2 bagian tersebut akan digunakan geometri poligon sehingga dibutuhkan titik-titik proyeksi yang dapat membentuk geometri tersebut. Pada implementasi nanti akan digunakan bahasa pemrograman C++ dan 2 sebuah kelas yang akan diberi nama Lighting. Mekanisme pembentukan

  Gambar 7. Diagram Alir untuk Shader Vertex

  bagian geometri menggunakan vertex, selain itu objek yang akan disinari nantinya juga terbentuk Nilai vertex shader yang telah diproses dari beberapa vertex yang dikumpulkan dalam nantinya akan dikirimkan pada fragment shader satu bentuk. Untuk mengetahui batas-batas yang yang bertugas untuk mengolah fragment warna digunakan untuk menentukan proyeksi dari pada piksel yang ditunjuk. Untuk memanipulasi bayangan. hingga terbentuk efek lighting yang diinginkan maka algoritme yang harus diterapkan ditunjukkan pa

  Gambar 9. Diagram Alir Pembentukan Umbra

  Algoritme umbra akan meliputi perhitungan proyeksi titik yang berdasarkan letak dari suatu cahaya. Dengan mengetahui letak cahaya dan yang membentuk objek maka dapat

  vertex

  digunakan untuk mencari jarak antara keduanya yang akan digunakan untuk mengetahui sudut

  Gambar 8. Diagram Alir untuk Fragment Shader

  yang diperlukan untuk menggambar proyeksi bayangan. Dan akhirnya titik hasil proyeksi nantinya akan disimpan pada data koleksi. Algoritme pembentukan umbra ditunjukkan pada

  Pembentukan bagian penumbra yang akan menjadi algoritme dan digambarkan pada meliputi penggambaran terhadap 2 bagian penumbra yaitu pada awal dan akhir dari bayangan. Pada diagram alir menunjukkan pembuatan titik proyeksi penumbra berdasarkan posisi awal bayangan dan akhir bayangan dengan sudut yang sesuai. Sudut tersebut dihitung melalui perpindahan yang terjadi akibat nilai radius dari sumber cahaya. Akibat perpindahan ini terdapat bias yang mengakibatkan terdapat sudut plus dan minus yang akan diterapkan pada awal dan akhir dari bayangan. Setelah didapatkan nilai dari titik proyeksi terhadap 2 bagian penumbra maka titik- titik tersebut akan disimpan pada koleksi data untuk digunakan dalam penggambaran.

  Gambar 10. Diagram Alir Pembentukan Penumbra 6.

   IMPLEMENTASI

  Implementasi yang dilakukan dengan menggunakan metode real-time dynamics

  lighting dan soft shadow menggunakan game engine scratch yang dikembangkan

  menggunakan OpenGL dengan bantuan SDL2 dan beberapa library lainnya sebagai penunjang dan bahasa pemrograman yang digunakan adalah C++.

  Dasar implementasi metode real-time

  dynamics lighting

  berdasarkan rancangan algoritme diagram alir yang telah ditunjukkan pada Dan untuk metode soft shadow berdasarkan rancangan algoritme diagram alir pada

  Hasil dari implementasi metode real-time dynamics lighting dan soft shadow ditunjukkan pada merupakan bentuk lingkungan 2-dimensi yang belum diimplementasikan metode tersebut.

  Gambar 11. Stage Tanpa Implementasi Metode Gambar 12. Stage Dengan Implementasi Metode 7.

PENGUJIAN DAN EVALUASI

  Pada fase pengujian akan dilakukan uji metode yang telah diterapkan pada lingkungan 2-dimensi dengan menggunakan metode pengujian soak testing yang merupakan sub- kategori dari performance testing dimana implementasi metode akan diberi beban berupa jumlah objek yang akan disinari akan ditambah sebanyak 5 objek setiap sesinya. Untuk mendapatkan informasi mengenai penggunaan CPU, penggunaan memori, FPS, dan frame time dilakukan pengujian selama 30 menit sejumlah 5 sesi. Untuk mengetahui perbandingan penggunaan metode dengan dengan tidak menggunakan metode maka pengujian akan dilakukan pada kedua sisi tersebut dengan jumlah yang disebutkan sebelumnya.

  Pada ditunjukkan hasil dari performance testing yang dilakukan sebanyak 5 sesi pada lingkungan game 2-dimensi yang tidak menggunakan metode real-time dynamics

  lighting dan soft shadow.

  24 2,6290

  (bytes)

  CPU (%) Penggu- naan Memori

  (ms/ frame) Penggu- naan

  ) Frame time

  Tabel 3. Perbandingan Antar Kasus Kasus FPS (frames/ second

  704 merupakan tabel yang berisi rata-rata dari keseluruhan data yang telah didapatkan melalui pengujian untuk mendapatkan gambaran secara umum antara kedua kasus yaitu yang menggunakan metode dan yang tidak menggunakan metode.

  2 20.168.

  1 33,901

  30,166

  520 5 29,8661

  1 19.947.

  72 1,9335

  2 33,414

  792 4 29,9394

  6 19.873.

  95 1,9626

  Non- Meto de

  02 32,877

  5 20.123.

  Implementasi metode Real-time Dynamics

  shadow

  Dari hasil pengujian yang telah dilakukan dapat diambil informasi mengenai penggunaan metode real-time dynamics lighting dan soft

  mapping .

  dapat diimplementasikan dengan menggunakan API Grafis OpenGL, bahasa pemrograman C++ dan bahasa Shader GLSL. Langkah pembentukan metode real-time dynamics lighting dapat dilakukan dengan cara menghitung jarak antara cahaya dan piksel, lalu menghitung faktor pembentuk atenuasi, menghitung nilai atenuasi, dan yang terakhir adalah menghitung nilai interpolasi warna terhadap hasil nilai atenuasi. Untuk pembentukan soft shadow dapat dilakukan dengan membentuk umbra dengan menggunakan umbra mapping terlebih dahulu dan penumbra dengan menggunakan penumbra

  Soft Shadow

  dan

  Lighting

  8. KESIMPULAN DAN SARAN

  24 2,24261

  menjadi pilihan untuk meningkatkan nilai dari suatu game. Hasil dari pengujian soak testing didapatkan hasil tidak terjadi masalah kebocoran memori yang ditunjukkan oleh penggunaan memori paling kecil yaitu 19378176 bytes dan yang terbesar adalah 20168704 bytes.

  time dynamics lighting dan soft shadow dapat

  Dari keseluruhan pengujian yang dilakukan, terlihat jika perbandingan performa antara penggunaan metode dan tidak menggunakan tidak banyak mempengaruhi performa, sehingga penggunaan metode real-

  20.024 .524,8

  56 2,14642

  47 33,545

  Meto de 30,053

  19.815 .628,8

  648 3 29,9111 33,586

  10 2,2011

  Tabel 1. Hasil Performance Testing pada Kasus Tidak Menggunakan Metode Sesi FPS (frames/ second ) Frame time (ms/ frame)

  76 2,1040

  83 2,0022

  248 4 29,9450 33,424

  8 20.021.

  54 2,0575

  1 33,460

  176 3 30,2639

  9 19.378.

  7 33,458

  096

  664 2 30,2628

  4 19.697.

  43 2,1540

  8 33,542

  1 29,8888

  Penggu- naan Memori (bytes)

  Penggu- naan CPU (%)

  5 19.972.

  5 30,4694

  8 33,389

  Tabel 2. Hasil Performance Testing pada Kasus Menggunakan Metode Sesi FPS (frames/ second ) Frame time (ms/ frame)

  960 2 30,6373

  4 20.008.

  8 2,0057

  4 32,409

  1 29,9133

  Penggu- naan Memori (bytes)

  Penggu- naan CPU (%)

  Perbandingan antara kedua tabel akan divisualisasikan menggunakan gambar grafik untuk mempermudah memahami isi dari tabel tersebut.

  4 30,499

  soft shadows .

  dan

  dynamics lighting

  yang telah diterapkan metode real-time

  performance testing pada lingkungan 2-dimensi

  960 Pada ditunjukkan hasil

  8 20.008.

  64 2,8950

  tidak banyak mempengaruhi performa dari game , sehingga keputusan untuk menggunakan metode tersebut di dalam game dapat dilakukan untuk menunjang dan menambah nilai dari segi grafis pada game tersebut. Selain itu hasil dari pengujian menggunakan soak testing pada implementasi metode menunjukkan tidak adanya kebocoran memori, sehingga hasil rancangan dapat digunakan dengan aman.

  Potensi yang dimiliki oleh metode real-time

  Sarojadevi, H., 2011. Performance Testing: Methodologies and Tools. Journal of Information Engineering and Applications, [online] Tersedia di: <http://www.iiste.org/Journals/index.php/ JIEA/article/view/1196> [Diakses 28 Mei 2018]

  digunakan untuk implementasi metode fog of

  war

  pada lingkungan game 2-dimensi yang juga dapat menambah nilai permainan tersendiri pada

  game

  tersebut. Selain itu metode yang telah diterapkan dalam penelitian ini seharusnya dapat ditingkatkan dalam hal jumlah titik cahaya yang dapat berjumlah banyak sehingga dapat menambah kesan yang lebih baik dalam game.

  Wijman, T., 2018. Mobile Revenues Account for More Than 50% of the Global Games Market as It Reaches $137.9 Billion in 2018. Global Games Market Report, [online] Tersedia di: <https://newzoo.com/insights/articles/gl obal-games-market-reaches-137-9- billion-in-2018-mobile-games-take- half/> [Diakses 3 Mei 2018].

  Unity, 2017. Types of Light. [online] Tersedia di: <https://docs.unity3d.com/Manual/Lightin g.html> [Diakses .21 Maret 2018]

  dynamics lighting dan soft shadow adalah dapat

9. DAFTAR PUSTAKA

  Evans, A., Agenjo, J., Blat, J., 2014. Variable Penumbra Soft Shadows for Mobile Devices. Lisbon:

  IEEE Conference Publications. Knez, I., Niedenthal, S., 2008. Lighting in

  Digital Game World: Effects on Affect and Play Performance. Gävle: CyberPsychology & Behavior.

  Redavid, C., Farid, A., 2011. An Overview of Game Testing Techniques, [online] Tersedia di: < https://www.semanticscholar.org/paper/A n-Overview-of-Game-Testing- Techniques-Redavid- Farid/4361a1882ca8ea296ff6411dbbaa90 ca5fbc3ed4?tab=abstract> [Diakses 28 Mei 2018]

  Two-dimensional Environments Using a Comercial Game Development Engine. Nigeria, Tersedia di <http://students.creativetechnologieslab.or g/index.php/portfolio-item/creating-real- time-dynamic-lights-and-soft-shadows/> [diakses 18 Agustus 2017].

  Choppock, M.J., 2015. An Often Overlooked Game Performance Metric —Frame Time. [online] Intel Software Developer Zone. Tersedia di: <https://software.intel.com/en- us/articles/an-often-overlooked-game- performance-metric-frame-time> [Diakses

  Bandera, D., Walter, M., 2009. Automatic Sprite Shading. Rio de Janeiro:Games and Digital Entertainment (SBGAMES).

  6 Juni 2018] Dunnings, D.K., 2016. Creating Real-time dynamics Light and Soft Shadows for