}
@Override
public void simpleInitApp() {
BulletAppState bulletAppState = new BulletAppState();
stateManager.attach(bulletAppState);
// Load Island
Node island = (Node) assetManager.loadModel("Scenes/island2_1.j3o");
rootNode.attachChild(island);
bulletAppState.getPhysicsSpace().addAll(island);
island.getChild("SpawningPoints").setCullHint(Spatial.CullHint.Always);
Node mainScene = new Node("Main Scene");
rootNode.attachChild(mainScene);
Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false);
sky.setLocalScale(350);
mainScene.attachChild(sky);
water = new WaterFilter(rootNode, lightDir);
FilterPostProcessor fpp = new FilterPostProcessor(assetManager);
fpp.addFilter(water);
BloomFilter bloom = new BloomFilter();
bloom.setExposurePower(55);
bloom.setBloomIntensity(1.0f);
fpp.addFilter(bloom);
LightScatteringFilter lsf = new LightScatteringFilter(lightDir.mult(-300));
lsf.setLightDensity(1.0f);
fpp.addFilter(lsf);
DepthOfFieldFilter dof = new DepthOfFieldFilter();
dof.setFocusDistance(0);
dof.setFocusRange(100);
fpp.addFilter(dof);
fade = new FadeFilter();
fpp.addFilter(fade);
water.setWaveScale(0.003f);
water.setMaxAmplitude(1f);
water.setFoamExistence(new Vector3f(1f, 4, 0.5f));
water.setFoamTexture((Texture2D) assetManager.loadTexture("Common/MatDefs/Water/Textures/foam2.jpg"));
water.setRefractionStrength(0.2f);
water.setWaterHeight(initialWaterHeight);
uw = cam.getLocation().y < waterHeight;
waves = new AudioNode(assetManager, "Sounds/Environment/Ocean Waves.ogg", false);
waves.setLooping(true);
waves.setReverbEnabled(true);
if (uw) {
waves.setDryFilter(new LowPassFilter(0.5f, 0.1f));
} else {
waves.setDryFilter(aboveWaterAudioFilter);
}
getAudioRenderer().playSource(waves);
getViewPort().addProcessor(fpp);
flyCam.setMoveSpeed(100);
cam.setLocation(new Vector3f(-186.47707f, 19.662216f, -72.307915f));
cam.lookAt(new Vector3f(0f, 0f, 0f), Vector3f.UNIT_Y);
// cc = new GameStartCinematic(this, fade);
cc.attach();
fade.setValue(0f);
bulletAppState.getPhysicsSpace().enableDebug(assetManager);
}