21/09/15

Live Life with Love - starting new life

Assalamualaikum ,



hai blogger , udah lama banget yah ga ngeblog selepas lulus kuliah. mau mulai ngeblog lagi ah. bismillah.
 
awal mulanya karena pekerjaan ku sekarang sebagai IT Support (kerja kalo ada eskalasi atau problem aja) lama - lama jenuh ga productive tiap hari nya. Jadi terpikir kegiatan apa yang berlangsung tiap hari dan ga bikin bosen.


kegiatan mengisi waktu senggang di kantor yang menurut ku membosankan :

1. nge-game : awalnya sih antusias buat naik level dan nemuin tantangan baru, tapi kalo udah mencapai level yang diinginkan dan tantangan di level itu udah abis semua jadi balik bosen lg , apalagi game nya itu itu aja. hadeeeh (aku bukan tipe cewe gamer sih hahaha).

2. baca berita online : yang ini boleh lah yah untuk tau berita penting biar ga kudet bgt (ini biar ga kudet apa kepo yah? haha), terlepas dari itu kayaknya kalo cuma baca berita aja kurang asik ya kan. (baiklah cari alternatif lagi).

3. browsing : browsing kalo lagi butuh info detail aja , misalnya nyari tempat makan yang enak, nyari rekomendasi shampoo yang tanpa pewarna dan pewangi, pokoknya seputar kebutuhan sehari hari deh. tapi ga cukup juga klo baca berita dan browsing aja. (soalnya hampir sehari dalam seminggu magabut..huhuhu).

4. Buka - buka sosmed : yang satu ini mah ya, bikin org jadi stalker , kepo-ers dan baper hahaha.
ritual nya buka path baca postingan dari yang terakhir diliat sampe on top update (ini bisa dibilang nge-stalk dan kepo. kalo bahasa halusnya silent reader haha ) selesai path buka bbm walaupun tidak ada notifikasi yang masuk (sekedar cek recent updates , kepo lg haha). abis bbm buka Whatsapp cuma cek group aja. selesai whatsapp buka Instagram nah inilah sosmed yang paling lama visit time nya haha. ya biasa cewe cuci mata liat belanjaan online. dan terlebih banyak yang spam comment "cek IG kita yah sis" jadi dicek deh satu satu haha. kalo aku sih demen liat aja ,belinya mah nggak (cuma bikin baper).



untuk point - point diatas dikurangi yah teman teman , lebih bagus ditinggali, cari yang berguna, bermanfaat dan berpahala aja. mendingan nyicil khatam qur'an . in shaa allaah . (udah niat menjadi diri yang lebih baik, in shaa allaah istiqomah) bismillah

nah selain daripada itu aku kepikirian ngeblog mungkin lebih baik untuk mengisi waktu luang yang ada, siapa tau bisa penyampaikan informasi yang bermanfaat dan tujuan lainnya adalah ngerangkum perjalanan hidup biar suatu saat nanti masih bisa merasakan tiap tiap perubahannya. mungkin bisa jadi buku cerita buat anak dan cucu kelak (cailaah) aaamiin in shaa allaah .

oke kita mulai ngeblog lagi, tapi kudu diperhatikan , jangan sampe isi blognya hanya seputar keluhan, riya (pamer), membuka aib diri sendiri dan keluarga dengan cara menceritakan keburukan dan kejelekan yang ada. pokoknya "Katakan apa yang baik dikatakan , dan jangan katakan jika tidak perlu dikatakan". sesuai judulnya Live Life with Love, "Jalani Hidup dengan Cinta" in shaa allaah isinya kebahagiaan selalu..aaamiiiiin

bismillah ya..

wassalamualaikum :)

nb: pict from google disini



30/04/13

IMplementasi Neural Network pada Algoritma Fuzzi

1. PENDAHULUAN

Kenyataan bahwa masalah yang dihadapi dalam dunia nyata khususnya di bidang industri adalah masalah-masalah kompleks yang melibatkan banyak variabel dan memerlukan keputusan yang cepat menyediakan peluang yang besar bagi aplikasi jaringan saraf tiruan (artificial neural network, ANN). Neural network menawarkan metode penghitungan secara paralel dan terdistribusi sehingga memungkinkan penghitungan dengan melibatkan banyak variabel dengan proses hitung yang cepat. Neural network dikembangkan berdasarkan prinsip kerja jaraingan saraf pada manusia dimana untuk bisa mahir dalam ketrampilan tertentu harus melalui tahapan pembelajaran atau pelatihan dahulu. Pengembangan metode ini memang juga diarahkan untuk aplikasi penghitungan dengan komputer (Kaparthi dan Suresh, 1991).

Aplikasi, khususnya di bidang industri, dari neural network sekarang ini telah meluas ke berbagai sendi-sendi industri untuk meningkatkan efisiensi dan produktifitas antara lain pendiagnosa sistem produksi, memonitor kondisi perkakas, optimisasi desain, deteksi kemacetan lini produksi, pengendalian proses, pembentukan group technology/cellular manufacturing, sistem inspeksi dan pengendalian kualitas, dll. Aplikasi dari segi pengelohan informasi antara pengenalan pola, klasifikasi data dan pola, manajemen pengendalian, dll (Zhang dan Huang, 1995).

Agar bisa digunakan, neural network harus dilatih dulu. Pada prinsipnya ada dua cara untuk melatih network, yaitu dengan supervised learning dan unsupervised learning (Hagan et al, 1996). Supervised learning atau pembelajaran dengan diawasi memerlukan seperangkat data input untuk melatih yang terdiri dari pasangan data input dan data target. Network dilatih agar dapat memproses data input dan mengeluarkan output seperti yang ditargetkan. Jadi network akan mengatur diri sendiri agar dapat bertingkah seperti yang dilatihkan.Pada unsupervised learning, di sini network hanya diberi seperangkat data input saja tanpa adanya target yang diharapkan. Network akan melatih dirinya sendiri untuk bisa mengenali pola data input dan kemudian mengklasifikasikannya. Berapa jumlah kelompok data output tidak ditentukan dan jumlah kelompok data ini bisa terus bertambah tanpa batas. Dalam unsupervised ini, network hanya diberi rambu-rambu tentang tingkat keseragaman data input saja. Atau dengan kata lain, jumlah kelompok data yang terbentuk ditentukan oleh tingkat keseragaman data. Jika tingkat keseragaman rendah maka jumlah kelompok data yang dihasilkan akan sedikit dan demikian sebaliknya. Fuzzy neural network dalam penelitian ini merupakan kombinasi antara fuzzy time series yang memiliki nilai akurasi paling baik dari penelitian sebelumnya dan multi layer perceptron neural network.

2. IMPLEMENTASI PERAMALAN FUZZY NEURAL NETWORK A. Skenario Uji Coba

Pada uji coba model peramalan Fuzzy Neural Network dilakukan uji coba dengan skenario pengubahan parameter umum dan parameter khusus. Parameter umum adalah perubahan panjang interval, sedangkan parameter khusus berupa perubahan nilai pembagi interval. Nilai parameter yang digunakan pada uji coba dipaparkan pada Tabel 2.

B. Uji Coba FNN dengan Pembagi Interval 4

Dari implementasi dan uji coba model peramalan fuzzy neural network kemudian dilakukan evaluasi kinerja dengan menghitung nilai MAPE. Nilai MAPE dari hasil uji coba peramalan dengan fuzzy neural network dengan pembagi interval bernilai 4 disajikan dalam Tabel 3.

Berdasarkan nilai MAPE pada Tabel 3 diketahui bahwa nilai akurasi terbaik dihasilkan dari uji coba dengan panjang interval 25. Selain itu ditemukan bahwa semakin kecil panjang interval, hasil peramalan yang didapatkan semakin baik.

C. Uji Coba FNN dengan Pembagi Interval 3

Uji coba selanjutnya yang dilakukan adalah uji coba model peramalan fuzzy neural network dengan skenario pembagi interval 3, dan panjang interval sama seperti pada uji coba sebelumnya. Hasil yang disajikan pada Tabel 4 menunjukkan bahwa nilai akurasi terbaik untuk peramalan fuzzy neural network dengan pembagi interval 3 didapatkan dari uji coba dengan panjang interval 25.

3. KESIMPULAN Dari penelitian yang telah dilakukan, beberapa kesimpulan yang dapat diambil berdasarkan hasil implementasi fuzzy neural network antara lain adalah :

• Kelebihan dari model peramalan fuzzy neural network adalah dapat menghasilkan peramalan yang tidak jauh berbeda dari data aslinya, sementara kekurangan model ini terletak pada kemampuannya yang hanya terbatas untuk melakukan peramalan sesuai jumlah periode data masukannya saja. • Model peramalan fuzzy neural network dapat menghasilkan peramalan dengan akurasi yang sangat baik dengan nilai MAPE sebesar 8,667 %. Akurasi paling baik dihasilkan saat peramalan menggunakan panjang interval 50 dan pembagi interval 3. • Untuk implementasi fuzzy neural network dengan pembagi interval 4 ditemukan bahwa semakin kecil panjang interval, hasil peramalan yang didapatkan semakin baik. Sementara untuk implementasi fuzzy neural network dengan pembagi interval 3 ketentuan tersebut tidak berlaku. • Pada peramalan fuzzy neural network, jumlah neuron pada lapisan tersembunyi tidak memiliki pengaruh yang cukup kuat terhadap hasil peramalan. Ini dikarenakan pada proses defuzzifikasi relasi logika fuzzy yang dihasilkan oleh neural network hanya digunakan untuk membandingkan relasi yaitu nilai dari letak dua periode data pada interval. Apakah data n lebih besar dari data n+1 atau sebaliknya, dan tidak memperhatikan besar nilai relasinya. • Proses defuzzifikasi pada peramalan fuzzy neural network perlu disesuaikan kembali agar dapat menghasilkan peramalan yang tidak hanya terbatas pada jumlah data masukannya.

Sumber : https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=112&cad=rja&ved=0CDkQFjABOG4&url=http%3A%2F%2Fwww.uajy.ac.id%2Fjurnal%2Fjti%2F1999%2F3%2F2%2Fdoc%2F1999_3_2_5.doc&ei=4otaUfuzH8m8rAfNlIHIBw&usg=AFQjCNHssfZ-cAhmWNQML-SBTQVr8NLnEw&sig2=rHmJ_LpU21UY7uxcNkspZA&bvm=bv.44697112,d.bmk Setiyoutami, A., Prediksi Kunjungan Pasien Poli Bedah di Rumah Sakit Onkologi Surabaya Menggunakan Fuzzy Time Series. Surabaya: Tugas Akhir Jurusan Sistem Informasi FTIf ITS Surabaya (2012).

09/01/13

Tools Forensik IT 3

• Phone Investigation

• PDA Investigation

• Forensic LAB Tools

• Tool forensik cyber

Windows File Analyzer adalah sebuah freewareber-platform Windows yang mampu membaca cache Windows seperti “thumbs.db”, prefecth, shortcut, dan “index.dat”. “Thumbs.db” adalah cache Windows yang berisikan data berupa history file gambar atau video yang terdapat dalam suatu folder agar Windows dapat menampilkan gambar maupun video tersebut secara thumbnail atau filmstrip. Prefetch adalah folder manajemen pemanggilan aplikasi di Windows, agar proses loading/pemanggilan aplikasi dapat lebih cepat pada pemanggilan kedua. Shortcut adalah suatu pemicu aplikasi agar aplikasi tersebut dapat dijalankan tanpa harus terlebih dahulu membuka folder dimana aplikasi tersebut ter-install jika diterjemahkan secara harafiah. Shortcut adalah jalan pintas untuk memanggil suatu aplikasi. “Index.dat” adalah suatu file yang berisikan history/catatan aktivitas ketika sedang berselancar didunia maya.


Fungsi dari Windows File Analyzer adalah membaca keseluruhan isi cache Windows tersebut. Windows akan melakukan caching dari semenjak pertama kali Windows digunakan, dan pencatatan akan selalu dilakukan dari waktu ke waktu (baik itu ketika terjadi penambahan file maupun penghapusan). Informasi yang ditampilkan dari pembacaan cache tersebut berupa tanggal pertama kali file/shortcut tersebut dibuat, tanggal terakhir kali penggunaan, properties dan thumbnail preview gambar maupun video, kapan suatu aplikasi ter-install hingga terakhir kali dijalankan, halaman web yang pernah dikunjungi dan lain sebagainya. Dengan freeware ini, kita dapat mengetahui pernah ada atau tidaknya suatu file (seperti untuk membuktikan bahwa si pelaku memang sebagai penyebar luas video kelakuan buruk beberapa selebriti Indonesia karena file tersebut tercatat pernah mendiami harddisk-nya), aplikasi apa saja yang dijalankan, hingga untuk mengetahui website apa saja yang pernah dikunjungi.


SC Magazine merekomendasikan DriveSpy dan EnCAse :

• DriveSpy beroperasi pada lingkungan DOS dan memberikan semua tool yang diperlukan untuk melakukan eksplorasi suatu media dan menemukan data yang relevan.

• EnCASE memiliki GUI yang menarik dan beroperasi pada image ketimbang bukti asli. EnCase juga mengikutsertakan fungsi pembangkitan laporan dan suatu feature yang sangat berguna yang mendukung bahasa pemrograman bernama Escript. EnCase, dari Guidance Software bisa mengelola dan melihat semua bukti. Terdapat feature untuk mencatat siapa yang bekerja dan kapan dengan data.

• SafeBack dari New Technologies, Inc untuk memelihara barang bukti dipakai secara khusus oleh pihak penegak hukum.



Artikel terkait lainnya tentang Tools-Tools Forensik dari Kelompok 7 dapat diliat pada blog berikut ini :

Tools Forensik IT 1


Tools Forensik IT 2


Tools Forensik IT 4


Tools Forensik IT 5


25/12/12

Bisnis Informatika

Mata Kuliah Pengantar Bisnis Informatika menggarahkan kita untuk merusaha mebangun bisnis. kami akan mencoba bisnis yakni penjualan hewan qurban yang nantinya pemasarannya akan dipasarkan melalui website online. Berikut ini tujuan dan tahap perancangannya :

24/06/12

tugas softskill translate chapter 5 "the keyboard"

Bab 5. User input "Jika terus, manusia akan berevolusi dan kehilangan semua jarinya, kecuali jari untuk menekan tombol." -Frank Lloyd Wright KUNCI TOPIK - Keyboard - mouse - Joystick - Hardware Abstraction - Angkatan Saran atau masukan - Penutupan Sebuah model interaksi pengguna yang dasar adalah kunci untuk setiap permainan yang baik. Tanpa mekanisme input pengguna yang memadai,gameplay menjadi terhambat dan frustrasi terjadi. Dalam bab ini, kita akan membahas dasar-dasar kontrol user input. Sayangnya, akan ada beberapa aturan umum. Interaksi pengguna terjadi pada pada tingkat abstraksi yang relatif rendah, dan implementasi cenderung mengarah pada hardware. Bila memungkinkan,teknik umumlah yang kemungkinan dipakai. Tapi sebagian besar bab ini dikhususkan untuk metode input khusus yang tersedia untuk platform populer pada PC, seperti Win32 API dan Microsoft DirectInput. Keyboard Keyboard adalah perangkat input utama untuk PC berbasis permainan, tetapi juga tersedia untuk ponsel, beberapa consol, dan palm device. itu semua perangkat input yang sering dipakai dan yang paling banyak tersedia. sarangnya User Input(perangkat input) yang populer tersebut tidak terlalu cocok untuk Game. Pemetaan Keyboard mengambil waktu untuk belajar, dan ide umum dari keyboard adalah sama sekali tidak praktis untuk anak-anak.Menjadi perangkat multifungsi yang dapat digunakan untuk mengetik dokumen dan untuk bermain game, tidak mengherankan bahwa keyboard dapat dibaca menggunakan berbagai metode, tergantung pada persyaratan tertentu dari aplikasi. Beberapa metode mengambil string penuh, yang lain bekerja atas dasar kunci-demi-kunci, dan sebagainya. Tapi untuk tujuan game, dua jenis rutinitas relevan. Pertama, ada rutinitas sinkron, yang menunggu sampai tombol ditekan dan kemudian melaporkannya ke aplikasi. Kedua, ada rutinitas asynchronous, yang kembali segera setelah dipanggil, dan memberikan informasi tentang aplikasi yang tombol ditekan, jika ada. Motode membaca sinkron digunakan untuk mengetik informasi, seperti nama karakter dalam permainan role-playing(RPG). Mereka bekerja dengan pemungutan suara controller sampai pesan baru masukan kunci tiba. Tapi mereka tidak sangat baik cocok untuk gameplay nyata. Kode permainan harus terus-menerus memeriksa untuk melihat apakah tombol ditekan, dan apapun respon, terus menggambar, melaksanakan AI, dan sebagainya. Jadi, pengendali asynchronous adalah cara untuk pergi. Mereka menyediakan tes cepat untuk memeriksa keadaan keyboard yang efisien.Rutinitas Asynchronous juga bisa milik dua keluarga yang berbeda. Beberapa dari mereka yang dirancang untuk menguji keadaan kunci individu, sehingga pemrogram melewati kode kunci sebagai parameter dan mendapat negara sebagai terjadi. Lainnya, seperti yang terpapar oleh DirectInput, mengambil negara seluruh keyboard dalam satu panggilan, sehingga programmer dapat mengakses struktur data dan memeriksa keadaan setiap tombol tanpa lebih lanjut hardware cek. Tipe kedua rutin umumnya lebih efisien karena ada overhead kurang terlibat. Sebagai contoh, kita akan fokus pada panggilan asynchronous satu tombol untuk platform PC. Panggilan adalah Windows spesifik dan merupakan bagian dari Win32 API. Sintaksnya adalah short GetAsyncKeyState(int keycode); pada saat sintaks ini dipanggil menerima kode kunci dan mengembalikan nilai pendek, yang mengkode informasi negara yang berbeda. Kuncinya kode kita lulus sebagai parameter dapat menjadi karakter dikapitalisasi, seperti "K", atau kode kunci diperpanjang,yang digunakan untuk membaca karakter khusus. Dengan menggunakan kode kunci yang diperluas, kita dapat membaca kunci tertentu, seperti Hapus, tombol fungsi, Tabs, dan sebagainya. Tabel 5.1 menyediakan daftar kode kunci utama khusus untuk dipanggil. Nilai encode dikembalikan sebagian kunci dilewatkan sebagai parameter. Bit yang paling signifikan diaktifkan jika kuncinya ditekan, sedangkan least significant bit diaktifkan jika kunci ini diaktifkan yang terakhir GetAsyncKeyState waktu dipanggil. Berikut adalah contoh bagaimana untuk memeriksa apakah tombol Shift kiri adalah ditekan: If (GetAsyncKeyState(VK_LSHIFT)) { // whatever } Perhatikan bahwa, karena sifat dari panggilan, kita dapat memeriksa beberapa tombol. Contoh berikut menunjukkan bagaimana untuk menguji untuk Shift kiri DAN kombinasi Kembali: If ((GetAsyncKeyState(VK_LSHIFT)) && (GetAsyncKeyState(VK_RETURN))) { // whatever } Seperti yang Anda lihat, setiap tes kunci memerlukan system call, yang dapat menyusahkan bagi sistem-sistem memeriksa banyak kunci yang berbeda. Sekarang, mari kita membandingkan panggilan ini dengan cek seluruh keyboard, yang dapat dilakukan dengan menggunakan panggilan: bool GetKeyboardState(PBYTE *lpKeyState); Berikut hasilnya hanya mengkodekan apakah fungsi berhasil, dan daging yang sebenarnya dikembalikan sebagai array dikirimkan sebagai referensi. Kemudian, cek berurutan seperti berikut ini melakukan tes individu, yang tidak lain adalah lookup sederhana array: if (keystate[VK_RSHIFT]) { // right shift was pressed } Sekali lagi, untuk game yang memeriksa banyak kunci (seperti simulator penerbangan), opsi ini bisa lebih baik daripada diulang panggilan ke GetAsyncKeyState. Programmer hanya perlu menyadari bahwa panggilan awal untuk GetKeyboardState diperlukan untuk memuat array. Perangkap lain yang mungkin diperhatikan adalah bahwa modus kedua ini tidak segera memeriksa kunci ketika Anda melakukan tes. Tombol diperiksa saat GetKeyboardState dipanggil. Jika ada yang signifikan menunda antara tes ini dan lookup array, efek samping yang tidak diinginkan mungkin terjadi karena array akan berisi nilai-nilai kunci "old" atau ganjil. Keyboard dengan DirectInput DirectInput menyediakan akses cepat untuk asynchronous negara kunci. Panggilan tunggal dapat mengambil keadaan seluruh keyboard, tes berikutnya sehingga hanya pencarian tabel. Operasi ini demikian sangat mirip dengan pemanggilan GetKeyboardState Win32. Tapi sebelum kita menggali kita perlu membaca kode dalam keyboard, kita perlu membahas bagaimana DirectInput bekerja. DirectInput merangkum keyboard, joystick, mouse, dan input perifer lainnya yang bernaung pada antarmuka yang disebut perangkat. Operasi ini benar-benar mudah. Pertama-tama kita perlu boot DirectInput. Ini berarti menciptakan objek DirectInput, dari mana semua benda lain yang berhubungan dengan pengolahan input berasal. Objek DirectInput demikian dapat digunakan untuk membuat perangkat, yang merupakan interface logis untuk peripheral. Setelah perangkat dibuat, kita perlu menentukan beberapa parameter, seperti format data yang kita inginkan untuk pertukaran dengan perangkat, dan tingkat koperasi, yang memberitahu DirectInput jika perangkat yang akan dibagi di antara aplikasi yang berbeda atau jika kita membutuhkannya secara eksklusif. Perangkat DirectInput dapat disurvei asynchronous. Kami query keadaan perangkat, bukan menunggu khusus acara seperti kunci atau tekan tombol. Ini berarti DirectInput akan mengambil snapshot dari kondisi perangkat pada saat ini dan mengembalikannya ke aplikasi sehingga dapat diproses. Sebagai ringkasan, berikut adalah daftar langkah-langkah dalam mendirikan keyboard DirectInput: 1. Membuat objek DirectInput. 2. Buat perangkat keyboard. 3. Mengatur format data untuk membacanya. 4. Mengatur tingkat cooperative yang akan Anda gunakan pada sistem operasi. 5. Baca data yang diperlukan. Sekarang mari kita beralih ke contoh spesifik, dimulai dengan kode DirectInput diperlukan untuk boot API. kode itu pada bagian ini telah diuji di kedua DirectX8 dan DirectX9. DirectInput hampir identik di kedua versi. LPDIRECTINPUT8 g_pDI = NULL; HRESULT hr = DirectInput8Create (GetModuleHandle (NULL), DIRCTINPUT_VERSION, IID_IDirectInput8, (VOID **) & g_pDI, NULL))) Dalam kode sebelumnya, parameter pertama digunakan untuk mengirim pegangan contoh untuk aplikasi yang menciptakan objek DirectInput. Kemudian, kita ,membutuhkan versi DirectInput yang diminta. Macro DIRCTINPUT_VERSION adalah cara praktis untuk melewatkan nomor versi saat ini. Selanjutnya, kita membutuhkan identifier unik antarmuka untuk objek yg diminta. Kami menggunakan IID_IDirectInput8 untuk meminta DirectInput objek, tetapi kita bisa menggunakan parameter lain untuk menentukan versi ANSI atau Unicode antarmuka. Kami kemudian membutuhkan pointer sehingga kami dapat menerima objek yang sudah diinisialisasi, dan parameter terakhir digunakan untuk melakukan agregasi Komponen Objek Model (COM). Anda mungkin tidak ingin agregat Objek DirectInput untuk hal lain, sehingga meninggalkannya sebagai NULL. Sekarang kita memiliki objek DirectInput siap digunakan. Sekarang saatnya untuk kode keyboard nyata. Kami pertama akan meminta perangkat dan mengatur beberapa parameter yang menentukan bagaimana kita akan berkomunikasi dengannya. Kemudian, kita akan memeriksa kode sumber yang digunakan untuk membaca data dari keyboard. Langkah pertama adalah untuk benar-benar meminta perangkat dari objek DirectInput. Hal ini dicapai dengan baris: HRESULT hr = g_pDI-> createDevice (GUID_SYSKeyboard, & g_pKeyboard, NULL); Panggilan harus menerima Global Unique Identifier (GUID) untuk perangkat yang diinginkan. DirectInput dibangun di atas COM, sebuah model pemrograman berorientasi objek. Dalam COM, GUIDs digunakan untuk mengidentifikasi objek tertentu atau interface. Secara internal, GUIDs hanya 128-bit struktur, tetapi mereka digunakan untuk mewakili fungsi, objek,dan umumnya setiap DirectX membangun. Dalam hal ini, GUIDs klasik untuk perangkat yang berbeda - GUID_SYSKeyboard: Keyboard sistem default. - GUID_SysMouse: Mouse sistem default. GUIDs tambahan dapat ditugaskan untuk joystick. Namun, GUIDs tidak harus ditulis secara langsung, tetapi sebagai hasil dari panggilan untuk DirectInput8 :: EnumDevices. Kami akan mencakup joystick pada bagian berikutnya. Untuk keyboard kita, GUID_SYSKeyboard akan melakukan pekerjaan. Parameter kedua adalah hanya pointer ke baru menciptakan perangkat, dan parameter terakhir ini lagi disediakan untuk agregasi dan dengan demikian harus diatur ke NULL. Sekarang, kita harus memberitahu keyboard bagaimana kita ingin bertukar data. Hal ini dicapai dengan panggilan untuk SetDataFormat, seperti yang ditunjukkan di sini: HRESULT hr = g_pKeyboard-> SetDataFormat (& c_dfDIKeyboard); Panggilan ini harus menerima sebuah parameter dari tipe LPCDIDATAFORMAT, yang merupakan struktur didefinisikan sebagai: typedef struct {DIDATAFORMAT DWORD dwSize; DWORD dwObjSize; DWORD dwFlags; DWORD dwDataSize; DWORD dwNumObjs; LPDIOBJECTDATAFORMAT rgodf; DIDATAFORMAT}, * LPDIDATAFORMAT; typedef const DIDATAFORMAT * LPCDIDATAFORMAT; Struktur ini mengontrol jumlah objek kita akan meminta, format masing-masing, dan sebagainya. Karena untuk mengisi struktur kompleks, DirectInput sudah dilengkapi dengan beberapa format data yang telah ditetapkan yang dapat kita gunakan secara langsung. Untuk keyboard, yang c_dfDiKeyboard format yang memberitahu DirectInput kita akan meminta keyboard lengkap, disimpan dalam array 256 byte. Selain itu, kita perlu memberitahu DirectInput tentang tingkat cooperative yang akan kita gunakan dengan perangkat ini. Ini ditelusuri dengan menggunakan baris: HRESULT hr = g_pKeyboard-> SetCooperativeLevel (hWnd, DISCL_FOREGROUND | DISCL_EXCLUSIVE); Di sini kita melewati jendela menangani sebagai parameter pertama, dan parameter kedua adalah ATAU dari serangkaian flag yang mengontrol tingkat koperasi. Dalam hal ini, kita mengatakan bahwa kita ingin DirectInput eksklusif mengakses dan bahwa akses ini hanya berlaku jika aplikasi di latar depan. Sebagai aplikasi kita bergerak ke latar belakang, perangkat secara otomatis unacquired. Selain itu, kami perlu mendapatkan keyboard, sehingga kami dapat mulai melakukan query negaranya. Baris berikut akan melakukan yang bagi kita: g_pKeyboard-> Acquire (); Dan sekarang kami siap untuk mulai menggunakan keyboard. Berikut adalah potongan kode yang menyatakan kedua DirectInput dan keyboard, dan memastikan perangkat siap. Pengecekan error telah dihilangkan untuk kejelasan: HRESULT jam; hr = DirectInput8Create (GetModuleHandle (NULL), DIRCTINPUT_VERSION, IID_IDirectInput8, (VOID **) & g_pDI, NULL); hr = g_pDI-> createDevice (GUID_SYSKeyboard, & g_pKeyboard, NULL); hr = g_pKeyboard-> SetDataFormat (& c_dfDIKeyboard); hr = g_pKeyboard-> SetCooperativeLevel (hDlg, dwCoopFlags); hr = g_pKeyboard-> Acquire (); Membaca keyboard bahkan lebih mudah daripada menyiapkan itu. Yang harus kita lakukan adalah mempersiapkan array 256-byte dan menyebarkannya ke DirectInput dengan keyboard yang diperoleh untuk query statenya: Diks BYTE [256]; / / DirectInput Keyboard state penyangga ZeroMemory (diks, sizeof (diks)); hr = g_pKeyboard-> GetDeviceState (sizeof (diks), diks); Perhatikan bagaimana kita membersihkan buffer dan kemudian menyebarkannya ke DirectInput. Seperti GetAsyncKeyState, kunci Kode tertentu harus digunakan setelah membaca query untuk setiap tombol. Dalam hal ini, semua kunci diwakili oleh simbol konstanta, seperti: DIK_RETURN Kunci kembali DIK_SPACE Tombol spasi DIK_A ... DIK_Z Kunci abjad DIK_F1 ... DIK_F10 Tombol fungsi Sekarang, untuk query kunci tertentu, kita harus menguji bit yang paling signifikan dari posisi array yang sesuai. Jika posisi yang diatur satu, kuncinya saat ini sedang ditekan. Jadi, untuk memeriksa apakah tombol diaktifkan kembali, kode berikut dapat digunakan: bool return_pressed = (buffer [DIK_RETURN] & 0x80) = 0);! Seperti biasa, kita bisa membaca kombinasi, sehingga kami dapat memeriksa apakah beberapa kunci yang ditekan secara bersamaan. Karena hanya ada satu DirectInput membaca di awal, ini hanya pencarian array. Membaca keyboard yang benar-benar mudah. Tapi kita harus berhati-hati dengan acquiring and unacquiring perangkat, yang dapat membuat kerusakan input controller kita. Kadang-kadang, terutama di beberapa tingkat mode cooperative, kita dapat kehilangan kontak dengan keyboard sesaat. Ini disebut unacquiring perangkat. alasanyang paling populer untuk ini adalah bahwa aplikasi kita pindah ke background, sehingga kehilangan akses keyboard pada aplikasi pendukung yang lain, yang ada pada background sekarang. Beberapa acara lain mungkin akan membuat kita kehilangan jejak perangkat kita. Jika ini terjadi, kita akan menemukannya dalam panggilan GetDeviceState berikutnya, yang akan gagal. Kita kemudian harus reacquire keyboard sehingga kami dapat terus query negaranya. Hal ini dicapai sebagai berikut: Diks BYTE [256]; / / DirectInput Keyboard negara penyangga ZeroMemory (diks, sizeof (diks)); hr = g_pKeyboard-> GetDeviceState (sizeof (diks), diks); if (FAILED (hr)) { hr = g_pKeyboard-> Acquire (); sementara (hr == DIERR_INPUTLOST | | hr == DIERR_OTHERAPPHASPRIO) hr = g_pKeyboard-> Acquire (); } Perhatikan bagaimana kita mendeteksi kesalahan dan terus memanggil sampai kita memperoleh kembali hak akses ke perangkat. Setelah kita selesai dengan aplikasi kita, sekarang saatnya untuk melepaskan semua objek DirectInput. Melepaskan keyboard dengan 2 langkah proses. Pertama, kita unacquire perangkat, kemudian lepaskan struktur datanya. Kedua, kita harus menghapus objek DirectInput utama. Secara keseluruhan, urutannya dapat dicapai dengan menggunakan kode berikut: if (g_pKeyboard) g_pKeyboard-> Unacquire (); SAFE_RELEASE (g_pKeyboard); SAFE_RELEASE (g_pDI); Perhatikan bahwa kita menggunakan macro SAFE_RELEASE yang disediakan dengan DirectX untuk memastikan bahwa semua struktur data dan memori yang dialokasikan akan dihapus.

20/03/12

Mengenal Game Engine

Game Engine adalah sebuah perangkat lunak sistem yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol permainan video dan sistem operasi desktop, seperti Microsoft Windows, Linux, dan Mac OS X. Fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render ( “renderer”) untuk 2D atau 3D grafis, sebuah mesin fisika atau tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori, threading, lokalisasi dukungan, dan sebuah adegan grafik. Proses pengembangan permainan sering dihemat oleh sebagian besar menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.

3 tipe game engine yaitu:

1. roll your own game engine
tipe game engine seperti ini biasanya menggunakan API seperti XNA, DirectX atau openGL untuk menciptakan game engine. tipe game engine banyak diminati oleh para developer game karena tidak bersifat komersil. tetapi tipe game engine ini dapat menjadi sebuah bomerang bagi developernya karena untuk menyempurnakan game enginenya membutuhkan waktu yang sangat lama.

2. mostly ready game engines
engine dengan tipe kedua sudah menyediakan semua yang dibutuhkan oleh programer game. contohnya GUI, physics, libraries model,texture dll. tetapi salah satu kelemahan yang dimiliki adalah mempunyai beberapa batasan contoh tipe game engine seperti ini Unreal engine, sourc engine, dan id tech engine

3. point and click engines
engine merupakan engine yang sangat dibatasi tetapi sangat user friendly. pengguna dapat menciptakan sebuah game engine dengan memanfaatkan coding yang ada. kelemahannya adalah terbatasnya dari interaksi yang dilakukan dan game engine ini dapat mengefisiensikan waktu.

Berikut merupakan contoh-contoh game engine yg berbayar ataupun yg free alias gratis:

Engine Berbayar untuk membuat game 3D:

1. 3D Game Maker
2. 3D Game Studio
3. DarkBASIC
4. TrueVision
5. FPS Creator
6. Blade 3D
7. Source
8. Esenthel for commercial
9. Torque 3D
10. Shiva 3D
11. CryEngine

Untuk membuat game 2D:

1. RPG MAKER VX
2. RPG MAKER XP
3. Game Maker Pro


Engine Gratis

Untuk membuat game 3D:
1. Panda 3D *)
2. OGRE *)
3. Esenthel for noncommercial
4. Unity Free Edition
5. G3D *)
6. Genesis3D *)
7. FPS Creator Free Edition
8. DarkBASIC Pro Free Edition
9. Cube 2 (Sauerbraten) *)
10. Unreal Development Kit
11. Platinum Arts Sandbox *)
12. CAST II *)
13. 3D RAD Pro
14. DX Studio
15. Blender *)
16. Angel ( ini enginenya
Nusantara Online) *) **)
17. Irrlicht *)
18. id Tech (a.k.a Doom Engine, yang dipakai membuat Doom 2) *)
19. Quake Engine (yang dipakai menggarap Quake dan HalfLife)*)

Untuk membuat game 2D:

1. RPG MAKER 2000
2. RPG MAKER 2003
3. 001 Action/RPG Maker
4. Game maker
5. 2D Fighter Maker
6. M.U.G.E.N.
7. Adventure Maker
8. Adventure Game Studio
9. Stratagus *)
10. Battle for Westnoth *)
11. RPG Studio *) **)
12. Scirra Construct*)
Catatan : *) berarti open source sedangkan **) berarti BUATAN INDONESIA.

Source : ebook (Penulis: Ade Malsasa Akbar http://ademalsasa.co.cc)

18/03/12

asal usul game



kata "Game" berasal dari bahasa inggris dan jika diartikan kedalam bahasa indonesia berarti "permainan". Game sangat perkembang dalam kehidupan. Di masa sekarang ini game tidak hanya dibutuhkan untuk kalangan anak-anak melainkan juga dikalangan remaja bahkan dewasa. Game biasanya dimainkan sekedar untuk melepas penat ataupun menjadi hobby.

Banyak sekali pengertian-pengertian tentang game menurut pandangan masing-masing orang, seperti dibawah ini:
*JOHN C BECK & MITCHELL WADE
Game adalah penarik perhatian yang telah terbukti.
Game adalah lingkungan pelatihan yang baik bagi dunia nyata dalam organisasi yang menuntut pemecahan masalah secara kolaborasi.

*IVAN C. SIBERO
Game merupakan aplikasi yang paling banyak digunakan dan dinikmati para pengguna media elektronik saat ini.

*FAUZI A
Game merupakan suatu bentuk hiburan yang seringkali dijadikan sebagai penyegar pikiran dari rasa penat yang disebabkan oleh aktivitas dan rutinitas kita

*SAMUEL HENRY
Game merupakan bagian tak terpisahkan dari keseharian anak, sedangkan sebagian orang tua menuding game sebagai penyebab nilai anak turun, anak tak mampu bersosialisasi, dan tindakan kekerasan yang dilakukan anak

*ANDIK SUSILO
Game adalah salah satu candu yang susah dihilangkan, bahkan ada yang mengatakan bahwa candu game online setara dengan narkoba

*JOHN NAISBITT
Game merupakan sistem partisipatoris dinamis karena game memiliki tingkat penceritaan yang tidak dimiliki film

*ALBERT EINSTEIN
Game adalah bentuk investigasi paling tinggi

*WIJAYA ARIYANA & DENI ARIFIANTO
Game merupakan salah satu kebutuhan yang menjadi masalah besar bagi pengguna komputer, karena untuk dapat memainkan game dengan nyaman, semua komponen komputernya harus memiliki kualitas yang baik, terutama VGA card-nya.

Game diciptakan mulai dari tahun 1952, berikut adalah sejarah game :

Game generasi pertama – Tahun 1952, di Universitas Cambridge, A.S Douglas menulis sebuah tesis untuk gelar sebuah PhD-nya mengenai interaksi antara komputer dan manusia. Dalam tesisnya itu ia menciptakan game komputer dari sebuah permainan tradisional bernama Tic-Tac-Toe. Game ini diprogram dengan memakai komputer EDVAC vacuum tube yang memiliki layer berupa cathode ray tube (CRT).
Kemudian di tahun 1958. William Haginbotham menciptakan video game pertamanya. Berbeda dengan Douglas, video game pertamanya yang berjudul Tennis for Two diciptakan dan dimainkan di osciloscope.

Tapi game komputer pertama yang benar-benar diciptakan menggunakan komputer betulan adalah Spacewar. Saat itu di tahun 60-an, komputer adalah barang sangat mewah. Dan biasanya komputer dipakai untuk kepentingan riset dalam dunia militer. Tapi seseorang bernama Steve Russel memiliki ketertarikan akan hal lain. Dia dan teman-temannya sangat nge-fan dengan kisah fiksi ilmiah berjudul Skylark karangan Edward E Smith. Dari situ mereka membuat sebuah game bernama Spacewar. Kebetulan juga, Steve Russel bekerja menggunakan sebuah komputer mainframe bernama MIT PDP-1 yang biasa dipakai untuk perhitungan statistik. Dengan komputer itulah dia membuat Spacewar di tahun 1961.

Game generasi kedua – Di tahun 1971, Nolan Bushnell bersama dengan Ted Dabney menciptakan game ber-genre arcade yang pertama. Dinamai Komputer Space, game itu didasari oleh Spacewar. Tahun 1972, Nolan dan Ted memulai Atari komputer. Kemudian dia mengembangkan game berjudul Pong yaitu game pertama yang tersedia untuk publik. Karena game-game sebelumnya hanya ada di dalam komputer mainframe untuk kesenangan sendiri saja. Asal usul Pong dimulai saat Nolan ingin membuat game sederhana dan mudah dimengerti. Dengan memory dan micro processor kelas rendah, kemampuan proses yang terbatas dan grafis yang sederhana, akhirnya dia membuat versi elektronik dari permainan ping pong yang kemudian menjadi Pong.
Sedikit selingan, Pong kemudian berevolusi menjadi sebuah game bernama Breakout. Game itu diciptakan oleh Steve Jobs untuk Atari. Dari situ, Steve Jobs dan temannya Steve Wozniak mulai berpikir untuk menciptakan sebuah PC. Kemudian mereka meminjam semua peralatan yang dipakai dalam proyek Breakout dan membuat sebuah prototype bernama Apple I. dan itu adalah cikal bakal dari komputer Apple Macintosh yang ada sekarang.

Pada tahun 1980, Atari mengeluarkan game berjudul Asteroid dan Lunar Lander. Kedua game tersebut adalah game pertama yang didaftarkan pada kantor hak cipta untuk mendapatkan paten. Asteroid merupakan game yang penuh inovasi baru dalam grafisnya. Daripada menggunakan metode raster, game ini merupakan grafis vector line seperti yang ada pada osciloscope.
Pengenalan Atari Video komputer System (Atari 2600) dengan CPU biasa dan slot untuk kasetnya, menjadi suatu era baru dalam dunia game. Di tahun 1980 itu juga menunjukkan penjualan yang meningkat dari PC yang biasa dipakai untuk game. Dan kini komputer bersaing dengan mesin konsol seperti PS atau Xbox. Dan komputer tidak hanya sebagai mesin untuk kepentingan bisnis semata, tapi juga untuk hiburan seperti game.

sumber : http://carapedia.com/pengertian_definisi_game_info2144.html dan http://inron01.blogspot.com/2008/11/sejarah-game.html
 

this is my blog Template by Ipietoon Cute Blog Design and Bukit Gambang