|
@@ -248,16 +248,45 @@ When arrays can be inserted in J3M files
|
|
|
if (texKey.isFlipY()) {
|
|
|
ret += "Flip ";
|
|
|
}
|
|
|
- if (texVal.getWrap(Texture.WrapAxis.S) == WrapMode.Repeat) {
|
|
|
- ret += "Repeat ";
|
|
|
+
|
|
|
+ //Wrap mode
|
|
|
+ ret += getWrapMode(texVal, Texture.WrapAxis.S);
|
|
|
+ ret += getWrapMode(texVal, Texture.WrapAxis.T);
|
|
|
+ ret += getWrapMode(texVal, Texture.WrapAxis.R);
|
|
|
+
|
|
|
+ //Min and Mag filter
|
|
|
+ Texture.MinFilter def = Texture.MinFilter.BilinearNoMipMaps;
|
|
|
+ if(texVal.getImage().hasMipmaps() || texKey.isGenerateMips()){
|
|
|
+ def = Texture.MinFilter.Trilinear;
|
|
|
+ }
|
|
|
+ if(texVal.getMinFilter() != def){
|
|
|
+ ret += "Min" + texVal.getMinFilter().name()+ " ";
|
|
|
+ }
|
|
|
+
|
|
|
+ if(texVal.getMagFilter() != Texture.MagFilter.Bilinear){
|
|
|
+ ret += "Mag" + texVal.getMagFilter().name()+ " ";
|
|
|
}
|
|
|
|
|
|
- return ret + texKey.getName();
|
|
|
+ return ret + "\"" + texKey.getName() + "\"";
|
|
|
default:
|
|
|
return null; // parameter type not supported in J3M
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private String getWrapMode(Texture texVal, Texture.WrapAxis axis) {
|
|
|
+ WrapMode mode = WrapMode.EdgeClamp;
|
|
|
+ try{
|
|
|
+ mode = texVal.getWrap(axis);
|
|
|
+ }catch (IllegalArgumentException e){
|
|
|
+ //this axis doesn't exist on the texture
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ if(mode != WrapMode.EdgeClamp){
|
|
|
+ return"Wrap"+ mode.name() + "_" + axis.name() + " ";
|
|
|
+ }
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public MatParam clone() {
|
|
|
try {
|