I was trying to create a normal waterborne, nothing new here.
public void initWater() {
SimpleWaterProcessor waterProcessor = new SimpleWaterProcessor(assetManager);
Vector3f waterLocation = new Vector3f(0, 10, 0);
waterProcessor.setPlane(new Plane(Vector3f.UNIT_Y, waterLocation.dot(Vector3f.UNIT_Y)));
viewPort.addProcessor(waterProcessor);
waterProcessor.setReflectionScene(scene);
waterProcessor.setWaterDepth(40);
waterProcessor.setDistortionScale(0.05f);
waterProcessor.setWaveSpeed(0.05f);
Quad quad = new Quad(400, 400);
quad.scaleTextureCoordinates(new Vector2f(6f, 6f));
Geometry water = new Geometry("water", quad);
water.setLocalRotation(new Quaternion().fromAngleAxis(-FastMath.HALF_PI, Vector3f.UNIT_X));
water.setLocalTranslation(100, 0, 100);
water.setShadowMode(ShadowMode.Receive);
water.setMaterial(waterProcessor.getMaterial());
rootNode.attachChild(water);
}
But when you run the above code I received the following error:
UnsupportedOperationException: No default technique on materials ‘Simple Water’ is supported by the video hardware. The caps [GLSL100] are required.
Yes, my cards are OpenGL 1.4 drivers, do not recommend me to update my drivers because I’ve tried and can not really do that.