Spritesheet generator for the tortuga game
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tortuga-spritegen/src/net/spritegen/SetupLoader.java

90 lines
3.1 KiB

package net.spritegen;
import java.io.File;
import net.spritegen.util.Utils;
import com.porcupine.coord.Coord;
import com.porcupine.util.PropertyManager;
public class SetupLoader {
public PropertyManager cfg;
public int img_size;
public int samples;
public double render_wobble_y;
public double render_wobble_z;
public double render_rotate_x;
public double renmder_move_y;
public double render_move_x;
public double render_scale;
public Coord light_pos;
public double light_attr;
public double light_diffuse;
public double light_specular;
public double light_ambient;
public double mat_diffuse;
public double mat_specular;
public double mat_ambient;
public SetupLoader(File dir) {
dir.mkdirs();
File file = new File(dir,"config.ini");
cfg = new PropertyManager(file.getAbsolutePath(), "Spritesheet setup file");
cfg.putInteger("output.size", 512, "Output image size");
cfg.putDouble("render.walk.wobble_x_angle_max", 6, "Maximal wobble angle for walking (rotate around Y)");
cfg.putDouble("render.walk.wobble_z_angle_max", 0, "Maximal wobble angle for walking (rotate around Z)");
cfg.putDouble("render.rotate_x", 60, "Rotate around X axis to get 2D or 2.5D perspective");
cfg.putDouble("render.move_y", 0, "Y offset (for centering)");
cfg.putDouble("render.move_x", 0, "X move (for centering)");
cfg.putDouble("render.scale", 1, "Render scale");
cfg.putInteger("render.multisampling", 4, "Multisampling (smoothing) level, values: 0,1,2,4,8");
cfg.putDouble("render.material.ambient", 1, "Material property: ambient");
cfg.putDouble("render.material.specular", 1, "Material property: specular");
cfg.putDouble("render.material.diffuse", 1, "Material property: diffuse");
cfg.putDouble("render.light.ambient", 1, "Light property: ambient");
cfg.putDouble("render.light.specular", 1, "Light property: specular");
cfg.putDouble("render.light.diffuse", 1, "Light property: diffuse");
cfg.putDouble("render.light.attribute", 1, "Light property: attribute");
cfg.putDouble("render.light.x", 0, "Light pos: X");
cfg.putDouble("render.light.y", 3, "Light pos: Y");
cfg.putDouble("render.light.z", 3, "Light pos: Z");
cfg.apply();
img_size = cfg.getInt("output.size");
render_wobble_y = cfg.getDouble("render.walk.wobble_x_angle_max");
render_wobble_z = cfg.getDouble("render.walk.wobble_z_angle_max");
render_rotate_x = cfg.getDouble("render.rotate_x");
renmder_move_y = cfg.getDouble("render.move_y");
render_move_x = cfg.getDouble("render.move_x");
render_scale = cfg.getDouble("render.scale");
samples = cfg.getInt("render.multisampling");
mat_ambient = cfg.getDouble("render.material.ambient");
mat_specular = cfg.getDouble("render.material.specular");
mat_diffuse = cfg.getDouble("render.material.diffuse");
light_ambient = cfg.getDouble("render.light.ambient");
light_specular = cfg.getDouble("render.light.specular");
light_diffuse = cfg.getDouble("render.light.diffuse");
light_attr = cfg.getDouble("render.light.attribute");
light_pos = new Coord(cfg.getDouble("render.light.x"),
cfg.getDouble("render.light.y"),
cfg.getDouble("render.light.z"));
}
}