Förslag till kandidatarbete

Förslag till kandidatarbete

Joachim Bengtsson, spelprogrammering -04


Arbetet kommer att gå ut på en implementation av en algoritm för att modellera realistiskt ljud i spel, och allt som behövs för att gå från ljud i spelmotorn till ljud i högtalare.


Algoritmen som ska implementeras är "Extension of the image model to arbitrary polyhedra" (Borish, 1982). Image Model går i korta drag ut på att av ett problem med en ljudkälla och studsar skapa ett ekvivalent problem med flera ljudkällor och inga studsar, genom att skapa virtuella ljudkällor i rum som är spegelbilder av originalljudkällans rum, och göra detta rekursivt. Varje väggs spegelbild motsvarar då en studs i den speglande väggen.


Borishs utökning av ovanstående metod går ut på att reflektera varje ljudkälla i alla rummets ytor utan några geometriska begränsningar, och sedan bedöma reflektionens giltighet efter tre kriterier:

1) att ljudet inte har i något skede reflekterats i baksidan av en vägg (validity)

2) att det totala avståndet från den virtuella ljudkällan till lyssnaren inte innebär att ljudet inte hörs (proximity/decay)

3) att varje ljudkälla är synlig och inte täcks av någon geometri (visibility)


Stegen för min egen implementation kommer bli:

 • Beräkna direktljuds riktning och styrka, och placera detta ljud i användarens två högtalare

 • Utöka denna modell för arbiträrt antal högtalare

 • Implementera Borishs algoritm för att få occlusion och reverb-effekt, och integrera den med modellen för placering i arbiträrt antal högtalare

 • Implementera en filtermodell för att filtrera ljud när det studsar mot absorberande material

 • Integrera med en spelmotor


Mikael Swartling har letat reda på algoritmen åt mig, och kan hjälpa mig med signalbehandlingsbiten.

page index