您的位置:首页 > 编程语言

JME基础教程代码分析2

2011-08-12 11:24 267 查看
package com.hello;

import com.jme3.app.SimpleApplication;

import com.jme3.material.Material;

import com.jme3.math.Vector3f;

import com.jme3.scene.Geometry;

import com.jme3.scene.shape.Box;

import com.jme3.math.ColorRGBA;

import com.jme3.scene.Node;

/** Sample 2 - How to use nodes as handles to manipulate objects in the scene graph.

* You can rotate, translate, and scale objects by manipulating their parent nodes.

* The Root Node is special: Only what is attached to the Root Node appears in the scene. */

public class HelloNode extends SimpleApplication {

public static void main(String[] args){

HelloNode app = new HelloNode();

app.start();

}

@Override

public void simpleInitApp() {

// create a blue box at coordinates (1,-1,1)

//在坐标(1,-1,1)上的蓝色box

Box box1 = new Box( new Vector3f(1,-1,1), 1,1,1);

Geometry blue = new Geometry("Box", box1);

Material mat1 = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");

mat1.setColor("Color", ColorRGBA.Blue);

blue.setMaterial(mat1);

// create a red box straight above the blue one at (1,3,1)

//在坐标(1,3,1)上的红色box

Box box2 = new Box( new Vector3f(1,3,1), 1,1,1);

Geometry red = new Geometry("Box", box2);

Material mat2 = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");

mat2.setColor("Color", ColorRGBA.Red);

red.setMaterial(mat2);

// create a pivot node at (0,0,0) and attach it to root

//在(0,0,0)上创建的一个新的节点,并附加到根节点

Node pivot = new Node("pivot");

rootNode.attachChild(pivot);

// attach the two boxes to the *pivot* node!

//两个box附加到pivot节点

pivot.attachChild(blue);

pivot.attachChild(red);

// rotate pivot node: Both boxes have rotated!

//两个box都旋转,嘿嘿,这就是父节点的作用

pivot.rotate( 0.4f , 0.4f , 0.0f );

}

}

注:还有关于剔除渲染的操作,也是对节点作用的说明
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: