| 280 | } |
| 281 | |
| 282 | IWave* SoundSystemOAL::CreateWaveFromMemory(const void* data, size_t size, const char* ext, bool is3D) |
| 283 | { |
| 284 | if (!_soundReady) |
| 285 | return nullptr; |
| 286 | Ref<WaveStream> stream = SoundLoadMemory(data, size, ext); |
| 287 | if (!stream) |
| 288 | return nullptr; |
| 289 | // Use empty constructor, then manually set stream |
| 290 | auto* wave = new WaveOAL(this, 0.f); |
| 291 | wave->_is3D = is3D; |
| 292 | wave->_createdAs3D = is3D; |
| 293 | wave->_stream = stream; |
| 294 | wave->LoadHeader(); |
| 295 | return wave; |
| 296 | } |
| 297 | |
| 298 | void SoundSystemOAL::SetListener(Vector3Par pos, Vector3Par vel, Vector3Par dir, Vector3Par up) |
| 299 | { |