polo

polo

Rabu, 04 Juli 2018

Tugas 3 - Explanation of Quantum Computing with Video

Greetings, on this occasion i would like to share a video explaining basic in quantum computing made by my team. In this video we explained a bit of quantum computing, structure and algortihm behind it. Without further ado this is the video.



Hope you guys enjoy the video and get the information in it. See you next time.

Jumat, 13 April 2018

Review Jurnal Quantum Computing

Diambil dari Jurnal berjudul:

Quantum Computing by Andrew Steane 
From Department of Atomic and Laser Physics, University of Oxford Clarendon Laboratory, Parks Road, Oxford, OX1 3PU, England. July 1997.


Menurut pendapat saya:
  • Metode Penelitian:
    • Perbedaan antara komputasi konvensional dengan komputasi kuantum
    • Pembentuk komputasi kuantum serta algoritma yang menggunakan komputasi kuantum

  • Kelebihan:
    • Komputer kuantum dapat menyelesaikan problem yang rumit lebih cepat dari pada komputer konvensional dengan adanya qubit pada komputasi kuantum berlawanan dengan bit pada komputasi konvensional

  • Kekurangan:
    • Membutuhkan superkomputer yang sampai sekarang belum optimal dalam komputasi untuk melakukan komputasi kuantum dan juga harganya yang mahal

  • Kesimpulan
  • Komputasi kuantum merupakan jawaban untuk mempercepat dan mengatasi problem yang tidak bisa dilakukan oleh komputasi konvensional dengan efisien dan efektif

Jumat, 16 Maret 2018

Pengatar Quantum Computing

   1.     Pendahulan (Stely Novenus Tarigan)

Quantum Komputasi terdiri dari 2 kata yaitu “Quantum” dan “Komputasi”. Quantum artinya jumlah/quantity tanpa batas, dan Komputasi artinya ilmu komputer dimana algoritma digunakan untuk menemukan suatu cara dalam memecahkan masalah dari sebuah data input. Sehingga Quantum Komputasi adalah suatu bidang studi yang berperan pada perkembangan teknologi komputer yang didasari prinsip-prinsip teori kuantum, yang menjelaskan sifat dan perilaku energi dan materi pada tingkat kuantum (atom dan subatom).
Komputer Kuantum disini merupakan komputer/alat hitung yang menggunakan sebuah fenomena mekanika kuantum, seperti superposisi dan keterkaitan, untuk melakukan operasi data. Dalam komputer pada umumnya untuk menghitung jumlah data dengan menggunakan bit, sedangkan dalam komputer kuantum sudah menggunakan qubit.
Pengembangan komputer dengan sistem kuantum memerlukan algoritma baru yang sesuai dengan prinsip kuantum. Beberapa fisikawan seperti Charles H. Bennett dari IBM, Paul A. Benioff dari Argonne National Laboratory, Richard P. Feynman dari California Institute of Technology (Caltech).
Sistem kuantum yang dapat melakukan proses penghitungan merupakan suatu ide yang dikemukakan oleh Richard P. Feynman dan sistem ini bisa menjadi simulator percobaan fisika kuantum. Sehingga para ilmuwan mulai melakukan riset mengenai sistem kuantum tersebut. Saat ini telah ditemukan dua algoritma baru yang bisa digunakan dalam sistem kuantum yaitu algoritma shor dan algoritma grover. Contohnya adalah pemfaktoran (factoring) sebuah bilangan besar masih terlalu sulit bagi komputer meskipun mudah untuk diverifikasi. Itulah sebabnya pemfaktoran bilangan besar ini banyak digunakan dalam metode kriprografi untuk melindungi data.


   2.     Entanglement (Cynthia Diana Sinaulan)

Entanglement merupakan efek dari mekanik kuantum yang mengaburkan jarak antara partikel individual sehingga sulit untuk menggambarkan partikel tersebut terpisah walaupun anda berusaha untuk memindahkan mereka. Entanglement juga merupakan gambaran partikel yang dapat berkorelasi dan diprediksi berinteraksi satu sama lain tanpa terpaut jarak. Entanglement secara teoritis dapat mempercepat komputasi dan diyakini dapat memecahkan batasan pada komputer dan kuantum.
Kuantum entanglement adalah bagian dari fenomena kuantum mechanical yang menyatakan bahwa dua atau lebih objek dapat digambarkan mempunyai hubungan dengan objek lainnya walaupun objek tersebut berdiri sendiri dan terpisah dengan objek lainnya. Fenomena ini dimanfaatkan oleh ilmuan dalam pembuatan Quantum Computing.

Einstein mengkritisi teori kuantum mechanical, ia menunjukkan kelemahan dari teori tersebut yang menggunakan entanglement merupakan sesuatu yang “spooky action at  a distance” karena Einstein tidak mempercayai bahwa partikel kuantum dapat mempengaruhi partikel lainnya melebihi cahaya. Kuantum entanglement dapat diimplementasi dalam berbagai bidang seperti pengiriman pesan rahasia yang sulit untuk di-enkripsi dan pembuatan komputer yang mempunyai performa cepat.

   3.     Pengoprasian Data Qubit (Kemal Nurfajri)

Jika pada komputer klasik terdapat bit sebagai memorinya, komputer kuantum menggunakan qubit atau quantum bit sebagai memori dasar informasi. Perbedaan antara bit dan qubit adalah jika bit pada suatu waktu hanya dapat merepresentasikan satu state saja yaitu 0 atau 1, qubit dapat merepresentasikan 0, 1 atau gabungan keduanya yang disebut dengan quantum superposition. Jadi, jika n bit hanya dapat merepresentasikan salah satu dari 2n states, n qubit dapat merepresentasikan 2n states tersebut secara bersamaan atau lebih mudahnya 1 qubit dapat menampung lebih dari 1 bit.


Suatu komputer quantum mengoperasikan qubit menggunakan quantum gates dan measurments. Dimana perhitungan dimulai menggunakan quantum gates dan berakhir pada measurments yang menghasilkan classical states.

   3.     Quantum Gates (Fitri Ayu Anggraini & Novita Rakhmawati)

Gerbang kuantum atau gerbang logika kuantum adalah rangkaian kuantum dasar yang beroperasi pada sejumlah kecil qubit . Mereka adalah analog untuk komputer kuantum ke gerbang logika klasik untuk komputer digital konvensional. Logika logika kuantum bisa dibalik , tidak seperti banyak gerbang logika klasik. Beberapa gerbang logika klasik universal, seperti gerbang Toffoli , memberikan reversibilitas dan dapat dipetakan secara langsung ke gerbang logika kuantum. Gerbang logika kuantum diwakili oleh matriks-matriks kesatuan .

Gerbang kuantum yang paling umum beroperasi pada ruang satu atau dua qubit. Ini berarti bahwa sebagai matriks, gerbang kuantum dapat digambarkan dengan matriks 2 x 2 atau 4 x 4 dengan baris ortonormal .
Ingat Penyelidikan gerbang logika kuantum tidak terkait dengan logika kuantum , yang merupakan formalisme dasar untuk mekanika kuantum berdasarkan modifikasi beberapa aturan logika proposisional .
Berikut ini merupakan contoh dari gerbang kuantum :

a.      Gerbang hadamard
Gerbang ini beroperasi dengan qubit tunggal. Hal ini ditunjukkan oleh matriks Hadamard:


Karena baris matriks bersifat ortogonal, H memang merupakan matriks kesatuan.

b.      Fase shifter gates
Gates di kelas ini beroperasi dengan qubit tunggal. Mereka diwakili oleh 2 x 2 matriks dari bentuknya dimana θ adalah pergeseran fasa .

c.       Gerbang Terkendali
Misalkan U adalah gerbang yang beroperasi pada qubit tunggal dengan representasi matriks


Gerbang terkontrol U adalah gerbang yang beroperasi pada dua qubit sedemikian rupa sehingga qubit pertama berfungsi sebagai kontrol.

|00⟩ ↦ |00⟩

|01⟩ ↦ |01⟩

|10⟩ ↦ |1⟩ U | 0⟩ = |1⟩ ( x 00|0⟩ + x 01|1⟩)

|11⟩ ↦ |1⟩ U | 1⟩ = |1⟩ ( x 10| 0⟩ + x 11| 1⟩)

Dengan demikian matriks gerbang U yang dikontrol adalah sebagai berikut:



d.      Gerbang Takterkendali


Karena gerbang ini bisa direduksi menjadi gerbang yang lebih elementer, biasanya tidak termasuk dalam repertoar dasar gerbang kuantum. Disebutkan disini hanya untuk kontras dengan gerbang yang dikontrol sebelumnya.

Universal Quantum Gates

Satu set gerbang kuantum universal adalah seperangkat gerbang yang memungkinkan operasi pada komputer kuantum dapat dikurangi. Satu set sederhana dari gerbang kuantum universal dua qubit adalah gerbang Hadamard ( H ), gerbang rotasi fase , dan gerbang yang dikendalikan-TIDAK , sebuah kasus khusus yang dikendalikan-U sedemikian itu


Sebuah gerbang tunggal yang terdiri dari gerbang kuantum universal juga dapat diformulasikan dengan menggunakan gerbang Deutsch tiga-qubit, D ( θ )


Gerbang logika klasik universal, gerbang Toffoli , dapat direduksi menjadi gerbang Deutsch, sehingga menunjukkan bahwa semua operasi logika klasik dapat dilakukan pada komputer kuantum universal.



   4.     Algoritma Shor (Alfan Fadhila A)

Algoritma Shor merupakan algoritma yang ditemukan oleh Peter Shor pada tahun 1995. Sebuah komputer kuantum dapat memecahkan sebuah kode rahasia yang saat ini secara umum digunakan untuk mengamankan pengiriman data. Jika data disandikan melalui kode RSA, data yang dikirimkan akan aman karena kode RSA tidak dapat dipecahkan dalam waktu yang singkat. Selain itu, pemecahan kode RSA membutuhkan kerja ribuan komputer secara pararel sehingga kerja pemecahan ini tidaklah efektif.
Algoritma yang berdasarkan dari sebuah teori bilangan: fungsi F(a) = xamod n adalah fungsi periodik jika x adalah bilangan bulat yang relatif prima dengan n. Dalam Algoritma Shor, n akan menjadi bilangan bulat yang hendak difaktorkan.
Bila menghitung fungsi tersebut pada komputer konvensional untuk jumlah yang eksponensial, akan membutuhkan waktu eksponensial pula. Pada masalah ini algoritma quantum shor memanfaatkan pararellisme quantum untuk melakukannya hanya dengan satu langkah.
Dikarenakan F(A) adalah fungsi periodik, jadi fungsi ini memiliki sebuah periode r. Diketahui x0mod n = 1, maka xr mod n = 1, begitu juga x2r mod n dan seterusnya.

Dengan informasi ini dan manipulasi persamaan sederhana berikut:

xr ≡ 1 mod n
(xr/2)2 ≡ 1 mod n
(xr/2)2 – 1 ≡ 0 mod n

Dengan anggapan r adalah angka genap:

(xr/2 – 1)(xr/2 + 1) ≡ 0 mod n

Dapat dilihat bahwa hasil dari (xr/2 – 1)(xr/2 + 1) adalah kelipatan n. Maka selama |xr/2| ≠ 1, setidaknya salah satu dari (xr/2 – 1) atau (xr/2 + 1) memiliki faktor yang sama dengan n. Maka, dengan menghitung gcd(xr/2 – 1,n) dan gcd(xr/2 + 1,n) faktor dari n akan didapat.
Lain halnya untuk menghitung r dari persamaan xr ≡ 1 mod n akan membutuhkan waktu eksponensial di komputer konvensional. Oleh karena itu proses ini perlu dijalankan dengan komputer quantum agar seluruh nilai superposisi akan terhitung dalam sekali jalan.

Langkah-langkah Algoritma Shor
Masalah yang hendak dipecahkan adalah: Diketahui sebuah bilangan komposit N, dicari sebuah bilangan bulat x dengan x bernilai 1 < x < N.
1.      Algoritma Shor untuk mencari faktor dari bilangan bulat n, dapat dipecah menjadi langkah-langkah berikut:
Menentukan apakan N adalah prima, genap, atau perpangkatan dari bilangan prima. Jika ya, maka Algoritma Shor tidak akan dipakai. Terdapat algoritma konvensional yang efisien untuk menentukan jenis n dan memfaktorkannya. Langkah ini akan dilakukan di komputer konvensional.
2.      Ambil bilangan bulat q, dimana q adalah nilai dari perpangkatan 2 yang memenuhi: n2 ≤ q < 2n2. Langkah ini akan dilakukan di komputer konvensional.
3.      Mencari bilangan bulat random x yang relatif prima dengan n. Terdapat algoritma konvensional yang efisien untuk proses ini. Langkah ini akan dilakukan di komputer konvensional.
4.      Membuat quantum register yang dipartisi menjadi dua bagian, katakan register 1 dan register 2. Register satu harus cukup besar untuk merepresentasikan bilangan bulat sebesar q-1, sedangkan register 2 sebesar n-1. Langkah ini perlu dilakukan di komputer quantum.
5.      Masukkan kedalam register 1 superposisi yang setara dari semua bilangan bulat 0 sampai q-1, dan register 2 bilangan bulat 0. Langkah ini dapat dilaksanakan dengan menggunakan hadamard gates. Langkah ini perlu dilakukan di komputer quantum. Pada langkah ini, state dari quantum memory register adalah :


6.      Aplikasikan fungsi xa mod n ke dalam semua bilangan bulat di dalam register 1, dan menyimpan hailnya di register 2. Karena prinsip pararellisme quantum, proses ini hanya perlu dilakukan sekali saja. Langkah ini perlu dilakukan di komputer quantum. Pada langkah ini, state dari quantum memory register adalah:


7.      Mengukur dan memeriksa nilai yang disimpan pada register 2, mendapatkan nilai k. Langkah ini perlu dilakukan di komputer quantum. Langkah ini akan membuat register 1 semua superposisi state a dimana xa mod n ≠ k “kolaps”. Setelah langkah ini, state dari quantum memory register adalah:


Dengan A adalah himpunan dari a’ dimana x n k a mod = , dan ||A|| adalah jumlah elemen dalam himpunan tersebut.
8.      Menghitung transformasi quantum Fourier pada register 1. Langkah ini perlu dilakukan di komputer quantum. Sifat transformasi Fourier quantum akan mengubah |a> menjadi


Karena pararellisme quantum, langkah ini cukup dilakukan satu kali. State dari register setelah transformasi:


9.      Ukur nilai state register satu, katakan nilai ini sebagai m. Bilangan bulat m memiliki probabilitas tinggi adalah kelipatan q/r, dimana r adalah periode yang kita cari. Langkah ini perlu dilakukan di komputer quantum.
10.  Gunakan nilai m untuk mencari nilai r, dengan nilai m dan q diketahui. Jika r tidak dapat ditentukan, maka kembali ke langkah 4. Langkah ini akan dilakukan di komputer konvensional.
11.  Setelah r diketahui, faktor n dapat ditentukan dengan menghitung gcd(xr/2 + 1, n) dan gcd(xr/2-1,n). Disaat ini faktor n telah ditemukan, dan Algoritma telah selesai. Langkah ini akan dilakukan di komputer konvensional. 

Kelemahan dan Kelebihan Algoritma Shor
Berbeda dengan komputer konvensional yang deterministik, komputer quantum bersifat nondeterministik dan probabilistik, yang berarti suatu algoritma kadang kala dapat berhasil dan kadang kala akan gagal biarpun untuk kondisi yang sama. Hal ini dikarena sifat pengukuran dalam mekanika quantum yang probabilistik. Akibatnya, Algoritma Shor dapat gagal menemukan faktor karena beberapa sebab, diantaranya:
·         Hasil pengukuran dari transformasi quantum fourier dapat berupa 0, membuat langka ke 10 tak mungkin dilakukan.
·         Kadang hasil faktorisasi algoritma akan menghasilkan 1 dan n, yang secara definisi benar tetapi tidak berguna.
·         Bila hasil r ganjil, maka langkah ke 10 tidak dapat dilakukan.



Selasa, 26 Desember 2017

Membuat Local FTP Server pada Sistem Operasi Windows Menggunakan IIS

Sebelum masuk ke tutorial, pertama-tama saya akan menjelaskan apa itu FTP Server. FTP (File Transfer Protocol) merupakan sebuah protokol standar internet untuk pengiriman file komputer antarjaringan yang terdapat pada Application Layer.

Sementara FTP Server merupakan sebuah server yang menampung kegiatan dari FTP sebagai media penyimpanan file untuk proses FTP.

Untuk membuat local FTP Server pertama-tama aktifkan fitur windows yang bernama IIS (Internet Information Server) pada control panel > program and feature, lalu buka aplikasi IIS Manager. Proses nya terdapat pada gambar-gambar di bawah ini.







Setelah itu klik kanan pada bagian panel connection lalu pilih FTP Server. Setelah dipilih maka akan muncul windows untuk pengaturan nama server dan letak directory server, isi sesuai keinginan lalu pilih next seperti gambar dibawah.


Lalu, masukkan ip address untuk bind ke FTP server dan pilih no SSL, setelah itu pilih next seperti gambar dibawah.


Jika sudah, pilih jenis autentikasi dan hak akses untuk setiap user, lalu klik finish seperti gambar dibawah.


Maka akan muncul seperti gambar dibawah yang menyatakan bahwa FTP Server sudah berjalan dan siap digunakan.


Minggu, 04 Juni 2017

Tugas 3 - Review Game

\

Title: NieR:Automata
Genre: Action, RPG
Developer: Square Enix
Publisher: Square Enix
Release Date: 17 Maret 2017

Sinopsis

NieR:Automata menceritakan tentang perjuangan andorid 2B, 9S dan A2 untuk merebut kembali dunia yang dikuasai oleh berbagai macam mesin yang disebut dengan Machine Lifeform.

Pada dunia tersebut, umat manusia dipaksa untuk meninggalkan bumi oleh Machine Lifeform dari dunia lain. Manusia di bulan mengirimkan andoid untuk menghancurkan Machine Lifeform yang sedang menguasai bumi. Sekarang setelah manusia mengirimkan andoid terjadilah perang dalam skala besar antara andoid dan mesin di bumi. Di dalam perang tersebut tersembunyi fakta yang lama terlupakan tentang peradaban manusia dan tentang bumi yang lama. Seiring perang terus bergejolak android tersebut memngetahui dan mempelajari tentang fakta tersebut sehingga mereka mengetahui apa sebenernya yang terjadi dibalik semua ini.

Fitur

Fitur yang terdapat dalam game ini yaitu:
  • Battle yang penuh dengan action dengan kebebasan player dalam mengganti ranged dan melee weapon. Battle yang dinamis serta mudah untuk pemula dalam game action, ada juga battle dengan combo serta transisi dari light ke heavy attack dan dari weapon set 1 ke set 2 bagi player yang sudah berpengalaman. Battle nya pun melawan sekumpulan mesin di schema open world, tidak dibatasi oleh batas apapun.
  • Desain open world yang menarik dengan tema dunia yang terisolasi. Pemandangan dan lingkungan yang indah dan banyaknya sub-quest selain dari main quest dapat membuat player tidak gampang bosan memainkanya.
  • Cerita yang sangat dalam dan disusun dengan alur yang menarik antara android 2B, 9S dan A2 dengan ending melingkupi A sampai Z yang dapat diobtain di setiap chapternya.
  • Player dapat juga menaikan level dari character, mengganti setup senjata, mengatur ulang setup chip dan lainya seperti dalam game RPG.
  • Terdapat pods yang dapat membantu player di dalam battle maupun diluar battle seperti untuk glide dan lainya. Pod tersebut juga dapat diupgrade untuk meningkatkan performanya dalam battle. Pod yang tersedia juga beragam mulai pod yang mengeluarkan peluru seperti machine gun sampai pod yang mengeluarkan misil.

Spesifikasi Minimum

OS: Windows 7/8.1/10 64 Bit
Processor: Intel Core i3 2100 atau AMD A8-6500
Memory: 4 GB RAM
Graphics: Nvidia GeForce GTX 770 atau AMD Radeon R9 270X
Storage: 50 GB Free Space

Kelebihan

Kelebihan dari game ini adalah:
  • Graphic 3D yang halus serta bagus dalam menampilkan open world yang luas serta indah dan battle yang dinamis.
  • Battle yang dinamis serta banyaknya combo dan playstyle yang dapat disesuaikan oleh player.
  • Soundtrack yang memukau dan match dengan lingkungan serta situasi yang ada.
  • Cerita dan plot yang dalam dan bagus serta menyentuh dengan beragam ending yang dapat diakses.
  • Character development yang menonjol seiring progress dari cerita.

Kekurangan

Adapun kekurangan dari game ini adalah bad port yang menghasilkan random white screen dan crash serta random FPS down jika tidak menggunakan 3rd party mod.

Sumber

http://store.steampowered.com/app/524220/NieRAutomata/

Selasa, 28 Maret 2017

Tugas 2 - Interaksi Fisik dan User Interface pada Game

Pada pembahasaan kali ini, penulis akan membahas tentang interaksi fisik dan juga user interface pada teknologi game serta game yang menggunakan jaringan atau online.

Interaksi Fisik dalam Teknologi Game

Interaksi fisik dalam game merupakan game yang melibatkan penggunanya untuk menggunakan fisiknya atau tubuhnya untuk memainkan game tersebut. Karena game tersebut melibatkan aktifitas fisik maka game itu pun dapat melatih otot dan tubuh layaknya kita berolahraga. Untuk memainkan game-game tersebut diperlukan device khusus seperti Nintendo Wii, XBOX Kinect dan lainya.
  1. Efek Interaksi Fisik
  2. Interaksi fisik dalam game tersebut dapat menimbulkan efek samping positif maupun negatif, diantaranya:

    1. Efek Positif

      • Mendorong pola hidup sehat
      • Meningkatkan kemampuan motorik tubuh
      • Mengalihkan rasa sakit fisik akibat jarang berolahraga
      • Meningkatkan konsentrasi dan koordinasi mata
      • Meningkatkan koordinasi tangan dan tubuh

    2. Efek Negatif

      • Kecanduan yang berlebihan terhadap game
      • Membatasi hubungan sosial dengan orang lain
      • Menggangu kesehatan jika dimainkan berlebihan

  3. Collision Detection
  4. Selain interaksi fisik antar game dan pengguna, terjadi pula interaksi fisik antar objek di dalam game yang dimaksud dengan colliision atau tumpukkan. Hal ini membuat objek 1 dengan objek yang menyentuhnya menjadi bertumpukkan satu sama lain. Untuk menghindari hal ini, digunakan algoritma yang dinamakan Collision Detection. Algoritma ini mendeteksi jarak antar objek, jika berdekatan maka objek itu pun akan menjauhi satu sama lain untuk menghindari collision. Algoritma ini dipakai secara luas dalam teknologi game untuk membatasi area permainan atau secara khusus untuk menghindari collision antar pemain.

User Interface pada Game Komputer

Antarmuka (Interface) merupakan mekanisme komunikasi antara pengguna (user) dengan sistem. Antarmuka (Interface) dapat menerima informasi dari pengguna (user) dan memberikan informasi kepada pengguna (user) untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan suatu solusi. User interface sangat berperan penting dalam dunia komputer karena dengan adanya user interface maka kemudahan user dalam mengoprasikan suatu perangkat komputer menjadi lebih mudah.

User interface dalam game komputer dapat dibagi menjadi 4 bagian, yaitu:
  1. Diagetic
  2. Elemen User Interface yang diegetic ada dalam dunia permainan sehingga para pemain dapat saling berinteraksi dengan mereka melalui visual, audible atau haptic. Elemen user interface diegetic yang dieksekusi dengan baik dapat meningkatkan pengalaman narasi untuk pemain, memberikan pengalaman lebih mendalam dan terintegrasi.

  3. Non-Diagetic
  4. Lalu ada elemen diegetic non-tradisional atau elemen non-diagetic, elemen ini memiliki kebebasan untuk menghapus dari fisksi permainan dan geometri. User interface ini juga hanya terlihat dan terdengar ke pemain di dunia nyata karena desain user interface ini juga menggunakan visual Heads-Up Display. Jika dilakukakn dengan benar para gamers tentunya tidak akan tahu itu ada.

  5. Spatial
  6. Elemen user interface spatial ini berdeda dengan diegetic atau non-digetic karena disajikan dalam ruang permainan dengan atau tanpa suatu entitas dari dunia permainan yang sebenarnya. Elemen ini digunakan untuk memberikan informasi lebih kepada pemain dan mencegah mereka dari melompat ke layar peta.

  7. Meta
  8. Elemen ini tidak selalu divisualisasikan spasial untuk pemain merupakan gambaran yang bisa muncul di dalam dunia game. Dalam dunia game juga sering kali kita jumpai beberapa adegan dalam game tersebut yang harus mengeluarkan percikan darah pada kamera untuk menunjukkan kerusakan parah pada karakter yang dimainkan.

Grafik Scene pada Game Komputer

Grafik scene pada game komputer biasanya dapat dibagi menjadi 2 bagian, yaitu:
  1. Visibility
  2. Visibility merupakan tampilan grafik scene game pada komputer. Bagaimana sebuah game terlihat oleh user agar menarik dan berkualitas sehingga user menikmati game tersebut. Visibilty tersebut dibagi menjadi 2 bagian yaitu 2D dan 3D.

    1. 2D Graphic
    2. Gambar 2D juga berperan dalam membuat game ini yaitu sebagai texture untuk object, sebagai latar belakang seperti langit dan pemandangan, sebagai meteran untuk nyawa dan gambar untuk speedometer pada game racing.

    3. 3D Graphic
    4. Merupakan model/object 3D yang nantinya akan dijadikan sebagai karakter utama, bangunan, object-object seperti senjata, musuh, permukaan tanah, pohon, bukit dan objek lainya yang mendekati ke dunia nyata.

  3. Level of Detail
  4. Level of detai merupakan teknik untuk membuat gambar atau objek yang berada pada radius tertentu dari objek utama menjadi terlihat detail dan objke lain yang berada diluar radius objek utama menjadi tidak terlihat atau terlihat buram. Teknik ini sangat berguna untuk mengurangi beban kerja saat game merender graphic yang mendetail.

Game Berjaringan (Online)

Game merupakan permainan yang menggunakan media elektronik, yang merupakan suatu hiburan berbentuk multimedia yang dibuat semenarik mungkin untuk menyenangkan hati pemainnya. Jaringan adalah kumpulan sistem yang terdiri dari beberapa perangkat yang saling terhubung untuk mendapatkan hasil tujuan yang sama. Dengan kata lain dapat dikatakan perangkat-perangkat ini dihubungkan agar dapat terkoneksi satu sama lain.

Dari pengertian diatas, dapat dikatakan bahwa game berjaringan (online games) adalah suatu jenis game komputer yang dapat dimainkan oleh multi pemain melalui internet. Biasanya disediakan sebagai tambahan layanan dari perusahaan penyedia jasa online dan dapat diakses langsung atau melalui sistem yang disediakan dari perusahaan yang menyediakan permainan tersebut. Dalam game online terdapat dua unsur utama, yaitu server dan client.

Server melakukan administrasi permainan dan menghubungkan client. Sedangkan client adalah pengguna permainan yang memakai kemampuan server. Game online juga dapat dikatakan sebagai bagian dari aktivitas sosial, karena pemain dapat saling berinteraksi secara virtual dan dapat menciptakan suatu komunitas dalam permainan tersebut.

Referensi

Senin, 20 Maret 2017

Tugas 1 - Tentang Game

Game merupakan sebuah sarana hiburan baik itu hiburan semata untuk melepas penat kehidupan, maupun hiburan yang mendidik. Game banyak digemari diberbagai kalangan baik muda maupun tua. Kalangan muda menganggap game selain sebagai hiburan namun sebagai pembelajaran yang meningkatkan kemampuan intelektual seseorang.

Game dapat juga membantu anak-anak dalam mempelajari bahasa inggris dan kehidupan di dunia nyata. Game-game ini dimaksudkan untuk mempermudah orang tua dalam mengajarkan anaknya berbagai hal. Contoh dari game-game ini adalah game story telling yang berisi cerita-cerita rakyat dan sebagainya.

Selain game yang mendidik, ada juga game yang ratingnya hanya khusus untuk orang dewasa. Game ini yang dilarang orang tua untuk dimainkan oleh anaknya yang dibawah umur dikarenakan konten yang berlebihan.

Aplikasi game dapat dijalankan diberbagai platform diantaranya:
  • Personal Computer (PC)
  • Game-game pada PC menghadirkan grafis yang bisa membuat player merasakan seperti di dunia nyata atau 3D. Hal tersebut dikarenakan game PC tidak terbatas oleh spek PC, jadi selama PC tersebut memiliki spek tinggi maka game manapun akan dapat dinikmati. 
  • Mobile Phone
  • Game-game pada mobile phone atau HP memiliki fitur dan playstyle yang simpel dimana game itu sendiri dapat dinikmati dimana saja sebagai hiburan. Game mobile biasanya free to play namun ada beberapa yang menitikberatkan pay to play seperti game-game pvp (player versus player) dimana player yang mempunyai item yang lebih bagus biasanya paling atas dalam leaderboard.

  • Web-Based Game
  • Game yang berbasi web biasanya ditempatkan di server tersendiri, dimana untuk memainkanya hanya diperlukan web browser tanpa harus memasang aplikasi game tersebut di pc. Game ini sangat bergantung pada koneksi internet jadi diperlukan koneksi internet yang stabil untuk bisa memainkanya.
Ada 2 konsep dalam membuat game dimana konsep tersebut:
  1. Membuat sendiri program game tersebut dari nol atau
  2. Menggunakan program yang susah disediakan
Untuk pilihan yang kedua, program tersebut membantu dengan menyediakan berbagai tool dan fitur-fitur yang tersedia untuk membuat game. Program-program tersebut meliputi:
  • Adobe Flash
  • RPG Maker
  • Unity
  • Dan yang lainya.

Bisnis dalam Game Komputer 3D

Sekarang ini, banyak sekali penyedia jasa pembuatan game dikarenakan banyak diminatinya game khususnya game digital 3D. Banyak sekali game-game 3D dengan alur serta playstyle yang kreatif dan innovatif.

Selain itu, banyaknya pengguna teknologi modern seperti gadget, pc dan juga console seperti PS, XBOX dan lainya membuat industri game digital multiplatform menjadi banyak diminati. Dan juga, banyaknya peminat game digital dikalangan manapun juga mendorong perkembangan yang sangat pesat ini.

Dalam industri game digital dikenal beberapa istilah, diantaranya:
  1. Game Engine
  2. Singkatnya, game engine merupakan perantara atau alat bagi game maker untuk mengolah dan membangun kode game. Selain mengolah, game engine dapat juga membantu dalam perancangan tampilan game yang akan dibuat serta menyediakan fitur-fitur untuk objek 2D maupun 3D.

    Beberapa contoh game engine diantaranya:
    • Cry Engine
    • Unreal Engine
    • Torque 3D
    • Dan masih banyak lagi

  3. Scene Graph
  4. Scene graph adalah struktur data umum yang digunakan oleh aplikasi editing grafis berbasis vektor dan game komputer modern, yang mengatur representasi grafis secara logis.

    Dalam game, scene graph sangat berguna untuk game yang memuat level-level yang banyak serta open world. Game tersebut menggunakan scene graph untuk mengatur representasi dari objek dan entitas yang ada serta relasi dari objek dan entitas tersebut.

  5. Processing
  6. Processing merupakan sebuah batas untuk membandingkan waktu pengerjaan proses perhitungan dan pengolahan data dalam jumlah besar dengan masukan-masukan yang terjadi selama proses tersebut.

Skenario

Skenario adalah urutan cerita yang disusun oleh seseorang agar suatu peristiwa terjadi sesuai dengan yang diinginkan. Kalau dasar untuk pembuatan film adalah skenario, maka dasar untuk membuat game adalah design document atau lebih mudahnya disebut skenario game. Skenario game adalah langkah awal dalam membuat sebuah game, dengan skenario game dapat mempermudah kita menyelesaikan game yang akan kita buat. Skenario game adalah sebuah cerita khusus yang melatarbelakangi kejadian – kejadian dalam game. Kalau skenario menentukan interior dan eksterior, dekor, pemain, dan studio, serta pembuatan trik, dalam desain dokumen ada ketentuan program game, grafik, tokoh, animasi, suara, dan musik. Sampai di sini keduanya masih paralel. Berbeda dengan skenario yang merupakan sekuens linier dari adegan, turn around point, dialog, dan seterusnya; design documents adalah gabungan dokumen yang mendiskripsikan secara kompleks semua segi game yang direncanakan.

Skenario dalam game atau design document atau skenario game tidak dapat ditentukan alur ceritanya dimana, skenario game tersebut ditentukan oleh gaya game itu sendiri. Gaya game tersebut dapat mempengaruhi skenario game, seperti game yang membagi cerita menjadi beberapa ending menurut pilihan pemain atau game fighting yang ceritanya hanya selingan dari action game tersebut.

Script

Dalam pemrograman komputer, naskah adalah sebuah program atau urutan instruksi yang ditafsirkan atau dilakukan dengan program lain daripada oleh komputer prossesor. Skrip (script) adalah semacam bahasa pemrograman dalam tingkat kesulitan yang lebih rendah, tanpa aplikasi hasil kompilasi interpreter; skrip biasanya disisipkan ke dalam bahasa pemrograman yang lebih kompleks dan hasil skrip digunakan oleh bahasa pemrograman yang lebih kompleks itu.

Dalam game, script itu sama seperti program komputer lain merupakan badan atau inti dari game tersebut dimana script mengatur apa saja yang terjadi di dalam game meliputi interaksi antar entitas dan objek serta jalan cerita dan lainya melalui kode-kode program.

Storyboard

Storyboard merupakan gambaran atau visualisasi bagaimana sebuah game itu. Storyboard juga merupakan outline yang menggambarkan game tersebut secara visual. Storyboard biasanya menggambarkan sebuah game per scene atau bisa disebut kerangka dari game tersebut.

Artifical Intelligent (AI)

Kecerdasan buatan atau Artificial Intelligence adalah salah satu bagian dari ilmu komputer yang membuat mesin (komputer) dapat melakukan pekerjaan seperti manusia dan komputer dimungkinkan untuk dapat berfikir.

Dalam Video Game, kecerdasan buatan digunakan untuk membuat perilaku cerdas yang biasanya terletak pada non-player characters (NPCs), dan seringnya mensimulasikan seperti kecerdasan manusia. Teknik yang digunakan biasanya menggambarkan metode keseluruhan dari kecerdasan buatan. Bagaimanapun, penggunaan kecerdasan buatan pada game biasanya merujuk pada sekumpulan algoritma yang didalamnya termasuk teknik dari teori kontrol,robotik, grafis komputer,dan pengetahuan komputer secara umum.

Dalam game-game sederhana kebanyakan pemanfaatan AI digunakan untuk mencari jalur terpendek untuk menentukan targetnya. Sebagai salah satu contoh yaitu kecerdasan buatan yang ada pada game Pacman. Pada game ini dapat kita lihat bahwa hantu-hantu (komputer) yang menjadi musuh Pacman dapat mempertimbangkan dan memilih jalan yang tercepat untuk menangkap dan mengepung sang Pacman (pemain). Bahkan ketika sang Pacman memakan bola yang bisa membuat si hantu menjadi lemah maka sang hantu akan langsung segera menghindari sang Pacman secepatnya.

Selain untuk NPC, Georgios N. Yannakakis menyarankan bahwa akademi pengembangan kecerdasan buatan dapat memainkan sebuah peran di dalam game dengan kecerdasan buatan melebihi dari paradigma kecerdasan buatan hanyalah pengontrol perilaku NPC. Dia menegaskan empat potensi lainnya untuk diaplikasikan dalam area:
  1. Player-experience modelling
  2. memahami kemampuan dan kondisi emosional pemain, agar menyesuaikan game dengan benar. Hal ini dapat termasuk penyeimbangan tingkat kesulitan game secara dinamis, yang terdiri dari penyesuaian tingkat kesulitan dari game tersebut secara langsung sesuai dengan kemampuan pemain.

  3. Procedural-content generation
  4. membuat elemen dari sebuah lingkungan game seperti kondisi lingkungan, tingkatan, dan bahkan music dengan secara otomatis. Metode kecerdasan buatan dapat menghasilkan konten baru atau cerita yang interaktif.

  5. Data mining on user behavior
  6. hal ini mengizinkan desainer game untuk mengeksplor bagaimana manusia memainkan permainannya, bagian mana yang paling sering dimainkan, dan apa yang menyebabkan mereka untuk berhenti bermain, mengizinkan developer untuk mengembangkan game tersebut.

  7. Alternate approaches to NPCs
  8. hal ini termasuk berubahnya tampilan game untuk menambah kepercayaan NPC dan mengeksplor ke lingkungan social daripada hanya menjadi NPC atau hanya memiliki perilaku NPC.

Arsitektur Game Engine

Arsitek adalah pelajaran untuk membuat rancangan dari bangunan. Sedangkan arsitektur mesin game adalah system perangkat lunak yang dirancang untuk menciptakan dan pengembangan video game. Dapat dikatakan bahwa arsitektur mesin game itu adalah rancangan dari sistem perangkat lunak dari game itu sendiri.

Tahap awal dari merancang suatu game adalah memilih jenis game yang akan dibuat agar dapat lebih terfokus dalam mengerjakannya. Selanjutnya adalah mendesaian game yang akan dibuat. Setelah kita memiliki desain game, langkah berikutnya adalah mengimplementasikan desain tersebut menjadi source code. Apabila source telah selesai dirancang, maka game tersebut dapat dimainkan dan digunakan sesuai yang diinginkan oleh sang pembuat game. Apakah game tersebut dibuat untuk dikomersilkan atau dikembangkan oleh orang lain.

Beberapa elemen yang terdapat dalam game engine, yaitu:
  1. Tools/Data
  2. Pada pengembangan game paling tidak dibutuhkan beberapa tools seperti 3d model editor, level editor dan graphics programs. Bahkan jika diperlukan, seringkali kita mengembangkan game engine tersebut dengan menambahkan beberapa code dan fitur yang diperlukan.

  3. System
  4. System adalah bagian dari game engine yang berfungsi untuk melakukan komunikasi dengan hardware yang berada di dalam mesin. System adalah bagian yang membutuhkan perubahan yang cukup banyak apabila dilakukan implementasi pada platform yang berbeda. Di dalam system sendiri terdapat beberapa sub system seperti graphics, input, sound, timer, configuration. System bertanggung jawab untuk melakukan inisialisasi, update dan mematikan sub system yang terdapat di dalamnya.

  5. Console
  6. Console dapat merubah setting game dan setting game engine di dalam game tanpa perlu melakukan restart pada game tersebut. Console biasa digunakan dalam proses debugging, seperti misalnya apabila game engine tersebut mengalami error maka kita hanya mengoutputkan error message tersebut ke dalam console tanpa harus melakukan restart.

  7. Support
  8. Support merupakan bagian yang sering digunakan pada system di galam game engine. Support berisikan rumus-rumus matematika yang biasa digunakan, vector, matrix, memory, file loader. Merupakan dasar dari game engine dan hampir digunakan dalam semua project game engine.

  9. Renderer/Engine Core
  10. Renderer/engine core terdiri dari beberapa sub yaitu visibility, collision detection dan response, camera, static geometry, dynamic geometry, particle systems, billboarding, meshes, skybox, lighting, fogging, vertex shading dan output.

  11. Game Interface
  12. Game interface merupakan layer antara game engine dan game itu sendiri. Berfungsi sebagai control yang bertuuan untuk memberikan interface apabila di dalam game engine tersebut terdapat fungsi yang bersifat dinamis sehingga memudahkan untuk mengembangkan game tersebut.

  13. The Game
  14. Game merupakan inti dari penggunaan game engine sendiri, sehingga ini tergantung bagaimana pengguna dalam mengembangkannya.

Referensi