Anak saya (15) telah memutuskan bahwa ia ingin mengejar karir sebagai programmer game. Saya sudah mengatakan bahwa dia harus memulai sekarang dengan permainan sederhana. Dia belum memiliki pengalaman pemrograman, tetapi saya seorang programmer (aplikasi bisnis, bukan game) sehingga saya bisa mengajarinya pemrograman, tetapi apa yang akan menjadi platform yang baik baginya untuk memulai? Awalnya saya mencari sesuatu yang dapat memberikan hasil cepat, untuk menjaga antusiasmenya.
Apa yang kamu sarankan?
Jawaban:
XNA adalah solusi yang bagus untuk programmer yang cukup percaya diri. Ini akan menjadi tujuan yang baik untuk dibidik di masa depan.
The Unreal Development Kit adalah cara untuk mendapatkan hasil yang jauh lebih cepat dan mudah, dan mungkin menjadi tempat yang baik untuk memulai. Komentar menunjukkan bahwa UDK sebenarnya merupakan alternatif yang sangat buruk , jadi saya tidak bisa merekomendasikannya.
Unity adalah alternatif, itu akan berjalan pada ponsel yang merupakan sesuatu yang tidak dapat dilakukan UDK (sejauh yang saya tahu). Jadi jika dia suka pemrograman game untuk ponsel, mungkin persatuan akan lebih baik?
sumber
Saya juga 15, jadi saya kira itu bisa membantu? : P
Saya baru-baru ini mulai belajar Python (telah melakukan C ++ selama satu tahun atau lebih), dan saya merasa jauh lebih mudah untuk belajar daripada C ++. Ada banyak perangkap yang lebih sedikit, dan Anda memerlukan sedikit kode untuk mendapatkan sesuatu di layar - apa yang saya temukan membuat Anda ingin melanjutkan.
Dan ada pembungkus seperti Pygame dan Pyglet over SDL / OpenGL untuk sisi grafis.
Sebelum dia mulai membuat game sederhana, saya akan menyarankan belajar bahasa setidaknya untuk beberapa bulan. (Tentu saja, game berbasis teks seperti menebak angka dan algojo adalah latihan yang baik selama ini)
sumber
Sedikit jawaban yang tidak lazim di sini:
Editor Galaxy Starcraft II.
Anda dapat membuat hampir semua game dalam Starcraft 2.
Ini juga mengajarkan sebagian besar konstruksi pemrograman seperti loop dan pernyataan if dalam cara GUI-sentris.
Setelah dia yakin dengan dasar-dasarnya, Anda dapat memiliki dia skrip.
Jika dia pandai, dan menemukan ini menarik, dia akan menyukai pemrograman game yang tepat.
sumber
Saya kira-kira akan membagi alat pengembangan game menjadi tiga kategori besar:
Untuk orang yang tidak memiliki pengalaman pemrograman, saya biasanya menyarankan mereka mulai dalam kategori pertama, hanya untuk memulai melakukan SESUATU. Ketika mereka merasa nyaman dengan alat penulisan yang diberikan tetapi benar-benar merasa bahwa batasannya melebihi manfaatnya, saatnya untuk mempelajari sesuatu dalam kategori berikutnya.
sumber
Saya tahu ini akan sedikit berkencan dengan saya, tetapi ketika tumbuh dewasa saya sangat menikmati P-Robot . Ada tujuan yang sangat sederhana (mengalahkan robot lain), API sederhana, dan waktu singkat antara perubahan kode dan melihat hasilnya. Ini segues ke AI, pola desain, dan bahkan struktur kode skala yang lebih besar (beberapa robot ini bisa menjadi sangat besar - dan bagaimana dengan berbagi kode antar robot?). Jika Anda dapat menemukan sesuatu yang serupa tetapi lebih baru itu akan menjadi cara yang baik untuk mendapatkan bagian "memulai pemrograman". Saran:
Setelah selesai, pertimbangkan untuk memainkan penembak gulir 2D yang sangat sederhana, platformer, atau permainan "gaya arcade" serupa - Anda dapat menggunakan SDL atau XNA atau apa pun yang paling akrab. Bahkan mendapatkan klon pong dan menjalankannya tidak sepenuhnya sepele. Ini memberi Anda gema kecil seperti apa rasanya membangun sesuatu "tanah".
Setelah ini, jelajahi: mod ke game 3d yang ada (objek baru, atau bot, atau sesuatu) untuk memberikan sedikit wawasan tentang mesin yang lebih besar.
Kuncinya, dari apa yang saya lihat, tampaknya:
sumber
Saran saya adalah membuat game berbasis web. Mengapa? Yah, pertama-tama, JavaScript adalah bahasa yang indah yang akan mengajarinya semua konsep dasar pemrograman dan Anda benar-benar dapat membuat gim hebat, kompeten, dan lintas platform. Ini juga akan membuatnya memenuhi syarat untuk banyak hal selain dari hanya membuat game ... Jika Anda, untuk beberapa alasan, tidak ingin putra Anda masuk ke pengembangan web, maka saya sarankan menggunakan Python, dengan modul yang disebut PyGame. Saya juga punya pengalaman dengan itu, dan saya luar biasa. Yang tidak saya sarankan adalah memulai dengan C / C ++, itulah yang saya lakukan dan itu mengerikan dan mungkin membuatnya tidak termotivasi untuk pemrograman sama sekali.
Pada catatan lain, Anda mungkin ayah yang luar biasa, selamat!
sumber
Mindstorms Roboter sangat keren. Kami mendapat beberapa NXT di sekolah, dan minggu lalu kami mulai dengan pemrograman hal-hal seperti mengikuti garis, dan sebagainya. Anda bisa mendapatkan hasil dengan mudah.
Saya juga menemukan www.3dgamestudio.de beberapa waktu lalu. Saya tidak terlibat lebih dalam, tetapi itu benar-benar menarik. Anda dapat memprogram dengan lite-C yaitu:
Di http://tutorial.3dgamestudio.net/ Anda masuk ke dalamnya. Dan ada juga Editor level, model dan terrain.
ps: Saya berusia 16 tahun dan mulai dengan seorang teman yang memprogram situs web dan menyesuaikan server game yang diprogram. Jadi ini juga bisa menarik baginya.
sumber
Saya tidak bisa menyarankan ini cukup, tetapi membangun level sendiri untuk permainan pilihan favoritnya .
Untuk seseorang dari usia / tingkat keterampilan, mereka harus mulai dengan membangun level di mesin permainan favorit mereka .
Banyak game hebat hadir dengan editor level yang memungkinkan banyak derajat kebebasan.
RPG : Seri toolset NWN 2 electron Obsidian , gulungan Elder
RTS : Warcraft III 's tingkat editor adalah RTS Editor fantastis dan bahkan spin off itu sendiri permainan ( liga legenda dan pahlawan Newerth ).
FPS's : Hammer for half-life 2. Counterstrike awalnya adalah mod paruh-hidup.
Mulai di sini . Tingkat bangunan untuk gim favorit Anda mungkin adalah tempat terbaik untuk memulai.
sumber
Meskipun semua informasi di sini sangat membantu, saya ingin menyebutkan bahwa Tantangan STEM (kompetisi permainan nasional yang dipromosikan oleh Gedung Putih dan ESA) memiliki beberapa saran tentang platform http://www.stemchallenge.org/about/Default.aspx
Mekanik Gamestar, Gamemaker, Kodu, Scratch, PBS KIDS Siap Mempelajari Streaming
Saya merasa bahwa ada sumber daya komunitas tentang platform ini secara khusus terkait dengan STEM.
Lihat juga tutorial yang luar biasa ini tentang python dan pygame (yang juga merupakan buku online) http://inventwithpython.com/chapters/ di sini adalah PDF dari sekuel buku ini khusus tentang pygame http://inventwithpython.com/blog/making -games-with-python-pygame /
Berikut artikel NYT lainnya http://www.nytimes.com/2011/11/10/technology/personaltech/computer-programming-for-children-minus-cryptic-syntax.html?_r=2&sq=mitchel+resnick&st=cse&adxnnl= 1 & scp = 1 & adxnnlx = 1322489239-tMp1Wjl9FUcI8rLaJ6cbOw
Pembaruan: inilah diskusi slashdot http://ask.slashdot.org/story/11/12/27/152228/ask-slashdot-tools-for-teaching-high-school-kids-how-to-make-games
sumber
Game Maker adalah pilihan yang sangat baik untuk orang-orang yang tidak memiliki pengalaman pemrograman. Ini memiliki versi gratis dan versi berbayar yang relatif murah. Hal ini memungkinkan Anda untuk membuat game dengan antarmuka drag-and-drop dengan cepat, tetapi termasuk dukungan untuk skrip yang lebih maju.
sumber
Seperti yang Martin katakan, UDK mungkin adalah cara tercepat untuk membuat sesuatu bekerja karena dilengkapi dengan banyak hal seperti AI, model dan juga banyak buku. Ini memiliki editor peta yang sangat bagus, dan bahasanya adalah Java-esque (dan script seperti ECMA).
Alternatif lain adalah mencoba melakukan game dalam Flash atau Silverlight - mulailah dengan game 2D sederhana. Apa pun genre game yang disukainya, Anda akan menentukan toolkit ini.
sumber
Berasal dari 14 tahun, saran ini mungkin berguna. Saya menemukan, cara terbaik untuk memilih platform, adalah platform yang paling sesuai dengan tujuan. Saya telah membuat posting ini berkali-kali sebelumnya.
Dari Reddit -
Lihatlah gim seperti Minecraft. Tentu itu ditulis di Jawa, bahasa yang memiliki pangsa pasar yang sangat kecil di industri pengembang game. Apakah konsumen peduli? Tidak. Mereka peduli dengan fungsinya.
Namun, karena putra Anda tidak memiliki pengalaman dalam pemrograman, saya sarankan mempelajari bahasa yang cepat dikodekan seperti Python, atau menggunakan platform yang ada, seperti XNA. Secara pribadi saya suka Slick2D dengan Java, tapi saya kira itu kesukaan saya ...
sumber
Saya diperkenalkan dengan pemrograman pada usia muda (di bawah 15), dan ayah saya memutuskan untuk menggunakan VB (1.0). Kami membuat versi memutar pong menggunakan objek timer dan gambar GDI. Saya suka itu karena kami mulai dengan kanvas kosong dan dapat mempelajari dasar-dasar struktur pemrograman sambil mencoba untuk membuat sesuatu yang menyenangkan.
Hari ini, saya pikir saya akan memilih XNA dan memilih game 2D sederhana. C # dan XNA cukup lurus ke depan dan mereka memberi Anda banyak ruang untuk tumbuh, dan mereka gratis.
sumber
Jika dia hanya ingin membuat game maka dia harus menggunakan XNA, Unreal, Unity dll. Jika dia ingin menjadi programmer game maka dia harus belajar C / C ++ dan OpenGL / SDL atau D3D terlebih dahulu.
XNA, Unreal, Unity dll bagus untuk membuat game tetapi sangat buruk dalam melakukan terlalu banyak untuk Anda. Saya yakin orang akan tidak setuju dengan saya dalam hal ini, tetapi ini pada dasarnya mengubah Anda menjadi programmer yang malas dan ketika tiba saatnya untuk mempelajari hal-hal seperti poin dalam C ++ itu akan lebih sulit karena Anda pergi dengan opsi yang lebih mudah terlebih dahulu.
Saya tidak pernah menyarankan C / C ++ lainnya sebagai bahasa pertama untuk dipelajari jika Anda ingin menjadi programmer game. Alasan utamanya adalah bahwa bahkan jika Anda belajar C # / XNA, jika Anda serius ingin menjadi pengembang game, Anda harus tahu C atau C ++ pada tahap tertentu karena tidak ada yang akan mempekerjakan Anda sebaliknya. Jadi, jika mereka serius tentang profesi maka Anda hanya menunda mempelajari apa yang diharapkan dari Anda.
sumber