public PhotoRenderer(Home home,
Object3DFactory object3DFactory,
Quality quality) throws IOException {
this.compass = home.getCompass();
this.quality = quality;
this.sunflow = new SunflowAPI();
this.useAmbientOcclusion = home.getCamera() instanceof ObserverCamera;
// SunFlow produce too much white spots when silk shader is used with sun sky
// so use this shader only when observer is used
boolean silk = this.useAmbientOcclusion && quality == Quality.HIGH;