В Java3D векторы можно использовать для определения местоположения объекта (или, в частности, TransformGroup):
Sphere sphere = new Sphere(0.05f);
TransformGroup tg = new TransformGroup();
Transform3D transform = new Transform3D();
Vector3f vector = new Vector3f( 1.0f, .0f, .0f); // Here the vector is being used for location
transform.setTranslation(vector);
tg.setTransform(transform);
tg.addChild(sphere);
group.addChild(tg);
А вот для направления (направленного света):
Color3f lightColor = new Color3f(0f, 0f, 3f);
Vector3f lightDirection = new Vector3f(7.0f, -7.0f, -12.0f) // and here for direction.
DirectionalLight light = new DirectionalLight(lightColor, lightDirection);
Какая разница?