• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java BlenderKey类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java Config类代码示例发布时间:2022-05-16
下一篇:
Java XPathVariable类代码示例发布时间:2022-05-16
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap