Gå til indholdet

Intro til MonoGame

MonoGame er et open-source framework til udvikling af cross-platform spil og applikationer. Det er en videreudvikling af Microsofts XNA Framework, der oprindeligt blev lavet til spil på Xbox 360 og Windows, og udvider understøttelsen til platforme som Windows, macOS, Linux, iOS, Android, PlayStation og Xbox.

Frameworket er skrevet i C# og understøtter 2D- og 3D-grafik, lyd, inputhåndtering og fysiksimulering. Det fungerer med IDE’er som Visual Studio og Visual Studio Code, og udnytter grafik-API’er som DirectX og OpenGL for at få mest muligt ud af hardwaren på målplatformen.

En af de store fordele er muligheden for at skrive kode én gang og bygge til mange platforme – uden at skulle vedligeholde separate kodebaser. Har du eksisterende XNA-kode, kan den i mange tilfælde genbruges direkte.

Sammenlignet med kommercielle spilmotorer giver MonoGame mere fleksibilitet og kontrol, hvilket gør det populært hos både indie-udviklere og større teams. Der er et aktivt community med god dokumentation, tutorials og eksempler, der gør det nemt at komme i gang.

Du kan evt se et eksempel på konvertering af et “simpelt” TRex Game til MonoGame TRexGame. Der er ligeledes en (meget lang) tilhørende Youtube serie.

I øvrigt kender GitHub CoPilot og ChatGPT også til MonoGame og kan hjælpe med kodeeksempler.

PONG

Her er et eksempel på et PONG spil skrevet objektorienteret som kan bruges til inspiration: devcronberg/pong.

TRex

Du kan evt se et eksempel på konvertering af et “simpelt” TRex Game til MonoGame TRexGame. Der er ligeledes en (meget lang) tilhørende Youtube serie.

Jeg har opdateret repo til .NET 10 for nylig: devcronberg/TrexGame

Tip

Du kan finde en masse grafik til spil hos OpenGameArt - se eksempelvis Simplified Platformer Pack