Saya seorang pengembang aplikasi iPhone. Saya ingin masuk ke game iOS. Pertanyaannya adalah-haruskah saya mulai dengan belajar 2D seperti Cocos 2D atau Corona SDK sebelum belajar game 3D seperti Unity? Saya lebih tertarik pada game 3D, tetapi apakah Anda berpikir bahwa mengenal game 2D adalah prasyarat untuk belajar pengembangan 3D?
14
Jawaban:
Itu tergantung pada seberapa kuat Anda dengan matematika, dan konsep pemrograman game 3D .
2D bisa Anda dapatkan dengan hanya menggunakan konsep posisi x, y dan kecepatan (dan menambah dan mengurangi mereka - pada dasarnya vektor) dan tabrakan kotak 2D.
Dalam 3D, Anda harus khawatir tentang lebih banyak matematika: matriks proyeksi, melihat matriks, frustrasi ..
Selain itu, Anda harus berinteraksi dengan serangkaian fungsi yang lebih kaya API gambar yang Anda gunakan, (hanya berdasarkan fakta bahwa Anda melakukan 3D, jadi Anda harus belajar lebih banyak fungsi yang berhubungan dengan 3D ).
Microsoft XNA memiliki dukungan luar biasa untuk memulai dalam 2D, dan membuat rendering mudah menggunakan SpriteBatch . Segera setelah Anda menjelajah ke 3D, Anda secara otomatis harus mempelajari VertexBuffer , atau Model , dan kemudian datang ModelBones dan segala sesuatu yang menyertainya.
Anda sebaiknya memulai 2D hanya karena konsep yang Anda perlu kurang (sprite 2D? Sebuah cakewalk!). Setelah Anda memiliki pengalaman di bawah ikat pinggang, maka Anda harus baik-baik saja melakukan 3D.
sumber
Satu-satunya perbedaan mendasar antara pengembangan game 2D dan 3D adalah apakah Anda menggunakan sumbu ke-3 atau tidak. Jika Anda menggunakan mesin seperti Unity, Anda dapat dengan mudah membuat game 2D seperti game 3D hanya dengan menggunakan proyeksi dan sprite kamera ortografis, bukan model.
Yang sedang berkata, jika Anda tidak menggunakan mesin yang melakukan banyak angkat berat 3D untuk Anda, itu jauh lebih sulit. Lihat jawaban untuk pertanyaan ini: Apa yang harus dipertimbangkan ketika memutuskan 2D vs 3D untuk sebuah game?
Yang harus Anda lakukan adalah memutuskan game apa yang ingin Anda buat dan seni dan desain akan memberi tahu Anda apakah itu perlu 2D atau 3D.
sumber
Saya setuju dengan Tetrad bahwa Anda harus berpikir tentang seni dan desain dan itu akan menuntun Anda jika perlu 2D atau 3D. Saya juga akan mengatakan bahwa itu mungkin ide yang baik untuk membuat game 2D terlebih dahulu sehingga Anda tidak perlu memikirkan hal-hal sulit yang datang bersama dengan game 3D. Juga, satu hal yang perlu disadari adalah bahwa otak akan memproses lebih sedikit informasi dengan game 2D yang merupakan apa yang Anda inginkan untuk pengalaman yang lebih kasual.
Jika Anda melihat sebagian besar game indie yang sukses selama lebih dari 3 tahun, banyak dari mereka yang 2D.
http://www.braid-game.com/
http://limbogame.org/
http://supermeatboy.com/
http://www.andyetitmoves.net/
Jadi perusahaan dapat berhasil membuat hanya game 2D. Kesuksesan gim berasal dari mekanik gim, cerita, estetika, dan teknologi. Atau dikenal sebagai tetrad. Saya keluar dari topik jadi saya ngelantur.
sumber
Perlu diingat, akan lebih mudah bagi Anda untuk mendapatkan aset seni 2D untuk dipraktikkan. Jadi sementara saya tidak berpikir belajar pengembangan game 2D adalah prasyarat untuk belajar pengembangan game 3D (baik cara kode game di atas kode grafis hampir sama), saya masih akan merekomendasikan kebanyakan pemula mulai dengan game 2D kecuali Anda sudah memiliki sumber daya yang kuat untuk grafik 3D (mis. Anda akan belajar bersama seorang teman yang adalah seniman 3D).
Dari sisi kode, kesulitannya tergantung pada apa yang Anda coba pelajari dan mesin apa yang akan Anda gunakan (dan khususnya jika Anda akan menulis mesin sendiri). Kode grafis 3D level rendah jauh lebih rumit daripada kode grafis 2D level rendah, tetapi jika Anda akan menggunakan mesin seperti Unity maka Anda tidak akan menulis kode grafis level rendah. Kode untuk game 3D yang dibangun di mesin itu tidak lebih rumit daripada kode untuk game 2D. Memang, itu mungkin jauh lebih rumit, tergantung lagi pada mesin spesifik yang Anda bicarakan.
sumber