本文整理汇总了Java中com.jme3.renderer.Renderer.clearBuffers方法的典型用法代码示例。如果您正苦于以下问题:Java Renderer.clearBuffers方法的具体用法?Java Renderer.clearBuffers怎么用?Java Renderer.clearBuffers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.jme3.renderer.Renderer
的用法示例。
在下文中一共展示了Renderer.clearBuffers方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: 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);
}
示例2: 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);
}
示例3: 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());
}
示例4: 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);
}
示例5: postQueue
import com.jme3.renderer.Renderer; //导入方法依赖的package包/类
public void postQueue(RenderQueue rq) {
GeometryList occluders = rq.getShadowQueueContent(ShadowMode.Cast);
if (occluders.size() == 0) {
noOccluders = true;
return;
} else {
noOccluders = false;
}
GeometryList receivers = rq.getShadowQueueContent(ShadowMode.Receive);
// update frustum points based on current camera
Camera viewCam = viewPort.getCamera();
ShadowUtil.updateFrustumPoints(viewCam,
viewCam.getFrustumNear(),
viewCam.getFrustumFar(),
1.0f,
points);
Vector3f frustaCenter = new Vector3f();
for (Vector3f point : points) {
frustaCenter.addLocal(point);
}
frustaCenter.multLocal(1f / 8f);
// update light direction
shadowCam.setProjectionMatrix(null);
shadowCam.setParallelProjection(true);
// shadowCam.setFrustumPerspective(45, 1, 1, 20);
shadowCam.lookAtDirection(direction, Vector3f.UNIT_Y);
shadowCam.update();
shadowCam.setLocation(frustaCenter);
shadowCam.update();
shadowCam.updateViewProjection();
// render shadow casters to shadow map
ShadowUtil.updateShadowCamera(occluders, receivers, shadowCam, points);
Renderer r = renderManager.getRenderer();
renderManager.setCamera(shadowCam, false);
renderManager.setForcedMaterial(preshadowMat);
r.setFrameBuffer(shadowFB);
r.clearBuffers(false, true, false);
viewPort.getQueue().renderShadowQueue(ShadowMode.Cast, renderManager, shadowCam, true);
r.setFrameBuffer(viewPort.getOutputFrameBuffer());
renderManager.setForcedMaterial(null);
renderManager.setCamera(viewCam, false);
}