

För mobilspel: MIT App Inventor eller Game Salad. För webbläsarspel: Scratch, eller mer seriös version Snap!, tänkt som ett verktyg för att lära sig programmering. För äventyrsspel: AGS (Adventure Game Studio). Om du vill ha ett program där du kan dra och släppa objekt med möjlighet att programmera, prova gratisversionen av GameMaker
För mobilspel: ProjectAnarchy För 3D-spel på vilken plattform som helst: Unreal, Unity, Blender, Torque3D För mer avancerade programmerare: LWJGL (i Java), SFML (i C++)
Med ActionScript kan du skapa en Flash-baserad motor. Detta är ett bra ställe att börja för avancerade programmerare. Java är relativt lätt att lära sig. Du behöver ett Java Development Kit (JDK), plus Eclipse eller en annan Integrated Development Environment (IDE) för Java, om du inte är säker på var du ska börja. Om du redan kan ett programmeringsspråk (särskilt ett C-språk eller Python), leta efter en IDE för det språket. Den bör innehålla en kompilator och möjligheten att enkelt arbeta med bilder, ljud och annan kod inom samma projekt.
En klientserver som tolkar användarinmatning och bearbetar resultatet. Se till att inmatningssystemet svarar korrekt innan du börjar seriös med grafiken och spelet (leta efter "actionlyssnare" om du fastnar). AI för andra karaktärer så att de reagerar på användarens handlingar. För ett enklare projekt är allt du behöver göra att få karaktärerna att röra sig längs en bestämd väg. Möjligheten att rendera grafik (skapa och skicka instruktioner till grafikkortet). En spelloop som körs kontinuerligt medan spelet pågår. Detta bör bearbeta användarinmatning, bearbeta annan spellogik (som fiendens rörelser, bakgrundsanimationer och utlösta händelser), beräkna vad som ska ritas (visas på skärmen) och skicka informationen till grafikkortet. Kör detta minst 30 gånger per sekund (30 fps), om ditt system kan hantera det. 


Det finns många sajter på nätet där du kan hitta gratis eller billiga tillgångar. Prova den här listan på sminkskolan.com. Att anställa en artist kommer att göra stor skillnad. Om du inte har råd, samla tillgångarna själv och visa resultatet för konstnärliga vänner eller lägg upp det för råd om spelutveckling eller konstforum online.



Programmera ett spel
Att skapa ett videospel är ett enormt uppdrag, men slutresultatet kan bli det mest spännande programmeringsprojekt du någonsin arbetat med. Du lär dig mest av de verktyg som passar din nivå av programmeringskunskaper, så anta inte att att börja från början är det bästa alternativet. Välj ett programmeringsspråk, integrerad utvecklingsmiljö och/eller spelprogramvara som du kan lära dig att förstå på 15 minuter, eller läs den här handledningen.
Steg
Del 1 av 2: Att välja motor

1. Lär dig mer om spelmotorer. De flesta videospel görs med hjälp av en specialiserad motor som låter dig "skripta" händelser, karaktärer etc. utan kod. Att utveckla en fullständig spelmotor från grunden kommer att ta år av arbete, så de flesta oberoende utvecklare använder en befintlig motor. Du behöver bara följa ett av nästa steg i det här avsnittet, beroende på hur bra du är på programmering och hur mycket tid du vill lägga på de små detaljerna.

2. Överväg enkel programvara för att skapa spel. Dessa verktyg kräver mycket lite programmeringskunskap och kanske inte är något för dig om du är intresserad av programmeringsaspekterna av spelskapande. Å andra sidan kan ett enkelt tillvägagångssätt där du dyker rätt in lära dig mycket om ditt spel och förändra konceptet på en högre nivå innan du går vidare till en större prototyp. Nedan finns några gratisalternativ:

3. Prova de mer professionella utvecklingsmiljöerna. Det här är en fantastisk möjlighet att verkligen dyka in i ämnet, få spelupplevelse utan att behöva börja om från början. Många professionella oberoende spelutvecklare börjar på denna nivå. Även om det finns många olika motorer och integrerade utvecklingsmiljöer (IDE) tillgängliga, är följande gratis och relativt lätta att lära sig:

4. Välj ett verktyg för att skapa din egen motor. Om du redan har lite programmeringskunskap och vill bygga din egen, här är några ställen att komma igång. Om detta är ditt första försök bör du förmodligen följa några tutorials först.

5. Bygg din egen motor. Om du valde ett av de avancerade verktygen i föregående steg, behöver du förmodligen hitta en handledning, ett hjälpforum eller en erfaren spelutvecklare för specifika råd om ditt valda programmeringsspråk. Om du inte är säker på var du ska börja eller vad du ska fråga, här är några grundläggande delar du måste bygga i början:
Del 2 av 2: Designa spelet

1. Se till att du slutför det första utkastet. Lägg mycket tid på att ta reda på vad ditt spel är är innan du ens skriver en kodrad. Vilken genre är det? Är det 2D eller 3D? Spelaren går vidare genom spelet genom att lösa pussel, följa/skapa berättelsen, slåss mot fiender och/eller utforska miljön? Ju fler frågor du kan svara på och ju mer detaljer du ger till dina idéer, desto mer tid kommer detta att spara dig på lång sikt. Om du bestämmer dig för att göra en stor förändring efter att du redan har börjat koda, kan ändringar ta många gånger längre tid att implementera.
- Minska detta till något mycket, mycket enklare än din ursprungliga idé. En liten prototyp som utforskar hur ditt spel fungerar och ger några nivåer att spela är redan en utmärkt start. När detta är gjort kan du använda det som en bas för att expandera till ett helt spel, eller införliva det du har lärt dig i ett nytt projekt.

2. Arbeta med stegen nedan i valfri ordning. Vid det här laget har du veckor eller månader av hårt (men givande) arbete framför dig. Även om uppgifterna nedan vanligtvis tas på av ett team av människor och arbetas med samtidigt, måste en ensamstående bestämma vilken uppgift per fas som är den enklaste eller viktigaste att börja med. Gå igenom alla steg nedan och börja med den uppgift som tilltalar dig mest.

3. Samla eller skapa speltillgångar. Såvida du inte gör ett textbaserat spel behöver du 2D-grafik och eventuellt 3D-modeller och texturer (mönster du använder för modellerna). Musik och ljudeffekter kan skjutas upp till lite senare i processen, men de rekommenderas om du planerar att publicera ditt spel. Enkla ikoner, användargränssnitt och typsnitt har lägst prioritet om ditt spel fortfarande är i ett tidigt skede, men kan i slutändan förbättra spelupplevelsen avsevärt.

4. Arbeta med berättelsen eller framstegsscheman. Mycket av denna dokumentation kommer i form av planeringsdokument utanför själva spelets kod, även om ett berättelsebaserat spel kan kräva dialogträd. Även ett spel utan en traditionell berättelse bör ge en känsla av progression som du måste planera runt. Ett plattformsspel kan involvera en serie drag och vapenuppgraderingar medan ett pusselspel kommer att lägga till fler funktioner när komplexiteten och svårigheten hos pusslen ökar.

5. Designa nivåerna. Börja med en liten, enkel nivå eller område. Fokusera på att bygga vägen som spelaren tar genom nivån, lägga till sidobanor (valfritt), mer detaljerad grafik och justera svårighetsgraden (som att justera plattformens höjd eller flytta fiender).
Använd ljuskällor och föremålsdroppar för att guida spelaren till nästa plats i området. Använd skuggor för att avskräcka spelare från att utforska återvändsgränder eller knepiga vägar, och använd fiender för båda syftena (beroende på hur spelet lär dig att undvika fiender). En väldesignad miljö får spelaren att känna att han kan fatta sina egna beslut eller utforska på egen hand, men vägleda honom längs den enklaste vägen med hjälp av subtila ledtrådar.

6. Justera och optimera bilderna. Detta är inte nödvändigt om du använder en enkel speldesignmjukvara. Om du är villig att fördjupa dig i den mer djupgående teorin om grafiksystem kan du börja med att skapa shaders och partikeleffekter, eller gå igenom grafikkoden och ta bort uppgifter som är redundanta för ditt spel. Eftersom grafik nästan alltid är flaskhalsen i bearbetningshastighet, kommer även ett 2D-spel att kräva betydande optimering och kodjusteringar för att minimera belastningen på grafikkortet och processorn.

7. Få feedback från speltestare. När du har en enkel nivå eller prototyp av spelet kan du låta vänner spela spelet och be dem ge feedback. Ta reda på vad folk gillar och vad som frustrerar dem. Senare i processen, när spelet är mer polerat, kan feedback från främlingar eller bekanta vara en utmärkt källa till ärliga råd, eftersom de bryr sig mindre om att uppmuntra dig, oavsett om du är framgångsrik eller inte.
Spelare är inte tränade att ge feedback från en utvecklares perspektiv. Om spelare ogillar någon aspekt av spelet finns det vanligtvis något som kan förbättras. De specifika förslagen som spelarna ger är dock ofta inte till hjälp. Ställ dem mycket specifika frågor för att ta reda på exakt vilka funktioner de kämpar med.
"Programmera ett spel"
Оцените, пожалуйста статью