Het ontwerpen van spellen met Game Maker
3D geluid
Deze functies zijn alleen beschikbaar in de geregistreerde versie van Game Maker.3D geluiden refereren naar geluid dat een positie (en snelheid) heeft ten opzichte van de luisteraar. Hoewel het meest bedoelde gebruik is voor 3D spellen is het ook effectief voor 2D spellen. Het idee is dat een geluid een positie heeft in ruimte. In alle functies is de luisteraar verondersteld op positie (0,0,0). Het systeem berekend hoe de luisteraar het geluid zou horen en past het overeenkomstig aan. Het effect is in het bijzonder goed als je een goed luidspreker systeem hebt maar werkt ook op kleine luidsprekers.
Naast een positie, heeft het geluid ook een snelheid. Dit leidt tot welbekende Doppler effecten welke correct zijn verwerkt in het model. Ten slotte kan het geluid een orientatie hebben, die ook goed wordt weergegeven.
Game Maker ondersteunt 3D geluid opties met de onderstaande functies. Ze werken alleen voor geluid resources die zijn gemerkt als 3D. (Het nadeel is dat 3D geluiden mono zijn en niet stereo.)
sound_3d_set_sound_position(snd, x, y, z) Zet de positie van het aangegeven geluid ten opzichte van de luisteraar op de aangegeven positie in ruimte. Waardes op de x-as woorden groter van links naar rechts, op de y-as van beneden naar boven en op de z-as van dichtbij naar ver. De waardes hebben als eenheid meters. Het volume waarmee het geluid wordt gehoord hangt af van deze maten op dezelfde manier als in de echte wereld.
sound_3d_set_sound_velocity(snd, x, y, z) Zet de snelheid van het aangegeven geluid met de aangegeven vector (richting en snelheid) in ruimte. Merk op dat het instellen van snelheid niet betekent dat de positie veranderd. De snelheid is alleen gebruikt voor het berekenen van Doppler-effecten. Dus als je het geluid wilt verplaatsen moet je dit zelf wijzigen door middel van de positie van het geluid.
sound_3d_set_sound_distance(snd, mindist, maxdist) Zet de minimum afstand waarop het geluid niet meer sterker wordt en de maximum afstand waarop het geluid niet meer kan worden gehoord. Dus als de afstand ligt tussen 0 en de minimum afstand het geluid is op de maximale sterkte. Als tussen de minimale afstand en de maximale afstand de sterkte langzaam daalt tot de maximale afstand is bereikt of het geluid niet meer hoorbaar is. Standaard is de minimum afstand 1 meter en de maximale afstand is 1 biljoen meter.
sound_3d_set_sound_cone(snd, x, y, z, anglein, angleout, voloutside) Normaal gesproken heeft geluid dezelfde sterkte in alle richtingen op dezelfde afstand van de bron. Je kunt de geluidskegel zetten om dit te veranderen en het geluid een richting te geven. x,y,z specificeren de richting van de geluidskegel. anglein specificeert de binnenwerkse hoek. Als de luisteraar binnen deze hoek is hoort hij het dit op zijn normale volume. angleout specificeert de buitenwerkse hoek. Als de luisteraar hier buiten is hoort hij het geluid op volume voloutside. Om precies te zijn, voloutside is een negatief getal dat aangeeft hoeveel honderden decibellen moeten worden verminderd van het binnenwerkse volume. Tussen de binnenwerkse en buitenwerkse hoek wordt het volume geleidelijk minder.