MouseWheel doesnt zoom gradually / Long time before graphics are displayed


i have two problems linked to the same piece of code.


i tried using a custom third person system using keynodeforward(backward etc.)actions and a chasecamera.

From the very start i had a simple problem. Using the mousewheel will either zoom to the minimum distance or to the maximum distance. There is no step "in between", no matter how much i turn the wheel.

I first thought it would be a problem with the properties i set.

So i used the rencontrolleditor and copied the code 1:1.

In the editor it works perfectly.

Here is the code

private void buildChaseCamera() {
Vector3f targetOffset = new Vector3f();
BoundingVolume bv = player.getWorldBound();
if (bv instanceof BoundingBox) {
targetOffset.y = ((BoundingBox) player.getWorldBound()).yExtent * 1.5f;
} else {
targetOffset.y = ((BoundingSphere) player.getWorldBound()).radius * 1.5f;
//mycode ends
HashMap handlerProps = new HashMap();
handlerProps.put(ThirdPersonHandler.PROP_ROTATEONLY, "true");
handlerProps.put(ThirdPersonHandler.PROP_DOGRADUAL, "true");
handlerProps.put(ThirdPersonHandler.PROP_TURNSPEED, "3.1415");
handlerProps.put(ThirdPersonHandler.PROP_LOCKBACKWARDS, "true");
handlerProps.put(ThirdPersonHandler.PROP_STRAFETARGETALIGN, "true");
handlerProps.put(ThirdPersonHandler.PROP_CAMERAALIGNEDMOVE, "false");

handlerProps.put(ThirdPersonHandler.PROP_KEY_FORWARD, ""
+ KeyInput.KEY_W);
handlerProps.put(ThirdPersonHandler.PROP_KEY_LEFT, "" + KeyInput.KEY_A);
handlerProps.put(ThirdPersonHandler.PROP_KEY_BACKWARD, ""
+ KeyInput.KEY_S);
.put(ThirdPersonHandler.PROP_KEY_RIGHT, "" + KeyInput.KEY_D);
handlerProps.put(ThirdPersonHandler.PROP_KEY_STRAFELEFT, ""
+ KeyInput.KEY_Q);
handlerProps.put(ThirdPersonHandler.PROP_KEY_STRAFERIGHT, ""
+ KeyInput.KEY_E);

input = new TestGameHandler(player, cam, handlerProps);

// input = new ThirdPersonHandler(player, cam, handlerProps);

HashMap chaserProps = new HashMap();
// chaserProps.put(ChaseCamera.PROP_ENABLESPRING, "true");
// chaserProps.put(ChaseCamera.PROP_DAMPINGK, "55.0");
// chaserProps.put(ChaseCamera.PROP_SPRINGK, "756.25");
chaserProps.put(ChaseCamera.PROP_MAXDISTANCE, "0.0");
chaserProps.put(ChaseCamera.PROP_MINDISTANCE, "0.0");
chaserProps.put(ChaseCamera.PROP_INITIALSPHERECOORDS, new Vector3f(
65.0f, 0f, FastMath.DEG_TO_RAD * 12.0f));
chaserProps.put(ChaseCamera.PROP_STAYBEHINDTARGET, "true");
chaserProps.put(ChaseCamera.PROP_TARGETOFFSET, new Vector3f(0f,
targetOffset.y, 0f));
chaserProps.put(ThirdPersonMouseLook.PROP_ENABLED, "true");
chaserProps.put(ThirdPersonMouseLook.PROP_MAXASCENT, ""
+ FastMath.DEG_TO_RAD * 85);
chaserProps.put(ThirdPersonMouseLook.PROP_MINASCENT, ""
+ FastMath.DEG_TO_RAD * -15);
chaserProps.put(ThirdPersonMouseLook.PROP_INVERTEDY, "false");
chaserProps.put(ThirdPersonMouseLook.PROP_ROTATETARGET, "false");
chaserProps.put(ThirdPersonMouseLook.PROP_MINROLLOUT, "6.2831855");
chaserProps.put(ThirdPersonMouseLook.PROP_MAXROLLOUT, "240.0");
chaserProps.put(ThirdPersonMouseLook.PROP_MOUSEXMULT, "2.0");
chaserProps.put(ThirdPersonMouseLook.PROP_MOUSEYMULT, "30.0");
chaserProps.put(ThirdPersonMouseLook.PROP_MOUSEROLLMULT, "240.0");
chaserProps.put(ThirdPersonMouseLook.PROP_LOCKASCENT, "true");
chaser = new ChaseCamera(cam, player, chaserProps);


TestGameHandler just extends the ThirdPersonHandler. Using the ThirdPersonhandler doesnt solve the problem.
If i turn the wheel just one notch i zoom in to the max.
If i turn it the other way i zoom out to the max.
Initially i am somewhere in the middle between the two distances.

Any idea why ?
Do i need to use a specific mouse ? I have an absolutemouse and commenting that out (meaning not using any specific mouse besides the default) doesnt solve the problem either.

2) Another problem is the graphics set up.
I load several nodes and a terrainblock. When i start the program i see for a very short instant the scene with the camera close up to my main node. Everything is there, no further debug messages come and i am directly below my character. Then all goes blank (background is blue)  and it takes some 5 seconds before i see the camera zooming into the scene from far away.
Seems the chasecamera is set to a far distance shortly after initialization ? Can you give me a hint on why and where that happens ? Didnt happen in the rencontrolleditor either.

All the more strange is that when i comment in the following lines of code from above:
// chaserProps.put(ChaseCamera.PROP_ENABLESPRING, "true");
// chaserProps.put(ChaseCamera.PROP_DAMPINGK, "55.0");
// chaserProps.put(ChaseCamera.PROP_SPRINGK, "756.25");
The scene never shows up (after the initial 0.1 second flash).

Any hint would be appreciated :)