Affects Version/s: 1.5.2
Fix Version/s: None
Windows XP, J3D 1.5.2, JOAL 1.1.1 and JOALMixer 1.5.2
I'm developing a driving simulator for road safety training purposes.
I have created a multi-view universe (based on mirrordemo150.jar) to allow for the normal driver forward view to be rendered to the screen plus a rear view mirror image to be rendered to an off screen buffer, which is then copied to a texture and displayed in the mirror's position. This is all working fine.
However, the sound renderer is rendering sound from the rear view perspective. I do not seem to be able to set/reset this to the correct driver's view using the sound mixer setView() method. It appears the setView() method is being called by the J3D rendering loop - this also seems to be causing a non-fatal nullpointer error when it encounters the off screen canvas View object.
I'm not sure why the sound is not being rendered from the perspective of the on-screen active view. Indeed, I'm not sure why its continually rendering sound from the off screen rear view perspective, which is only rendered when the renderOffScreenBuffer() method is invoked.
I don't believe sound should ever normally be rendered for an off screen canvas/view - it simply makes no sense as the user is very unlikely to see the world from this perspective. In my experience, rendering to an off screen buffer is usually done to produce an image for a real-time texture or environment map - e.g. a reflection, or an in-game CCTV image...
Is this a bug? Is there a way to disable sound rendering on a particular View object?
Is maintaining two separate universes, one for on-screen Views with sound and one for off-screen Views with no sound, the only way to overcome this issue?