Specify the default repeat type as a parameter; model animations should
not loop by default. git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@138 ed5b42cb-e716-0410-a449-f6a68f950b19
This commit is contained in:
@@ -55,7 +55,8 @@ public class TextureAnimator extends TextureController
|
|||||||
_frameHeight = Float.valueOf(props.getProperty("frame_height", "0.5"));
|
_frameHeight = Float.valueOf(props.getProperty("frame_height", "0.5"));
|
||||||
_frameCount = Integer.valueOf(props.getProperty("frame_count", "4"));
|
_frameCount = Integer.valueOf(props.getProperty("frame_count", "4"));
|
||||||
_frameRate = Float.valueOf(props.getProperty("frame_rate", "1"));
|
_frameRate = Float.valueOf(props.getProperty("frame_rate", "1"));
|
||||||
_repeatType = JmeUtil.parseRepeatType(props.getProperty("repeat_type"));
|
_repeatType = JmeUtil.parseRepeatType(props.getProperty("repeat_type"),
|
||||||
|
Controller.RT_WRAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
|
|||||||
@@ -145,7 +145,8 @@ public class AnimationDef
|
|||||||
// create and configure the animation
|
// create and configure the animation
|
||||||
Model.Animation anim = new Model.Animation();
|
Model.Animation anim = new Model.Animation();
|
||||||
anim.frameRate = frameRate;
|
anim.frameRate = frameRate;
|
||||||
anim.repeatType = JmeUtil.parseRepeatType(props.getProperty("repeat_type"));
|
anim.repeatType = JmeUtil.parseRepeatType(props.getProperty("repeat_type"),
|
||||||
|
Controller.RT_CLAMP);
|
||||||
|
|
||||||
// collect all transforms
|
// collect all transforms
|
||||||
anim.transformTargets = targets.toArray(new Spatial[targets.size()]);
|
anim.transformTargets = targets.toArray(new Spatial[targets.size()]);
|
||||||
|
|||||||
@@ -109,19 +109,20 @@ public class JmeUtil
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Attempts to parse a string describing one of the repeat types defined in {@link Controller}:
|
* Attempts to parse a string describing one of the repeat types defined in {@link Controller}:
|
||||||
* "clamp", "cycle", or "wrap". Will return {@link Controller#RT_WRAP} if the type is
|
* "clamp", "cycle", or "wrap". Will return the specified default if the type is
|
||||||
* <code>null</code> or invalid.
|
* <code>null</code> or invalid.
|
||||||
*/
|
*/
|
||||||
public static int parseRepeatType (String type)
|
public static int parseRepeatType (String type, int defaultType)
|
||||||
{
|
{
|
||||||
if ("clamp".equals(type)) {
|
if ("clamp".equals(type)) {
|
||||||
return Controller.RT_CLAMP;
|
return Controller.RT_CLAMP;
|
||||||
} else if ("cycle".equals(type)) {
|
} else if ("cycle".equals(type)) {
|
||||||
return Controller.RT_CYCLE;
|
return Controller.RT_CYCLE;
|
||||||
}
|
} else if ("wrap".equals(type)) {
|
||||||
if (type != null && !"wrap".equals(type)) {
|
return Controller.RT_WRAP;
|
||||||
|
} else if (type != null) {
|
||||||
Log.warning("Invalid repeat type [type=" + type + "].");
|
Log.warning("Invalid repeat type [type=" + type + "].");
|
||||||
}
|
}
|
||||||
return Controller.RT_WRAP;
|
return defaultType;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user