Unreal Engine atau Unity?

Gaming 24 Jun 2018

Hai, MedForians!

Mau pilih yang mana? Perdebatan yang cukup panas bahkan hingga hari ini, karena kedua engine tersebut terkenal di kalangan gamer dan game developer, terutama developer indie.

Sebenarnya, mau pilih Unreal Engine atau Unity, itu sepenuhnya tergantung kebutuhan proyek game kamu. Tapi mungkin beberapa di antara kamu, yang ingin mulai membuat video game, masih bingung ingin menggunakan Unreal Engine atau Unity. Artikel ini akan mencoba membuat perbandingan di antara kedua game engine, untuk membantu kamu memilih engine yang sesuai dengan kebutuhan kamu.

Perlu diingat bahwa artikel ini berdasarkan pengalaman dan penelitian saya, jadi ada kemungkinan beberapa bagian yang sedikit berat sebelah. Bila perlu, cobalah kedua game engine secara langsung.

1. Sejarah

Sebelum kita ke hal-hal yang bersifat teknis, mari kita melihat sejenak sejarah dan rekam jejak kedua game engine.

Unreal Engine pertama kali dirilis pada tahun 1998

1504-unreal-windows-screenshot-realistic-waterfall

Unreal Engine, tak bisa dipungkiri, lahir lebih awal dari Unity. Unreal Engine berawal dari sebuah game first-person shooter karya Epic Games bernama Unreal, yang rilis untuk PC pada tahun 1998. Unreal Engine mulai dibuat pada tahun 1995, dan semenjak rilisnya Unreal, gamer dan developer terpukau dengan beragam fitur-fitur canggih (untuk tahun 1998) yang ditawarkan oleh Unreal Engine, sehingga pada awal tahun 2000-an, sudah cukup banyak game yang menggunakan Unreal Engine pertama.

Unity pertama kali dirilis pada tahun 2005

welcome_to_gooball!01

Di sisi lain, Unity… Sayangnya, track record awal Unity dari kelahirannya pada tahun 2005 kurang terdokumentasikan, namun yang pasti, Unity pertama kali dibuat untuk sebuah game bernama GooBall pada platform Mac OS oleh Unity Technologies. Unity mendapat penghargaan di sebuah trade show. Berdasarkan Wikipedia, pihak ketiga yang menggunakan Unity baru bermunculan pada tahun 2008, 3 tahun setelah kelahirannya.

2. Harga

Bagaimana dengan harga dari kedua engine? Jangan takut, karena kedua engine bisa dipasang dan dipakai secara cuma-cuma.

Unreal Engine 4 tersedia secara gratis tanpa edisi terpisah

blog_FEATURE_UnrealEngineSetItFree-1920x960-46cafcda74074183cd33c68fb69e0e8ca4b476a0

“If you love something, set it free.” Begitulah tagline yang diusung Unreal Engine 4 saat pertama kali digratiskan untuk semua kalangan pada tanggal 2 Maret 2015. Dan Epic Games tidak bohong. Unreal Engine 4 bisa digunakan secara gratis, dan sudah termasuk semua fitur yang dipakai para developer profesional, tanpa pemisahan edisi.

Bagaimana dengan royaltinya? Kalau kamu membuat sebuah game dengan Unreal Engine 4 dan menjualnya, kamu harus membagi pendapatan dengan Epic Games sebanyak 5% dari penghasilan kotor kamu per triwulan, dikurangi $3000. Ini berarti kalau penghasilan kotor kamu belum menembus angka $3000 per triwulan, kamu tidak diwajibkan membayar 5% dari penghasilan kamu ke Epic Games.

Unity bisa digunakan secara gratis dengan syarat tertentu

unity new pricing june

Unity sedikit rumit dalam mengatur harga engine-nya. Unity terbagi menjadi 4 edisi, namun yang lebih sering dipakai dalam pengembangan game adalah edisi Personal, Plus, dan Pro.

Kalau kamu ingin membuat game dengan Unity, gunakan edisi Personal yang bisa dipakai secara cuma-cuma. Hampir semua fitur pada Unity Personal juga ada di edisi Plus dan Pro, hanya saja beberapa fitur penunjang seperti tema gelap (kalau kamu sensitif terhadap cahaya terang dalam waktu lama) dan fitur menghapus logo Unity dihilangkan di edisi Personal. Untuk beralih ke edisi Plus, kamu harus mendapatkan penghasilan kotor setidaknya $100000 per tahun dan membayar edisi Plus sejumlah $35 per karyawan (kalau kamu bekerja dalam sebuah tim) dalam basis langganan.

Sayangnya fitur yang dihilangkan di edisi Personal tidak berdampak bagus pada Unity, yang akan kita bahas sesaat lagi.

3. Orientasi grafis

2D atau 3D? Masing-masing engine memiliki kelebihan dan kekurangan dalam game 2D dan 3D.

Unreal Engine lebih diorientasikan untuk game 3D

85_large

Karena skala pengembangan yang besar dan melihat beragam fitur yang ditawarkan setiap revisinya, sudah jelas bahwa Unreal Engine 4 lebih diorientasikan untuk game 3D dengan grafik yang memukau, ditambah dengan fitur-fitur yang memudahkan pengembang mengimprovisasi engine dalam beberapa klik pada mouse. Walau demikian, Unreal Engine 4 tetap mendukung pengembangan game 2D dan platform mobile, hanya saja pengembangan game 2D di Unreal Engine 4 sedikit peminatnya.

Unity lebih diorientasikan untuk game 2D, tapi…

Unity

Ya, Unity lebih diorientasikan untuk game 2D, tapi ini hanya berlaku untuk pengembang dengan skill tingkat menengah ke bawah. Karena untuk membuat game 3D yang bagus dengan Unity tanpa melukai mata pemain, kamu harus bisa mengimprovisasi Unity, mulai dari teknik rendering, manipulasi material, hingga membuat shader yang tepat. Untuk tingkat pemula atau pengembang dengan modal waktu yang terbatas, hal ini cukup sulit untuk dilakukan. Jadi, kalau kamu masih belum bisa menulis shader dan meracik material dengan C#, sebaiknya gunakan Unity untuk keperluan game 2D dan game mobile mid-end, daripada melukai mata pemain dan membuatmu diejek di internet.

4. Pemrograman

Kedua engine menggunakan basis pemrograman yang berbeda, dan untuk bagian ini, sesuaikan dengan kemampuan pemrograman kamu.

Unreal Engine menggunakan Blueprint dan C++

16131-2014-09-23+20_28_23-button_trigger_

Belum bisa ngoding? Kebingungan dengan baris demi baris kode yang kamu tulis? Unreal Engine 4 menggunakan sistem visual scripting yang dijuluki Blueprint. Dengan Blueprint, memungkinkan kamu merancang (bahkan membuat game siap main) logika dan perintah untuk game kamu, dengan memasangkan “kepingan” perintah tanpa menulis sebaris kode. Tidak cuma untuk merancang gameplay, Blueprint juga bisa membantu kamu meracik animasi untuk karakter kamu, membuat material, dan juga membuat shader untuk efek grafis pada game kamu. Ini sangat berguna bagi kamu yang belum bisa ngoding, atau lebih jago di bidang lain (seperti ilustrasi atau animasi) tapi ingin membuat game dengan kualitas yang bagus.

Walaupun demikian, kamu juga bisa menggunakan C++ untuk memprogram gameplay pada proyek kamu. Pemrograman C++ berguna kalau kamu ingin membuat fungsi yang lebih rumit dan tidak cukup menggunakan Blueprint, dan sepengetahuan saya, pemrograman C++ di Unreal Engine 4 tidak jauh beda dengan pemrograman lewat Blueprint dalam hal cara kerja dan perintah-perintahnya. Hanya saja waktu compile C++ pada Unreal Engine 4 lebih lambat pada komputer yang tidak cukup kuat, dan kalau komputer kamu belum cukup kuat, sebaiknya gunakan Blueprint, lalu rancanglah kode C++ berdasarkan Blueprint yang kamu buat.

Unity menggunakan C#

unity-2017-c-sharp-scripting-fundamentals-v2

Unity mengandalkan pemrograman C# untuk hampir semua hal, mulai dari gameplay hingga pembuatan shader. Untuk pembuatan gameplay game 2D, C# pada Unity cukup mudah untuk dipelajari dan ditulis, asalkan kamu memiliki pengetahuan dasar dalam pemrograman C#. Kalau kamu belum bisa ngoding tapi ingin menggunakan Unity, sebaiknya pelajari C#, karena Unity tidak menyajikan visual scripting seperti Unreal Engine 4.

5. Fitur yang ditawarkan

Bagaimana dengan fitur yang ditawarkan masing-masing engine, tanpa plug-in atau software tambahan? Di sinilah kedua engine mulai benar-benar berbeda.

Bagian ini tidak akan membahas fitur grafik, karena pembahasannya bisa menghasilkan banyak artikel terpisah.

Unreal Engine lebih kaya fitur penunjang yang siap pakai

Unreal-Engine-4-Features-5

Dengan memasang Unreal Engine 4, kamu sudah mendapatkan berbagai macam fitur dan peralatan yang sering digunakan oleh pengembang besar, siap untuk kamu manfaatkan semaksimal mungkin. Bagaimana dengan Marketplace-nya? Marketplace Unreal Engine 4 lebih banyak menyajikan asset jadi dan plug-in yang lebih kompleks. Ditambah dengan fakta bahwa Unreal Engine 4 tidak dibagi-bagi berdasarkan edisi, sehingga semua yang menggunakan Unreal Engine 4 mendapatkan rentetan fitur yang sama.

Namun, dengan segudang fitur yang ditawarkan Unreal Engine 4, membuat pengembang game kesulitan mengusung gaya oldskool (meniru gaya game-game jadul) ataupun membuat game dengan skala yang lebih kecil, karena fitur-fitur yang ada bisa menghasilkan ukuran build yang besar.

Unity tidak banyak menyajikan fitur siap pakai

Unity-5-3

Pernah berpikir mengapa kebanyakan proyek game indie yang mengandalkan Unity (terutama proyek-proyek Unity 3D dari Indonesia) hasilnya… membuat kamu tepuk jidat?

Dan fitur-fitur vanilla pada Unity inilah yang membuat reputasi Unity memburuk. Kebanyakan game murahan dibuat dengan Unity edisi Personal, dan edisi Personal menghilangkan kemampuan untuk menyembunyikan logo Unity saat game dibuka. Logo Unity tidak tampak pada game-game Unity yang berkualitas (seperti Cities Skylines dan Cuphead), sehingga membuat nama Unity dikaitkan dengan game-game jelek dan murahan.

Unity tidak banyak menyajikan fitur-fitur penunjang siap pakai, sehingga kebanyakan pengembang indie yang menggunakan Unity belum mampu membuat fitur-fitur tambahan yang bisa membuat game terlihat lebih bagus. Namun, kurangnya fitur siap pakai pada Unity bisa memudahkan pengembang yang lebih berpengalaman bereksperimen dengan berbagai macam gaya, terutama pengembang yang ingin mengusung game 2D dan game 3D dengan gaya oldskool. Atau bahkan meniru gaya kartun era 1930-an! Hal ini juga memungkinkan pengembang yang ingin membuat game dengan skala lebih kecil, karena kurangnya fitur siap pakai pada Unity menghasilkan ukuran build yang lebih kecil.

6. Pembelajaran

Oke, masing-masing engine menawarkan kelebihan dan kekurangan masing-masing, tapi tentu saja penggunanya harus menguasai engine yang digunakan. Bagaimana dengan learning curve-nya?

Unreal Engine lebih ditujukan pada pengembang yang memiliki skill menengah ke atas

Karena orientasi Unreal Engine 4 yang lebih ke proyek skala besar, sebelum menggunakan Unreal Engine 4, kamu harus paham dasar-dasar dalam video game dan juga cara kerjanya. Kalau kamu sudah paham dasar-dasarnya, membiasakan diri pada Unreal Engine 4 akan lebih mudah kedepannya. Apalagi semenjak Unreal Engine 4 digratiskan untuk umum, forum resmi menyajikan banyak bahan pembelajaran dan tutorial dalam bentuk video di YouTube juga sudah banyak dan mencakup hampir semua yang kamu ingin pelajari. Tidak lupa Unreal Engine juga punya channel YouTube sendiri dan menyajikan video pembelajaran dan perkenalan fitur-fitur langsung dari Epic Games.

Unity lebih ditujukan pada pengembang yang memiliki skill menengah ke bawah dan ingin belajar dari dasar

Unity lebih ringan dan juga bisa dipakai pada proyek skala kecil, sehingga kamu bisa mulai belajar mengenai pengembangan game dari nol dan memulai dari proyek-proyek game 2D untuk kemudian kamu tunjukkan pada keluarga dan sahabat kamu. Namun perlu diingat, saat mempelajari dasar-dasar pengembangan video game lewat Unity, jangan berpikiran untuk menjual hasil latihan kamu ke Steam. Jual game kamu kalau kamu sudah memiliki cukup pengetahuan dalam pengembangan video game. Untuk pembelajaran, karena Unity terbuka untuk umum lebih awal daripada Unreal Engine, tutorial untuk Unity lebih banyak di YouTube dan juga forum resminya.

7. Persyaratan perangkat

Membuat video game membutuhkan perangkat yang memadai, dan kedua engine memiliki batas minimal masing-masing.

Unreal Engine 4 (direkomendasikan):

  • Komputer Windows atau Mac
  • Windows 7 64-bit atau Mac OS X 10.9.2 atau versi lebih baru
  • CPU Intel atau AMD quad-core, 2.5 GHz or lebih
  • GPU NVIDIA GeForce 470 GTX or AMD Radeon 6870 HD atau yang lebih kuat
  • RAM 8 GB atau lebih
  • Ruang pada hard disk minimal 30 GB

Unity (direkomendasikan):

  • Windows 7 SP1+, 8, 10, 64-bit; Mac OS X 10.9+

  • CPU dengan kompatibilitas SSE2

  • GPU dengan kompatibilitas dengan DirectX 10

  • RAM 2 GB atau lebih
  • Ruang pada hard disk minimal 4 GB

Berbeda dengan Unreal Engine, untuk pengembangan ke platform mobile, kamu harus punya:

  • iOS: Komputer Mac dengan OS X versi 10.9.4 dan Xcode 7.0 atau yang lebih baru.
  • Android: Android SDK dan Java Development Kit (JDK); IL2CPP membutuhkan Android NDK.
  • Universal Windows Platform: Windows 10 (64-bit), Visual Studio 2015 dengan C++ Tools dan Windows 10 SDK

Penutup

Jadi, kembali ke judul artikel ini. Unreal Engine atau Unity? Jawabannya, tergantung kebutuhan kamu. Artikel ini hanya memberikan perbandingan dari kedua engine untuk memudahkan kamu memilih engine yang tepat dengan kebutuhan dan kemampuan kamu. Kedua engine punya kelebihan dan kekurangan masing-masing, tinggal kamu yang ingin memanfaatkannya seperti apa.

Kalau saya pribadi, saya sudah pernah menggunakan Unity dari tahun 2015 dan sejak tahun 2017 mulai beralih ke Unreal Engine karena kebutuhan proyek saya.

Terima kasih telah membaca, dan saya harap kamu bisa belajar lebih banyak mengenai game technology di Media Formasi!

Tag

Muhammad Ferdiansyah

Write. Design. Learn. Media/Tech/J-Pop Enthusiast.