Memulai dalam pengembangan game: Apakah XNA pilihan yang baik? [Tutup]

16

Pembaca lama; Penanya pertama kali:

Saya ingin menjadi bagian dari industri game untuk sementara waktu, tetapi resume saya 100% semuanya berfungsi sebagai backend.

Saya adalah pengembang C ++ / C # yang kuat, tanpa pengalaman pengembangan game yang praktis. Pengalaman backend saya menjadikan saya kandidat yang baik untuk pekerjaan backend (karena banyak game saat ini memiliki aspek berbasis layanan bagi mereka), tetapi ini adalah bidang yang sangat kompetitif dan saya mencari cara untuk menonjol.

Karena tidak ada yang akan berjalan menghampiri saya dan memberi saya pekerjaan di industri game, saya memutuskan untuk mencoba topi saya dalam menulis game saya sendiri.

Saya mengerti mengapa C dan C ++ adalah bahasa defacto dalam pengembangan game, tapi saya sangat suka filosofi di balik XNA. Seperti yang saya nyatakan sebelumnya, saya mahir dalam C # dan C ++, tetapi jika saya ingat dengan benar, XNA hanya bekerja dengan bahasa yang sesuai dengan CLR (mungkin hanya C #).

Akankah fokus pada pengembangan game menggunakan XNA dan C # alih-alih C ++, merusak peluang saya untuk mendapatkan pekerjaan di industri game? VB memiliki reputasi tidak adil untuk tidak menjadi bahasa pemrograman yang nyata, dan pemrogram VB terjebak dalam stigma itu. Apakah ini yang terjadi dengan menggunakan C # di komunitas yang sebagian besar terdiri dari pengembang C ++?

Atau apakah dasar-dasar pengembangan game yang dapat dipelajari dari menulis game, bahasa transenden dan teknologi?

Alan
sumber

Jawaban:

15

Saya tidak berpikir itu akan membahayakan peluang Anda. C # menjadi lebih populer, terutama dengan XNA dan SlimDX. Saya telah menggunakan C # dan C ++, dan saya harus mengatakan saya lebih suka XNA secara signifikan. Itu lebih bersih untuk dikerjakan, tetapi tidak terlalu terasa seperti Anda tidak melakukan apa-apa.

Untuk bagian karir, Anda ingin menyebutkan bahwa Anda sudah terbiasa dengan XNA, meskipun saya tidak berpikir itu akan membahayakan peluang Anda. Bahkan, karena cara itu lebih mudah digunakan, portofolio Anda mungkin lebih baik.

Dan konsepnya tetap sama, hanya saja sintaksnya menjadi berbeda. Kecuali jika Anda mencari pekerjaan grafis tingkat rendah, tata letak dari apa yang harus Anda lakukan akan hampir sama (tidak menulis kode pemuatan shader atau cache mesh, alih-alih hanya memuatnya).

Bebek Komunis
sumber
+1: Jawaban yang bagus. Apakah Anda berpikir bahwa ada harapan bahwa potongan-potongan portofolio Anda harus lebih baik karena Anda menggunakan XNA? Sebagai contoh, di salah satu kelas perangkat keras saya, kami diberi pilihan untuk menulis proyek desain kami di perakitan HC12, atau menggunakan C, tetapi dengan C, proyek kami harus jauh lebih menarik karena kemudahan pemrograman dalam C over assembly.
Alan
Saya tidak benar-benar berpikir akan ada. Ini adalah alat untuk solusi, dan alasan saya mengatakan produk akhir akan 'lebih baik' adalah karena ada lebih sedikit waktu yang dihabiskan untuk merender desain dan lebih banyak waktu yang dihabiskan untuk kerja game yang sebenarnya.
Bebek Komunis
Kecuali Anda mencari pekerjaan grafis, kebanyakan orang tidak akan mencari banyak polesan grafis dalam portofolio. Buat sesuatu yang terlihat lebih menarik daripada cantik. Dalam hal ini XNA vs C tidak terlalu penting asalkan menyenangkan.
coderanger
Meskipun jika Anda ingin terlihat cantik, menggunakan mesin rendering seperti Sunburn di atas XNA dapat banyak membantu!
Chris Ridenour
10

Sudah pengalaman saya bahwa konsep yang sama digunakan dalam transfer XNA bolak-balik antara berbagai perpustakaan dan bahasa. Saya sudah bisa melompat mundur secara efektif di antara berbagai teknologi game, dan saya mulai dengan XNA.

Bekerja dengan C # dan XNA membantu saya tetap fokus pada satu tujuan pembelajaran yang spesifik ("Apa yang membuat gim berdetak?") Sebagai kebalikan dari pencampuran tujuan ("Bagaimana saya belajar X dan membuat gim pada saat yang bersamaan?"). Saya menemukan bahwa setiap kali saya menggabungkan tujuan, saya berakhir dengan hasil yang sangat buruk. Mulai dari zona nyaman saya dan bersandar pada XNA membantu menyelesaikan semuanya.

Gabriel Isenberg
sumber
Saya sangat suka jawaban Anda. Dengan semua bahasa pemrograman memiliki struktur yang sama (objek, struktur kontrol dll ...) Saya pikir Anda harus mempelajari konsep-konsep tentang apa yang ingin Anda lakukan dengan apa yang Anda sukai. Perbedaan utama pada saat itu pindah dari bahasa ke bahasa harus sintaks, komponen inti, dan api.
John
3

Jika Anda bisa membuat permainan yang menyenangkan, dan Anda sebenarnya adalah insinyur yang berbakat, Anda tidak perlu khawatir. Tidak ada yang akan menyayangkan Anda bagaimana Anda membuat game Anda.

Game tidak dikelola dengan cara banyak produk perangkat lunak lainnya. Lebih sedikit kode yang dibuang daripada di industri efek khusus, tetapi kita masih bisa lolos dengan banyak peretasan untuk kemudahan.

Selesaikan pekerjaan. Pada akhirnya itulah pengembangan game.

Jonathan Fischoff
sumber
3

Saya telah diberitahu bahwa:

  1. Konten secara signifikan lebih penting daripada alat yang digunakan dengan beberapa pengecualian.

  2. Meskipun dasar dari sebagian besar game yang lebih besar adalah C ++, itu karena alat dikembangkan dalam C ++. Jika Anda tidak mengkodekan alat-alatnya, mungkin saja Anda tidak akan pemrograman dalam C ++.

Sunting: Juga, memiliki proyek demo yang selesai dalam apa pun (C #, dll.) Secara signifikan lebih baik daripada memiliki sesuatu yang tidak lengkap dalam bahasa yang lebih sulit (C ++, dll.).

acmshar
sumber