Wednesday, July 11, 2012

BUMP MAPPING


Pemetaan Bump mensimulasikan detail-tinggi penyimpangan permukaan, tidak dengan menggunakan geometri tambahan tetapi oleh normal perturbing. Karena normals adalah kekuatan pendorong dibelakang persamaan yang paling render, shading secara lokal sudah dimodifikasi, memberikan ilusi benjolan, keriput, dan sebagainya untuk penampil.

Pemetaan Bump diperkenalkan oleh Blinn pada akhir tahun 1970 dan sekarang menjadi teknik yang sangat populer di Pengunjung penyaji. Perlahan, permainan semakin banyak menggabungkan itu juga, sebagai produsen perangkat keras terus menemukan yang lebih sederhana, cara yang lebih kuat untuk menentukan pemetaan bump. Pada bagian ini, kita akan meninjau tiga metode yang paling populer bersama dengan beberapa kode tertentu untuk menghasilkan pemetaan benjolan dalam DirectX.

EMBOSS BUMP MAPPING
Gambar Embossing adalah operasi pengolahan yang meningkatkan tepi terarah, membuat emboss terlihat terangkat. Pemetaan Emboss bump mencoba untuk mencapai hasil yang sama secara real time dengan menggunakan beberapa texturing yang sebelumnya. Secara khusus, algoritma klasik menggunakan tiga yang lalu. Inilah ikhtisar lengkap:

1. Render objek dengan peta benjolan di grayscale.
2. Hitung (u, v) koordinat diterjemahkan ke arah cahaya.
3. Render peta bump lagi, untuk mengurangi dari pertama.
4. Render tekstur berbayang akhir.

Kita dapat mengurangi ini untuk dua langkah dengan pengkodean peta bump di alpha channel, sehingga algoritma ini adalah sebagai berikut:

1. Render tekstur dasar dengan peta bump sebagai alpha channel.
2. Tambahkan versi negatif dari peta bump.

Seperti yang Anda mungkin telah duga,  pencampuran antara RGB dan alpha channel harus multiply, jadi kami menerapkan persamaan Lambert untuk penerangan difus. DirectX 9 contoh berikut menggunakan pendekatan ini:
m_pd3dDev->SetTexture( 0, m_pEmbossTexture );
m_pd3dDev->SetTextureStageState( 0, D3DTSS_TEXCOORDINDEX, 0 );
m_pd3dDev->SetTextureStageState(0,D3DTSS_COLOROP,D3DTOP_MODULATE );
m_pd3dDev->SetTextureStageState(0,D3DTSS_COLORARG1,D3DTA_TEXTURE);
m_pd3dDev->SetTextureStageState(0,D3DTSS_COLORARG2,D3DTA_DIFFUSE );
m_pd3dDev->SetTextureStageState(0,D3DTSS_ALPHAOP,D3DTOP_SELECTARG1);
m_pd3dDev->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
m_pd3dDev->SetTexture( 1, m_pEmbossTexture );
m_pd3dDev->SetTextureStageState(1, D3DTSS_TEXCOORDINDEX, 1 );
m_pd3dDev->SetTextureStageState(1,D3DTSS_COLOROP,D3DTOP_SELECTARG2);
m_pd3dDev->SetTextureStageState(1, D3DTSS_COLORARG1,D3DTA_TEXTURE);

m_pd3dDev->SetTextureStageState(1,D3DTSS_ALPHAOP, D3DTOP_ADDSIGNED );
m_pd3dDev->SetTextureStageState(1,D3DTSS_ALPHAARG1, D3DTA_TEXTURE | D3DTA_COMPLEMENT );
m_pd3dDev->SetTextureStageState(1,D3DTSS_ALPHAARG2,D3DTA_CURRENT );
m_pd3dDev->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );
m_pd3dDev->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );
m_pd3dDev->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_ZERO );
m_pObject->Render( m_pd3dDevice );

Perhatikan bagaimana kita mengatur tekstur tahap 1 untuk kita melakukan penambahan sementara melengkapi peta.

Bagian kompleks algoritma setiap pemetaan emboss bump adalah bagaimana untuk menghitung arah cahaya, dengan menggeser u , nilai tekstur v untuk mensimulasikan bump. Kita harus mulai dengan menempatkan sistem koordinat di titik dan mengekspresikan arah cahaya dalam hal koordinat tersebut. Vektor pertama yang akan kita gunakan adalah normal pada simpul. Vektor kedua adalah vektor bersama baik u atau sumbu koordinat tekstur v, bersinggungan dengan permukaan. Vektor ketiga, dijuluki binormal, hanya produk silang antara normal dan tangen vektor. Ketiga vektor sesuai matriks dasar, yang dapat digunakan untuk mengubah arah cahaya untuk lokal koordinat. Ini vektor baru yang dikatakan dalam ruang tangen objek. Dengan skala itu (tergantung pada jumlah benjolan kita ingin mensimulasikan), kita dapat menambahkan X dan Y ke komponen u, berpasang-pasang v, dan dengan demikian menghasilkan efek benjolan peta terlihat bagus.

DOT3 BUMP MAPPING
Metode benjolan Dot3 pemetaan dimulai bukan dengan medan tinggi sebagai pemetaan benjolan timbul dilakukan, tetapi dengan normal peta: bitmap biasa yang mengkodekan normals bukan triplet RGB. Kemudian, untuk membuat benjolan peta, kita mengubah posisi cahaya untuk ruang tangen, seperti yang kita lakukan dengan embossing. Kemudian kita memiliki satu cahaya vektor untuk setiap titik di mesh. Untuk membuat segitiga, vektor cahaya untuk setiap satu dari tiga simpul diinterpolasi. Perhatikan bagaimana ini bukan interpolasi warna tapi interpolasi vektor cahaya. kemudian, peta benjolan dikombinasikan dengan nilai cahaya diinterpolasi untuk pixel diberikan. Ini dikombinasikan dengan produk dot seperti dalam persamaan Lambert klasik. Produk dot diimplementasikan sebagai fungsi campuran tekstur khusus.

Berikut adalah contoh kode untuk melakukan pemetaan Dot3 benjolan di Direct3D 9:
// we compute a light vector
D3DXVECTOR3 m_vLight;
point p(0.5,1,0.5);
p.normalize();
m_vLight[0]=p.x;
m_vLight[1]=p.y;
m_vLight[2]=p.z;
// encode the vector into a double word
DWORD dwFactor = VectortoRGBA( &m_vLight, 10.0f );
// set the computed factor so the texture unit uses it
d3d_device->SetRenderState( D3DRS_TEXTUREFACTOR, dwFactor );
// set the texture (here goes the normal map)
texture->activate(0);
// operation: dot3
d3d_device->SetTextureStageState(0,D3DTSS_COLOROP,
D3DTOP_DOTPRODUCT3);
// first argument: the normal map
d3d_device->SetTextureStageState(0,D3DTSS_COLORARG1,
D3DTA_TEXTURE);
// second argument: the factor
d3d_device->SetTextureStageState(0,D3DTSS_COLORARG2,
D3DTA_TFACTOR);

Dot3 pemetaan benjolan memiliki keuntungan lebih embossing  yang hasilnya terlihat sangat baik. Selain itu, Dot3 dapat menangani specular highlights pada peta benjolan, sedangkan emboss hanya mendukung difus komponen pencahayaan. Selain itu, kode ini sangat sederhana.

MIPMAPPING

Terkadang, khusus untuk objek yang letaknya jauh, anda akan melihat teksturnya berkerlap-kerlip,  dengan gerakan-gerakan kecil pada kamera maka menjadi terlihat aneh. Sebagaimana dibahas sebelumnya,  tekstur peta-peta harus  disaring, sehingga setiap pixel diberikan sebuah nilai yang ditambahkan texel-textel yang terdekat ke nilai yang diinginkan. Tapi apa yang terjadi ketika kita sangat jauh dari objek? Jawabannya adalah bahwa proyeksi Texel adalah jauh lebih kecil dari ukuran sebuah pixel, sehingga pencampuran empat nilai tidak cukup. Dalam hal ini, sedikit gerakan dalam kamera akan menghasilkan sebuah gerakan cepat per-pixel pada ruang tekstur. Hal ini menyebabkan tekstur ditempatkan pada obyek yang jauh untuk berkerlip dan menghasilkan efek yang menggangu.  Mari kita memvisualisasikan ini dengan sebuah sampel, seperti paralel yang terletak sangat jauh ke layar.  Satu pixel memiliki koordinat tekstur (0,5, 0,5), sedangkan yang lainnya,  arah tidak ditentukan,  dipetakan ke (0,65, 0,5).  Perbedaan koordinat berasal dari fakta sejauh ini, koordinat terpisah jauh didalam ruang tekstur.  Kemudian, dengan asumsi peta adalah 256 x 256,  pixel pertama dipetakan ke Texel (128, 128) ditambah interpolasi. Yang kedua dipetakan ke Texel (166, 0,5).  Jelas,  ada sebuah samudera antara kedua sampel.  Setiap gerakan kamera yang minimal akan membuat dampak yang besar 
dalam ruang tekstur dan menjadi terlihat berkerlap-kerlip. Lihat Gambar 18.3 untuk dua sampel.
Gambar 18.3. Gambar sebelah kiri menunjukkan gambar yang diberikan tekstur penyaringan,
sedangkan gambar sebelah kanan menunjukkan aplikasi yang sama yang dijalankan dengan penyaringan dinonaktifkan.

Solusi untuk masalah ini disebut mipmapping,  yang merupakan teknik penyaringan yang akan membuat tekstur  terlihat baik terlepas dari kejauhan. Mipmapping menghitung setiap masing-masing tekstur sebagai urutan memetakan setiap satu setengah ukuran dari sebelumnya. Jadi,  jika Anda mulai dengan peta tekstur  256 x 256, mipmaps Anda akan menjadi 128 x 128,  64 x 64,  32 x 32,  16 x 16,  dan sebagainya.  Peta-peta yang turun sampel dihitung dengan interpolasi texel-texel bersama-sama, sehingga mereka memberikan pengurangan detil halus untuk sejauh poligon . Kemudian, saat runtime,
tekstur untuk segitaga diproyeksikan di ruang layar, dan bidang mipmap yang sesuai dengan daerah segitiga lebih baik digunakan. Dengan cara ini kita dapat menghilangkan berkerlap-kerlip (pada biaya penggunaan memori tekstur tambahan). Meninjau contoh kita sebelumnya, bayangkan bahwa kami ditugaskan untuk letak mipmap dalam ukuran 8x8 piksel. Kemudian, pixel pertama, dengan koordinat (0,5, 0,5), akan dipetakan ke Texel (4,4). Pixel kedua,
dipetakan dengan (0,65, 0,5) sebagai koordinat, akan pergi ke Texel (5,2, 4), yang berdekatan dengan Texel sebelumnya.

Mipmaps dapat dihitung secara otomatis di kedua OpenGL dan DirectX. Di bawah OpenGL, mereka diciptakan dengan
panggilan:

gluBuild2Dmipmaps

Sintaks ini adalah panggilan yang sangat mirip dengan glTexImage2D, panggilan standar untuk mendefinisikan dan melewati tekstur ke OpenGL. Kemudian, seleksi mipmap adalah proses otomatis. Di bawah DirectX, mipmaps ditangani melalui GenerateMipSubLevels disebut milik antarmuka IDirect3Dtexture9. Atau, mipmaps dapat dihasilkan secara otomatis pada penciptaan tekstur jika kita lulus konstan D3DUSAGE_AUTOGENMIPMAP dalam penggunaan parameter panggilan CreateTexture.

Monday, May 07, 2012

AYODANCE GAME

Audition AyoDance adalah Online Dance Battle Game , dimana kita dan seluruh teman - teman dari seluruh Indonesia dapat bertemu, bermain, dan bertanding secara online.
Berbagai pilihan lagu tersedia ketika kita bermain game ini. Seperti Pop, Hip Hop, RnB, Ballad, Disco, atau Rock, kita pun dapat memilih pilihan lagu yang kita inginkan.
Ribuan avatar dan aksesoris yang unik dan menarik siap membuat kita tampil lebih gaya daripada yang lain, serta item – item yang tersedia dia Fashion mall.
Bagi yang sudah atau belum memiliki pasangan, ayodance menyediakan fitur-fitur romantis yang dapat digunakan bersama pasangan kita.

CARA BERMAIN : 

Download terlebih dahulu Game Ayodance disini  



Jika kamu belum memiliki ID, maka disarankan untuk melakukan registrasi terlebih dahulu pada website http://member.megaxus.com , Jika sudah memiliki ID, maka sudah dapat login ke dalam Audition AyoDance. Setelah kamu login, maka kamu akan sampai pada bagian pemilihan server dan channel. Untuk kamu yang masih baru, disarankan agar bermain dahulu di server newbie. Saat ini, channel newbie tersedia di setiap servernya.


Ini adalah layar login Audition AyoDance

Ini adalah layar login pemilihan server
Setelah masuk ke dalam menu pemilihan server, maka kita tomatis akan langsung dapat memilih pada channel yang kita ingin untuk bermain. Harap perhatikan, semakin penuh warna pada indicator pemain di dalam channel, menandakan bahwa di dalam channel tersebut, sudah penuh dengan pemain, dan tidak dapat masuk lagi, dengan demikian, kami sarankan anda memilih channel lain untuk bermain.

Jika kita  sudah masuk melalui channel, maka Selamat Datang di Audition AyoDance Town!!



Ketika kita masuk dalam Audition AyoDance Town, maka kita akan langsung di arahkan pada npc tutorial, yang akan mengajarkan kita semua dasar permainan AyoDance. Jangan lupa untuk mencobanya jika kita  masih baru bermain.

Setelah kita selesai mengikuti tutorial, maka kita akan langsung masuk dalam lobby pada Dancing Hall. Jika kita ingin membuat room, klik tombol create, kemudian pilih mode permainan yang kita inginkan.


Ketika kita selesai memilih mode , kita akan masuk dalam waiting room, di sini kita dapat memilih baik lagu, mode, hingga map yang akan kita gunakan untuk bermain.






Jika sudah selesai, memilih lagu, mode maupun map, maka ayo, klik start dan mulai permainan pertama kamu di dalam AyoDance town!!



 



MODE GAME  

  1. NORMAL PLAY
  2. B-BOY 4
  3. B-BOY -8
  4. NIGHT 4 DIRECTION
  5. NIGHT 8 DIRECTION
  6. DINAMIC 4
  7. DINAMIC 8
  8. CRAZY 4
  9. CRAZY 8
  10. CRAZY 9
  11. SYNC 4
  12. SYNC 8
  13. COUPLE 31
  14. COUPLE DANCE
  15. DANCE COMPETITION
  16. CRAZY DINAMIC 4
  17. CRAZY DINAMIC 8


GAME CONTROL

Pada dasarnya pergerakan dance yang diperagakan oleh Dancer anda dihasilkan dari pola Key Note yang anda masukkan. Jadi anda harus berusaha untuk dapat memasukkan pola Key Note yang ada agar Dancer anda dapat terus menerus melakukan dance sesuai irama musik. Apabila sampai terjadi “Miss Hit” maka Dancer anda akan diam sampai pola Key Note berikutnya muncul.



Ini adalah contoh tampilan dari Mode permainan Normal Play.





Pada dasarnya, terdapat 4 pola Key Note yaitu Atas, Bawah, Kiri dan Kanan.

Kita dapat memasukkan Key Note tersebut ke salah satu deretan dari 3 pola Key Note seperti tampilan. Dan setelah kita menekan Key Note tersebut, jangan lupa untuk menekan Spacebar sewaktu Bola Beat sampai di bagian yang bercahaya.

 
1. Aneka Pola Key Note
2. Bar dengan Bola Beat yang bergerak


Di atas pola Key Note terdapat bar persegi-panjang dengan sebagian area yang bercahaya putih. Bola Beat akan bergerak ke kanan sesuai dengan kecepatan BPM lagu yang dipilih. Fungsi dari Bola Beat ini adalah memandu agar kita lebih mendapatkan “feel” pada saat menekan Spacebar.


“Perfect Hit” dapat diperoleh bila anda menekan Spacebar tepat pada saat Bola Beat berada di tengah-tengah area yang bercahaya.





Berikut adalah macam – macam penilaian dalam permainan :


Note : Semakin ke kiri (menuju Miss) maka nilai yang akan kita dapatkan per keynote yang ditekan akan semakin sedikit. Sebaliknya, semakin ke kanan, maka perolehan nilai kita akan semakin besar.

SHORTCUT KEYS

/to Nama Karakter : Whiper karakter tertentu secara terus -menerus.
/w Nama Karakter  : Whisper karakter sekali saja.
/bla : Whisper semua whisper yang masuk.
/wla : Membuka blok whisper.
/bl Nama Karakter : Memblok semua whisper dari karakter tertentu.
/wl Nama karakter : Membuka blok whisper karakter tertentu.
/invon : Memgaktifkan penolakan otomatis undangan masuk Room.
/invoff : Menon-aktifkan penolakan otomatis undangan masuk Room.
/go + nomor room : Langsung memasuki nomor Room yang dimaksud.
/Ctrl - S :  Mengatur Volume.
/Ctrl - Q : Keluar dari permainan ( dapat dilakukan bila anda bermain dengan menggunakan Mode pemgamat/ View).
F1 : Shortcut untuk Ready / Start Game.
F2 : Mengatur camera / sudut pandang.
F3 : Mengaktifkan /Menonaktifkan Efek dalam bermain.
/my info :  Shortcut untuk melihat informasi dimana anda bermain ( Butuh Premium Messenger).
/whois + Nickname : Menampilkan informasi pemain lain ( Butuh Premium Messenger).
/couple info : Menampilkan Informasi pasangan ( Butuh Premium Messenger).
/friends : Menampilkan Daftar teman yang Online.
/bankbook : Menampilkan jumlah den dan Cash yang dimiliki.

8-D KEY NOTES






Untuk dapat memainkan 8-D Mode, kita membutuhkan keypad ini. Biasanya terletak di bagian kanan keyboard kita. Pastikan NumLock dalam kondisi OFF agar dapat menggunakan keypad di dalam 8-D Mode. Tombol-tombol yang digunakan dalam 8-D Mode adalah 1,2,3,4,6,7,8 dan 9.

** untuk mengunjungi website nya  disini 
sumber : http://www.ayodance.com