From f232b113184a96225879558f39fa5c7374a7c611 Mon Sep 17 00:00:00 2001 From: "Kae..pl" Date: Mon, 19 Dec 2011 20:10:52 +0000 Subject: [PATCH] Material name added. Reading material's name from blender added. git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@8945 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- .../blender/materials/MaterialHelper.java | 1 + .../src/core/com/jme3/material/Material.java | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java b/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java index d054a3520..787c9a0ae 100644 --- a/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java +++ b/engine/src/blender/com/jme3/scene/plugins/blender/materials/MaterialHelper.java @@ -276,6 +276,7 @@ public class MaterialHelper extends AbstractBlenderHelper { result.getAdditionalRenderState().setBlendMode(BlendMode.Alpha); } + result.setName(materialContext.getName()); blenderContext.setMaterialContext(result, materialContext); blenderContext.addLoadedFeatures(structure.getOldMemoryAddress(), structure.getName(), structure, result); return result; diff --git a/engine/src/core/com/jme3/material/Material.java b/engine/src/core/com/jme3/material/Material.java index ee8feb1f7..8d43853b6 100644 --- a/engine/src/core/com/jme3/material/Material.java +++ b/engine/src/core/com/jme3/material/Material.java @@ -85,6 +85,7 @@ public class Material implements Asset, Cloneable, Savable, Comparable additiveLight.setDepthWrite(false); } private AssetKey key; + private String name; private MaterialDef def; private ListMap paramValues = new ListMap(); private Technique technique; @@ -132,6 +133,23 @@ public class Material implements Asset, Cloneable, Savable, Comparable public String getAssetName() { return key != null ? key.getName() : null; } + + /** + * @return the name of the material (not the same as the asset name), the returned value can be null + */ + public String getName() { + return name; + } + + /** + * This method sets the name of the material. + * The name is not the same as the asset name. + * It can be null and there is no guarantee of its uniqness. + * @param name the name of the material + */ + public void setName(String name) { + this.name = name; + } public void setKey(AssetKey key) { this.key = key;