26.01.2014 Views

PROJEKTKATALOG 20100125.pdf - Institut for Matematik og ...

PROJEKTKATALOG 20100125.pdf - Institut for Matematik og ...

PROJEKTKATALOG 20100125.pdf - Institut for Matematik og ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

N a t u r v i d e n s k a b e l i g t P r o j e k t 2 0 1 0<br />

Projekt 31: <strong>Matematik</strong>ken bag 3D-grafik i<br />

computerspil<br />

Vejleder: Rune Larsen, rular@imada.sdu.dk<br />

<strong>Institut</strong>: <strong>Institut</strong> <strong>for</strong> <strong>Matematik</strong> <strong>og</strong> Datal<strong>og</strong>i (IMADA)<br />

Praktisk del: IMADA<br />

Gruppeplacering: IMADA<br />

Gruppestørrelse: Mindst 3 <strong>og</strong> max 5 deltagere.<br />

To gruppe kan arbejde med projektet.<br />

Kommentarer: Ingen.<br />

Keywords:<br />

3D-grafik, trans<strong>for</strong>mationer, hom<strong>og</strong>ene<br />

koordinater, rendering, shading.<br />

Abstract<br />

I pr<strong>og</strong>rammering af computerspil bruges mange metoder <strong>og</strong> teknikker fra både datal<strong>og</strong>i <strong>og</strong> matematik.<br />

Det mest centrale eksempel herpå er 3D grafik, hvor objekter opbygges af trekanter i et<br />

tredimensionelt koordinatsystem. For at kunne placere <strong>og</strong> animere de opbyggede objekter i spillene,<br />

er det nødvendigt at kunne translatere, rotere <strong>og</strong> skalere dem. Ydermere skal de projiceres<br />

perspektivmæssigt korrekt til skærmens to dimensioner. Hertil bruges matriceregning, dvs. metoder<br />

fra lineær algebra. Mens 3x3 matricer er nok til at implementere rotationer <strong>og</strong> skaleringer,<br />

kræver translationer <strong>og</strong> projicering 4x4 matricer. <strong>Matematik</strong>ken bag de første tre er relativ simpel,<br />

mens projiceringen er mere involveret. Også i <strong>for</strong>bindelse med farvelægning (shading) af<br />

objekternes trekanter optræder der matematisk baserede metoder, primært vektorregning.<br />

Ideen med projektet er at studere principperne bag 3D spil på computere. Afhængigt af gruppen<br />

kan fokus i projektet flyttes mellem de datal<strong>og</strong>iske <strong>og</strong> matematiske aspekter af emnet. Eksempler<br />

på indgangsvinkler kan være:<br />

1. Et simpelt spil implementeres med fokus på et specielt område f.eks. Alternative<br />

inputmetoder, generering af kort, level of detail, AI etc.<br />

2. Opbygningen af projektions, skalerings, translations <strong>og</strong> rotations matricer kan undersøges <strong>og</strong><br />

gennemgås ud fra et matematisk synspunkt.<br />

Minikurser<br />

Obligatorisk: Projektarbejde (LaTeX, Nat)<br />

Litteraturliste over metode artikler, som udleveres til de studerende<br />

Bemærk at den endelig liste afhænger meget af valg af retning på projektet:<br />

• En guide til pr<strong>og</strong>rammering af 3D spil: http://nehe.gamedev.net/<br />

• Afsnit 3 <strong>og</strong> Appendix G i "The OpenGL Pr<strong>og</strong>ramming Guide: The Official Guide to<br />

Learning OpenGL" af Shreiner, Woo, Neider, Davis. Addison-Wesley. En ældre version<br />

af b<strong>og</strong>en kan ses online på http://fly.cc.fer.hr/~unreal/theredbook/<br />

• Spørg evt. over mail. Projektet kan være inspireret af deltagernes ideer.<br />

33

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!