Hi,
ich versuche meine Java3D-Objekte mit Texturen zu belegen.
Dafür habe ich mir eine Methode geschrieben, die eine Appereance zurückgeben soll. Zurzeit produziert sie aber nur eine Exception 'Texture:illegal image size' in Zeile 13
ich versuche meine Java3D-Objekte mit Texturen zu belegen.
Dafür habe ich mir eine Methode geschrieben, die eine Appereance zurückgeben soll. Zurzeit produziert sie aber nur eine Exception 'Texture:illegal image size' in Zeile 13
Java:
public Appearance texture(String s) {
BufferedImage hintergrund=null;
try{
hintergrund = ImageIO.read(getClass().getClassLoader().getResource("MainPackage/Hintergrund.jpg"));
}
catch (IOException e){}
TextureLoader loader = new TextureLoader(hintergrund);
ImageComponent2D image = loader.getImage();
Texture2D texture = new Texture2D();
int form = texture.getFormat();
int base = texture.getMipMapMode();
texture = new Texture2D(base,form,512,512);
texture.setImage(0, image);
Appearance appear = new Appearance();
appear.setTexture(texture);
TextureAttributes texat = new TextureAttributes(TextureAttributes.MODULATE,new Transform3D(),new Color4f(),TextureAttributes.NICEST);
appear.setTextureAttributes(texat);
appear.setMaterial(new Material());
return(appear);
}