⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cameragamestate.java

📁 monkeymahjongg,一个JME3D游戏的源代码
💻 JAVA
字号:
package jmetest.monkeymahjongg.game;
 
 import com.jme.math.FastMath;
 import com.jme.math.Quaternion;
 import com.jme.math.Vector3f;
 import com.jme.renderer.Camera;
 import com.jme.scene.CameraNode;
 import com.jme.scene.Node;
 import com.jme.system.DisplaySystem;
 import com.jmex.game.state.BasicGameState;
 
 /**
 *
 * @author DGronau
 */
 public class CameraGameState extends BasicGameState {
 
 private final static Vector3f FIXED_TRANSLATION = new Vector3f(0, 0, 20.0f);
 private final Node cameraRotationNode;
 private final Node cameraDistanceNode;
 private final CameraController cameraController = new CameraController(this);
 
 public CameraGameState() {
 super("camera");
 final Camera camera = DisplaySystem.getDisplaySystem().getRenderer().getCamera();
 cameraRotationNode = new Node("camRotation");
 cameraDistanceNode = new CameraNode("camDistance", camera);
 cameraDistanceNode.setLocalRotation(new Quaternion().fromAngleNormalAxis(FastMath.PI, new Vector3f(0, 1, 0)));
 cameraRotationNode.attachChild(cameraDistanceNode);
 
 rootNode.attachChild(cameraRotationNode);
 rootNode.addController(cameraController);
 rootNode.updateRenderState();
 }
 
 public Node getCameraRotationNode() {
 return cameraRotationNode;
 }
 
 public Node getCameraDistanceNode() {
 return cameraDistanceNode;
 } 
 
 public void setFixed() {
 cameraController.setActive(false);
 cameraDistanceNode.setLocalTranslation(FIXED_TRANSLATION);
 cameraRotationNode.setLocalRotation(new Quaternion());
 }
 
 public void setMoveable() {
 cameraController.setActive(true);
 }
 }
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -