/**
* Remove all listeners bound to home that updates 3D scene objects.
*/
private void removeHomeListeners() {
this.home.removePropertyChangeListener(Home.Property.CAMERA, this.homeCameraListener);
HomeEnvironment homeEnvironment = this.home.getEnvironment();
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.SKY_COLOR, this.skyColorListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.SKY_TEXTURE, this.skyColorListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.GROUND_COLOR, this.groundColorAndTextureListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.GROUND_TEXTURE, this.groundColorAndTextureListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.LIGHT_COLOR, this.lightColorListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.WALLS_ALPHA, this.wallsAlphaListener);
homeEnvironment.removePropertyChangeListener(HomeEnvironment.Property.DRAWING_MODE, this.drawingModeListener);
this.home.getCamera().removePropertyChangeListener(this.cameraChangeListener);
this.home.removeWallsListener(this.wallListener);
for (Wall wall : this.home.getWalls()) {
wall.removePropertyChangeListener(this.wallChangeListener);
}