Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2016-11-25, 12:42
  #1
Medlem
yiys avatar
Hej,

jag har länge varit intresserad av programmering, jag har i några år gjort allt möjligt i olika språk, främst dock C#/PHP, och jag funderar på att söka till datateknik eller liknande för att få djupare förståelse.

Jag har gjort mods till olika spel och det konceptet finner jag enkelt, att använda ett spels "yttersta lager" för att skapa npcs, guis, och allt där mellan, vilket är givande och det är snabba resultat(en rad kod kan ge direkt förändring i spelvärlden). Jag har länge velat göra ett spel helt från grunden, men problemet är att jag inte riktigt vet vart jag ska börja.

I perioder har jag provat med C# XNA(nu är det väl MonoGames), provat Unity, och gjort enkla webläsarspel av olika slag. Detta är ju inte mycket till resultat, och jag tröttnar tillslut. Det känns som att man i princip följer diverse tutorials, och sedan kan man återskapa spelet från scratch men med lite nya grejer med hjälp av att kombinera det man har lärt sig. Men i slutändan känns det som att så mycket essentiell kunskap missas! Den typen av kunskap man hade lärt sig om man på något sätt gjort allt från scratch.

Samtidigt finns det så många toppspel som är skapade i spelmotorer som Unity, vilket får mig att fundera på vad man egentligen ska göra. Spelutveckling verkar bli mer simplifierad för att tillåta utvecklarna att fokusera på spelet i sig och inte så mycket på "behind the scenes".

Jag antar att desto lägre man går - spelmotorer, ramverk, bibliotek - desto mer jobb kräver samma resultat. Det jag har så svårt för att greppa, är helt enkelt - hur ska man egentligen gå till väga för att nå rätt insikt och förståelse. Om någon förstår hur jag menar med att man efter ett tag med olika sorters programmering så klickar det och man förstår konceptet. Jag har läst en del om detta redan här och på andra forum och jag väntar mig svar jag redan läst på andra håll, men jag hoppas någon förstår hur jag menar.

Det känns som att om man direkt hoppar till något som Unity, så, som jag skrev tidigare, missar man mycket grundläggande. Det i sig är kanske inget hinder för utvecklingen, eftersom Unity tar hand om det - men blir man inte begränsad? Jämförelse att skapa ett enkelt 2D plattformsspel från scratch i C++ och att göra det i Unity. Med kunskap från säg, civilingenjör i datateknik, så kanske man kan göra båda utan problem, och isåfall blir man inte begränsad.

Enkelt sagt så oroar jag mig lite över att XNA och Unity är lite som att använda, säg Dreamweaver eller Freewebs eller liknande för de som designar hemsidor.

Jag är som sagt självlärd och har aldrig gjort något imponerande eller nytänkande, utan det jag har gjort är massvis med olika hemsidor med olika syften, försök till olika spel, olika mods, etc. Andra självlärda kan självklart mycket mer än mig och säkerligen i fall mer än civilingenjörer (olika tankesätt är ett argument jag har läst här) - men min kunskap kommer främst från det man lär sig på internet och sedan har jag efter några år helt enkelt hamnat i den sortens tankesätt och vana så jag har en annan sorts förståelse än en som nyligen börjat med programmering.

En sista tanke som dök upp är nog att just bryggan mellan vanlig programmering och det grafiska, är det jag inte får grepp på alls. Alltså, grafiskt kan man ju skriva ut text på en hemsida eller, säg C# - superenkelt, men att själv skapa det grafiska. Sitter man med ett PHP-dokument så vet man alltid var man ska börja.

Tack till er som läste och om ni har ett svar så uppskattas det, texten kanske var lite svamlig. Tanken om att faktiskt skriva, ja "tung" kod för spel, är lockande på något vis. Det finns såklart vanliga program och hemsidor som består av väldigt avancerad kod, men skapandet inom spel lockar (då syftar jag inte på det grafiska, utan faktiskt på att bygga det grundläggande universumet så att säga). När allt klickar med komplex kod och allt sorteras och delas upp och fungerar perfekt tillsammans, det är lockande
Citera
2016-11-26, 03:33
  #2
Medlem
Jag tror att det är lätt att överskatta hur bra andra personer är på att slutföra saker.
Men jag tror också att många prorammerare har en möjlighet att lära sig genom att titta på sina misstag, och försöka undvika att göra på samma sätt i framtiden.
.. Jag tror att detta är något som alla skulle må bra av att göra, och att göra det på vad jag kallar ett "medvetet" sätt.
Låter ju som om du börjat göra detta inte enbart när du skriver text o programmerar.

MEn lite "svammel" runt runt Programmering:

Om du inte har kunskap om version system, skaffa det !

Jag tror på MVP tänk (Minimum Viable Product), och sedan förbättringar.
Det handlar INTE om att få fram ett kul spel eller en bra hemsida.
Det handlar om att få en fungerande produkt, och sedan förbättre den..

Jag tror att om man inte har en full förståelse för hela stacken när man jobbar så kan man inte göra ett lika bra jobb.
Om du inte har programmerat lågnivå typ C//asm, så tror jag det kan vara värt att titta på, för även om du inte direkt skriver där så är det basen för hur de flesta datastrukturere funkar, tex HASH/Map/dict

Om du inte har hyffsat god koll på lite datastrukturer och sådant så tror jag det är väldigt lämpligt att titta på.
Tex Array, Hash, lite kort om O(n), O(n^2) et.c
Men kanske även saker som: Vilka möjliga problem kan det finnas om man använder en HASH ?
(Om du inte kan allt jag nämt ovan..)

Rekursion är något som jag tror en hel del saknar full förståelse för..
(Skriva egen QSort kan kanske hjälpa till att lära sig lite)


Bra koll på minst en debugger
(Kanske inte behövs så mycket i tex Python.. men det är ända bra att kunna där med)
PHP/Xdebug och/eller kanske Javscript // web browser debugger
(om man har sett en bra debugger en eller ett par ggr, så vet man ungefär vilka verktyg som "borde" finnas, och kan då bättre/lättare fixa och undersöka problem)
Citera
2016-11-26, 22:12
  #3
Medlem
Bleppe_Bfs avatar
Citat:
Ursprungligen postat av yiy
Jämförelse att skapa ett enkelt 2D plattformsspel från scratch i C++ och att göra det i Unity. Med kunskap från säg, civilingenjör i datateknik, så kanske man kan göra båda utan problem, och isåfall blir man inte begränsad.

Enkelt sagt så oroar jag mig lite över att XNA och Unity är lite som att använda, säg Dreamweaver eller Freewebs eller liknande för de som designar hemsidor.

Det låter som ett logiskt resonemang, det finns dock en stor variation på utbildningen på de som jobbar som spelutvecklare.

Du behöver inte hela den bredden som civilingenjörer i datateknik har om du inte ämnar bygga allt från scatch. Mer troligt blir det att du isf platsar i en mer teknisk roll inom ett spelföretag där det blir fråga om optimering eller nätverksprotokoll eller dylikt.

Det som smäller högst är att bli headhuntad för sin talang.
Gör du flera spel, antingen med eller utan sdk, som blir kända och välspridda så kommer du att få jobberbjudanden.


Har du väl tagit dig igenom en civilingenjörsutbildning
så finns det otaliga jobb som betalar bättre och innebär mindre slit.

http://kotaku.com/5940672/pissed-off...o-game-company
__________________
Senast redigerad av Bleppe_Bf 2016-11-26 kl. 22:14.
Citera
2016-11-27, 12:54
  #4
Medlem
Ett problem många hobbykodare har är att man har ingen direkt plan.

Att skapa ett spel börjar inte med att öppna valfri spelmotor utan det är en hel del planering innan. Vad för moduler ska finnas? Vad ska dessa göra? Hur ska dom göra det? Osv..

Sedan frågan om att göra det från "scratch" eller använda motor är ju helt upp till användaren, självklart är det lättare att slänga in små färdiga sprites i Unity än att skriva allting själv, men finns ju bra bibliotek, t.ex SFML i c++ som hjälper en hel del med grafiken. Men i produktion är det ju alltid motor som används, dock ofta en privat sådan, men battlefield osv sitter ju inte och skriver all fysik och rendering om och om igen utan skriver en motor som hanterar detta.

Kanske lite luddigt svar men var inte helt 100 på vad din faktiska frågeställning var
Citera
2016-11-27, 15:25
  #5
Medlem
yiys avatar
Citat:
Ursprungligen postat av sagonar
Jag tror att det är lätt att överskatta hur bra andra personer är på att slutföra saker.

Citat:
Ursprungligen postat av Bleppe_Bf
http://kotaku.com/5940672/pissed-off...o-game-company
tack för mycket informativa inlägg, och enligt den där länken verkar alla företag förutom Valve
vara dåliga arbetsplatser

Citat:
Ursprungligen postat av Quet
Sedan frågan om att göra det från "scratch" eller använda motor är ju helt upp till användaren, självklart är det lättare att slänga in små färdiga sprites i Unity än att skriva allting själv, men finns ju bra bibliotek, t.ex SFML i c++ som hjälper en hel del med grafiken. Men i produktion är det ju alltid motor som används, dock ofta en privat sådan, men battlefield osv sitter ju inte och skriver all fysik och rendering om och om igen utan skriver en motor som hanterar detta.
tack för ett bra inlägg, och jag kan inte riktigt summera allt jag undrar i en fråga, jag vet inte riktigt själv vad jag egentligen undrar. Jag söker inget definitivt svar på en enskild fråga, jag vill veta vilken riktning som är mest realistisk och användbar, för det finns så många alternativ och vart jag än vänder mig så är informationen annorlunda. Likt när man googlar "vilket programmeringsspråk ska man börja med" så säger många börja inte med ett lågnivåspråk för det är komplicerat, andra säger börja med lågnivåspråk för bättre förståelse.

Jag kan skapa ett spel i Game Maker, men det känns inte rätt, det är inte "mitt spel", eftersom jag inte gjort stora delar av spelet. C++ känns rätt i tankarna - vilket kanske beror på att jag faktiskt inte har kunskap om hur mycket jobb det skulle bli. Jag har gjort väldigt lite i C++ och är mest van med C#/PHP, så bara att bli van med C++ och det som krävs där är ju en process i sig. Det känns svåröverkomligt då det är en lång väg att gå innan jag hamnar i det läge där jag främst fokuserar på att utveckla det jag har, dvs som när man är väldigt van med att utveckla en hemsida och man vet mer eller mindre hur man ska bygga vidare på det hela för att nå slutmålet, även om det är en del problem på vägen.

Som jag skrev tidigare har jag programmerat ganska mycket, det har varit mitt intresse i flera år, och jag har som mål att jobba inom det i framtiden, och eventuellt när tiden passar så ska jag försöka komma in på en utbildning inom detta. Jag är alltså inte särskilt bra, jag har aldrig skapat något som skulle imponera folk som är vana med programmering så att säga.

Mitt mål är inte att snarast möjligt utveckla mitt drömspel och få folk att spela det, utan det är skapandeprocessen som lockar mig, men pga brist på kunskap inom detta så vet jag inte hur jag gör rätt val både för personlig utveckling men också för kunskap som är (mest) relevant för framtiden.
Citera
2016-11-27, 15:58
  #6
Medlem
Bleppe_Bfs avatar
Citat:
Ursprungligen postat av yiy
Mitt mål är inte att snarast möjligt utveckla mitt drömspel och få folk att spela det, utan det är skapandeprocessen som lockar mig, men pga brist på kunskap inom detta så vet jag inte hur jag gör rätt val både för personlig utveckling men också för kunskap som är (mest) relevant för framtiden.

Läs först Outliers av Malcolm Gladwell och börja sedan att granska vilka livsstils och karriärval som har format andra spelutvecklare. Du behöver inte emulera dem till 100% men du kan ju ta inspiration av hur vägen till att vara spelutvecklare kan se ut.
Citera
2016-12-03, 01:50
  #7
Medlem
speedygonsalezs avatar
bästa spelutvecklingen sker väll i skallen genom fantasi och IQ + inlärd skit..

jag har en jävla fantasi, normal IQ och typ 0 inlärt gällande IRL krig.

men har spelat de bästa spelen (enligt mig, och de flesta)
sett de bästa filmerna, (enligt mig, och väldigt få idag bland yngre men ej äldre)
läst endel, catcher in the rye, och ja ni fattar.

har du kunskapen har jag bra ideér, skriv gärna PM..

ber om ursäkt för tidigare kommentar, den va kortare och mer svårförstådd.

mvh speedy
Citera
2016-12-03, 09:40
  #8
Medlem
Du skriver att du vill göra spel helt från grunden och då tycker jag att det är där du ska börja.
Börja med väldigt enkla spel så att du förstår hur du hanterar uppdateringar av skärmen, kontroller, kollisioner etc. Enklaste spelet man kan göra för att få in allt är nog "masken". Där får du faktiskt in allt grundläggande för ett spel.
Det finns andra liknande lätta spel att utveckla för att du ska lära dig från grunden och komma ett steg längre utan Unity, andra spelmotorer och ramverk. Exempelvis: Flappy Bird.

Undvik initialt att tänka att det ska vara snyggt. Det du vill göra är att utveckla själva spelet. Snygg grafik är egentligen bara lull-lull. Jätteviktigt lull-lull, men för att få spelet att funka så behövs det inte.
Citera
2016-12-04, 05:31
  #9
Medlem
speedygonsalezs avatar
Citat:
Ursprungligen postat av e7andy
Du skriver att du vill göra spel helt från grunden och då tycker jag att det är där du ska börja.
Börja med väldigt enkla spel så att du förstår hur du hanterar uppdateringar av skärmen, kontroller, kollisioner etc. Enklaste spelet man kan göra för att få in allt är nog "masken". Där får du faktiskt in allt grundläggande för ett spel.
Det finns andra liknande lätta spel att utveckla för att du ska lära dig från grunden och komma ett steg längre utan Unity, andra spelmotorer och ramverk. Exempelvis: Flappy Bird.

Undvik initialt att tänka att det ska vara snyggt. Det du vill göra är att utveckla själva spelet. Snygg grafik är egentligen bara lull-lull. Jätteviktigt lull-lull, men för att få spelet att funka så behövs det inte.


som känslan i quake 2 jämförelse med emot och vid cs:go ?

q2 livsfarligt för idioter, cs:go bra för idioter, då tror de att det går till så irl
Citera
2016-12-05, 04:48
  #10
Medlem
yiys avatar
Citat:
Ursprungligen postat av Bleppe_Bf
Läs först Outliers av Malcolm Gladwell och börja sedan att granska vilka livsstils och karriärval som har format andra spelutvecklare. Du behöver inte emulera dem till 100% men du kan ju ta inspiration av hur vägen till att vara spelutvecklare kan se ut.
Boken verkar intressant, dock av att döma från beskrivningen så ser jag inte hur den ska hjälpa mig i denna situation? I vilket fall verkar den läsvärd, underligt att jag aldrig hört talas om den förut!

Citat:
Ursprungligen postat av e7andy
Du skriver att du vill göra spel helt från grunden och då tycker jag att det är där du ska börja.
Börja med väldigt enkla spel så att du förstår hur du hanterar uppdateringar av skärmen, kontroller, kollisioner etc. Enklaste spelet man kan göra för att få in allt är nog "masken". Där får du faktiskt in allt grundläggande för ett spel.
Det finns andra liknande lätta spel att utveckla för att du ska lära dig från grunden och komma ett steg längre utan Unity, andra spelmotorer och ramverk. Exempelvis: Flappy Bird.

Undvik initialt att tänka att det ska vara snyggt. Det du vill göra är att utveckla själva spelet. Snygg grafik är egentligen bara lull-lull. Jätteviktigt lull-lull, men för att få spelet att funka så behövs det inte.
Detta tycker jag var bra förslag, tack - men om jag börjar från grunden, tycker du att jag borde göra detta i C++, eller har du något förslag gällande det tekniska? Jag är inte säker på vilka alternativ som finns/vad som är mest gångbart. Tack för ditt svar.

Exempelvis här så betonar personen att man verkligen inte ska börja med C++:
http://www.gamefromscratch.com/post/...developer.aspx

men sedan finns det de som säger att man bör göra det för att få bättre förståelse, jag kan ju redan en del programmering så det är väl vissa grunder jag behöver lära mig för C++(vet inte ens själv vad men läst om att det är mer man själv behöver hålla koll på som man inte gör i e.x C#)

Men jag repeterar mig nu och jag borde väl bara börja någonstans, http://www.sfml-dev.org/tutorials/2.4/ kanske
Citera
2016-12-05, 10:21
  #11
Medlem
Bleppe_Bfs avatar
Citat:
Ursprungligen postat av yiy
Boken verkar intressant, dock av att döma från beskrivningen så ser jag inte hur den ska hjälpa mig i denna situation? I vilket fall verkar den läsvärd, underligt att jag aldrig hört talas om den förut!

Boken handlar inte om just spelutveckling utan om karriärbyggande.
Den hjälper dig förstå hur andra har gått från a till b inom en massa olika fält.

Det i kombination med att du granskar cv:t på ett antal spelutvecklare kan hjälpa dig att förstå hur man tar sig in och framför allt lyckas inom det fältet.

Går ju att kombinera med att granska biografier av t.ex Sid Meier, John Carmack, John Romero, Gunpei Yokoi etc.
Citera
2016-12-05, 11:05
  #12
Medlem
Diamondgrits avatar
Citat:
Ursprungligen postat av yiy
Jag kan skapa ett spel i Game Maker, men det känns inte rätt, det är inte "mitt spel", eftersom jag inte gjort stora delar av spelet. C++ känns rätt i tankarna - vilket kanske beror på att jag faktiskt inte har kunskap om hur mycket jobb det skulle bli. Jag har gjort väldigt lite i C++ och är mest van med C#/PHP, så bara att bli van med C++ och det som krävs där är ju en process i sig. Det känns svåröverkomligt då det är en lång väg att gå innan jag hamnar i det läge där jag främst fokuserar på att utveckla det jag har, dvs som när man är väldigt van med att utveckla en hemsida och man vet mer eller mindre hur man ska bygga vidare på det hela för att nå slutmålet, även om det är en del problem på vägen.
Jag måste skjuta in här - först måste jag säga att C++ är mitt favoritspråk och om du vill ha spelprogrammerare som yrke är det vägen att gå, men jag måste också säga att... Visst, om du gör saker i Game Maker eller Unity eller liknande så får du stora delar av allt gratis. Vilket kan göra att det inte känns som att du gjort något. Men lita inte på den känslan - om du skulle göra allt själv skulle du få spendera år på att göra något som, när det väl är klart, inte ens kommer att vara lika bra som det du har bara du startar upp Unity. Och då är det bara motorn, du har inte ens börjat med själva spelet än.

Tänk på att ett spel som Final Fantasy, det första alltså, tog flera månader att utveckla, och då var ett team av väldigt skickliga utvecklare, musiker, designers osv. inblandade. Att göra det ensam och från grunden skulle ta flera år och inte bli lika bra. Och då talar vi ändå om ett spel som inte bara känns rätt enkelt när man spelar det, utan som även görs bättre, rent tekniskt sett, av en person som sitter några veckor/månader med ett så begränsat verktyg som RPG Maker!

Så vad jag menar är, jag förstår din tanke, men nä, använd de verktyg som finns. Annars finns en stor stor risk att det aldrig blir nåt av det hela.
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback