Gå til innhold

Hvilket programmeringsspråk egner seg best for spill?


Anbefalte innlegg

Hei!

Har et spørsmål ang. hvilket programmeringsspråk som egner seg best for og lage spill. Min fetter har lyst til og starte med programmering, men lurer på hvilket språk som er best egnet. Vi kom frem til at Unity vil være det beste alternativet til program og lage spillet i, fordi da har vi flere muligheter(? skyt meg hvis det er feil;))som for eksempel og lage spill til iphone, pc osv.

 

*Hvilket språk er best for programmering av spill i Unite?

*Noe annet program som er bedre enn Unity?

*Er det noen tut(youtube eller andre steder) bøker eller annet som kan være nyttig for og lære seg programmeringsspråket?

 

hvis noen har annen info relatert til det og lage spill er det bare og komme med det. alt fra programmer til tips :)

 

Takker for svar:)

Lenke til kommentar
Videoannonse
Annonse

Man bruker ofte flere programmeringsspråk / miljøer per spill. Jeg har sett løsninger hvor front-end lages i C++ med adapter mot DirectX og selve spillmotoren er laget i Java.

 

På såpass tunge temaer som spillutvikling (ai motorer osv), så vil ikke tuts på nettet med halvveis gjennomtenkte snippets holde. Kjøp ei god bok og les, les, les.

 

Nå vet ikke jeg hvor seriøst dere vil sette dere inn i dette da. Jeg har ingen spesiell erfaring med spillutvikling, så jeg kan dessverre ikke peke mot døråpnere :/

 

Lykke til uansett :new_woot:

 

EDIT: Horribel orddeling.

Endret av emilkje
Lenke til kommentar

Bleh.. ingen programmerer spel i Assembly. Du skriver ikkje raskare kode i Assembly, ein C kompiler eller ein JVM vil slå deg. Det er faktisk lettare å skrive treigare kode i C enn Java. C vil alltid vere raskare om du er ein erfaren C programmerer. Men ein erfaren C utviklar blir du ikkje før du har lest og skreve C kode fleire år.

 

C/C++ er heilt på veg ut så lenge du ikkje har eit vanvittig budsjett og brukar andre kommersielle verktøy.

 

Min anbefaling for ein hobbyutviklar er Python + PyGame. C# XNA er bra for dei som er litt meir hardcore.

Endret av siDDIs
  • Liker 3
Lenke til kommentar

Bleh.. ingen programmerer spel i Assembly. Du skriver ikkje raskare kode i Assembly, ein C kompiler eller ein JVM vil slå deg. Det er faktisk lettare å skrive treigare kode i C enn Java. C vil alltid vere raskare om du er ein erfaren C programmerer. Men ein erfaren C utviklar blir du ikkje før du har lest og skreve C kode fleire år.

 

C/C++ er heilt på veg ut så lenge du ikkje har eit vanvittig budsjett og brukar andre kommersielle verktøy.

 

Min anbefaling for ein hobbyutviklar er Python + PyGame. C# XNA er bra for dei som er litt meir hardcore.

 

Du kan veldig enkelt skrive ett spill i asm (om ønskelig) og det tar ikke så veldig lang tid. Men det er ikke meningen at en skal skrive spillet i asm, men skjelettet og så implementere objekter fra et høynivåspråk til å fylle inn innholdet til spillet.

 

Jeg har holdt på med asm i 20 år, vær snill og ikke lær meg hva asm er og ikke er. Takk.

 

:)

Lenke til kommentar

Så kan du skrive en versjon for PlayStation Portable i MIPS assembler, og en versjon i PowerPC assembler for CELL PlayStation-3, og en i ARM assembler for XBOX 720 og diverse mobile spill-enheter, og selvsagt en i X86 assembler for Windows.... Det er en litt tøff oppgave for en nybegynner i programmering.

 

 

Det som Naughty Dog gjorde når de laget Crash Bandicoot og Jak and Daxter var å lage et domenespesifikk språk (DSL) for spill. Dette implementerte de i Common Lisp og kalte Game Oriented Assembly Lisp (GOAL). GOAL hadde en kodegenerator som kunne generere MIPS assembler for PlayStation. Du finner litt om det her:

 

http://www.franz.com/success/customer_apps/animation_graphics/naughtydog.lhtml

 

Senere gikk de over til C++ etter at noen av ingeniørene sluttet og at SDK fra Sony ble veldig knyttet til C++ (etter hva jeg har forstått).

 

Ikke dermed saget at jeg anbefaler dere å kast dere på Common Lisp. Jeg er ikke så kjent i spillverden og det vil overraske meg om det ikke finnes en del DSL for diverse typer spill tilgjengelig.

Lenke til kommentar

Unity. Fantastisk spillmotor. Støtter også en rekke språk: JavaScript (statisk typet versjon), C# og Boo (Statisk typet versjon av Python)

 

Det er forøvrig relativt vanlig å skrive hjelpefunksjoner i assembly fremdeles, men da spesilt lineær algebra som har veldig mye å hente på det. Det er lite poeng i å skrive store deler av selve spillet i assembly, og mekanikken scriptes som regel.

Endret av GeirGrusom
  • Liker 1
Lenke til kommentar

Hei!

Har et spørsmål ang. hvilket programmeringsspråk som egner seg best for og lage spill. Min fetter har lyst til og starte med programmering, men lurer på hvilket språk som er best egnet. Vi kom frem til at Unity vil være det beste alternativet til program og lage spillet i, fordi da har vi flere muligheter(? skyt meg hvis det er feil;))som for eksempel og lage spill til iphone, pc osv.

 

*Hvilket språk er best for programmering av spill i Unite?

*Noe annet program som er bedre enn Unity?

*Er det noen tut(youtube eller andre steder) bøker eller annet som kan være nyttig for og lære seg programmeringsspråket?

 

hvis noen har annen info relatert til det og lage spill er det bare og komme med det. alt fra programmer til tips :)

 

Takker for svar:)

 

JavaScript blir jo mer og mer aktuelt. Med HTML5 og Canvas, så er det mulig å få til mye.

Lenke til kommentar

takker for svar alle sammen:)

så det som er det "beste" og gjøre er og bruke Unity med javaScript som språk, eller er det andre som har noe og si på det?

Nå vet ikke jeg hvordan den statisk typede versjonen av JavaScript for Unity er, men JavaScript er generelt et ganske lite og enkelt språk å lære seg. Det har endel vorter man må leve med, men det å lære seg JavaScript vil du få endel igjen for i andre sammenhenger, så det er nok ikke et direkte dumt valg.

Lenke til kommentar

Jeg har holdt på med asm i 20 år, vær snill og ikke lær meg hva asm er og ikke er. Takk.

Med så mye erfaring tror jeg rett og slett ikke du klarer å sette deg inn i hvordan det er å ikke allerede kunne assembly. Det skal i alle fall mye overtaling til før jeg aksepterer asm som det beste å starte med for en fersk spillutvikler.

 

Men klart, "det beste programmeringsspråket til spillprogrammering" kan jo tolkes i svært mange retninger.

  • Liker 1
Lenke til kommentar

ASM er helt klart ikke noe nybegynnerspråk men joda for enkelte deler av et program så er ASM utrolig effektivt

Bare til helt enkle ting. Et normalt spill er fullstendig urealistisk å skrive i assembly. Det tar alt for lang tid, og i mange tilfeller er det veldig lite å hente på å bruke assembly. Det er utelukkende i enkelte tilfeller der kompilatoren du bruker ikke er istand til å utnytte instruksjonssettet fullstendig at en benytter assembly. Utover det så sitter en egentlig å kaster bort tida si, ettersom antall feil i koden er vesentlig større i et assembly-program enn i et program skrevet i nær sagt hvilket som helst annet språk. I tillegg klarer kompilatorer i stor grad å gjøre en god jobb.

 

Det som er mer viktig er å ha en god run-time for scripting. Java og Mono har typisk fått svært gode resultater på dette området, og Mono har også innebygget støtte for SIMD instruksjoner.

Lenke til kommentar
  • 2 uker senere...

Selv hvis du skal bruke SIMD instruksjoner så er det som oftest lurere å bruke intrinsics enn å begynne med asm selv. så anbefalingen om å bruke asm som språk for spillprogrammering er temmelig på jordet. Sist jeg leste noe som var fornuftig å bruke asm på var vel megatexture fra ID software. Da brukte de asm til wavelet komprimeringen av teksturene. Dette er på et heeeeeeeeeeeeelt annet nivå enn noe de fleste av oss noensinne kommer til å programmere...

Lenke til kommentar

Hvis du skal bruke Unity til å lage spill og har ingen planer om å lage en spillmotor selv. Så holder det i masser å enten lære seg Java/C# eller et scriptspråk som feks. lua.

 

Hvis du er wowspiller så kan lua være lurt fordi du kan lage addons i lua. Java/C# er nok en lenger rute å ta, men du lærer deg mer nyttig programmering.

 

Hva slags programmering du trenger å kunne for å bruke Unity er egentlig uvesentlig, de fleste programmeringspråk er temmelig like og kan du ett så lærer du et nytt rimelig fort.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...