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 );
}
}
注:还有关于剔除渲染的操作,也是对节点作用的说明
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 );
}
}
注:还有关于剔除渲染的操作,也是对节点作用的说明
相关文章推荐
- JME基础教程代码分析13物理碰撞
- JME基础教程代码分析1
- JME基础教程代码分析3
- JME基础教程代码分析4
- JME基础教程代码分析5
- JME基础教程代码分析6
- JME基础教程代码分析7
- JME基础教程代码分析8 碰撞
- JME基础教程代码分析9 碰撞、刚体、场景加载
- JME基础教程代码分析10高度图
- JME基础教程代码分析11 音频
- JME基础教程代码分析12 效果控制
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析 分类: H3_NUTCH 2014-06-04 20:10 1039人阅读 评论(0) 收藏
- 关于Python数据分析基础教程 Numpy学习指南 第二版 第二章中代码所呈现的问题
- 关于Python数据分析基础教程 Numpy学习指南 第二版 第三章中代码所呈现的问题
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析
- 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析