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 AfiriantoProgram 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