dungeon_crawler
annotate prototype/src/audio/source.h @ 51:d57df51f6b50
- fixed audio panning (listener direction)
- particles had no fog
- sound sources were not destroyed properly
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Tue, 18 Sep 2012 09:40:56 +0300 |
parents | aa9e28670ae2 |
children |
rev | line source |
---|---|
nuclear@48 | 1 #ifndef SOURCE_H_ |
nuclear@48 | 2 #define SOURCE_H_ |
nuclear@48 | 3 |
nuclear@48 | 4 #include "vmath/vmath.h" |
nuclear@48 | 5 #include "sample.h" |
nuclear@48 | 6 |
nuclear@48 | 7 class AudioSource { |
nuclear@48 | 8 private: |
nuclear@48 | 9 unsigned int alsrc; |
nuclear@48 | 10 const AudioSample *sample; |
nuclear@48 | 11 |
nuclear@48 | 12 public: |
nuclear@48 | 13 AudioSource(); |
nuclear@48 | 14 ~AudioSource(); |
nuclear@48 | 15 |
nuclear@48 | 16 void set_sample(const AudioSample *sample); |
nuclear@48 | 17 const AudioSample *get_sample() const; |
nuclear@48 | 18 |
nuclear@48 | 19 void set_position(const Vector3 &pos, bool viewspace = false); |
nuclear@48 | 20 Vector3 get_position() const; |
nuclear@48 | 21 |
nuclear@51 | 22 void set_volume(float vol); |
nuclear@51 | 23 float get_volume() const; |
nuclear@51 | 24 |
nuclear@51 | 25 void set_reference_dist(float rdist); |
nuclear@51 | 26 float get_reference_dist() const; |
nuclear@51 | 27 |
nuclear@48 | 28 bool is_playing() const; |
nuclear@48 | 29 void play(); |
nuclear@48 | 30 void stop(); |
nuclear@48 | 31 }; |
nuclear@48 | 32 |
nuclear@48 | 33 #endif // SOURCE_H_ |