From 9b84a79811fa6da7e25c3fbdb5b0e1b022bc863e Mon Sep 17 00:00:00 2001 From: "sha..rd" Date: Thu, 24 Mar 2011 04:17:16 +0000 Subject: [PATCH] jME3 * RenderManager will reload "shader" boolean on each invocation of render(), since Renderer might not have proper capabilities set before canvas has been attached jMP * Fixed some illegal calls in SceneApplication git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@7095 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- build.xml | 4 +++- engine/src/core/com/jme3/renderer/RenderManager.java | 4 +++- .../src/com/jme3/gde/core/scene/SceneApplication.java | 9 +++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/build.xml b/build.xml index 84a5ff520..1ac78ee0c 100644 --- a/build.xml +++ b/build.xml @@ -10,7 +10,7 @@ - + @@ -73,5 +73,7 @@ message="nbplatform.default.harness.dir=${nbplatform.dir}${file.separator}harness " append="true"/> + + \ No newline at end of file diff --git a/engine/src/core/com/jme3/renderer/RenderManager.java b/engine/src/core/com/jme3/renderer/RenderManager.java index d7f1fbf52..afc6cd636 100644 --- a/engine/src/core/com/jme3/renderer/RenderManager.java +++ b/engine/src/core/com/jme3/renderer/RenderManager.java @@ -85,7 +85,7 @@ public class RenderManager { private Material forcedMaterial = null; private String forcedTechnique = null; private RenderState forcedRenderState = null; - private final boolean shader; + private boolean shader; private int viewX, viewY, viewWidth, viewHeight; private float near, far; private Matrix4f orthoMatrix = new Matrix4f(); @@ -734,6 +734,8 @@ public class RenderManager { return; } + this.shader = renderer.getCaps().contains(Caps.GLSL100); + for (int i = 0; i < preViewPorts.size(); i++) { renderViewPort(preViewPorts.get(i), tpf); } diff --git a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java index 6bdfcadcd..42cc586ad 100644 --- a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java +++ b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java @@ -127,8 +127,6 @@ public class SceneApplication extends Application implements LookupProvider, Loo createCanvas(); startCanvas(true); - getContext().setAutoFlushFrames(true); - getContext().setSystemListener(this); progressHandle.progress("initialize Base Application", 1); // if (!java.awt.EventQueue.isDispatchThread()) { // java.awt.EventQueue.invokeAndWait(new Runnable() { @@ -180,9 +178,6 @@ public class SceneApplication extends Application implements LookupProvider, Loo previewProcessor = new ScenePreviewProcessor(); previewProcessor.setupPreviewView(); - // enable depth test and back-face culling for performance - renderer.applyRenderState(RenderState.DEFAULT); - getProgressHandle().progress("Prepare Camera", 4); camLight = new PointLight(); camLight.setColor(ColorRGBA.White); @@ -244,7 +239,9 @@ public class SceneApplication extends Application implements LookupProvider, Loo guiNode.updateGeometricState(); toolsNode.updateGeometricState(); getStateManager().render(renderManager); - renderManager.render(tpf); + if (context.isRenderable()){ + renderManager.render(tpf); + } getStateManager().postRender(); } catch (Exception e) { handleError(e.getMessage(), e);