Programlamayı sevmezsem video oyunlarını nasıl yapabilirim? [kapalı]


10

Okulumda C ++ kodu okuyorum (benim ana bilgisayar programlama). Dürüst olmak gerekirse, notlarım o kadar iyi değil ve ödevler gerçekten zor. Bazen işim için gelecekte 8-10 saat kodlama yapacağım (ki bu stresli) üzülüyorum.

Ama yine de video oyunları yapmak istiyorum. Belki de tüm bu stresli kursları almamın tek nedeni budur. Her zaman araziler, hikayeler, karakterler, kurgusal oyun dünyaları yazarım ... Bir keresinde, C ++, C # gibi bilgisayar teknolojisini değil, oyun tasarımı gibi sanatsal teknolojileri incelemeliyim diye düşündüm.

Bununla birlikte, Kojima, Miyamoto vb.Gibi popüler oyun tasarımcılarının (veya yönetmenlerinin) çoğu iyi programcılardı. Şirketler, nasıl oyun yapılacağını anladıkları için programcıları direktörlere atarlar.

Oyun tasarımı programları öğrettikleri diğer kolejleri veya üniversiteleri bulmaya çalışıyorum. Bununla birlikte, Kuzey Amerika'daki 10. sıradaki oyun tasarım okullarını listeleyen bir makale güvenilmez görünüyor çünkü anket şirketi sadece öğrencilerin intervews'lerinden puan alıyor.

Bir keresinde, bu makaleye göre 7. rütbe olan Vancouver Sanat Enstitüsü'ne katılmaya çalıştım. Ancak, orada eğitmen olan bir programcı bana gerçeği söyledi: mezun öğrencilerin istihdam oranı düşük.

Programlamayı sevmezsem gelecekteki oyunları nasıl yapabilirim?


9
Bir yan not olarak, diğer yorumlarda belirtildiği gibi programlama gerekmese de ... kodun nasıl çalıştığına dair genel bir anlayış, olası donanım / yazılım sınırlamaları (örneğin, modelleme ve çoklu sayılar) hakkında fikir verirken faydalıdır.
Inisheer

10
Ne Miyamoto ne de Kojima hiç programcı değildi. Miyamoto endüstriyel bir tasarımcıydı ve Kojima en iyi yazar olarak tanımlanacaktı. Seminal Japon geliştiriciler vardı programcılar Koichi Nakamura, Tomonobu Itagaki ve Satoru Iwata arasındadır.

20
Oy vermedim, ama bu soruyu gerçekten sevmiyorum. Bence tutumunuzla ilgili temel bir sorun var ("İstemiyorum ..") ve tabağa çıkıp ödevlerinizi kodlayamazsanız, başka bir yerde çok iyi yapacağınızı sanmıyorum ya.
bobobobo

14
"Ben her zaman arsalar, hikayeler, karakterler, kurgusal oyun dünyaları yazarım." Bu oyun tasarımı değil; bu yazıyor . Oyun yapmak istemiyorsun. Oyunu arka plan yapmak istiyorsun . BTW, tavsiye soruları bu site için gerçekten uygun değil. Konuşkan forum tipi şeyler yerine gerçek cevapları olan daha pratik soruları tercih ediyoruz.
Nicol Bolas

Yanıtlar:


17

Programcılar oyun endüstrisindeki tek kişiden çok uzaktır. Belirttiğinize göre, bir oyun tasarımı kariyeri peşinde koşarken çok daha mutlu olacaksınız. Hala bu oyun alanlarını, hikayeleri, karakterleri ve kurgusal oyun dünyalarını diğer oyun tasarımcılarından oluşan bir ekiple (oyun şirketinin ne kadar büyük olduğuna bağlı olarak) yazabilirsiniz. Sonra tüm tasarımları programcılara ve oyun sanatçılarına verin, fikirlerinizi eyleme geçirin.

Bir oyun tasarımı majör çok daha eğlenceli olurdu ve bir programcı olmaktan daha az ödemez.

Şahsen oyun tasarımı ve programcılığında çift anadal yapma planlarım var, çünkü gelecekte bir süre için kendi bağımsız oyunlarımı oluşturmak istiyorum. Bir okula gelince, Burlington'daki Champlain kolejine bakıyordum.

İşte baktığım oyun tasarımı binbaşı için bir bağlantı: http://www.champlain.edu/underduate-studies/majors-and-programs/game-design-x14300.html

Ayrıca, daha iyi bir oyun tasarımcısı olmak için oyun programlamaya ilişkin iyi bir kavrayışa sahip olmanız, oyun programlamasındaki bu küçük kursa bir göz atmanız gerektiğinden endişe duyuyorsunuz: http://www.champlain.edu/underduate-studies /majors-and-programs/game-programming-minor.html

Umarım bunlardan bazıları yardımcı olur!


10
Endüstride, bence şimdiye kadar sadece tüm tasarımları programcılara ve oyun sanatçılarına teslim edebilecek kıdemli olmayan bir tasarımcıyla karşılaştım. Çok az insan sadece parseller, hikayeler, karakterler ve dünyalar yazmak için personeli işe alır, çünkü bu bir proje süresince tam zamanlı bir yazı değildir.
Kylotan

5
"Bir oyun tasarımı kariyerini ikna etmek" ile ilgili sorun, kimsenin oyun tasarımı yapmak için sektörde yeni başlayan birini işe almamasıdır. Şans stüdyo zaten oyunlar için fazlasıyla fikir vardır. Sorun şu ki, herkesin oyunlar için fikirleri var, bu yüzden kendi başına bir şirket için yararlı bir yetenek değil. Tamamen oyun tasarımı olan bir kariyer yapmanın tek yolunun aslında kendi oyun stüdyosunu / indie ekibini / neyi kurmak ve oyun tasarımı pozisyonunu almak olduğunu düşünüyorum. Yıllarca deneyiminiz olmadıkça kimse size bunun için ödeme yapmaz.
TravisG

2
"Sadece tüm tasarımları programcılara ve oyun sanatçılarına teslim et" oyun tasarımı işi hakkında düşünmek için oldukça yanlış bir yol olsa da, ben şahsen üzerinde çalışmak için kolejden işe alınan birkaç kişiyi tanıyorum oyun tasarımı ve (tartışmalı olarak) tamamen oyun tasarımı olan kariyer peşinde koştuk. Şey, seviye tasarımı gibi oyun tasarımının daha pratik yönleri için işe alındı.
jhocking

2
Evet, giriş seviyesi 'tasarım' rolleri genellikle içerik oluşturma ile ilgilidir - bir düzeyde bu 'araziler, hikayeler, karakterler ve dünyalar' olarak kabul edilebilir, ancak genellikle bazı teknik gereksinimler vardır (her ne kadar programlama gerektirmese de).
Kylotan

Günümüzde teknik gereksinim çoğunlukla 3D düzenleme ortamlarına ve bazı sanatsal yeteneklere aşinalıktır.
Patrick Hughes

6

Oyun tasarımı , Oyun programlamasından farklıdır .

Şunları yapabilirsiniz Bir oyun tasarımcısı olarak rol ve kod dokunmayın.


Bana detaylı olarak anlatır mısın? Bana bazı okullar falan önerebilir misin?
Nisan'da

2
@hoper: Ödeyebiliyorsanız DigiPen var. çoğu oyun okulu çok kötü bir üne sahiptir ve bunu kazanmıştır; DigiPen parlak bir üne sahiptir ve aynı şekilde kazanmıştır. ancak, BAGD / BSGD programları çok yenidir, hala bir miktar akı altındadır ve sektörde henüz kanıtlanmamıştır: digipen.edu/academics/degree-programs/bs-in-game-design
Sean Middleditch

1
DigiPen'e gittim ve son yıllarda DigiPen'den çok sayıda adayla röportaj yaptıktan sonra, "parlayan itibar" iddiasını kendimden çok memnunum.

6

Bir oyun tasarımcısı olarak, tüm geliştirme döngüsü boyunca üretken olabileceğiniz en az bir uzmanlık alanınızın olması gerektiğine inanıyorum. En azından kodda neler olduğuna dair iyi bir fikre sahip olmalısınız çünkü sonuçta, herhangi bir video oyununu bir arada tutan şey budur.

Bu cevabı göndermeyi planlamıyordum, ancak bugün bunu desteklemek için bazı sağlam kanıtlar okudum:

Valve'in muhtemelen sızdırılmış çalışan kılavuzu sayfa 39-40'da diyor:

Mühendis Olmayan: programlayın veya programlanabilir

Valve'in temel yetkinliği yazılım yapmaktır. Açıkçası, farklı disiplinler ürünlerimizi üretmenin bir parçası, ama biz hala mühendislik merkezli bir şirketiz. Çünkü yazılım oluşturma sürecinin özü mühendisliktir. Kod yazarken olduğu gibi. Uzmanlığınız kod yazma konusunda değilse, yazılım yapmanın kod yazma bölümünü anlamaya koyduğunuz her enerji, sizin (ve Valve'in) yararına olacaktır. Mühendis olmanıza gerek yok ve mühendisin sizden daha değerli olduğunu söyleyen hiçbir şey yok. Ancak farkındalığınızı son derece teknik bir yöne doğru genişletmek asla kötü bir şey değildir. Ya “kutulara” koyabileceğiniz bitlerin kalitesini ya da miktarını artıracaktır, bu da müşterileri daha fazla etkilemek anlamına gelir;


2
Bağladığınız kılavuz harika. Bu arada , aslında web sitelerinde şimdi dağıtıldı (daha önce olmasaydı.?)
bobobobo

4

Sanatsal mısın? Dijital medya derecesi yapmayı düşündünüz mü? Hem Bilgisayar Bilimi hem de Dijital Medya okuyan bir çok arkadaşım var ve birçoğu dijital medyayı çok keyifli buldu.

Koşullarınızdan tam olarak emin değilim, ancak tüm oyun oluşturma süreci farklı becerilere sahip birçok farklı insanı içeriyor. Saf oyun tasarımı değilse (ki kesinlikle hoşunuza gidebilecek bir alandır), hala modelleme ve animasyon, ses vb.

İyi şanslar!


3

C ++ dışında bir dilde programlamayı düşündünüz mü? Programlamanın stresli olabileceğini söylüyorsunuz, ancak sadece size daha uygun bir programlama dili seçmek çok fazla stres yaratabilir.

Özellikle bilgisayarların teknik tarafında değilseniz, C ++ sizin için bir dil olmayabilir. Çok hızlı olacak şekilde tasarlanmıştır, ancak ayrıntılı ve karmaşık tarafta olabilir. Bellek yönetimi ve türleri gibi uygulama ayrıntılarını unutmak da çok affedicidir. Teknik olmayan bir kişi için, zihninizin uygulama ayrıntılarıyla uyumlu olmadığı için bu özelliklerin size fazladan stres verebileceğini düşünüyorum.

Örneğin PyGame'de bir oyun yapmaya çalışmayı düşünüyorum (Python'da ve bu konuda iyi şeyler duydum), uygulama detayları hakkında çok fazla uğraşmazken oyun mekaniğine ve diğer yüksek düzey oyun özelliklerine gerçekten odaklanmanıza izin verecektir. Biraz stresi azaltabilir ve yaratıcılığınızı serbest bırakabilir. Size daha kolay gelebilecek diğer diller: Ruby, Lua, C #, Javascript / Coffeescript.

Büyük isim oyun tasarımcılarının çoğunun da programcı olduğu konusunda haklısınız. Gerçekten gösterecek bir oyununuz olmadığında bir oyun tasarımcısı olarak tanınmak zordur ve bir programcıyı geçmişiniz olmadığında sizi bir oyun yapmaya ikna etmek zordur. En az bir oyun ürettiğinizde, web tabanlı küçük bir oyun olsa bile kesinlikle daha fazla saygı kazanacağınızı düşünüyorum.

Programlama bölümünü olabildiğince kolay hale getirin, böylece sizin için önemli olan şeylere odaklanabilirsiniz.


On yıldır yaşayan bir C ++ yazımı kazanıyorum ve ne yapması gerektiği için iyi, ama oyun geliştirme için değil. C ++ oldukça düşük seviyeli, genel amaçlı bir dildir. Optimizasyon için iyidir. Unity, AGS ya da herhangi bir şey gibi oyunlara yönelik daha rahat bir şeyle kendinizi rahat hissetmediğinizi görmenizi öneririm. Yapmak istediğiniz oyun türlerine yönelik gibi görünen bir şey seçin (ancak şimdilik tek oyunculu veya kanepeli kooperatif oyunlarına sadık kalın, kimse ilk programlama projesi olarak MMORPG yapmaz) ve sadece bir şey yapın.
uliwitness

Yeni dilleri veya ortamları öğrenmekten korkmayın. Oyun motorları çok farklı. Twine veya Inform, Unity veya Unreal, AGS veya GameMaker veya ClickTeam'e bakın ... Bunlardan biri mevcut oyununuz için doğru olabilir. Başka bir sonraki için daha iyi bir seçim olabilir. Ne kadar çok denerseniz, farklı bir motorun ne zaman kullanılacağını tanıma olasılığınız o kadar artar.
uliwitness

2

Senin gibi başladım, programlamadan nefret ediyorum ve diğer yönleri sevdim. İlk yıl programlama dersinde başarısız oldum, ancak tekrar okula devam edip okulda kalmak için olumlu bir not almam gerekti. O yıl elimden gelenin en iyisini denedim ve çok keyif aldım. Şimdi 3 yıl sonra yaklaşık% 75 programcı ve% 25 sanatçıyım.

Bir fark var: c ++ 'ın yaptığı tüm düşük seviyeli baş ağrılarını içermeyen actionscript 3 ile başladım. Aslında c ++ ve genel olarak düşük seviyeli programlamadan nefret ediyorum. Programlamaya dahil olduğunuz koşulların uygun olmadığını düşünüyorum. Actionscript veya c # (xna) gibi daha kolay bir dil deneyin, bu büyük bir fark.



2

Bir beceri, herhangi bir beceri seçin ve mükemmel olun

Çoğu oyun stüdyosu / indie'yle çalışmak için bir ton kendi fikrinin olduğunu görmezden gelmek ve kendi fikirlerine sahip rastgele bir insanla ilgilenmemek bile ... ... internette dolaştınız mı? Hiçbir şey dolu ama neredeyse hepsi değil, oyun fikirleri ve meyve vermesi gelmeyecek. Herkesin ve küçük kardeşlerinin oyun fikirleri vardır, bu yüzden en zor kısmı meyveye bir fikir getirme konusunda daha iyi olmak için daha iyi çalıştınız . Organizasyon, yönetim veya sermaye vb. Gerektiren

Kod yerine ingilizce yaz

Programlama yönünü tamamen atlayan, ya da bunun yerine yazma, aynı zamanda yayınlanması kolay değildir veya kendi kendine yayınlanıyorsa, popüler hale gelir. Sadece yazı yazarak oyun oluşturabilir ve üzerinde çalışırsanız oyun gibi eğlenceli hissettiren bir yazı oluşturabilirsiniz . Ve insanlar bundan bir oyun gibi zevk alacaklar, o zaman neden olmasın?

Farklı bir dil seçin veya iki veya üç

Ben de yazıyor olsaydım C ++ 'dan nefret ederdim, bu yüzden yapmıyorum. Bunun yerine farklı dillerde yazıyorum (clojure'u seviyorum, ancak sık sık kullanamıyorum ve javascript'ten nefret etmiyorum). Programlama, çeşitli diller arasında özdeş bir deneyim değildir.

Bununla birlikte, programlama kariyerine sahip olmak, kesin koşullarınıza bakılmaksızın, sadece eğlence için yapmaktan farklıdır. Evden web kodlaması yaparak çalışıyorum ve yan tarafta oyunlar geliştiriyorum, ancak buna rağmen bir patronum yok, kendim için çalışıyorum, serbest çalışıyorum ve zamanımı neredeyse istediğim gibi kullanabilirim, hala stresli ve yapmanız gerekenler para kazanmak için mücadele ediyorlar ve arada bir dışarıya çıkmak güzel olurdu ...

Kendinden nefret etmeyen programlama profesörleri / rehberleri / kodlayıcı arkadaşlar bulmaya çalışın

Sadece son bir not, programlama için uygun olmayan çocuk kalabalığına giriş programlamayı öğreten profesörlerin tutumlarını gerçekten incelediniz mi? Deneyimlerime göre, mutlu değiller, hevesli insanlar değiller. Bunu kalbe almayın, onlar sadece şüpheli "programcıları" şüphesiz dünyada açığa vuracakları en az asgari başarısızlıkla uzlaştırmaya çalışıyorlar. Muhtemelen üstesinden gelmek için alkole aşırı güveniyor. Bunun yerine, kodlamayı seven hevesli insanlarla veya oyun tasarımını seven kodlayıcılarla bir araya gelirseniz (bir oyun reçelini deneyin: http://globalgamejam.org/ ), kendinizi daha çok beğeneceğinizi görebilirsiniz.


Hmmm, cevabımı okuyabilirsin, ya da sadece 5ound'un yayınladığı, her şeyi daha iyi anlatan penny-arcades videosunu görüntülerle izleyebilirsin. penny-arcade.com/patv/episode/so-you-want-to-be-a-game-designer
Kzqai

1

Bir iş için en iyi bahsiniz bir yazar gibi görünüyor. İstediğiniz buysa, belki İngilizce veya Edebiyat eğitimi almalısınız.

Bilgisayar oyunu yazımı muhtemelen hayal edebileceğiniz en zor yazı türüdür, asla tamamen doğrusal değildir, akılda tutulması gereken birçok husus düşünülerek tasarlanmış bir oyun dünyasına uymak zorundadır ve çoğu zaman çalışmanız son şekli gibi bir şeyde görünmez değiştirmek için çok geç olana kadar.

Bu nedenle, pratik yapmak için zamanınızın iyi bir bölümünü normal kurgu yazmanız gerekir, çünkü bu, bir ekibin hikayeniz etrafında bir oyun yapmasına gerek kalmadan nihai formunda bir şey oluşturmanıza izin verir. Film ve tiyatro senaryoları bir tür orta zemindir, doğrusallığa sahipsiniz, ancak yine de görselleştirilmesi gereken bir iş yapın.

Ayrıca oyuna bakmak isteyebilirsiniz (masa oyunları tasarlamak harika bir uygulamadır) ve çizim / boyama. Bazı oyunlarda bu tür beceri kombinasyonlarının değerli olduğu işler olabilir.


1

Programlamadan nefret ediyorsanız, basit oyunlar yapmak için kullanabileceğiniz araçlar vardır. Örneğin GameSalad , basit 2D oyunları bir araya getirerek korkutucu bir kod yazmadan çok güzel bir araç sağlar.

Bununla birlikte, hırslarınız böyle bir araçla yapabileceğinizin ötesine ulaşırsa, bir programcıya ihtiyacınız var - ister siz, bir arkadaşınız, ister gelecekteki oyun şirketinizin programlama departmanındaki koridorda bir kadın olsun. Günün sonunda programlama, bilgisayara hangi oyunu yapmaya çalıştığınızı ve oyuncularla nasıl etkileşime gireceğini nasıl söylediğinizdir . Programlama olmadan, bilgisayarın ne yapacağına dair herhangi bir fikre sahip olması mümkün değildir.

Kulağa gerçekten arzu ettiğiniz şey oyun tasarımı alanında kariyer yapmaktır. İlk olarak, oyun tasarımının hikayeler ve karakterler hakkında olduğu fikrini devre dışı bırakmalısınız. Tetris veya Bejeweled'daki anlatı nedir? Bir tane yok! Orada olan oyun sektöründe yazma işler, ancak seyrek, ve şirketler bir sürü sadece bu işi fason. Bununla birlikte, tasarımcıların seviye tasarımı ve sistem tasarımı gibi birçok şey var ve bir oyun tasarımcısı olmak istiyorsanız, bu diğer beceri setlerinden bazılarını da öğrenmek harika bir fikir olacaktır.

İkincisi, Tasarım'ın endüstri dışından girmek için çok zor bir yol olduğunu anlamalısınız, çünkü gerekli beceri ve yeteneğe sahip olduğunuzu kanıtlamak neredeyse imkansızdır. Genel olarak tavsiyem, tasarıma girmeye çalışmadan önce genellikle başka bir parçaya (programlama, sanat veya üretim gibi) girmektir. Bu yüzden, diğer becerilerden birini öğrenmeye değer. Zaten programlamayı öğreniyorsanız, bundan faydalanmamak bir tür atık olacaktır.

Ancak, programlama becerilerinizle mücadele ediyormuşsunuz gibi geliyor. Sektör programcıları hakkında seçici olduğu için bu biraz sorun. Yani, bir sonraki tavsiyeye geçelim:

Bir Tasarım işi almanın başka bir yolu da ... oyun yapabileceğinizi kanıtlamaktır. Sonuçta hiçbir şey bir oyun yapmak gibi bir oyun yapabileceğinizi kanıtlayamaz. Başlamanıza yardımcı olabilecek birçok ücretsiz araç var. Zaten biraz programlama biliyorsanız, tasarımcı olmak isteyen diğer insanlara göre büyük bir avantajınız var. Bir programcı kimseyle oyun oynayamaz . Oh, iğrenç olacak ama o önemli değil uzun 's eğlenceli olduğu kadar,. Şimdi orada birçok ücretsiz araç var. Unity3D'yi deneyin ve neler yapabileceğinizi görün.


0

Hala programlama denemek istiyorsanız, işlemeyi denemeyi öneririm, almak oldukça kolay bir dil, doğrudan C ve C ++ 'a giderek programlamayı öğrenmeye çalıştım ve beni bunalttı, geri adım attım ve yapmaya devam ettim daha seviye tasarım ve işleme denedim ve bana kod iyi bir temel verdi.

Yine de bir oyun tasarımcısı olarak daha mutlu olacağınız anlaşılıyor.


0

Python (Pygame ile) veya Lua gibi diller kesinlikle bunu yapmanın EĞLENCESİNİ yeniden kazanmanın yoludur! :-D

Amacım, bilgisayar oyunlarını programlamak istediğinden küçük kardeşimin programlamayı öğrenmesine yardımcı olmaktır ve bu nedenle birlikte Program öğreneceğiz (özellikle: Racket http://docs.racket-lang.org/quick/ ve bu ders kitabını kullanarak: http: //www.ccs.neu.edu/home/matthias/HtDP2e/ çok ünlü).

Bu ona bilgisayar ağını nispeten ağrısız bir şekilde GERÇEKTEN sağlam bir anlayış verecektir (MIT, Scheme'deki "CompSci 101" derslerini öğretmek için kullanılır, bu amaç için çok popülerdir).

Ondan sonra Lua'yı birlikte öğreneceğiz (Lua'nın Şema ile güçlü bağlantıları var, bunun bir "kısaltılmış" versiyonu.Bu yüzden Şemayı astıktan sonra Lua'yı almak çok kolay olmalı. Şemayı Lua için olduğundan çok daha mükemmel kaynaklar öğretiyor çünkü Scheme, giriş dersleri için üniversitede öğretilen zengin bir geçmişe sahip).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.