l.setIntensity(3.0f); // Add it to our world world.addChild(l); }
是这么简单吗?是的,就是这么简单。我们使用getActiveCamera方法从世界中提取照相机。我们将得到世界导出时的哪个照相机。通过上面的方法,我们得到了一个照相机,我们可以把它移动成想要的效果。然而,这个方法还做了其他事,它添加了一个灯光!我们将在后面的部分钻研灯光,但在这里你只需知道如何在世界里添加一个灯光。我创建一个环境光(如果你不知道,环境光是光从所有方向照射所有表面)并添加它到世界里。这个方法让我们得到了一个非常好的有光的世界。我之前告诉过你,世界结点可以控制所有种类的信息,也包括灯光,因此,我们只需要将灯光添加入我们的世界,JSR 184将为我们处理。那不是很容易吗?在我们阅读最后一个部分之前,绘制,让我们的照相机移动。我已经告诉过你boolean数组,键值,控制我们的键信息,因此我们要询问这个数组并是照相机运转。首先,我们需要一些变量来控制我们的照相机。
// Camera rotation float camRot = 0.0f; double camSine = 0.0f; double camCosine = 0.0f; // Head bobbing float headDeg = 0.0f;
我们将用上面的变量来控制照相机旋转的轨迹,三角函数和顶点振动。三角函数用于稍后的移动,顶点振动是十分简单的,它使照相机上下振动当我们在世界里行走时,为了一种更自然的感觉。好的,我们需要怎么样做才能移动照相机呢?使用下面的方法:
private void moveCamera() { // Check controls if(key[LEFT]) { camRot += 5.0f; } else if(key[RIGHT]) { camRot -= 5.0f; } // Set rotation cam.setOrientation(camRot, 0.0f, 1.0f, 0.0f); // Calculate trigonometry for camera movement double rads = Math.toRadians(camRot);
上一篇:使用Java蓝牙无线通讯技术API(第一部分 -API概览)(1)
下一篇:java多线程设计模式详解之四
|