From 988fdd2f9e72f6ee0e2b72e33edd276c9cf4e8bc Mon Sep 17 00:00:00 2001 From: phr00t Date: Tue, 4 Feb 2014 16:05:42 +0000 Subject: [PATCH] added getParamsMap() for jME3 performance improvements in Technique/DefineList git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@11009 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- engine/src/core/com/jme3/material/Material.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/engine/src/core/com/jme3/material/Material.java b/engine/src/core/com/jme3/material/Material.java index 73c928e96..d256c6c68 100644 --- a/engine/src/core/com/jme3/material/Material.java +++ b/engine/src/core/com/jme3/material/Material.java @@ -434,6 +434,17 @@ public class Material implements CloneableSmartAsset, Cloneable, Savable { public Collection getParams() { return paramValues.values(); } + + /** + * Returns the ListMap of all parameters set on this material. + * + * @return a ListMap of all parameters set on this material. + * + * @see #setParam(java.lang.String, com.jme3.shader.VarType, java.lang.Object) + */ + public ListMap getParamsMap() { + return paramValues; + } /** * Check if setting the parameter given the type and name is allowed. @@ -882,6 +893,12 @@ public class Material implements CloneableSmartAsset, Cloneable, Savable { // When choosing technique, we choose one that // supports all the caps. EnumSet rendererCaps = renderManager.getRenderer().getCaps(); + + //workaround, always assume we support GLSL100 + //some cards just don't report this correctly + if( rendererCaps.contains(Caps.GLSL100) == false ) + rendererCaps.add(Caps.GLSL100); + if (tech == null) { if (name.equals("Default")) {