|
|
|
<#assign licenseFirst = "/*">
|
|
|
|
<#assign licensePrefix = " * ">
|
|
|
|
<#assign licenseLast = " */">
|
|
|
|
<#include "../Licenses/license-${project.license}.txt">
|
|
|
|
|
|
|
|
<#if package?? && package != "">
|
|
|
|
package ${package};
|
|
|
|
|
|
|
|
</#if>
|
|
|
|
import com.jme3.export.InputCapsule;
|
|
|
|
import com.jme3.export.JmeExporter;
|
|
|
|
import com.jme3.export.JmeImporter;
|
|
|
|
import com.jme3.export.OutputCapsule;
|
|
|
|
import com.jme3.renderer.RenderManager;
|
|
|
|
import com.jme3.renderer.ViewPort;
|
|
|
|
import com.jme3.scene.Spatial;
|
|
|
|
import com.jme3.scene.control.AbstractControl;
|
|
|
|
import com.jme3.scene.control.Control;
|
|
|
|
import java.io.IOException;
|
|
|
|
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
* @author ${user}
|
|
|
|
*/
|
|
|
|
public class ${name} extends AbstractControl{
|
|
|
|
//Any local variables should be encapsulated by getters/setters so they
|
|
|
|
//appear in the SDK properties window and can be edited.
|
|
|
|
//Right-click a local variable to encapsulate it with getters and setters.
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected void controlUpdate(float tpf) {
|
|
|
|
//TODO: add code that controls Spatial,
|
|
|
|
//e.g. spatial.rotate(tpf,tpf,tpf);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected void controlRender(RenderManager rm, ViewPort vp) {
|
|
|
|
//Only needed for rendering-related operations,
|
|
|
|
//not called when spatial is culled.
|
|
|
|
}
|
|
|
|
|
|
|
|
public Control cloneForSpatial(Spatial spatial) {
|
|
|
|
${name} control = new ${name}();
|
|
|
|
//TODO: copy parameters to new Control
|
|
|
|
control.setSpatial(spatial);
|
|
|
|
return control;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void read(JmeImporter im) throws IOException {
|
|
|
|
super.read(im);
|
|
|
|
InputCapsule in = im.getCapsule(this);
|
|
|
|
//TODO: load properties of this Control, e.g.
|
|
|
|
//this.value = in.readFloat("name", defaultValue);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void write(JmeExporter ex) throws IOException {
|
|
|
|
super.write(ex);
|
|
|
|
OutputCapsule out = ex.getCapsule(this);
|
|
|
|
//TODO: save properties of this Control, e.g.
|
|
|
|
//out.write(this.value, "name", defaultValue);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|