本文整理汇总了Java中com.jme3.asset.BlenderKey类的典型用法代码示例。如果您正苦于以下问题:Java BlenderKey类的具体用法?Java BlenderKey怎么用?Java BlenderKey使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
BlenderKey类属于com.jme3.asset包,在下文中一共展示了BlenderKey类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: simpleInitApp
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
@Override
public void simpleInitApp() {
flyCam.setMoveSpeed(10f);
cam.setLocation(new Vector3f(6.4013605f, 7.488437f, 12.843031f));
cam.setRotation(new Quaternion(-0.060740203f, 0.93925786f, -0.2398315f, -0.2378785f));
DirectionalLight dl = new DirectionalLight();
dl.setDirection(new Vector3f(-0.1f, -0.7f, -1).normalizeLocal());
dl.setColor(new ColorRGBA(1f, 1f, 1f, 1.0f));
rootNode.addLight(dl);
BlenderKey blenderKey = new BlenderKey("Blender/2.4x/animtest.blend");
Spatial scene = (Spatial) assetManager.loadModel(blenderKey);
rootNode.attachChild(scene);
Spatial model = this.findNode(rootNode, "TestAnim");
model.center();
control = model.getControl(AnimControl.class);
channel = control.createChannel();
channel.setAnim("TestAnim");
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:25,代码来源:TestBlenderObjectAnim.java
示例2: simpleInitApp
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
@Override
public void simpleInitApp() {
flyCam.setMoveSpeed(10f);
cam.setLocation(new Vector3f(6.4013605f, 7.488437f, 12.843031f));
cam.setRotation(new Quaternion(-0.060740203f, 0.93925786f, -0.2398315f, -0.2378785f));
DirectionalLight dl = new DirectionalLight();
dl.setDirection(new Vector3f(-0.1f, -0.7f, -1).normalizeLocal());
dl.setColor(new ColorRGBA(1f, 1f, 1f, 1.0f));
rootNode.addLight(dl);
BlenderKey blenderKey = new BlenderKey("Blender/2.4x/BaseMesh_249.blend");
Spatial scene = (Spatial) assetManager.loadModel(blenderKey);
rootNode.attachChild(scene);
Spatial model = this.findNode(rootNode, "BaseMesh_01");
model.center();
control = model.getControl(AnimControl.class);
channel = control.createChannel();
channel.setAnim("run_01");
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:25,代码来源:TestBlenderAnim.java
示例3: read
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
public void read(JmeImporter im) throws IOException {
InputCapsule ic = im.getCapsule(this);
blenderKeys = (Map<String, BlenderKey>) ic.readStringSavableMap("keys", null);
lastUsedKey = (BlenderKey) ic.readSavable("last-key", null);
useModelKey = ic.readBoolean("use-model-key", false);
String logLevelName = ic.readString("log-level", Level.INFO.getName());
logLevel = logLevelName == null ? Level.INFO : Level.parse(logLevelName);
}
开发者ID:mleoking,项目名称:PhET,代码行数:11,代码来源:ConfigDialog.java
示例4: load
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
@Override
public Spatial load(AssetInfo assetInfo) throws IOException {
try {
this.setup(assetInfo);
BlenderKey blenderKey = blenderContext.getBlenderKey();
Node modelRoot = new Node(blenderKey.getName());
for (FileBlockHeader block : blocks) {
if (block.getCode() == FileBlockHeader.BLOCK_OB00) {
Object object = this.toObject(block.getStructure(blenderContext));
if (object instanceof LightNode && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.LIGHTS) != 0) {
modelRoot.addLight(((LightNode) object).getLight());
modelRoot.attachChild((LightNode) object);
} else if (object instanceof Node && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.OBJECTS) != 0) {
LOGGER.log(Level.FINE, "{0}: {1}--> {2}", new Object[] { ((Node) object).getName(), ((Node) object).getLocalTranslation().toString(), ((Node) object).getParent() == null ? "null" : ((Node) object).getParent().getName() });
if (((Node) object).getParent() == null) {
modelRoot.attachChild((Node) object);
}
}
}
}
// bake constraints after everything is loaded
ConstraintHelper constraintHelper = blenderContext.getHelper(ConstraintHelper.class);
constraintHelper.bakeConstraints(blenderContext);
blenderContext.dispose();
return modelRoot;
} catch (BlenderFileException e) {
LOGGER.log(Level.SEVERE, e.getMessage(), e);
}
return null;
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:36,代码来源:BlenderModelLoader.java
示例5: simpleInitApp
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
@Override
public void simpleInitApp() {
if (debug) {
mouseInput.setCursorVisible(true);
}
assetManager.registerLocator(".", FileLocator.class);
assetManager.registerLoader(BlenderLoader.class, "blend");
assetManager.registerLoader(AWTLoader.class, "png");
viewPort.setBackgroundColor(ColorRGBA.Gray);
flyCam.setMoveSpeed(20);
cam.setFrustumFar(1000.0f);
cam.setFrustumNear(1.0f);
AssetInfo ai = new AssetInfo(assetManager, modelKey) {
@Override
public InputStream openStream() {
try {
return new FileInputStream(this.key.getName());
} catch (FileNotFoundException e) {
LOGGER.log(Level.SEVERE, e.getMessage(), e);
return null;
}
}
};
rootNode.attachChild(new Pivot(assetManager));
if (modelKey instanceof BlenderKey) {
Node blenderModel = this.testBlenderLoader(ai);
Map<String, Map<String, int[]>> animations = ((BlenderKey) modelKey).getAnimations();
//setting the first animation as active
if (((BlenderKey) modelKey).getAnimations() != null) {
for (Entry<String, Map<String, int[]>> animEntry : animations.entrySet()) {
for (Entry<String, int[]> anim : animEntry.getValue().entrySet()) {
Spatial animatedSpatial = this.findNode(blenderModel, animEntry.getKey());
animatedSpatial.getControl(AnimControl.class).createChannel().setAnim(anim.getKey());
break;
}
break;
}
}
} else {
this.testBlenderModelLoader(ai);
}
DirectionalLight sun = new DirectionalLight();
sun.setDirection(new Vector3f(0, -10, 0).normalizeLocal());
sun.setColor(ColorRGBA.White);
rootNode.addLight(sun);
}
开发者ID:mleoking,项目名称:PhET,代码行数:51,代码来源:ManualBlenderTester.java
示例6: load
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
public Spatial load(AssetInfo assetInfo) throws IOException {
try {
this.setup(assetInfo);
List<FileBlockHeader> sceneBlocks = new ArrayList<FileBlockHeader>();
BlenderKey blenderKey = blenderContext.getBlenderKey();
LoadingResults loadingResults = blenderKey.prepareLoadingResults();
WorldData worldData = null;// a set of data used in different scene aspects
for (FileBlockHeader block : blocks) {
switch (block.getCode()) {
case FileBlockHeader.BLOCK_OB00:// Object
Object object = this.toObject(block.getStructure(blenderContext));
if (object instanceof LightNode && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.LIGHTS) != 0) {
loadingResults.addLight((LightNode) object);
} else if (object instanceof CameraNode && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.CAMERAS) != 0) {
loadingResults.addCamera((CameraNode) object);
} else if (object instanceof Node && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.OBJECTS) != 0) {
LOGGER.log(Level.FINE, "{0}: {1}--> {2}", new Object[] { ((Node) object).getName(), ((Node) object).getLocalTranslation().toString(), ((Node) object).getParent() == null ? "null" : ((Node) object).getParent().getName() });
if (this.isRootObject(loadingResults, (Node) object)) {
loadingResults.addObject((Node) object);
}
}
break;
// case FileBlockHeader.BLOCK_MA00:// Material
// if (blenderKey.isLoadUnlinkedAssets() && (blenderKey.getFeaturesToLoad() & FeaturesToLoad.MATERIALS) != 0) {
// loadingResults.addMaterial(this.toMaterial(block.getStructure(blenderContext)));
// }
// break;
case FileBlockHeader.BLOCK_SC00:// Scene
if ((blenderKey.getFeaturesToLoad() & FeaturesToLoad.SCENES) != 0) {
sceneBlocks.add(block);
}
break;
case FileBlockHeader.BLOCK_WO00:// World
if (blenderKey.isLoadUnlinkedAssets() && worldData == null) {// onlu one world data is used
Structure worldStructure = block.getStructure(blenderContext);
String worldName = worldStructure.getName();
if (blenderKey.getUsedWorld() == null || blenderKey.getUsedWorld().equals(worldName)) {
worldData = this.toWorldData(worldStructure);
if ((blenderKey.getFeaturesToLoad() & FeaturesToLoad.LIGHTS) != 0) {
loadingResults.addLight(worldData.getAmbientLight());
}
}
}
break;
}
}
// bake constraints after everything is loaded
ConstraintHelper constraintHelper = blenderContext.getHelper(ConstraintHelper.class);
constraintHelper.bakeConstraints(blenderContext);
// load the scene at the very end so that the root nodes have no parent during loading or constraints applying
for (FileBlockHeader sceneBlock : sceneBlocks) {
loadingResults.addScene(this.toScene(sceneBlock.getStructure(blenderContext)));
}
blenderContext.dispose();
return loadingResults;
} catch (BlenderFileException e) {
LOGGER.log(Level.SEVERE, e.getMessage(), e);
}
return null;
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:65,代码来源:BlenderLoader.java
示例7: getSelectedBlenderKey
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
/**
* This method returns the selected blender key.
* @return the selected blender key
*/
public BlenderKey getSelectedBlenderKey() {
return blenderKeyConfiguration.lastUsedKey;
}
开发者ID:mleoking,项目名称:PhET,代码行数:8,代码来源:ConfigDialog.java
示例8: BlenderKeyConfiguration
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
/**
* Constructor that creates new empty configuration for every blender file.
* @param blenderFilesAmount the amount of blender files
*/
public BlenderKeyConfiguration(int blenderFilesAmount) {
blenderKeys = new HashMap<String, BlenderKey>(blenderFilesAmount);
}
开发者ID:mleoking,项目名称:PhET,代码行数:8,代码来源:ConfigDialog.java
示例9: setBlenderKey
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
/**
* This method sets the blender key.
*
* @param blenderKey
* the blender key
*/
public void setBlenderKey(BlenderKey blenderKey) {
this.blenderKey = blenderKey;
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:10,代码来源:BlenderContext.java
示例10: getBlenderKey
import com.jme3.asset.BlenderKey; //导入依赖的package包/类
/**
* This method returns the blender key.
*
* @return the blender key
*/
public BlenderKey getBlenderKey() {
return blenderKey;
}
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:9,代码来源:BlenderContext.java
注:本文中的com.jme3.asset.BlenderKey类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论