Saya akan memulai perjalanan menuju pengembangan game. Mengikuti jawaban untuk pertanyaan terakhir saya, saya akan menggunakan C # dan XNA.
Namun, saya secara pribadi tidak tahu pengembang game lain dan saya tidak bekerja di industri sehingga, dengan demikian, akan otodidak. Pengecualian untuk hal ini jelas adalah mengajukan pertanyaan dan membaca informasi online / cetak tetapi saya masih akan mengklasifikasikan ini sebagai pembelajaran otodidak.
Dengan itu, saya ingin siap menghadapi masalah yang mungkin saya temui karena tidak memiliki seseorang untuk "menjaga saya di bawah sayap mereka".
Sebagai analogi, ketika belajar sendiri untuk bermain gitar, saya memainkan kunci utama sedemikian rupa sehingga pindah ke kunci yang saya pelajari kemudian menjadi lebih sulit.
Jika Anda bisa membagikan pelajaran yang Anda pelajari dan saran tentang apa yang mungkin salah dalam pembelajaran saya tentang pengembangan game, saya akan berterima kasih.
Saya sangat sadar bahwa membuat kesalahan adalah bagian terbesar dari pembelajaran tetapi, jika ada kesalahan yang bisa saya siapkan maka saya akan lebih bahagia dengan itu.
Jawaban:
Pengembangan game seperti rekayasa struktural
Ada persyaratan minimum untuk fungsionalitas. Persyaratan minimum tidak terlalu menantang dan banyak orang dapat belajar bagaimana memenuhinya. Itulah bagian fungsinya . Itu bagian kecil. Di sinilah keputusan bahasa apa yang akan digunakan, platform untuk mengembangkan, atau apa perpustakaan untuk memanfaatkan masuk
Bagian selanjutnya adalah bagian besar. Bagian bentuk . Bentuk inilah yang benar-benar membedakan game bagus dari game hebat. Ini adalah bagian yang merupakan seni pengembangan game. Saya tidak berbicara tentang aset sensorik saja (grafik, suara, dll?). Saya berbicara tentang menyusun pengalaman. Ini bagian yang sulit.
Bagian fungsi berasal dari tutorial, perpustakaan, dan sedikit waktu. Siapa pun bisa melakukannya.
Bagian formulir berasal dari Anda. Semangat itulah yang membuat Anda ingin membuat game sejak awal. Ini seperti menceritakan sebuah kisah, sebuah kisah yang dibuat-buat (atau kisah nyata yang banyak Anda bumbui). Semakin banyak Anda menceritakan kisahnya, semakin baik hasilnya. Dalam pengembangan perangkat lunak kami menyebutnya iterasi. Kisah Anda adalah kode Anda. Pertama kali Anda mengatakannya, itu tidak akan terlalu bagus. Hal-hal akan keluar dari tempatnya, Anda akan menyadari bahwa bit ini harus pergi ke sana dan yang di sini. Anda akan menemukan bahwa segala sesuatu mungkin akan mengalir lebih baik jika Anda mengatur hal-hal seperti ini atau memperluas bit ini. Jadi, seperti cerita yang bagus, Anda akan menceritakannya, mengukur seberapa bagusnya, dan kemudian memodifikasinya. Ini membutuhkan dedikasi dan ini membutuhkan waktu. Jangan khawatir jika hal pertama yang Anda hasilkan bukan emas. Saya telah bekerja lama dan keras pada banyak bagian permainan saya hanya untuk merobeknya nanti karena saya memikirkan banyak halcara yang lebih baik untuk melakukannya. Jangan khawatir tentang ini, itu semua adalah bagian dari proses pembelajaran. Anda selalu belajar dari kesalahan Anda, dan sering membuat kesalahan itu yang mengarahkan Anda ke cara yang lebih baik dalam melakukan sesuatu.
Jadi apa yang harus Anda ambil dari ini adalah ini:
Internet penuh dengan bulu-bulu informasi dalam posting blog, tutorial, dan komunitas seperti ini. Secara kolektif, saya katakan itu sayap yang cukup bagus untuk berada di bawah. Pada dasarnya bahayanya tidak parah. Anda mungkin melakukan hal-hal yang "salah" atau sulit untuk sementara waktu, tetapi pada akhirnya Anda akan belajar. Anda tampaknya memiliki banyak pengalaman pemrograman, jadi saya pikir Anda akan mengambil bagian fungsi dengan cepat. Kesalahan yang dibuat dalam pengembangan game dan pengembangan "reguler" banyak tumpang tindih. Pengalaman Anda akan membantu Anda menghindari banyak masalah umum yang menimpa pengembang game baru. Saya pikir Anda akan baik-baik saja. Semoga berhasil.
sumber
Ya, tidak memiliki seseorang yang telah ada sebelumnya untuk mengatakan kepada Anda apa yang harus dilakukan, bagaimana cara memperbaikinya, dll. Mungkin hal terburuk yang akan Anda lewati. Tapi jangan takut! Anda masih dapat membaca BANYAK blog orang yang telah ada di sana, mereka membagikan pengalaman mereka di industri ini, bagaimana mereka mencapai kesuksesan, bagaimana game sebelumnya gagal dan mengapa, dll.
Contoh yang baik adalah:
Dan banyak lagi!
Ucapan terakhir saya adalah: Jangan takut. Saya belajar sendiri juga, 4 tahun saya sudah diperkenalkan dengan game dev, banyak hambatan datang, tapi tidak ada yang tidak bisa Anda selesaikan dengan googling dan membaca beberapa teks. Semoga berhasil dalam perjalanan Anda :)
sumber
release
permainan tidak hanya terkait dengan mengembangkannya. Itu bacaan yang bagus. Saya memposting tautan lebih banyak sebagai referensi, bukan untuk mengikuti blog. Jika Anda kembali ke arsip, ada beberapa contoh prototipe dan semua yang membantu mereka dengan dunia goo dan prototipe "kurang kecil" lainnya: DSikap ini. Sikap "jangan menyentuhnya, sampai Anda tahu cara melakukannya dengan sempurna". Itu benar-benar akan menahan Anda.
Anda melihat sikap ini di antara pengembang pemula dari semua jenis - bukan hanya game. Situs web juga. Hei, situs web adalah basis data dengan ujung html dengan javascript. Anda mempelajari teknologi dengan cara apa pun yang Anda bisa, Anda menyatukan situs pertama Anda. Itu tidak akan fantastis, tetapi setelah melakukan hal-hal dengan cara yang tidak optimal bukanlah masalah besar !! Jika Anda melakukannya "jauh" pertama kali, Anda selalu dapat melakukannya lebih baik untuk kedua kalinya. Maksud saya adalah, tidak ada bahaya. Kecuali sikap ini, mungkin. Sikap ini adalah apa yang akan menghentikan Anda dari membuat sesuatu, karena Anda akan selalu menolak tugas itu dan berkata, "Saya belum tahu bagaimana melakukan itu."
Sikap bahwa ada "cara yang benar" untuk melakukan sesuatu. Tidak ada. Semuanya persis seperti yang terlihat. Anda harus meletakkan piksel di layar, dan membuat suara saat terjadi sesuatu.
sumber
Tergantung pada apakah Anda ingin menjadikan ini sebagai profesi Anda nanti (Saya hanya akan menganggap Anda memikirkannya dan ini bukan hanya sekedar hobi), inilah yang saya temukan sangat efektif:
Sudah dikatakan sebelumnya, tapi saya akan mengatakannya lagi - mulai dengan potongan kecil, biasakan diri Anda dengan mesin, kerangka kerja, alat atau program. Setelah Anda mendapatkan dasar-dasarnya -> pergi lebih besar.
Ini mungkin tampak agak ekstrem, tetapi yang saya maksud adalah belajar sebanyak mungkin tentang SETIAP aspek pengembangan game - tidak peduli apakah Anda seorang pembuat kode, artis atau desainer. Mengetahui saluran pipa adalah kunci untuk membangun berbagai hal dengan cara yang paling efisien. Jika Anda menerapkan senjata -> desain, konsep, modelkan, implementasikan, buat kode! Anda jelas tidak perlu menjadi seniman konsep, perancang, dan nerd Pipeline kelas A - tetapi Anda harus terbiasa dengan semua alat proses, dan memahami setiap langkah penciptaan. Juga, periksa situs web permainan untuk berita dan pembaruan dalam bisnis - gamasutra.com, kotaku dll semua memiliki artikel bagus tentang topik bisnis dan teknik. Jangan membatasi diri Anda hanya pada satu bidang pengembangan - menyerap SEMUA pengetahuan yang bisa Anda dapatkan :)
Anda akan payah pada apa yang Anda lakukan. Pada awalnya. Selalu seperti itu (percayalah, saya tahu.: D), tetapi akan lebih baik jika Anda terus berjalan dan TIDAK PERNAH berhenti mencari cara untuk meningkatkan pekerjaan Anda. Internet adalah sumber yang bagus untuk tutorial, referensi, dan bantuan. Anda tidak akan pernah benar-benar terjebak, jadi garap ide-ide paling gila, gagal, belajar dari kesalahan Anda dan menjadi lebih buruk dengan proses itu.
Meskipun internet adalah sumber yang bagus, mendapatkan umpan balik tatap muka adalah sesuatu yang harus Anda hadapi di tempat kerja. Jadi meningkatkan keterampilan lunak Anda juga penting. Jika Anda belum memiliki mentor, atau secara umum tidak tahu terlalu banyak orang yang bekerja di industri maka Anda harus melihat-lihat daerah Anda untuk pertemuan indie dev, pergi ke konvensi, dan memeriksa acara lain di mana Anda dapat mulai membangun jaringan pengetahuan dan kontak pribadi. Ini juga membantu membangun sesuatu dengan orang lain - otodidak hebat, tetapi pengembangan game adalah permainan berbasis tim, jadi periksa forum untuk proyek hobi - misalnya Forum Epik untuk proyek UDK, forum Persatuan atau bahkan Forum CryEngine -semua tiga mesin itu tersebar luas, ada satu truk penuh orang-orang berbakat yang mengerjakan proyek sampingan di sana, dan mereka '
Saya pikir itu semua saran yang bisa saya berikan. Saya harap ini membantu Anda dalam beberapa cara :)
sumber
Saya tidak punya pengalaman C # dan XNA sama sekali, tetapi saya pikir itu tidak akan membuat saya salah dalam pernyataan berikut:
Sangat baik untuk mempelajari pemrograman tanpa guru. Jika kode Anda berfungsi *, tidak masalah bagaimana kode itu dikodekan. Ya, memang cocok untuk pemrograman kolaboratif, tetapi kemudian Anda tidak akan mengkodekan lagi, bukan? Ini juga dapat membuat kode Anda kurang mudah dibaca di masa depan, membuatnya sulit untuk menggunakan komponen lama atau men-debug kesalahan baru, tetapi dalam jangka panjang semua kesalahan Anda akan menjadi kekuatan Anda. Hal tersulit dalam mempelajari desain OOP dan MVC adalah memahami mengapa saya harus melakukan "ini" dengan "seperti itu". Jika Anda sudah memiliki pengalaman membuat program yang buruk, Anda akan mengetahui kekuatan pola dan menggunakannya untuk keuntungan Anda. Jika Anda selalu membuat program yang baik dengan mengikuti pola yang diajarkan seseorang kepada Anda, maka Anda akan terus membuat program yang baik (dalam arti kode yang valid), tetapi alih-alih mengambil keuntungan dari pola, Anda akan dibatasi olehnya, karena Anda tidak akan cukup memahaminya untuk membuat modifikasi yang bermanfaat. Pada akhirnya, yang terpenting adalah Anda berlatih, bukan bagaimana, jadi dalam kedua kasus, cepat atau lambat Anda akan mendapatkan pengalaman yang sangat mirip.
* satu hal yang penting! Dalam hal keamanan Anda benar-benar harus bertanya kepada seseorang yang berpengalaman jika kode Anda dilakukan dengan baik, karena lubang keamanan tidak muncul peringatan kesalahan.
sumber
Entah bagaimana ini pertanyaan yang bagus! :-)
Saya sudah memulai aktivitas gamedev saya belum lama ini, dan ini akan menjadi yang kedua kalinya, sehingga saya dapat berbagi pemikiran saya. Anda benar tentang itu adalah hal yang baik untuk memiliki seorang mentor. Mentor ini adalah internet. Jadi semakin banyak info dibagikan di internet, semakin mudah untuk belajar untuk Anda. Itu sebabnya XNA / C # adalah pilihan yang sangat baik untuk memulai. Ada banyak gamedev indie amatir dan profesional yang berbagi artikel dan di web. Hal-hal lain untuk disebutkan:
sumber
Ini berlaku untuk setiap disiplin yang terkait dengan industri kreatif:
Bahaya terbesar adalah mencoba membangun sesuatu yang 'terlalu besar' atau 'epik' dari pintu gerbang.
Misalnya, jika Anda mulai membuat musik, Anda tidak akan memulai dengan mencoba membuat simfoni selama 2 jam 2 jam.
Dalam desain level, ini bermanifestasi sebagai upaya membuat 'peta terbesar', atau menggunakan sistem game untuk membangun hal paling rumit terbesar yang mampu ditangani oleh mesin permainan. Dalam pemrograman ini bisa jatuh ke dalam 'membuat seluruh permainan sendiri' dimulai dengan kode sumber nol. Anda benar-benar membutuhkan banyak pengalaman dan disiplin untuk memulai dengan nol sumber, dan bahkan kemudian itu sangat sulit, dan membuat keputusan desain atas semuanya itu sulit sepanjang waktu Anda mengerjakan desain segalanya. Bahkan gim yang simplistic membutuhkan pemrograman dalam jumlah besar dalam OS dan bahasa modern dewasa ini. Juga jika Anda mulai dengan kode orang lain, Anda dapat mempelajari apa yang berhasil dan yang tidak berfungsi dengan baik, jadi bekerja dengan sebanyak mungkin mesin adalah nilai tambah yang besar juga.
Jadi memulai saya akan merekomendasikan sesuatu seperti rencana berikut:
Hal terbaik yang harus dilakukan adalah mengambil mesin jadi yang sudah ada (baik yang modable atau opensource satu) dan mulai meretasnya, dan lakukan itu beberapa kali ke beberapa mesin yang berbeda sampai Anda menemukan yang Anda sukai.
sumber