• Tidak ada hasil yang ditemukan

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS.

N/A
N/A
Protected

Academic year: 2017

Membagikan "LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS."

Copied!
7
0
0

Teks penuh

(1)

i

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

ABSTRAK

Dalam beberapa tahun terakhir terlihat pertumbuhan yang dramatis pada kemampuan komputasi, visualisasi, dan grafis dari perangkat mobile. Meski begitu, kebanyakan pilihan desain yang digunakan oleh para pengembang perangkat keras untuk mengimplementasikannya tidak cocok untuk diterapkan pada perangkat mobile akibat diperlukannya tenaga, biaya, dan tempat yang lebih. Terdapat beberapa pendekatan untuk menyelesaikan masalah tersebut, salah satunya adalah dengan menggunakan OpenGL ES yang merupakan API tingkat rendah yang memberikan pengembang sebuah antarmuka ke perangkat keras grafik pada perangkat mobile. Namun, karena sifatnya yang merupakan API tingkat rendah, untuk menggunakannya pengembang perlu memanggil cukup banyak fungsi pra-operasi yang relatif kompleks, bertolak belakang dengan apa yang terjadi dalam beberapa tahun terakhir dimana permintaan atas API tingkat tinggi terus meningkat. Penelitian ini membahas bagaimana masalah tersebut dapat diatasi dengan membangun sebuah lapisan abstraksi tingkat tinggi tambahan pada OpenGL ES dengan memanfaatkan pola-pola desain tertentu sehingga basis kode menjadi lebih ringkas dan dapat dikompilasi untuk platform desktop dan mobile. Dengan menerapkan beberapa pola desain seperti Façade, Template

Method Pattern, dan Observer, sebuah library dibangun untuk mengenkapsulasi

sebagian kecil fungsionalitas 2-dimensi dari OpenGL ES. Library yang dihasilkan mencakup sistem windowing sederhana serta kelas-kelas yang bertanggungjawab atas operasi grafik seperti pembuat bentuk primitif, penampil teks, dan penampil file gambar. Hasil penelitian ini direspon secara positif oleh pengembang

perangkat lunak grafis secara umum dan pakar yang bergerak di bidangnya. Dengan begitu, pengembang dapat membangun perangkat lunak grafis melalui sebuah antarmuka tingkat tinggi tanpa perlu mengkhawatirkan tentang kerumitan API OpenGL ES di belakangnya.

(2)

ii

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

ABSTRACT

In recent years we have seen a dramatic growth in the computation,

visualization, and graphics capabilities of mobile computing devices. Even so,

most of the design choices that are being used by the hardware developers to

implement them are not compatible with mobile devices due to higher power, cost,

and space requirements. There are some approaches that can be used to address

the problem, one of them is to use the OpenGL ES which is a low-level API that

provides developers an interface to the mobile graphics hardware. However,

since OpenGL ES is a low-level API, it comes with many complex pre-operations

that are simply not intended, also to integrate these libraries with any kind of

system is often a tough trial. It is an opposite to what is currently happening

where the number of developers requesting a high-level API is continuing to

increase. This research discusses how the problem can be addressed by building a

high-level abstraction layer on top of OpenGL ES by taking advantage of certain

design patterns so that the user’s code base can be simplified and can be

compiled for the desktop and mobile platforms. By using few design patterns like

Façade, Template Method Pattern, and Observer, a library is built to encapsulate

parts of the 2D functionalities of OpenGL ES. The resulting library covers a

simple windowing system and classes that does graphical operations like drawing

primitive shapes, texts, and pictures. The library received a positive response

from general and expert developers. Therefore, developers can build graphics

applications through a high-level API without worrying about the complexity of

OpenGL ES behind it.

(3)

115

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

DAFTAR PUSTAKA

Atlassian. (2011). Use the issue tracker. Atlassian Documentation. [Online]. Tersedia:

https://confluence.atlassian.com/display/BITBUCKET/Use+the+issue+tra cker [17 Februari 2015]

Bell, T. E. dan Thayer, T. A. (1976). “Software requirements: Are they really a

problem?”. Proceedings of the 2nd International Conference on Software

Engineering. California: IEEE Computer Society Press

Bitbucket.org. (2015). Issues. [Online]. Tersedia: https://bitbucket.org/djzmo/cybil2d/admin/issues [11 Februari 2015] Boileau, R. (2008). Low Level versus High Level APIs. Ottawa: PIKA

Technologies

Bosch, J. (1998). “Design Patterns as Language Constructs”. Journal of

Object-Oriented Programming, pp. 18-32. Denville: SIGS

Buschmann, F., et al. (2007). Pattern-Oriented Software Architecture, A Pattern Language for Distributed Computing. San Francisco: John Wiley & Sons

Coplien, J., O. (1998). “Software Design Patterns: Common Questions and

Answers”. In: Rising L., (Ed.), The Patterns Handbook: Techniques,

Strategies, and Applications, pp. 311-320. Illinois: UIUC University Press

Cusumano, M. A. dan Yoffie, D.B. (1999). “What Netscape Learned from Cross

-Platform Software Development”. ACM Comm., 42 (10), pp. 72-78. New

York: ACM

Darby, J. (2009). Beginning OpenGL Game Programming. Boston: Cengage Learning

Densmore, S. (2004). Why Singletons are Evil. Redmond: MSDN

Dey, S. et al. (2007). “A Very Simple Approach for 3-D to 2-D Mapping”. International Journal on Image Processing and Communications, 11.2:

(4)

116

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

Dictionary.com. (2013). “Computer graphics”. Collins English Dictionary - Complete & Unabridged 10th Edition, [Online]. HarperCollins Publishers.

Tersedia: http://dictionary.reference.com/browse/computer+graphics [11 Juni 2013]

Finney, K. C. (2013). 3D Game Programming All in One, Third Edition. Boston: Cengage Learning

Freeman, E. et al. (2004). Head First Design Patterns, pp. 162. California:

O’Reilly

Friedrich, M. et al. (1999). “Efficient Object-Oriented Software with Design

Patterns” dalam GCSE ’99 Proceedings of the First International

Symposium on Generative and Component-Based Software Engineering,

pp. 79-90. London: Springer-Verlag

Game-lab.org. (2012). POSA2: Wrapper Façade. [Online]. Tersedia: http://game-lab.org/posts/posa2-wrapper-facade/ [16 Februari 2015]

Gamma, E. et al. (1993). “Design Patterns: Abstraction and Reuse of

Object-Oriented Design”. ECOOP ’93, pp. 406-431. London: Springer-Verlag

Gamma, E. et al. (1995). Design Patterns: Elements of Reusable Object-Oriented Software. Massachusetts: Addison-Wesley

GitHub. (2015). Using pull requests. GitHub Help. [Online]. Tersedia: https://help.github.com/articles/using-pull-requests/ [17 Februari 2015] Gomila, L. (2013). SFML releases. SFML community forums. [Online] Tersedia:

http://en.sfml-dev.org/forums/index.php?topic=76 [7 November 2013]

Grimm, T. (1998). “The Human Condition: A Justification for Rapid Prototyping”

dalam Time Compression Technologies, vol. 3 no. 3. Kentucky: Accelerated Technologies, Inc.

Haller, K. dan Hansson, H.V. (2013). SFML Game Development. Birmingham: Packt Publishing

Harbour, J. (2004). Game Programming All in One, Second Edition. Massachusetts: Course Technology Ptr

(5)

117

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

International Data Corporation (2014). Smartphone OS Market Share, Q3 2014. [Online]. Tersedia: http://www.idc.com/prodserv/smartphone-os-market-share.jsp [10 Februari 2015]

Jackson, D. (2012). Software Abstractions: Logic, Language, and Analysis. Cambridge: MIT Press

Jalali, S. (2009). Trends and Implications in Embedded Systems Development. Mumbai: Tata Consultancy Services

Janssen, C. (2013). Platform. Techopedia. [Online]. Tersedia: http://www.techopedia.com/definition/3411/platform [7 November 2013] Krasner, G. E. dan Pope, S. T. (1988). “A cookbook for using the Model

-View-Controller User Interface paradigm in Smalltalk-80”. Journal of Object-Oriented Programming, pp. 26-49. Denville: SIGS

Krustchinsky, J. (2013). Is SDL a game engine?. Game Development Stack

Exchange. [Online]. Tersedia: http://

gamedev.stackexchange.com/questions/59139/is-sdl-a-game-engine [17 Februari 2015]

Lasater, C.G. (2010). Design Patterns. Texas: Wordware Publishing

Lehman, M. (1980). “Programs, life cycles, and the laws of software evolution”.

Proceedings of the IEEE vol. 68, no. 9, pp. 1060-1076. California: IEEE

Computer Society Press

Libsdl.org. (2015). About SDL. [Online]. Tersedia: https://www.libsdl.org [7 Maret 2015]

Lodico, M. G., et al. (2010). Methods in Educational Research: From Theory to Practice. San Francisco: John Wiley & Sons

Malizia, A. (2006). Mobile 3D Graphics. London: Springer-Verlag

McConnel, J.J. (2006). Computer Graphics: Theory Into Practice. Burlington: Jones & Bartlett Learning

(6)

118

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

Miller, T. (2004). Managed DirectX 9: Graphics and Game Programming: Kick Start. Indiana: Sams Publishing

Mitchell, S. (2013). SDL Game Development. Birmingham: Packt Publishing Oliver, R. S. et al. (2010). “An Operating System Abstraction Layer for Portable

Applications in Wireless Sensor Networks”. Proceeding of the 2010 ACM Symposium on Applied Computing, SAC ’10, pp. 742-748. New York: ACM

OpenGL.org. (2013). OpenGL Overview. OpenGL. [Online]. Tersedia: https://www.opengl.org/about/ [11 Juni 2013]

Papadopoulos, J. (2014). Lords of the Fallen Dev: “Low level APIs Complex Concepts To Grasp, Won’t Bet On Mantle Right Now”. DSOGaming. [Online]. Tersedia: http://www.dsogaming.com/news/lords-of-the-fallen- dev-low-level-apis-complex-concepts-to-grasp-wont-bet-on-mantle-right-now/ [27 Maret 2015]

Papurt, D. M. (1995). Inside the Object Model: The Sensible Use of C++. Cambridge: Cambridge University Press

Pulli, K. (2006). “New APIs for mobile graphics”. Proc. SPIE 6074, Multimedia on Mobile Devices II, 607401; doi:10.1117/12.660438. Cambridge: MIT

CSAIL

Reddy, M. (2011). API Design for C++. Burlington: Morgan Kaufmann

Royce, W. (1987). “Managing the development of large software systems:

concepts and techniques” dalam ICSE ’87 Proceedings of the 9th

International Conference on Software Engineering, pp. 328-338.

California: IEEE Computer Society Press

Schmidt, D. C. (1999). “Wrapper Façade”. C++ Report, February 1999, 11.2. New York: SIGS

Sherrod, A. (2011). Beginning DirectX 11 Game Programming. Boston: Cengage Learning

(7)

119

YANA DWIPUTRA NUGRAHA, 2015

LIBRARY CYBIL2D SEBAGAI ALTERNATIF LAPISAN ABSTRAKSI TINGKAT TINGGI OPENGL EMBEDDED SYSTEMS

Universitas Pendidikan Indonesia | repository.upi.edu | perpustakaan.upi.edu

Smithwick, M. dan Verma, M. (2012). Pro OpenGL ES for Android. New York: Apress

Statista (2014). Global market share held by operating systems Desktop PCs from January 2012 to December 2014. [Online]. Tersedia:

http://www.statista.com/statistics/218089/global-market-share-of-windows-7 [10 Februari 2015]

Stuart, J. A. et al. (2005). “Towards a Unified Approach for Cross-Platform

Software Development”. Proceedings of the 14th International

Conference on Intellegent and Adaptive Systems and Software

Engineering,IASSE-2005, pp. 235-242. Nevada: University of Nevada,

Reno

Thorn, A. (2009). Cross Platform Game Development. Burlington: Jones & Bartlett Learning

Thorn, A. (2005). DirectX 9 Graphics: The definitive guide to Direct3D. Texas: Wordware Publishing

Vogel, L. (2014). Distributed Version Control with Git: Mastering the Git command line – Third Edition. Hamburg: Lars Vogel

Referensi

Dokumen terkait

“ Pengukuran Cadangan Kerugian Penurunan Nilai dan Risiko Kredit dengan Menggunakan CreditRisk + terhadap Kredit Kepemilikan Rumah pada Bank ABC”.. Gavalas, Dimitris

Jadi susunan (urutan) -nya untuk sementara kita ubah, agar syarat rasio pi/wi -nya tidak menaik terpenuhi dan kita dapat menyelesaikan masalah tersebut dengan

Hasil analisis menunjukan Perlindungan Investor (PI) tidak berpengaruh terhadap Return On Equity (ROE), Hasil penelitian ini sejalan dengan penelitian yang

Bapak/Ibu dapat memilih salah satu dari keempat pilihan jawaban yang telah tersedia dengan memberi tanda centang () pada pilihan jawaban yang sesuai, seperti berikut:.. SS :

Pada pasal 1 Peraturan Penguasa Perang Tertinggi Nomor 1 Tahun 1962 disebutkan bahwa tanda palang merah atas dasar putih, selanjutnya disebut “Tanda Palang Merah” dan kata-kata

arbitrase syariah, Beliau berpendapat bahwa contoh tersebut yang menyebutkan bahwa pengadilan khusus yang dapat dibentuk seperti pengadilan arbitrase syariah adalah.

Sebuah kurikulum yang telah dikembangkan tidak akan berarti (menjadi kenyataan) jika tidak dimplementasikan, dalam artian digunakan secara aktual diPondok Pesantren dan

Adapun Faktor yang perlu diperhatikan dalam memilih media untuk dijadikan campuran adalah kualitas dari bahan tersebut, sifat kimia atau fisiknya, tersedia di pasaran,