Ero sivun ”2D peliohjelmointi” versioiden välillä

Siirry navigaatioon Siirry hakuun
2D peliohjelmointi opas linuxille.
 
päivitystä
Rivi 79: Rivi 79:


Lyhyesti sanottuna: 2D-peli on kokoelma koodia (pelimoottori ja logiikka) ja sisältöä (grafiikka, ääni), jotka toimivat yhdessä luoden interaktiivisen kokemuksen kaksiulotteisessa tilassa.
Lyhyesti sanottuna: 2D-peli on kokoelma koodia (pelimoottori ja logiikka) ja sisältöä (grafiikka, ääni), jotka toimivat yhdessä luoden interaktiivisen kokemuksen kaksiulotteisessa tilassa.
== Yleisimmät avoimen lähdekoodin 2D-pelimoottorit ==
=== Godot Engine (Suosituin) ===
[[Godot]] on tällä hetkellä selvästi suosituin ja käytetyin täysin avoimen lähdekoodin pelimoottori.
* Lisenssi: MIT-lisenssi (erittäin salliva, voit käyttää sitä kaupallisiin peleihin ilman maksuja).
* 2D-vahvuudet: Godot on tunnettu erinomaisesta natiivista 2D-tuesta. Sillä on oma 2D-renderöinti, TileMap-editorit, integroitu editori ja sisäänrakennettu 2D-fysiikkamoottori, sekä helppo oppimiskäyrä.
* Ohjelmointi: Käyttää omaa GDScript-kieltään ([[Python]]-tyyppinen, helppo oppia), mutta tukee myös [[C#]], [[C++]] ja muita kieliä.
* Yhteisö: Aktiivinen, jatkuvasti kasvava yhteisö takaa hyvän dokumentaation ja tuen.
=== MonoGame / FNA (C#-kehittäjille) ===
MonoGame ja FNA eivät ole varsinaisia pelimoottoreita, vaan pelikehyskirjastoja (frameworks). Ne ovat avoimen lähdekoodin toteutuksia Microsoftin vanhasta XNA-kehitysympäristöstä. Se Tarjoaa täyden kontrollin koodiin. Se on kevyt ja soveltuu hyvin retrotyylisiin ja yksinkertaisiin peleihin.
* Lisenssi: Microsoft Public License (Ms-PL) / MIT-lisenssi (FNA).
* Vahvuudet: Soveltuu erinomaisesti C#-kielellä koodaaville kehittäjille, jotka haluavat täyden kontrollin pelin toiminnasta. Se on valinta monille retrotyylisille peleille.
* Käyttötarkoitus: Antaa kehittäjälle enemmän vapautta ja edellyttää enemmän itse koodausta perusmoottorin toimintojen, kuten käyttöliittymän, osalta.
===  LibGDX (Java-kehittäjille) ===
LibGDX on Java-pohjainen, avoimen lähdekoodin kehyskirjasto, joka keskittyy monialustaisuuteen (Android, iOS, selain, työpöytä). Se on nopea ja tehokas, hyödyntää Java-ekosysteemiä. Vaatii enemmän koodausta.
* Lisenssi: Apache 2.0 -lisenssi.
* Vahvuudet: Erittäin joustava ja kevyt, sopii kehittäjille, jotka ovat tottuneet Javaan ja haluavat luoda pelejä, jotka toimivat laajalla laitekirjolla. Vaatii hieman enemmän itse rakentamista kuin Godot.
== Muita avoimen lähdekoodin työkaluja ==
Pelin koostumus vaatii myös työkaluja resurssien luomiseen, ja myös näihin on erinomaisia avoimen lähdekoodin vaihtoehtoja:
{| class="wikitable sortable"
|+
|-
! Komponentti !! Työkalu !! Käyttötarkoitus
|-
| Pikseligrafiikka / 2D-Taide || [[Aseprite]] || Ammattimainen pikseligrafiikan ja animaatioiden luontiin.
|-
| Vektorigrafiikka || [[Inkscape]] || Vektoripohjaisten 2D-grafiikoiden, kuten käyttöliittymäelementtien, piirtäminen.
|-
| Äänenmuokkaus || [[Audacity]] ja vastavat || Äänitehosteiden ja musiikin editointi ja masterointi.
|-
| Laattakartat (Tilemaps) || [[Tiled]] || Pelimaailman karttojen suunnittelu ja luominen (tilemap) käytettäväksi lähes kaikissa 2D-moottoreissa.
|}