Anda di halaman 1dari 9

Implentasi Vektor Dalam Permainan Point Blank

Adhlin Faridz, Priangga Rambe


Jurusan sistem Informasi
Fakultas Ilmu Komputer & Teknologi Informasi
Universitas Muhammadiyah Sumatera Utara

Abstrak : Vektor merupakan sebuah besaran yang memiliki arah. Vektor sering diimplmentasikan pada
banyak bidang seperti Fisika, Penerbangan, Permesinan, informatika, hingga kedalam permainan online
sekalipun. Game Point Blank sebuah permainan FPS (First Person Shooter) yang bertemakan
perperangan, termasuk salah satu permainan secara online yang menggunakan vektor. Terdapat berbagai
implementasi vektor dalam permainan ini seperti posisi pemain, arah berjalan,melempar sebuah granat,
arah tembakan, radar, dsb. Dalam jurnal ini akan membahas penggunaan vektor dalam permainan Point
Blank.

Kata kunci : Vektor, Permainan, Point Blank

Abstrac : Abstract : Vector is a quantity that has a direction. Vectors are often implemented in many
fields such as physics, aviation, engineering, informatics, even into online games. Game Point Blank is an
FPS (First Person Shooter) game with the theme of war, including an online game that uses vectors.
There are various vector implementations in this game such as player position, walking direction,
throwing a grenade, firing direction, radar, etc. In this journal, we will discuss the use of vectors in the
Point Blank game.

Keyword : Vector, Game, Point Blank

I.PENDAHULUAN Blank awalnya dirilis oleh PT Kreon melalui


Gemscool pada tahun 2009. Pada tanggal 30
Sekarang ini kita bisa lihat komputer sudah November 2018, Garena Indonesia
semakin canggih dan sudah dapat mengumumkan peralihan operasi layanan
menjalankan instruksi yang rumit. Pada oleh Zepetto, pada tanggal 1 Januari 2019,
mulanya game hanya berbasis 2 dimensi. masa peluncuran Point Blank Zepetto
Namun, seiring perkembangannya, telah Indonesia efektif beroperasi.
banyak game yang menggunakan konsep
vektor salah satunya Point Blank. Point
Blank merupakan salah satu game yang
bertemakan perang yang banyak dimainkan
hingga sekarang. Permainan ini
dikembangkan oleh Zepetto dari Korea
Selatan dan dipublikasikan oleh Zepetto.
Selain di Korea Selatan, permainan ini
mempunyai server sendiri di beberapa
negara seperti Thailand, Rusia, Indonesia,
Brasil, Turki, Amerika Serikat, dan Peru. Di
Indonesia, permainan ini sekarang telah
dikelola oleh Zepetto. Di Indonesia, Point Gambar 1. POINT BLANK STRIKE
Penggunaan Source sebagai engine utama
II. LANDASAN TEORI
dalam pembuatan permainan ini ini
membawa game Point Blank ke dalam era
A. Vektor
baru permainan digital, baik dari segi grafis
maupun gameplay. Game ini menyajikan
Vektor adalah suatu besaran yang
banyak gerakan yang menarik seperti
mempunyai besar dan arah. Jika
menembak, memasang bom, melompat.
digambarkan, suatu vektor ditunjukkan
Gerakan ini dibuat dengan memanfaatkan
sebagai potongan garis yang mempunyai
vektor didalamnya.
arah. Besar atau kecilnya vektor ditentukan
Pada dasarnya, tujuan dalam permainan ini oleh panjang atau pendeknya potongan garis
adalah mengalahkan lawan yang berada di tersebut. Sedangkan arah vektor ditunjukkan
dalam tim yang berbeda dengan tim pemain. dengan tanda anak panah.
Terdapat dua tim utama yang terdapat dalam
permainan ini, yaitu. CT-Force dan Free B. Komponen dan Notasi Vektor
Rebels. Banyak mode permainan dalam Sebuah vektor dapat dibentuk dari dua buah
permainan ini dan yang paling adalah favorit titik yang terdapat pada suatu koordinat. Jika
Bomb mission dan Death Match. kedua titik tersebut dihubungkan, maka
vektor akan terbentuk dengan satu titik
Seperti yang diketahui, penerapan vektor menjadi pangkal vektor, dan titik lainnya
dalam permainan berdimensi merupakan hal menjadi ujung vektor. Jika dalam sebuah
yang esensial. Permainan Point Blank juga ruang terdapat dua buah titik,
menerapkan implementasi dari aljabar
geometri tersebut melalui kode-kode yang yaitu titik A (𝑎1, 𝑎2, 𝑎3), dan titik B (𝑏1,
terdapat dalam engine Source yang 𝑏2, 𝑏3), yang dihubungkan oleh sebuah
digunakan untuk pembuatannya. Dalam vektor yang berpangkal di titik A dan
jurnal ini, penulis akan membahas beberapa berujung di titik B, maka vektor tersebut
penerapan dan implementasi dasar dari ilmu memiliki komponen sebagai berikut:
vektor yang terdapat dalam elemen
permainan ini.
vektor 𝑢⃗ dan ujung vektor yang sama
Sama seperti vektor yang memiliki pangkal dengan ujung vektor 𝑣.
di titik pusat O (0,0,0) dan berujung pada
suatu titik C (𝑐1, 𝑐2, 𝑐3), maka vektor posisi Perkalian Vektor dengan Skalar
𝑂𝐶 dapat kita tuliskan sebagai berikut: Misalkan terdapat vektor tak nol 𝑣 dan
sebuah 𝑘 yang merupakan konstanta skalar.
Maka perkalian vektor 𝑣 dengan skalar 𝑘
dapat kita definisikan sebagai 𝑘𝑣 yang
berarti vektor yang panjangnya 𝑘 kali vektor
Terdapat beberapa cara untuk menyatakan
. Adapun ketentuan arah pada perkalian ini
vektor. Berikut ini adalah penulisan notasi
adalah sebagai berikut:
vektor 𝑣 dengan komponen 𝑣1, 𝑣2, dan 𝑣3:
-Jika 𝑘 > 0 maka searah dengan 𝑣
- Jika 𝑘 < 0 maka berlawanan arah dengan 𝑣

Perkalian Dua Buah Vektor


Perkalian dua buah vektor hanya dapat kita
C. Operasi Vektor
lakukan jika kedua vektor tersebut berada
Panjang Vektor
pada ruang yang sama. Terdapat dua jenis
Misalkan terdapat vektor 𝑢⃗
perkalian dua buah vektor, yaitu:
=(𝑢⃗1,𝑢⃗2,𝑢⃗3) pada sebuah ruang, maka - Hasil kali titik (dot product)
panjang vektor tersebut adalah:

Hasil kali titik dua vektor merupakan


operasi antara dua buah vektor yang akan
menghasilkan sebuah skalar. Misalkan
terdapat vektor 𝑢⃗ dan 𝑣 yang merupakan
Penjumlahan/Pengurangan Vektor
kedua buah vektor yang berbeda di ruang
Misalkan terdapat vektor 𝑢⃗ dan 𝑣 yang
merupakan kedua buah vektor yang berbeda yang sama, maka hasil kali titik antara 𝑢⃗

di ruang yang sama, maka vektor 𝑢⃗ ±𝑣 dan 𝑣 didefinisikan oleh:

merupakan sebuah vektor yang memiliki


titik pangkal yang sama dengan titik pangkal
Dalam permainan point blank informasi dari
Hasil kali silang (cross product) berbagai macam objek merupakan hal yang
Hasil kali silang merupakan perkalian dua esensial, sehingga kita bisa menentukan
buah vektor yang akan menghasilkan sebuah dalam suatu koordinat, apakah merupakan
vektor yang baru yang arahnya tegak lurus tembok, lantai, ataupun langit-langit. Dalam
terhadap bidang dari kedua vektor yang hal ini, karakter pemain dalam permainan
dikalikan tadi berada. juga merupakan objek, yang juga memiliki
Misalkan terdapat vektor 𝑢⃗ dan 𝑣 yang informasinya sendiri. Informasi mengenai
merupakan kedua buah vektor yang berbeda posisi pemain sangatlah penting. Hal ini
di ruang yang sama. dapat menentukan apakah pemain tersebut
terkena tembakan dari musuh, terkena efek
ledakan dari granat maupun bom, dan juga
Proyeksi Ortogonal Vektor apakah pemain tersebut dalam sudut
Proyeksi ortogonal suatu vektor terhadap pandang yang dapat dilihat oleh musuh.
vektor lainnya dapat digambarkan dengan Maka dari itu, permainan ini tentunya tidak
terlepas dari implementasi aljabar vektor
untuk membuat permainan dapat berjalan
dengan baik. Terdapat 5 hal dalam
permainan yang akan dibahas, yaitu
mengenai vektor dalam dasar permainan,
Gambar 2. Proyeksi Ortogonal vektor 𝒂⃗⃗ terhadap trajectory path granat, arah peluru, serta
vektor 𝒃⃗⃗
radar dan sudut pandang pemain.
Misal vektor 𝑐 merupakan hasil proyeksi
vektor 𝑎 terhadap 𝑏 , maka dapat kita
peroleh bahwa:
1.Vektor dalam Dasar Permainan
Dalam permainan point blank , sebuah
lokasi arena bermain seluruhnya terdiri dari
desain yang berbasis vektor. Ketinggian
dinding, elevasi tanah, bahkan objek semua
didesain secara terukur dengan sebuah
III. Aplikasi vektor pada Point Blank
satuan yang telah ditetapkan oleh developer
pada editor 3D tersebut. Penerapan vektor Dalam standar permainan point blank,
dalam membuat arena ini merupakan hal terdapat suatu variabel yang menyimpan
yang penting untuk menjamin bahwa data perpindahan yang dapat dilakukan oleh
permainan dapat dilakukan dengan lancar objek pemain dalam permainan. Misal untuk
pada lokasi arena ini. Koordinat sebuah berlari, kecepatan pemain adalah sebesar
objek dalam permainan ini dibuat saat orang 190 unit tiap detiknya. Kecepatan ini
merancang arena bermain untuk permainan dibutuhkan agar permainan dapat
ini. Contoh sederhananya yaitu terdapat mensimulasikan perpindahan pemain di
sebuah peta yang di tengah peta tersebut dalam arena dari suatu titik ke titik tertentu.
terdapat pula sebuah objek padat (objek Ada pula variabel gravitasi, yang
yang dirancang untuk tidak dapat ditembus menyebabkan objek pemain dapat
oleh objek lain) kotak boks berukuran besar. melakukan simulasi mendarat setelah
Maka jika posisi koordinat objek pemain, melompat, turun tangga, dsb. Selain berlari,
yang juga merupakan objek padat, gerakan melompat juga membutuhkan
bersinggungan dengan seluruh titik perhitungan yang lebih rumit yang
koordinat tempat objek padat kotak boks melibatkan variabel lain seperti percepatan
tersebut berada, pemain tidak bisa maju ke vertikal. Jarak juga merupakan elemen
arah objek tersebut dan menembusnya. penting dalam permainan untuk menentukan
apakah suatu pemain terkena dampak
ledakan bom, seberapa besar damage yang
diterima, dsb. Untuk menentukan jarak,
tentu dibutuhkan perhitungan vektor
pengurangan vektor dari posisi bom
terhadap posisi pemain. Jika pemain masih
berada dalam radius ledakan, maka pemain
dapat terkena damage. Dalam
implementasinya, dapat ditambahkan
bermacammacam aspek seperti efek dari
dinding dan objek padat lain sebagai
pelindung pemain untuk mengurangi efek
ledakan, dsb. Dalam segala hal yang dibahas
diatas, penjumlahan dan pengurangan vektor koefisien gesek yang telah ada sebelumnya
merupakan operasi utama yang digunakan dalam program.
untuk mensimulasikan objek-objek dalam
permainan, baik dari segi dimensi, posisi,
perpindahan, dsb.

2.Trajectory Path Granat


Trajectory Path granat ini menggunakan
implementasi dari vektor untuk
menggambarkannya, begitu juga untuk
Gambar 3. Simulasi Vektor dalam Lintasan Melempar
mensimulasikan gerakan dari granatnya. Granat
Semisal seorang pemain ingin melempar
3.Arah peluru
granat ke dinding dengan arah Pantulan
Arah peluru dalam permainan point blank
granat terhadap dinding tersebut
ditentukan oleh sebuah metode yang
disimulasikan oleh implementasi vektor
dinamakan hitscanning. Alih-alih
refleksi dan kode momentum yang telah
menggunakan peluru yang dirancang dengan
dibuat oleh developer terhadap vektor
kode fisika nyata, peluru dalam permainan
kecepatan dari granatnya. Sehingga
ini menggunakan metode hitscanning
memungkinan terjadinya perubahan arah
dengan sebuah vektor tak kelihatan yang
gerak granat. Tidak lupa bahwa kecepatan
bervariasi ukurannya, dengan ujungnya
granat yang semakin melambat juga dapat
adalah koordinat objek padat yang tidak
terjadi karena adanya rekayasa pada nilai
dapat ditembus, dan pangkalnya adalah
vektor kecepatan granat tersebut. Untuk
objek pemain yang sedang memegang
permasalahan posisi, penjumlahan dan
senjata tersebut, dimana vektor tersebut
pengurangan vektor sangatlah dibutuhkan
searah dengan arah pandang objek pemain.
untuk mengkalkulasi simulasi pergerakan
Untuk membuatnya lebih nyata,
granat. Selain itu, perkalian vektor dengan
programmer permainan ini menerapkan
skalar juga dilakukan untuk mengurangi
sistem akurasi dimana vektor yang dibentuk
kecepatan granat, misalnya kecepatan granat
tidak hanya berupa sebuah garis lurus,
yang menyentuh tanah akan dikali dengan
namun berupa banyak garis lurus dengan
daerah kemungkinan arah peluru, sehingga
peluru bisa mengarah ke arah yang acak view sebesar 180 derajat. Jika terdapat
dalam daerah tersebut. Tingkat acak dalam pemain lain yang mengendap-endap pada
arah peluru inilah yang di atur sesuai dengan posisi H (3,2), maka pemain tersebut masih
akurasi dari sebuah senjata. Jika pemain berada dalam field of view dari pemain
lawan dalam area akurasi bidikan, dan bersenjata. Hal ini dapat kita peroleh dengan
akurasi pemain yang menembak adalah 100 mengoperasikan hasil kali titik dari vektor
persen, maka peluru tersebut dapat jarak kedua pemain, dan vektor posisi
mengenai pemain lawan. pemain yang mengendap-endap tersebut.
Aplikasi hitscanning ini juga dapat
𝑉⃗ = 𝐻⃗ − 𝐺
ditentukan alternatifnya seperti mengalikan
𝑉⃗ = (3,2) − (1,3) = (2, −1)
vektor arah peluru yang sebenarnya sejajar
𝐷⃗ · 𝑉⃗ = (1,1) · (2, −1) = 1
dengan vektor hitscanning pemain sehingga
menimbulkan efek akurasi acak sesuai
Sudut maksimal pandangan adalah 180
probabilitasnya, dsb.
derajat, yang diasumsikan sebagai
pandangan 90 derajat ke kiri, dan 90 derajat
ke kanan, sehingga batas terlihat atau tidak
4.Field of View Player
adalah ketika hasil perkalian titiknya lebih
Implementasi vektor dalam FOV ini biasa
dari 0. Karena hasil perkalian titiknya adalah
berguna untuk menjadi salah satu indikator
positif, maka pemain yang mengendap-
untuk mensimulasikan gerakan AI (bot)
endap tersebut terbukti masih dalam berada
dalam permainan. Masalah yang utama
jarak pandang pemain bersenjata tersebut.
dalam hal ini adalah, apakah pemain lawan
terlihat dalam pandangan AI tersebut?
5.Mini-radar
Masalah ini dapat dipecahkan dengan
Implementasi mini-radar menggunakan
menggunakan perhitungan vektor yaitu hasil
pergerakan yang sama dengan pergerakan
kali titik. Penulis akan memberikan contoh
dan perubahan posisi objek pemain dalam
implementasi dari permasalahan ini pada
arena permainan. Namun vektor
kasus dibawah:
perpindahannya dikalikan dengan suatu
Misalkan pemain dengan senjata berada variabel agar menjadi sebuah proyeksi lebih
pada posisi G (1,3) dengan pandangan lurus kecilnya, sehingga dapat disimulasikan
ke arah D (1,1), dengan variabel field of sebagai pergerakan real-time di mini-radar.
Karena mini-radar hanyalah gambaran dua kita, maka lambang yang ditampilkan
dimensi dari permainan yang terjadi, maka diradar akan berbeda. Begitu juga saat posisi
variabel posisi ketinggian pemain hanyalah ketinggian pemain lain sama, ataupun lebih
dibandingkan nilainya saja. Jika pemain lain rendah dari posisi pemain kita.
berada pada posisi yang lebih tinggi dari

IV. KESIMPULAN
Point blank merupakan sebuah permainan yang mengimplementasikan penggunaan aljabar
geometri dalam permainnya. Penerapan yang sangat esensial pada permainan ini yaitu mengenai
aljabar vektor. Adapun dengan ilmu aljabar vektor ini, permainan dapat menentukan bagaimana
posisi objek, perpindahan objek pemain maupun granat, arah peluru dan akurasinya, field of
view pemain, juga bagaimana mini-radar bekerja. Adapun ilmu aljabar vektor yang digunakan
kebanyakan berkutat pada permasalahan operasi vektor dalam dimensinya, seperti penjumlahan,
pengurangan , perkalian titik, dsb

V. DAFTAR PUSAKA

[1]https://id.wikipedia.org/wiki/Point_Blank_Online

[2]http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-2/

[3]http://uyuhan.com/matematika/vektor/rangkuman-vektor-aljabar.php

[4]John Vince, Geometric Algebra for Computer Graphics. Springer. 2007

[5]http://www.gamedev.net/page/resources/_/technical/math-and-physics/practical-use-of-vector-math-in-
games-r2968

Anda mungkin juga menyukai