Apakah saya menyakiti diri sendiri dengan tidak mengetahui C ++ untuk desain game? [Tutup]


14

Saat ini, saya merasa saya kuat di kedua Java a C #. (Tidak banyak lompatan dari satu ke yang lain benar-benar).

Meskipun saya tidak berharap seorang desainer game / programmer adalah tujuan yang dapat dicapai di awal karir saya, ini adalah tujuan yang akan saya capai nanti dalam karir saya.

Dengan pemikiran ini, saya merasa bahwa mengabaikan C ++ dan alat desain game yang terkait dengannya pada akhirnya akan menyakiti saya atau memperlambat saya dalam kemampuan saya untuk mencapai tujuan saya.

Apakah ini masalahnya? Atau bisakah saya terus mengasah keterampilan C # saya menggunakan XNA dan WPF untuk proyek-proyek pribadi yang dapat mengangkat saya ke karir seperti itu?


1
Lihat posisi di perusahaan game dan katakan padaku apa yang Anda lihat. Anda mungkin akan menemukan bahwa Anda memiliki kerumunan game web / facebook yang sebagian besar mencari actionScript / php devs, kerumunan desktop yang mencari c ++ / lua dan kerumunan i-gadget yang menggunakan objektif-c. Itu tergantung pada apa yang ingin Anda lakukan, apakah Anda menyakiti diri sendiri atau tidak. (Ini datang dari seseorang yang berfokus pada C # dan python dan mengabaikan c ++)
Ken

Jawaban:


21

IMO, ya, Anda cenderung menyakiti diri sendiri. Pertama-tama, benar atau salah ada adalah hirarki yang dirasakan antara bahasa pemrograman - dan C ++ umumnya memiliki berdiri lebih tinggi dari Java atau C # (misalnya, pertanyaan seperti Anda cukup umum - sebaliknya hampir tidak pernah terjadi). Jika Anda menerapkan suatu tempat yang menggunakan C # atau Java, dan Anda tahu C ++, mereka tidak akan mempertanyakan kemampuan pemrograman Anda. Jika Anda menerapkan suatu tempat yang menggunakan C ++ dan Anda tahu C # dan Java, ada peluang yang cukup adil, mereka akan mempertanyakan kemampuan pemrograman Anda, setidaknya sampai taraf tertentu. Itu tidak berarti persepsi tidak dapat diatasi, tetapi Anda masih menempatkan diri Anda pada posisi yang kurang menguntungkan.

Kedua, setidaknya di antara pengembang game independen yang saya tahu (diakui, tidak terlalu banyak), ada beberapa ketidaksukaan dasar C # hanya karena itu dari Microsoft. Sun dipandang jauh lebih positif, tetapi karena pembelian Oracle yang tampaknya tidak menjadi masalah sama sekali. Sebagian besar melihat "Oracle" dan "game keren" sedekat mungkin dengan lawan yang mungkin terjadi secara manusiawi.

Akhirnya, dari sudut pandang praktis, game adalah salah satu tempat di mana C ++ paling banyak digunakan. Jika Anda tidak tahu C ++ pada tingkat yang masuk akal, itu cukup membatasi pilihan Anda.


5

Tidak sepenuhnya jelas, tetapi apa tujuan Anda? Menjadi seorang desainer game? Menurut Anda apa posisi itu?

Dalam kasus dasar, selama Anda tidak menulis kode aktual, tidak mengetahui C ++ secara spesifik tidak akan menyakiti Anda. Tentu saja, memiliki pemahaman dasar pemrograman itu sendiri (desain berorientasi objek dan mampu berpikir dalam hal conditional, dll) yang akan membantu Anda. Apa C + + itu sendiri dibandingkan dengan C # atau Java mungkin tidak masalah ketika datang untuk membantu merancang aturan permainan yang mudah dijelaskan dengan kode.


3

Itu sangat tergantung pada apa tujuan Anda. Jika Anda ingin pindah ke desain secepat mungkin dan bekerja di sana untuk menjadi sutradara, latar belakang teknis yang Anda ketahui tentang Java dan C # dengan baik akan lebih dari cukup.

Jika niat Anda adalah meningkatkan posisi pemrograman senior / lead dan beralih ke posisi direktur dari sana, Anda sebaiknya belajar beberapa jenis bahasa yang tidak dikelola. Tidak harus C ++ - C, Objective C, atau sesuatu yang lebih pinggiran seperti D akan baik-baik saja. Tetapi bahkan bekerja pada level abstraksi yang lebih tinggi dalam C #, sulit untuk menjadi programmer yang hebat tanpa memahami pointer dan manajemen memori, tanpa bisa membaca perakitan dan dump memori, tanpa bisa memahami atau bahkan benar-benar menerapkan optimasi tingkat rendah.

Saya juga harus menambahkan - jika Anda tidak berada di industri sekarang, merencanakan 20 tahun adalah konyol. Mungkin Anda akan tahu Anda membencinya; mungkin Anda akan mengetahui bahwa Anda tidak ingin menjadi direktur karena semua omong kosong non-pembangunan yang terlibat, dan Anda lebih suka tetap menjadi desainer atau programmer senior, bekerja di bawah direktur tetapi dengan banyak kebebasan dalam bidang tertentu domain yang Anda nikmati.


2

Anda mungkin akan baik-baik saja menggunakan bahasa yang Anda tahu; C # with XNA sangat populer saat ini karena Anda dapat mengembangkan ke XBOX360, Zune, dan PC. Popularitas Java akan kembali karena keberhasilan indie Minecraft dengan itu.

Saya berada di posisi yang sama dengan Anda, dan memutuskan untuk "memulai lagi" untuk berbicara dengan C ++, dan 2 minggu yang lalu saya membeli "Beginning C ++ melalui Game Programming." Ini BUKAN buku pemrograman game, tetapi buku pemula C ++ yang mencakup semua yang perlu Anda ketahui di C ++ saat pemrograman game dengan API atau Perpustakaan lain, dan mengganti proyek membosankan dengan lebih banyak yang terkait dengan game. Itu bacaan yang bagus.

Sekarang saya pindah ke DirectX dan membeli buku berjudul "Programming an RTS Game in DirectX" oleh Carl Granberg. Ini memiliki ulasan yang fantastis. Saya masih tidak yakin apakah saya membuat keputusan buruk dengan DirectX atas OpenGL, tetapi kita akan lihat nanti.


2

Mempelajari lebih banyak bahasa hanya akan menguntungkan Anda. Bahkan jika hampir semua mesin pro menggunakan - atau harus menggunakan - skrip dan / atau alat yang luas untuk kemudahan penggunaan perancang, Anda benar karena sangat membantu untuk memiliki proyek yang telah Anda kerjakan secara khusus. Bahkan jika pewawancara Anda tidak memperhatikan proyek Anda (yang sudah tidak mungkin,) mengerjakan bahkan satu proyek pribadi akan menjadi pengalaman belajar yang sangat besar.

Untuk perancang dan seniman, portofolio ini bisa dibilang lebih penting, karena Anda tidak dapat mengikuti tes pemrograman atau melakukan wawancara teknologi secara langsung. Jadi, saya tidak mengatakan bahwa Anda harus panik dan mempelajari segala sesuatu yang perlu diketahui tentang C ++.

Sebaliknya, Anda harus dapat menunjukkan beberapa game yang memiliki potensi desain yang bagus (pikirkan konsep game yang kecil dan jelas seperti Limbo atau Portal), baik Anda mengembangkannya sendiri atau Anda membuatnya menggunakan Flash. Gunakan pengkodean sebagai alat, bukan sebagai senjata utama Anda. Pastikan mereka mudah diakses di situs Anda dengan video gameplay, tangkapan layar, dan unduhan yang tersedia.

Di atas segalanya, poles semua yang Anda buat, tidak peduli seberapa kecil atau jenis proyek yang Anda miliki. Jika pemrograman adalah tentang ketahanan dan kegunaan, maka mendesain adalah tentang kesenangan (orang sering melupakan ini) dan menunjukkan bahwa Anda benar-benar dapat memakukan detailnya.


0

C ++ adalah penggagas dan pembuat beberapa bahasa yang paling banyak digunakan termasuk Java. Dengan mempelajari C ++ (baik untuk pengembang game atau lainnya), Anda akan dapat mempelajari hampir semua bahasa dengan cepat dan mudah. Itulah keajaiban bahasa ini. C ++ memberi Anda lebih banyak kontrol kode dibandingkan dengan Java. Jadi jika Anda ingin benar-benar menjadi master sejati kode Anda, maka Anda akan berada dalam posisi yang jauh lebih baik belajar C ++

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.