Java3D's next TopModel

Status
Nicht offen für weitere Antworten.

Developer_X

Top Contributor
Hi, ich hab da ein problem. Ich hab eine klasse, mit der man "obj" dateien laden kann, und der die punkte in der datei dann in die figur umwandelt, aber da habe ich ein problem. Wie kann ich über die figur dann eine Textur legen danke im Voraus für eure Hilfe, deVeloper_X
Code:
import java.io.*;
import java.net.*;

import javax.media.j3d.*;
import javax.vecmath.*;
import com.sun.j3d.loaders.*;
import com.sun.j3d.loaders.objectfile.*;



public class Model
{
  private static final String MODELS_DIR="F:/Models/";

  private static final double MAX_SIZE = 5.0;   
              // max size of model along any dimension

  private ObjectFile objFileloader;


  public Model()
  {  objFileloader = new ObjectFile(); } 


  public TransformGroup getModel(String fnm)
  {  return getModel(fnm, 0);  }


  public TransformGroup getModel(String fnm, double yMove)
  {
    BranchGroup modelBG = loadModel(fnm);
    if (modelBG == null)
      return null;

    double scaleFactor = getScaling(modelBG);

    Transform3D t3d = new Transform3D();
    t3d.setScale(scaleFactor);
    t3d.setTranslation( new Vector3d(0,yMove,0));

    TransformGroup tg = new TransformGroup(t3d);
    tg.addChild(modelBG); 
    return tg;
  }  


  private BranchGroup loadModel(String modelFnm)
  {
    String fnm = MODELS_DIR + modelFnm;
    System.out.println("Loading OBJ model from " + fnm);

    File file = new java.io.File(fnm);
    if (!file.exists()) {
      System.out.println("Could not find " + fnm);
      return null;
    }

    URL url = null;
    try {
      url = file.toURI().toURL();
    }
    catch(Exception e) {
      System.out.println(e);
      return null;
    }

    Scene scene = null;
    try {
      scene = objFileloader.load(url);
    }
	catch (FileNotFoundException e) {
	  System.out.println("Could not find " + fnm);
	  return null;
	}
	catch (ParsingErrorException e) {
	  System.out.println("Could not parse the contents of " + fnm);
	  System.out.println(e);
	  return null;
	}
	catch (IncorrectFormatException e) {
	  System.out.println("Incorrect format in " + fnm);
	  System.out.println(e);
	  return null;
	}

    if(scene != null)
      return scene.getSceneGroup();
    else
      return null;
  } 


  private double getScaling(BranchGroup modelBG)
  {
    double scaleFactor = 1.0;
    BoundingBox boundBox = new BoundingBox( modelBG.getBounds());

    Point3d lower = new Point3d();
    boundBox.getLower(lower);
    
    Point3d upper = new Point3d();
    boundBox.getUpper(upper);
  
    double maxDim = getMaxDimension(lower, upper);
    if (maxDim > MAX_SIZE) {
      scaleFactor = MAX_SIZE/maxDim;
      System.out.println("Applying scaling factor: " + scaleFactor);
    }

    return scaleFactor;
  } 


  private double getMaxDimension(Point3d lower, Point3d upper)
  {
    double max = 0;
    if ((upper.x - lower.x) > max) 
      max = upper.x - lower.x;
    if ((upper.y - lower.y) > max) 
      max = upper.y - lower.y;
    if ((upper.z - lower.z) > max) 
      max = upper.z - lower.z;
    return max;
  } 


public Scene load(String string) {
	// TODO Auto-generated method stub
	return null;
}

}
 
T

tuxedo

Gast
Google kaputt?

Unter anderem geht's so:
Java 3D Tutorial für Anfänger

Ist jetzt aber kein copy&paste-->working Beispiel. Da muss man noch selbst hand anlegen. Sollte dich auf jeden Fall ermunten google mit weiteren Begriffen aus diesem Tutorial zu füttern.

- Alex
 

Developer_X

Top Contributor
oh man!
Natürlich habe ich eine Ahnung von Appearances!!!
Aber wie kann ich eine funktion in meinen Code einbauen, damit diese Punkte, die von einer ".obj" datei stammen, so gecolort werden, damit sie irgendeine Apperance besitzten.
 
S

Spacerat

Gast
Unterstützt der WaveFront-Loader in Java3D etwa immer noch keine Meterialien? Das hätten die doch wenigstens schon mal ändern können...
Naja... Ich hab' mir damals zumindest einen eigenen schreiben müssen (eigentlich nur den vorhandenen "stibizt" und die fehlende Funktionalität hinzugefügt). Der Code existiert aber leider nicht mehr. Ich bin durch mit Java3D.
Alternativ kann man auch versuchen, das Modell in ein LightWave-Object umzuwandeln und dan eben den LW-Loader verwenden (soferns den noch gibt).
 

Developer_X

Top Contributor
sagt mir jetzt wenig, ich will nähmlich auf das objekt eine Apperance erzeugen, und habe keine Ahnung, wie ich das objekt das geladen wird, so machen kann, dass es eine Textur auf sich hat
 

Marco13

Top Contributor
Erstmal müßte man wissen, ob das Ding (in der OBJ-Datei) überhaupt Texturkoordinaten HAT. Und wenn ja ... müßte man mal weitersehen (auswendig weiß ich das auch nicht, aber mehr als eine Websuche nach Tutorials und Beispielen für Texturen in Java3D zu starten, würde ich dann effektiv auch nicht machen...)
 

Marco13

Top Contributor
Tja. Und soll der Computer sich welche ausdenken?
for (int i=0; i<vetices; i++) object.setTexCoords(i, Math.random(), Math.random());
 

Developer_X

Top Contributor
wo soll ich die einsetzten, und wie verbinde ich das ganze mit einer Appearance, das wär mir echt ne große Hilfe, wenn dus mir am COde mit Kommentaren erklärst
!
 

Marco13

Top Contributor
Bißchen viel verlangt :rolleyes: BTW: Die Diskrepanz zwischen der Frage: "Wie kann ich aus einem int einen String machen?" und "Wie kann ich mit Java3D ein aus einer OBJ-Datei geladenes Modell nachtröglich mit Texturkoordinaten versehen um die Textur als Appearance setzen zu können?" finde ich persönlich ... schon SEHR irritierend... Den Tipp, schrittweise vorzugehen, und erstmal zu versuchen (dir ein paar Monate oder Jahre lang die Grundlagen anzueignen und dann) ein einzelnes Dreieck mit einer Textur zu versehen, um daraus (Er)kenntnisse zu gewinnen, die es dir erlauben, dich unter Zuhilfenahme von API-Doku, Büchern und Tutorials so weit in die Sache reinzufräsen, dass du es selbst hinkriegst, willst du jetzt aber vermutlich garnicht hören...
 
S

Spacerat

Gast
Vllt. hilft's ja wenn ich meinen Tipp mal in Klartext fasse: Vergiss Java3D! Versuchs mit JOGL und fang mit den NeonHelium-Tutorials an. Vergiss dabei aber nicht, das der Tipp von Marco13, sich zunächst erstmal Grundlagen anzueignen definitiv VORRANG hat. Mir wär's peinlich ständig hier da und dort nach Grundlagen zu fragen und auf der anderen Seite zu behaupten "Ich kenne mich aus!". Ich zumindest stütze mich nicht auf Aussagen irgendwelcher User, sondern eher auf die Anzahl seiner Un- bzw. Selbstbeantworteten Themen... Wieviele kannst du vorweisen? Bei mir sind's zwei...
 
Zuletzt bearbeitet von einem Moderator:

hdi

Top Contributor
Ja der Kerl ist einfach der Forums-Clown. Und immer mal wieder rafft sich jmd auf
und versucht ihm bisschen zu helfen. Also ich hab damit vor ~2 Wochen aufgehört,
nachdem ich ihm 7 mal den JavaInsel Link gegeben ud mir die Finger wund geschrieben
habe, um ihm zu erklären dass er das lesen sollte.

Er ist entweder dumm (sry), oder ein total naives Kind. Ich glaube ja zweiteres
trifft zu, er ist wohl einfach zu jung dafür, als dass er die Komplexität eines 3D-Spiels
verstehen könnte, bzw. einsieht dass es nun mal auch Arbeit ist, Programmieren zu lernen.

Wer zu faul ist, was zu lesen, hat dann halt verloren. Aber eins muss ich ihm lassen:
Es ist krass dass er nicht schon lange aufgegeben hat, aber irgendwo tut's mir Leid
weil er verschwendet wohl noch seine ganze Jugend an dieses bescheuerte Rayman
Projekt, bevor er es geknickt aufgeben muss...

@Developer

Ich hab grad was für dich gefunden, da du ja extrem lesefaul bist, vllt überwindest
du dich zumindest diese Videos anzukucken:

http://www.mobilinga.com/Java_Videos/

Und sag bitte nicht, dass du das schon alles kannst.
 
Zuletzt bearbeitet:

Marco13

Top Contributor
@hdi: Im Prinzip gebe ich dir Recht. Allerdings wandert man in solchen Fällen auf dem schmalen Grat zwischen "Auf den Boden der Tatsachen zurückholen" und "Niedermachen" (was schon in der Meta-Semantik sehr ähnlich ist...)
 

hdi

Top Contributor
Ja mir ist bewusst dass ich (inzwischen) "derbe" daherrede wenn es um ihn geht.
Aber du kannst dir ja mal den Spass machen und seine Threads durchsuchen, dann
mal zusammenrechnen was ich ihm schon alles erklärt hab bzw. erklären wollte,
und wie oft ich es immer wieder versucht habe, und zwar auch immer wieder in supernettem
Ton usw.

Und wenn dann jmd so dreist ist, hier Hilfe zu erwarten aber gleichzeitig sich über
die Leute zu stellen und arrogante Sprüche zu klopfen (kann dir einge Bsp geben,
das neueste mit seinem Avatar-Bild, das "er selbst" gemacht hat), und einfach
auf taub zu schalten wenn man ihm dann hilft, dann find ich's einfach assozial
und irgendwo muss man dann auch Klartext reden.

Ich weiss nich, der gehört hier einfach nicht hin. Nicht, weil er keine Ahnung von Java hat,
dafür ist das Forum ja da, und vor nicht mal 2 Jahren hab ich hier auch die bescheuertsten
Fragen gestellt.
Sondern weil er mit seiner Art einfach nicht in dieses, und in dieser Form in kein Forum gehört.

Seine Beiträge sind Spam, denn er fragt eine Sache, bekommt Antworten, und nur
weil er zu faul ist es zu lesen, oder es nicht aktzeptieren will, was man antwortet,
macht er 2 Tage später das Thema unter anderem Thread-Namen wieder auf.
 

hdi

Top Contributor
Also das ist jetzt unfair, du hast mich ja eig. dazu gezwungen irgendeinen Müll dazu zu schreiben :p
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Java3d in Eclipse einbinden Spiele- und Multimedia-Programmierung 4
Neumi5694 Java3D Viewer Beschriftung Spiele- und Multimedia-Programmierung 1
C Java3D Transformieren von obj. Datein Spiele- und Multimedia-Programmierung 0
M Cylinder anhand eines Vektors ausrichten (Java3d) Spiele- und Multimedia-Programmierung 0
Ruvok Java3D Tutorial gesucht Spiele- und Multimedia-Programmierung 5
U Hilfe bei Implementierung eines PointSounds in Java3D Spiele- und Multimedia-Programmierung 1
R Java3d ViewingPlatform erst Verschieben und dann RotationsInterpolator Spiele- und Multimedia-Programmierung 0
D Java3D - Blickfeld Spiele- und Multimedia-Programmierung 1
P Java3D Box Dimensionen und Positionierung Spiele- und Multimedia-Programmierung 1
E Java3D Objekt skalieren per JSlider/JButton Spiele- und Multimedia-Programmierung 10
S Java3D: Primitives zu einem Objekt kombinieren Spiele- und Multimedia-Programmierung 7
J Java3D - Textur laden geht nicht Spiele- und Multimedia-Programmierung 9
J Java3D - Farben vermischen sich Spiele- und Multimedia-Programmierung 7
T Java3D Rendering Problem Spiele- und Multimedia-Programmierung 7
S Java3D oder JMonkey? Spiele- und Multimedia-Programmierung 17
H Java3D - Textur aufs innere einer Sphere mappen Spiele- und Multimedia-Programmierung 9
C java 3d ohne Java3d Spiele- und Multimedia-Programmierung 28
Maxim6394 [Java3D] Probleme bei Kollision Spiele- und Multimedia-Programmierung 7
Maxim6394 [Java3D] lookAt Mausposition Spiele- und Multimedia-Programmierung 17
Maxim6394 [Java3D] Probleme mit KeyFrame Animationen Spiele- und Multimedia-Programmierung 9
K Java3D als Applet ohne Installation von Java3d Spiele- und Multimedia-Programmierung 6
D Java3D Installation: package javax.media.j3d not found Spiele- und Multimedia-Programmierung 5
C Java3D Texture Mapping Spiele- und Multimedia-Programmierung 2
W Java3D: Kanten die hinter einem Objekt liegen werden gezeigt Spiele- und Multimedia-Programmierung 2
W Java3D: Farbe von Objekten stimmt nicht mit übergebenem RGB-Wert überein Spiele- und Multimedia-Programmierung 9
M Eigene Renderengine ohne Java3D,etc. Spiele- und Multimedia-Programmierung 19
C Java3D Sound spielt nur einen Sound ab. Spiele- und Multimedia-Programmierung 8
A JAVA3D TransformGroup <--> Group Problem Spiele- und Multimedia-Programmierung 3
M [Java3D] Animation von mehreren Objekten Spiele- und Multimedia-Programmierung 7
W Java3D: Eckkoordinaten einer Box herausfinden Spiele- und Multimedia-Programmierung 18
T Java3D: Objekte platzieren und entfernen? Spiele- und Multimedia-Programmierung 7
T Java3D: Nur die Kanten des Würfels rendern? Spiele- und Multimedia-Programmierung 4
W Java3D setBounds(BoundingBox) Spiele- und Multimedia-Programmierung 6
T [gelöst] Java3D: Unerwünschte Rotation um die 3.Achse vermeiden? Spiele- und Multimedia-Programmierung 3
Bastie JAVA3D - WRL Transform Spiele- und Multimedia-Programmierung 9
G Eclipse Problem mit Java3d Spiele- und Multimedia-Programmierung 3
T Java3D - Lichtquelle einbauen Spiele- und Multimedia-Programmierung 7
jemandzehage java3d parallel und perspective view Spiele- und Multimedia-Programmierung 5
H Cinema 4D in Java3D importieren Spiele- und Multimedia-Programmierung 2
1 [Java3D] komplexes Projekt? Spiele- und Multimedia-Programmierung 10
P .obj-Datei in Java3D laden: ParsingErrorException Spiele- und Multimedia-Programmierung 7
C Java3D Lichtquelle beim Beobachter Spiele- und Multimedia-Programmierung 2
C Java3D Interaktion während Animation Spiele- und Multimedia-Programmierung 3
aze Java3D: Flächen teilen Spiele- und Multimedia-Programmierung 15
P Java3D Textur verzerrt Spiele- und Multimedia-Programmierung 3
aze Java3D: Gegenstände aufeinander zubewegen ohne Kollision Spiele- und Multimedia-Programmierung 4
D [JAVA3D] Es werden 2 Fenster erzeugt und auf dem falschen gezeichnet Spiele- und Multimedia-Programmierung 3
aze Java3D: leere Räume füllen Spiele- und Multimedia-Programmierung 2
aze Java3d:Helligkeit von Shape3D ändern Spiele- und Multimedia-Programmierung 2
S Einschätzung zu Java3D-Einstieg Spiele- und Multimedia-Programmierung 3
F Programm mit Java3D unter Linux laufen lassen Spiele- und Multimedia-Programmierung 3
I Vergleich von Java3D und OpenGL Spiele- und Multimedia-Programmierung 17
W Waterslide mit Java3D Spiele- und Multimedia-Programmierung 11
M Java3D Picking - falsche Objekte werden gepickt Spiele- und Multimedia-Programmierung 3
M [Java3D] Rotieren der Scene NICHT des POV Spiele- und Multimedia-Programmierung 4
F Jogl oder Java3D ? Spiele- und Multimedia-Programmierung 20
K Java3D Abfängerfrage Spiele- und Multimedia-Programmierung 3
aze Java3D:Farbige Flächen verschwinden lassen(Transparenz- oder Colorinterpolator?)) Spiele- und Multimedia-Programmierung 5
C Java3D PositionInterpolator Spiele- und Multimedia-Programmierung 3
G [Java3D] Probleme bei Animation Spiele- und Multimedia-Programmierung 4
E [JAVA3D] Kamerasteuerung Spiele- und Multimedia-Programmierung 3
E [JAVA3D] Schattenstrich durch die Szene Spiele- und Multimedia-Programmierung 4
M Grundsätzliche Java3D Fragen Spiele- und Multimedia-Programmierung 2
C Java3D SceneGraohPath Spiele- und Multimedia-Programmierung 2
C Java3D Rotation um einen Punkt (y-achse) Spiele- und Multimedia-Programmierung 2
G Java3D plattformunabhängig bundeln Spiele- und Multimedia-Programmierung 3
TheKing Java3D-Shooter View Spiele- und Multimedia-Programmierung 2
A Java3D tutorial? Spiele- und Multimedia-Programmierung 3
R Java3D Kollisionserkennung und Schwerkraft Spiele- und Multimedia-Programmierung 17
M Java3D Objekte entfernen und hinzufügen Spiele- und Multimedia-Programmierung 10
J Java3d Schnelle Geschosse Spiele- und Multimedia-Programmierung 12
D Kann ich mit Java3D 2D Daten als 3D surfaceplot plotten? Spiele- und Multimedia-Programmierung 5
J Java3d setTextureTransform verändert J3DGraphics2D Spiele- und Multimedia-Programmierung 4
J Hilfe: Rotation X und Y Achse (Java3d) Spiele- und Multimedia-Programmierung 12
K Java3D: LineStripArray Spiele- und Multimedia-Programmierung 2
P Java3D - Zylinder genau wie Vektor ausrichten Spiele- und Multimedia-Programmierung 5
Developer_X Java3D Mensch Ärgere Dich nicht. Spiele- und Multimedia-Programmierung 10
C JAVA3D Rotation um einen bestimmten Punkt Spiele- und Multimedia-Programmierung 20
Developer_X Java3D-Ungeeignet für 3D Spiele wegen Heap Space=? Spiele- und Multimedia-Programmierung 23
Developer_X Java3D Canvas post Renderer und? Spiele- und Multimedia-Programmierung 5
A Java3D Sichtweite Spiele- und Multimedia-Programmierung 2
"Er" Kamera rotation in Java3D Spiele- und Multimedia-Programmierung 2
A Java3D: Behavior scheduling bounds Spiele- und Multimedia-Programmierung 3
Developer_X THE BALL (needs Java3D) Spiele- und Multimedia-Programmierung 34
Developer_X Java3D Game_(die erste) Spiele- und Multimedia-Programmierung 2
Developer_X Java3D und while schleifen Spiele- und Multimedia-Programmierung 4
Developer_X Collisionserkennung in Java3D Spiele- und Multimedia-Programmierung 3
Developer_X Java3D Node -> Obj Data Spiele- und Multimedia-Programmierung 2
Developer_X Figuren werden nicht angezeigt (Java3D) Spiele- und Multimedia-Programmierung 5
S PDFRenderer und Java3D Spiele- und Multimedia-Programmierung 2
Developer_X Java3D- der Mausklick auf Nodes Spiele- und Multimedia-Programmierung 3
Developer_X Java3D Point Sound Spiele- und Multimedia-Programmierung 71
Developer_X Lines in Java3D Spiele- und Multimedia-Programmierung 4
V Java3D: HUD erstellen Spiele- und Multimedia-Programmierung 2
V Java3D: scheinende Sonne Spiele- und Multimedia-Programmierung 4
V Java3D: Ringe für Saturn erstellen Spiele- und Multimedia-Programmierung 8
V Java3D: automatisches Bewegen der Kamera Spiele- und Multimedia-Programmierung 19
V Java3D: mehrere ViewingPlaforms in Sonnensystem Spiele- und Multimedia-Programmierung 8
Developer_X Thread in Java3D Spiele- und Multimedia-Programmierung 8
B Java3D .obj dateien Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen

Neue Themen


Oben