Game

Tags:    delphi

<< < 12 > >>
Hey her er lige et par spørgsmål fra mig af.

En gameengine, hvordan er den opbygget? Det er meget fint alt det der med at lave direkte openGL men hvordan er en gameengine opbygget? Evnt link til noget om dem. Ikke at jeg vil lave en, men vil gerne have noget viden om det alligevel.

PS. Er mest interesseret i viden om strategispil grafik.

Og så lige en til Søren Klit Lambæk:

Den uddannelse du er ved at tage, hvor længe tager den og hvor meget koster den? Kunne forestille mig det var krydret at gå på uni i England? (Du får 25 af pointsne for svaret)



-----------------------------------------------
Sex er som Quake, Singleplayer er godt. Men multiplayer er bare bedre.
-----------------------------------------------

[Redigeret d. 03/05-04 20:42:19 af Lasse]



17 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
At designe en grafik motor kraever gode arkitekt evner og en masse erfaring. Der er mange ting at tage hensyn til. Hvilken slags grafik snakker vi om? er det 2D/3D, er det OpenGL eller DirectX understoettet, skal den understotte Vertex Shading og Pixel Shading, hvilken grafikkort skal der laegges mest vaegt paa: NVidia eller ATI kort, hvilken CPU skal der laegges mest vaegt paa: Intel eller AMD osv.
Der er mange ting der pludselig kan blive meget rodet hvis ikke du har planlagt det hele meget noeje fra start. Ud over det, findes der et hav at programmerings tricks, som ikke normalt boer blive anvendt i fornuftigt programmering men ofte bliver benyttet til spil udvikling. Jeg har hoert om grafik motor der snupper RAM fra lydkortet for at lave ekstra grafiske effekter.

En grafik motor er kun en del af hele din spil motor, men det er nok den foerste som folk taenker paa, fordi det er den du foerst laegger maerke til og det er den der saelger spillet i sidste ende! Screenshots saelger ofte mere en anmeldelserne! Mange boeger omhandler kunsten at designe en spil motor (nogen bedere end andre), men faelles er, at en spil motor er resultatet paa en masse under motor (der i blandt grafik motoren). En lile kort liste over de mest omtalte er:

Grafik (Alt grafisk)
Kontrol (Alle input fra forskellige kontroller, Mus, Keyboard, Joystik osv.)
Fysik (Alle simulationer af kollisioner)
AI (kunstigt intellgens, simulering af hvordan dine modstander skal opfoere sig i spillet)
Lyd (Alt behandlig af lyd i spillet)

Og under dem er der masser af "under" engines! Selve koden til alle disse forskellige motor, bliver gemt i DLL filer. Fordi at DLL filer er program udvidelser, og derfor kan benyttes af mange forskellige programmer (endda samtidigt og er ofte platform uafhaengige). Saa hvis du kigger du paa nogle af de mange filer der bliver installeret med et spil vil der ofte forekommer DLL filer der hedder noget med OGL eller DX eller lig,. der selvfolgelig staar for OpenGL og DirectX! Derfor er det ikke saerligt svaert at forestille sig hvordan man kan lave MODs (Modifiers) til forskellige spil.

Dit spoergsmaal omkring universitets uddannelse i England, kan jeg glaede dig med at det ikke er saa dyrt som du maaske gaar rundt og regner med! Da baade England og Danmark er EU lande, maa vi som dansker tage vores SU med. Og det betyder en hel del for et udlandsophold for en fattig studerende. Jeg betaler omkring 10.000 kroner om aaret til selve mit universitet for undervisningen, hvilket jeg ikke synes er saa forfaerdentligt meget. Der ud over skal du selv betale for undervisnings materiale saa som boeger, papir osv. Men det har for mit vedkommene ikke naert oversteget 1.000 kroner endnu, da mit universitet har en virklig god universitets bibliotek. Du skal du jo selvefolig ogsaa taenke paa penge til bolig, mad, toj osv. men det skal du jo alle steder, saa det er op til dig selv, hvor meget du vil bruge der. Det foerste aar vil der blive reserveret en plads paa universitets kollegium, de resterende aar maa du selv finde en lejelighed eller lign. Men det er slet ingen problem herovre!

Angaende den uddannelse der er ved at starte i Danmark, er det saa vidt jeg har hoert, ikke en helstoebt uddannalse men derimod en masse sammensatte kurser. Desuden er det kun en overbyggelse af en IT Bachelor uddannelse. Dvs. at du skal havde gaet 3 aar paa universitet og laest et IT fag, inden du kan tage uddannelsen!

Soeren Klit Lambaek

PS: Glut er en OpenGL Unit der skulle vaere platform uafhaengig. Gennem Glut skulle du kunne indlaese textures, indlaese keyboard, joystik og mus input osv.! GLUT var ment som en hjaelp men da der har vaeret stor mangel paa opdatering og fleksibilitet, er det for manges vedkommene naermere blevet et mareridt! Efter hvad jeg har hoert bliver GLUT ikke laengere officielt udviklet eller opdateret!



Helt generelt om engine udvikling: En engine er en betegnelse for den del af spillet der er den drivende del. Der er forskellige typer engines til forskellige typer spil, fx. 3d shooter, 3d strategi, platform, bilspil, sportsspil...osv. Typisk vælger man at bygge en meget generel engine således den kan genbruges i flere spil. En engine er igen typisk bygget op af flere dele, fx. en del der indeholder forretnings logikken (hvad koster hvad og hvor mange experience points får man for hvad... dvs. alt den logiske del af spillet), en anden del af en engine kan indeholde selve den del der laver grafikken, det kaldes typisk en 3D engine eller en rendering engine. Så er der den del af enginen der loader alle ressourcer og holder styr på det, det er typisk en Object factory samt et Virtuelt Filsystem til at holde alle dine modeller.

Som sådan kan jeg ikke svare dig på hvad en engine består af, men jeg kan give dig nogle hints i en retning, det er ikke sikkert at det der virker for mig også er løsningen på dit problem. Det at bygge en god engine er lidt de samme principper som al andet software udvikling, man laver tingene så generelle som muligt så man kan bruge dem i så mange forskellige sammenhænge som muligt (en rigtig udvikler bruger lidt ekstra tid på det og sparer så en farlig masse tid til sidst - en programmør er vel meget doven på den måde :-)

En engine er igen et spørgsmål om at gennemdesigne sit kode, således det er isoleret og afgrænset, det vil sige en lagdelt arkitektur er simpelthen et must, logisk strukturering er netop et produkt af dette. Det er også lige meget om du laver en engine til et kort spil eller du laver en engine til det nye counter strike, der skal laves et godt design, det kan godt betale sig i sidste ende. En engine er hjertet i et spil, men det skal ALDRIG forveksles med det brugeren ser, det er kun en grænseflade. Man kan MEGET GROFT sige at et spil ofte består af en .exe fil der er startop programmet, den indeholder en ramme omkring det der skal vises til brugeren. Dernæst indeholder et spil en eller flere .dll filer (det er typisk dem der er enginen) der står for at præsentere noget i den ramme .exe filen præsenterer. Der er igen flere .dll filer der står for loading og initialisering af spillet....

Igen der kan ikke gives et entydigt svar på dit spørgsmål, nu håber jeg ikke du er blevet mere forvirret end du var tidligere.

Med hensyn til uddannelse inden for spilindustrien så åbnes der en ny uddannelse i Danmark her til efteråret, det er et samarbejde mellem forksellige universiteter, statens filmskole, nogle kommunikations uddannelser samt en del animations skoler.

http://www.gamedev.net/
http://www.gamasutra.com/


(¯`·._.·[Brian Hvarregaard]·._.·´¯)

[Redigeret d. 03/05-04 22:23:28 af Brian Hvarregaard]



bsp filer duer kun til helt statisk grafik og er for gammelt = så jeg behøver ikke spørge hvad bsp er ? :P


skal det tolkes som om du ikke ved hvad det er og ønsker en forklaring? :)

>brug ikke glut! = ? hvad. Bare en lille hurtig forklaring


ja sådan set bare min egen holdning.. synes det virker lidt som en begrænsning..

Okay, så når man siger en graffikmotor er godt lavet så er det fordi den loader PRÆCIS hvad den har brug for og ikke mere eller mindre?


når folk siger grafikmotor så forstår jeg det som værende selve enginen. når en grafikmotor er godt lavet så indeholder den mange fancy extensions, kan håndtere advancerede modeler og har god fysik.

Jeppe Johansen
Jeppesoftware@hotmail.com
ps. ja dette er som sådan ikke rigtig noget svar..

[Redigeret d. 03/05-04 22:28:05 af Jeppe]



jeg har efter mange forsøg forsøgt at få stablet et nogenlunde fornuftigt system på benene. jeg har indtil videre fundet ud af et scene graph-style game core er den mest fornuftige system nu. (bsp filer duer kun til helt statisk grafik og er for gammelt)

men af min erfaring:

>brug ikke glut!

>engine/core er egentligt bare et synonym for din start applikation.. den kan foreksempel indeholde en liste med modeller som bliver hentet før du starter at vise grafik, en scene graph hvorved du kan få meget dynamisk sceneri, et fysik library hvori du har alle collisions og fysik prcedure

>kod et modul HELT færdigt før før du begynder at teste det(ja dette er mest til den praktiske side. jeg har ind til videre kaseret 5 store projekter og skrevet alt forfra fordi det blev ekstremt rodet!)

Jeppe Johansen
Jeppesoftware@hotmail.com



bsp filer duer kun til helt statisk grafik og er for gammelt = så jeg behøver ikke spørge hvad bsp er ? :P

>brug ikke glut! = ? hvad. Bare en lille hurtig forklaring.

>engine/core er egentligt bare et synonym for din start applikation.. den kan foreksempel indeholde en liste med modeller som bliver hentet før du starter at vise grafik, en scene graph hvorved du kan få meget dynamisk sceneri, et fysik library hvori du har alle collisions og fysik prcedure

Okay, så når man siger en graffikmotor er godt lavet så er det fordi den loader PRÆCIS hvad den har brug for og ikke mere eller mindre?

Mvh
Lasse

-----------------------------------------------
Sex er som Quake, Singleplayer er godt. Men multiplayer er bare bedre.
-----------------------------------------------



BSP filer er et Quake format! Denne format kan indeholder 3D scener til Quake og andre BSP understoettet programmer!!!!



Til jeppe : Mange tak for svarene :D og ja det betød jeg ikke behøvede viden om det. Men kan godt huske hvad de er nu da jeg ser dem, fra dengang jeg selv rodede med andre spil.

Du får desværre ikke helt så mange points da dine forklaringer var lidt knudrede, men mange tak for hjælpen alligevel :D

Til Brian Hvarregaard og Søren Klit Lambæk :

Mange tak for de 2 gode forklaringer, det var faktisk lige hvad jeg søgte så det var fint :D Er ked af at jeg ikke kan give flere points end 50 for jeres forklaringer er jo lige tip top.

Mvh
Lasse
-----------------------------------------------
Sex er som Quake, Singleplayer er godt. Men multiplayer er bare bedre.
-----------------------------------------------



Hul i pointsene det er diskutionen omkring spiludvikling jeg synes er fed.....

Tror snart jeg må bygge min egen engine i Managed DirectX... og måske lave en artikel samtidig :-)


(¯`·._.·[Brian Hvarregaard]·._.·´¯)



Hul i pointsene det er diskutionen omkring spiludvikling jeg synes er fed.....

Tror snart jeg må bygge min egen engine i Managed DirectX... og måske lave en artikel samtidig :-)


(¯`·._.·[Brian Hvarregaard]·._.·´¯)


Det tror jeg der er MANGE andre end mig der ville påskønne :D inklusiv mig. Var også vild med din nyeste artikkel, den var meget nyttig :D
-----------------------------------------------
Sex er som Quake, Singleplayer er godt. Men multiplayer er bare bedre.
-----------------------------------------------



Der kom lige et spørgsmål op i mit lille hoved.. Mener nok der står noget med at openGL ikke understøtter kameraer.. vil det sige det slet ikke er muligt? Eller er det bare fordi det er MAKS svært?

Og så lige 1 mer til søren : har lagt en besked i testerforumet om dit betaspil :D læs venligst. :P


-----------------------------------------------
Sex er som Quake, Singleplayer er godt. Men multiplayer er bare bedre.
-----------------------------------------------



<< < 12 > >>
t