Gemenskapen och pluggar

LÖVE (aka Love2D) är en gratis, lätt gamedev-plattform som utvecklats av en levande community, vilket gör det möjligt för alla att skapa 2D-spel relativt snabbt. I den här artikeln introducerar vi dig på LÖVE-plattformen och dess möjligheter, och delar böcker, handledning och förslag för att komma igång med att utveckla spel med det.

relaterade inlägg
  • Hur man läser Haxe och NME
  • Hur man lär sig enighet
  • Så här lär du dig UDK
  • 12 gamedevmotorer och plattformar (och de bästa sätten att lära sig var och en av dem)

Vad är LÖVE, och vad kan det göra?

LÖVE är en * fantastisk * ram som du kan använda för att göra 2D-spel i Lua. Det är gratis, öppen källkod och fungerar på Windows, Mac OS X och Linux. Taget från love2d.org

LÖVE-plattformen är utvecklad i C ++ och implementerar några bra avancerade tekniker. LÖVEs relativt korta inlärningskurva innebär att du kan börja utvecklas omedelbart - det här beror till stor del på LÖVE med hjälp av Lua-programmeringsspråket, vilket är ganska enkelt att hämta. Dessutom har motorn en självförklarande struktur.

LÖVE i aktion

De flesta av spelen byggda med LÖVE är skapade av indieutvecklare; kolla in denna lista för några exempel.

Här är två stora LÖVE-spel:

Mari0: Detta är ett av de mest imponerande LÖVE-spelen där ute. Det är en hybrid av Mario och Portal, vilket skapar ett tänkande resultat.

Snayke: Snayke kan sammanfattas i tre ord: orm på steroider.

Som du kan se är LÖVE ganska kraftfull.

Anmärkningsvärda funktioner

  • Nätverksförmåga
  • Box2D ported implementation (fysik)
  • Stöd för många bild- och ljudformat
  • Partikel effekter
  • Användarskapade bibliotek (plugins)
  • Använder super flexibel licens (zlib / libpng licens)

Eftersom LÖVE är öppen källkod, är du fri att använda motorn för kommersiella ändamål.

Är LÖVE Bulletproof?

Som nämnts ovan används LÖVE huvudsakligen för 2D-spel. Medan 3D-tricks kan implementeras, skapades LÖVE inte för dessa typer av spel. Jag skulle också tillägga att LÖVE stöds officiellt endast för stationära datorer.


Installera LÖVE

Först måste du ladda ner den senaste versionen av LÖVE.

Så fortsätt och installera det - det är så enkelt som det!

LÖVE har ingen officiell IDE (Integrated Development Environment) ännu, så du måste välja en föredragen redigerare, till exempel:

  • Anteckningar++
  • Sublim Text 2
  • Textmate

Här är en bra handledning om hur du väljer rätt för dig: Windows / OSX. (Skriven av Headchant.)


Lärande Lua

Låt oss börja med att lära oss lite Lua.

Som tidigare nämnts är lua det programmeringsspråk som LÖVE använder, så du måste ha minst en aning om hur lua fungerar för att kunna skapa ditt spel. Skräck inte - det är inte så svårt.

Lua är ganska stark i spelutvecklingsbranschen; några exempel på spel som använder (vanligtvis inbädda) lua är: Garry's-mod, Baldur's Gate, Company of Heroes och Crysis. Det används också för att driva Roblox-spel.

Lua används så mycket främst eftersom det är lätt att lära sig, utdragbart, lätt, enkelt att bädda in, bärbart och har OOP (Object Oriented Programming) -funktioner.

Om du verkligen vill bli seriös och lära dig djupt, rekommenderar jag Programmering i Lua, tredje upplagan:


Programmering i Lua, tredje upplagan

Om du redan har tidigare erfarenhet av programmering rekommenderar jag också Michael Ebens fyra delade Lua för Programmerare tutorial-serien:

  1. Variabler, operatörer, loopar och funktioner
  2. Tabeller, Strängar, Nummer och Matematik
  3. Block och Omfattning, Fler Funktionskoncept, Laddar filer och Metatables
  4. Tips och tricks

Michael Ebens hela blogg, Nova-fusion, är ett bra ställe att börja lära sig Lua och LÖVE; Jag föreslår att du bokmärker det!

relaterade inlägg
  • Roblox handledning (Använda Lua)

Lärande LÖVE

Efter att ha läst Lua, låt oss implementera det med LÖVE. Det finns massor av handledning där ute och väntar på att du läser dem. Men vad kommer det att lägga till om du "zigzag" mellan avancerade och nybörjare tutorials? Ingenting!

Så här är en sammanställning av tutorials i svårighetsgrad och föreslagna order:

Officiella handledning

Först av, vi kan bryta LÖVEs wiki-tutorials i svårighetsgrader:

  1. Komma igång
  2. Återuppringningsfunktioner
  3. Använda inmatning
  4. Konfigera filer
  5. Audio

Alla andra handledningar i wiki är ganska avancerade, så jag föreslår att du återkommer till dem senare. Under tiden, kolla in några inofficiella handledning.

Inofficiella handledning


Hej världen i LÖVE

Ta en titt på Vivid Realitys Hello World Tutorial. Vilket bättre sätt att börja än med ett enkelt hej världsspel?

Därefter, för att förstå hur LÖVE drar, inklusive hur det hanterar ursprunget (teckningsförskjutningar), kolla in denna handledning.

Vill du skapa ett kakelbaserat spel? Jag hittade nyligen en bra git-hub-hostad handledning med källkod. (Skapat av kikito)

Och som jag nämnde ovan har Michael Ebens blogg Nova-Fusion massor av bra LÖVE-tutorials.

Inkräktare måste dö


Invaders in-game skärmdump.

Nu när du känner dig mer bekväm med Lua och LÖVE, försök skapa ett riktigt spel!

Skapa ett klassiskt invaderspel med denna tvådelade handledning från Headchant:

  1. LÖVE-motorn, Animation, Input
  2. Fiender, kulor, bakgrundsbild

Jag föredrar videotillfällen!

Josefnpat har gjort en bra screencast-tutorial som förklarar hur man bygger ett gammalt skola rullar skjutspel.

På YouTube, kolla in:

  • Sock Munkee Development
  • NeoSilkyFTW
  • Goature

Avancerade ämnen

Vid denna tidpunkt kan du börja dykning i de mer avancerade sektionerna i wiki:

  • kameror
  • Fysik och kollisionsanrop
  • nätverk
  • Kakelbaserad rullning

Det här är de mer allmänna handledningarna. Om du behöver något mer specifikt, gå vidare till hela listan med wiki-tutorials.


Gemenskapen och pluggar

Skapar du något specifikt, vilket betyder att det inte finns några handledning där ute för att hjälpa dig? Oroa dig inte, forumet är här! LÖVE-plattformen är välsignad med en stor gemenskap som är villig att hjälpa och styra dig om dina hinder.

Gå vidare och registrera dig på forumet!

En annan bra aspekt är plugins (community created libraries). Om du behöver ett specifikt plugin för att hantera något som enkelt animeringar eller nätverk, kommer du noga att kolla bibliotekssektionen.

Här är en lista över några bibliotek jag rekommenderar att använda:

  • Aminering: amin8 eller animationer och kärleksbibliotek
  • Nätverk: LUBE eller "lua-enet" libary
  • 3D: Love3D

anteckningar

För att lära dig om att distribuera ditt spel, ta en titt på wikisidan.

Mer information om portar:

  • Android Sub-Forum (ett projekt till port LÖVE till Android handhållna enheter)
  • nLÖVE Subforum (en port som ersätter OpenGL och OpenAL med SDL)

Några exempel är spridna i hela wikin. För att visa koden, ändra .kärlek filtillägg till .blixtlås och lossa innehållet.

Om du tittar på att distribuera ditt spel på webben finns det en libary där ute för dig: love-webplayer


Slutsats

Vi började förklara vad LÖVE handlar om. Sedan tittade vi på lua-språket. Därefter gick vi igenom några resurser för att lära LÖVE, från nybörjare till avancerade ämnen (med möjlighet att välja mellan video och text) som nätverk och fysik.

Nu är du förmodligen redo att skapa ditt eget spel. Lycka till och låt oss veta hur du går vidare!