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

Java Renderer类代码示例

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

本文整理汇总了Java中com.jme3.renderer.Renderer的典型用法代码示例。如果您正苦于以下问题:Java Renderer类的具体用法?Java Renderer怎么用?Java Renderer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Renderer类属于com.jme3.renderer包,在下文中一共展示了Renderer类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: startJMEApplication

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * Start the new jME application.
 *
 * @param application the new jME application.
 */
@JMEThread
private static void startJMEApplication(@NotNull final JmeToJFXApplication application) {

    final InitializationManager initializationManager = InitializationManager.getInstance();
    initializationManager.onBeforeCreateJMEContext();

    application.start();

    final JmeContext context = application.getContext();
    final Renderer renderer = context.getRenderer();

    if (renderer == null) {
        final EditorConfig editorConfig = EditorConfig.getInstance();
        editorConfig.setOpenGLVersion(OpenGLVersion.GL_20);
        editorConfig.save();
    }
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:23,代码来源:JFXApplication.java


示例2: simpleRender

import com.jme3.renderer.Renderer; //导入依赖的package包/类
@Override
public void simpleRender(RenderManager rm){
    Renderer r = rm.getRenderer();

    //do FBO rendering
    r.setFrameBuffer(fb);

    rm.setCamera(cam, false); // FBO uses current camera
    r.clearBuffers(true, true, true);
    rm.renderScene(fbNode, viewPort);
    rm.flushQueue(viewPort);

    //go back to default rendering and let
    //SimpleApplication render the default scene
    r.setFrameBuffer(null);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:17,代码来源:TestFBOPassthrough.java


示例3: renderProcessing

import com.jme3.renderer.Renderer; //导入依赖的package包/类
private void renderProcessing(Renderer r, FrameBuffer dst, Material mat){
    if (dst == null){
        fsQuad.setWidth(mainSceneFB.getWidth());
        fsQuad.setHeight(mainSceneFB.getHeight());
        fbCam.resize(mainSceneFB.getWidth(), mainSceneFB.getHeight(), true);
    }else{
        fsQuad.setWidth(dst.getWidth());
        fsQuad.setHeight(dst.getHeight());
        fbCam.resize(dst.getWidth(), dst.getHeight(), true);
    }
    fsQuad.setMaterial(mat);
    fsQuad.updateGeometricState();
    renderManager.setCamera(fbCam, true);

    r.setFrameBuffer(dst);
    r.clearBuffers(true, true, true);
    renderManager.renderGeometry(fsQuad);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:19,代码来源:HDRRenderer.java


示例4: JME3ContentSystemFactory

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * Instantiates a new JM e3 content system factory.
 *
 * @param renderer
 *            the renderer
 * @param audioRenderer
 *            the audio renderer
 * @param assetManager
 *            the asset manager
 * @param updateList
 *            the update list
 * @throws ClassNotFoundException
 *             the class not found exception
 * @throws IOException
 *             Signals that an I/O exception has occurred.
 * @throws ContentTypeAlreadyBoundException
 *             the content type already bound exception
 * @throws ContentTypeInvalidException
 *             the content type invalid exception
 */
public JME3ContentSystemFactory(Renderer renderer, AudioRenderer audioRenderer, AssetManager assetManager, List<IUpdateable> updateList) throws ClassNotFoundException, IOException, ContentTypeAlreadyBoundException, ContentTypeInvalidException
{
	super("multiplicity3.jme3csys.items", new IResourceFinderFilter()
	{
		@Override
		public boolean accept(String dottedResourcePathname)
		{
			String[] components = dottedResourcePathname.split("\\.");
			if (components.length < 2)
			{
				return false;
			}
			String extension = components[components.length - 1];
			String name = components[components.length - 2];
			return extension.equals("class") && name.startsWith("JME") && !name.endsWith("Delegate") && !name.endsWith("$1");
		}
	});
	this.setRenderer(renderer);
	this.setAudioRenderer(audioRenderer);
	this.assetManager = assetManager;
	this.updateList = updateList;
}
 
开发者ID:synergynet,项目名称:synergynet3.1,代码行数:43,代码来源:JME3ContentSystemFactory.java


示例5: checkCapabilities

import com.jme3.renderer.Renderer; //导入依赖的package包/类
public static void checkCapabilities(Renderer renderer) {
    shader_dof = false;
    texture_anistrophy = false;

    Collection<Caps> caps = renderer.getCaps();
    System.out.println("caps: " + caps.toString());

    for (Caps c : caps) {
        switch (c) {
            case DepthTexture: {
                shader_dof = true;
            }
            case TextureFilterAnisotropic: {
                texture_anistrophy = true;
            }
        }
    }
}
 
开发者ID:matthewseal,项目名称:MoleculeViewer,代码行数:19,代码来源:Constants.java


示例6: postQueue

import com.jme3.renderer.Renderer; //导入依赖的package包/类
@Override
public void postQueue(RenderQueue rq) {
    if (occluders == null) {
        return;
    }
    Renderer renderer = renderManager.getRenderer();

    renderer.setFrameBuffer(fogFb);
    renderer.clearBuffers(true, true, true);

    if (fogPreventers == 0) {

        renderManager.setForcedMaterial(fogShapeMaterial);
        for (Geometry geometry : occluders) {
            renderManager.renderGeometry(geometry);
        }

        renderManager.setForcedMaterial(null);
    }

    renderer.setFrameBuffer(viewPort.getOutputFrameBuffer());
}
 
开发者ID:TripleSnail,项目名称:Arkhados,代码行数:23,代码来源:ClientFog.java


示例7: HDRRenderer

import com.jme3.renderer.Renderer; //导入依赖的package包/类
public HDRRenderer(AssetManager manager, Renderer renderer){
    this.manager = manager;
    this.renderer = renderer;
    
    Collection<Caps> caps = renderer.getCaps();
    if (caps.contains(Caps.PackedFloatColorBuffer))
        bufFormat = Format.RGB111110F;
    else if (caps.contains(Caps.FloatColorBuffer))
        bufFormat = Format.RGB16F;
    else{
        enabled = false;
        return;
    }
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:15,代码来源:HDRRenderer.java


示例8: renderToneMap

import com.jme3.renderer.Renderer; //导入依赖的package包/类
private void renderToneMap(Renderer r, FrameBuffer out){
    tone.setFloat("A", exposure);
    tone.setFloat("White", whiteLevel);
    tone.setTexture("Lum", scene1[oppSrc]);
    tone.setTexture("Lum2", scene1[curSrc]);
    tone.setFloat("BlendFactor", blendFactor);
    renderProcessing(r, out, tone);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:9,代码来源:HDRRenderer.java


示例9: cleanup

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * cleanup this filter
 * @param r 
 */
protected final void cleanup(Renderer r) {
    processor = null;
    if (defaultPass != null) {
        defaultPass.cleanup(r);
    }
    if (postRenderPasses != null) {
        for (Iterator<Pass> it = postRenderPasses.iterator(); it.hasNext();) {
            Pass pass = it.next();
            pass.cleanup(r);
        }
    }
    cleanUpFilter(r);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:18,代码来源:Filter.java


示例10: postQueue

import com.jme3.renderer.Renderer; //导入依赖的package包/类
@Override
protected void postQueue(RenderManager renderManager, ViewPort viewPort) {
    Renderer r = renderManager.getRenderer();
    r.setFrameBuffer(normalPass.getRenderFrameBuffer());
    renderManager.getRenderer().clearBuffers(true, true, true);
    renderManager.setForcedTechnique("PreNormalPass");
    renderManager.renderViewPortQueues(viewPort, false);
    renderManager.setForcedTechnique(null);
    renderManager.getRenderer().setFrameBuffer(viewPort.getOutputFrameBuffer());
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:11,代码来源:SSAOFilter.java


示例11: renderProcessing

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * renders a filter on a fullscreen quad
 * @param r
 * @param buff
 * @param mat 
 */
private void renderProcessing(Renderer r, FrameBuffer buff, Material mat) {
    if (buff == outputBuffer) {
        fsQuad.setWidth(width);
        fsQuad.setHeight(height);
        filterCam.resize(originalWidth, originalHeight, true);
        fsQuad.setPosition(left * originalWidth, bottom * originalHeight);
    } else {
        fsQuad.setWidth(buff.getWidth());
        fsQuad.setHeight(buff.getHeight());
        filterCam.resize(buff.getWidth(), buff.getHeight(), true);
        fsQuad.setPosition(0, 0);
    }

    if (mat.getAdditionalRenderState().isDepthWrite()) {
        mat.getAdditionalRenderState().setDepthTest(false);
        mat.getAdditionalRenderState().setDepthWrite(false);
    }

    fsQuad.setMaterial(mat);
    fsQuad.updateGeometricState();

    renderManager.setCamera(filterCam, true);
    r.setFrameBuffer(buff);
    r.clearBuffers(false, true, true);
    renderManager.renderGeometry(fsQuad);

}
 
开发者ID:mleoking,项目名称:PhET,代码行数:34,代码来源:FilterPostProcessor.java


示例12: displayMap

import com.jme3.renderer.Renderer; //导入依赖的package包/类
protected void displayMap(Renderer r, Picture pic, int left) {
    Camera cam = vp.getCamera();
    rm.setCamera(cam, true);
    int h = cam.getHeight();

    pic.setPosition(left, h / 20f);

    pic.setWidth(128);
    pic.setHeight(128);
    pic.updateGeometricState();
    rm.renderGeometry(pic);
    rm.setCamera(cam, false);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:14,代码来源:SimpleWaterProcessor.java


示例13: preload

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * Preloads this material for the given render manager.
 * <p>
 * Preloading the material can ensure that when the material is first
 * used for rendering, there won't be any delay since the material has
 * been already been setup for rendering.
 * 
 * @param rm The render manager to preload for
 */
public void preload(RenderManager rm) {
    autoSelectTechnique(rm);

    Renderer r = rm.getRenderer();
    TechniqueDef techDef = technique.getDef();

    Collection<MatParam> params = paramValues.values();
    for (MatParam param : params) {
        if (param instanceof MatParamTexture) {
            MatParamTexture texParam = (MatParamTexture) param;
            r.setTexture(0, texParam.getTextureValue());
        } else {
            if (!techDef.isUsingShaders()) {
                continue;
            }

            technique.updateUniformParam(param.getName(),
                    param.getVarType(),
                    param.getValue(), true);
        }
    }

    Shader shader = technique.getShader();
    if (techDef.isUsingShaders()) {
        r.setShader(shader);
    }
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:37,代码来源:Material.java


示例14: apply

import com.jme3.renderer.Renderer; //导入依赖的package包/类
@Override
public void apply(Renderer r, Technique technique) {
    TechniqueDef techDef = technique.getDef();
    r.setTexture(getUnit(), getTextureValue());
    if (techDef.isUsingShaders()) {
        technique.updateUniformParam(getPrefixedName(), getVarType(), getUnit(), true);
    }
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:9,代码来源:MatParamTexture.java


示例15: apply

import com.jme3.renderer.Renderer; //导入依赖的package包/类
void apply(Renderer r, Technique technique) {
    TechniqueDef techDef = technique.getDef();
    if (techDef.isUsingShaders()) {
        technique.updateUniformParam(getPrefixedName(), getVarType(), getValue(), true);
    }
    if (ffBinding != null && r instanceof GL1Renderer) {
        ((GL1Renderer) r).setFixedFuncBinding(ffBinding, getValue());
    }
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:10,代码来源:MatParam.java


示例16: displayShadowMap

import com.jme3.renderer.Renderer; //导入依赖的package包/类
private void displayShadowMap(Renderer r) {
    Camera cam = viewPort.getCamera();
    renderManager.setCamera(cam, true);
    int h = cam.getHeight();
    for (int i = 0; i < dispPic.length; i++) {
        dispPic[i].setPosition(64 * (i + 1) + 128 * i, h / 20f);
        dispPic[i].setWidth(128);
        dispPic[i].setHeight(128);
        dispPic[i].updateGeometricState();
        renderManager.renderGeometry(dispPic[i]);
    }
    renderManager.setCamera(cam, false);
}
 
开发者ID:mleoking,项目名称:PhET,代码行数:14,代码来源:PssmShadowRenderer.java


示例17: preFrame

import com.jme3.renderer.Renderer; //导入依赖的package包/类
public void preFrame(float tpf) {
    Camera cam = viewPort.getCamera();
    Renderer r = renderManager.getRenderer();
    //renderManager.setForcedMaterial(preshadowMat);
    renderManager.setForcedTechnique("PreShadow");
    float zFar = zFarOverride;
    if (zFar == 0) {
      zFar = cam.getFrustumFar();
    }

    //We prevent computing the frustum points and splits with zeroed or negative near clip value
    float frustumNear = Math.max(cam.getFrustumNear(), 0.001f);
    ShadowUtil.updateFrustumPoints(cam, frustumNear, zFar, 1.0f, points);

    for (int i = 0; i < directionalLights.size(); i++) {
      updateDirectionalShadowCams(cam, i, frustumNear, zFar);
      for (int shadowMapIndex = i * 4; shadowMapIndex < i * 4 + 4; shadowMapIndex++) {
//                if (shadowMapIndex % 4 == 0 || (shadowMapIndex % 4 == 1 && frameCounter % 2 == 0) || (shadowMapIndex % 4 == 2 && frameCounter == 1) || (shadowMapIndex % 4 == 3 && frameCounter == 3)) {
        renderDirectionalShadowMap(shadowMapIndex, i);
//                }
      }
    }
    for (int i = 0; i < pointLights.size(); i++) {
      pointLightPosition[i].set(pointLights.get(i).getPosition());
      updatePointShadowCams(cam, i);
      renderPointShadowMap(i);
    }
    for (int i = 0; i < spotLights.size(); i++) {
      updateSpotShadowCams(cam, i);
      renderSpotShadowMap(i);
    }
    getReceivers(lightReceivers);
    setMatParams(lightReceivers);
    r.setFrameBuffer(viewPort.getOutputFrameBuffer());
    frameCounter = (frameCounter + 1) % 4;
    //resetting renderManager settings
    renderManager.setForcedTechnique(null);
//        renderManager.setForcedMaterial(null);
    renderManager.setCamera(cam, false);
  }
 
开发者ID:Perjin,项目名称:PreFrameShadowRenderer,代码行数:41,代码来源:ShadowRenderer.java


示例18: cleanup

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * cleanup this filter
 * @param r
 */
protected final void cleanup(Renderer r) {
    processor = null;
    if (defaultPass != null) {
        defaultPass.cleanup(r);
    }
    if (postRenderPasses != null) {
        for (Iterator<Pass> it = postRenderPasses.iterator(); it.hasNext();) {
            Pass pass = it.next();
            pass.cleanup(r);
        }
    }
    cleanUpFilter(r);
}
 
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:18,代码来源:Filter.java


示例19: preload

import com.jme3.renderer.Renderer; //导入依赖的package包/类
/**
 * Preloads this material for the given render manager.
 * <p>
 * Preloading the material can ensure that when the material is first
 * used for rendering, there won't be any delay since the material has
 * been already been setup for rendering.
 *
 * @param rm The render manager to preload for
 */
public void preload(RenderManager rm) {
    autoSelectTechnique(rm);

    Renderer r = rm.getRenderer();
    TechniqueDef techDef = technique.getDef();

    Collection<MatParam> params = paramValues.values();
    for (MatParam param : params) {
        if (param instanceof MatParamTexture) {
            MatParamTexture texParam = (MatParamTexture) param;
            r.setTexture(0, texParam.getTextureValue());
        } else {
            if (!techDef.isUsingShaders()) {
                continue;
            }

            technique.updateUniformParam(param.getName(),
                    param.getVarType(),
                    param.getValue(), true);
        }
    }

    Shader shader = technique.getShader();
    if (techDef.isUsingShaders()) {
        r.setShader(shader);
    }
}
 
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:37,代码来源:Material.java


示例20: apply

import com.jme3.renderer.Renderer; //导入依赖的package包/类
void apply(Renderer r, Technique technique) {
    TechniqueDef techDef = technique.getDef();
    if (techDef.isUsingShaders()) {
        Object value;
        if (multiData != null) {
            value = multiData;
            multiData.clear();
        } else {
            value = getValue();
        }
        technique.updateUniformParam(getPrefixedName(), getVarType(), value, true);
    }
}
 
开发者ID:chototsu,项目名称:MikuMikuStudio,代码行数:14,代码来源:MatParam.java



注:本文中的com.jme3.renderer.Renderer类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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