Jump to content

DirectX-Exporter


Recommended Posts

hallo,

ich habe nach Anleitung in Sketchup das DirectX-Exporter Plugin installiert und versucht ein sehr einfach gezeichnetes Haus nun als haus.x Datei zu exportieren.

Das wurde als haus.x gespeichert und ich habe versucht es im Bahnstudio unter Katalog/Neu/+ als neues Modell anzulegen.

Das klappt leider nicht .. was könnte ich falsch gemacht haben?directx_export.thumb.jpg.553f753d8a3f16303a6e4ddbc8dbbedd.jpg

Jürgen

 

 

directx_export_fehler.jpg

Edited by rubberduck
Link to comment
Share on other sites

Hallo Jürgen,

Kann verschiedene Ursachen haben (die Fehlermeldung ist sehr allgemein gehalten)...
- Texturen müssen in der Größe ein Vielfaches von 2^x haben (1024 x 1024 ; 512 x 256 ...)
- Im Namen von Objekten oder Objektgruppen keine ä,ö;ü,ß...

Gruß
EASY

Link to comment
Share on other sites

Hallo Rubberduck,

wie bereits Easy schrieb, kann es mehrere Möglichkeiten haben. Aber, wahrscheinlich spinnt der Exporter manchmal oder ist die "Anbindung" ans Studio gestört. Ich hatte gestern das selbe Fenster, bin eine rauchen, um darüber nach zudenken, was ich falsch gemacht habe und habe danach noch mal probiert, da ging es wieder von selber.

Schöne Grüsse

Andreas (astt)

Link to comment
Share on other sites

Hallo Rubberduck,

versuche bitte mal eine andere Einstellung des Exporters, siehe Bild ;). Bei Originalgröße bitte dann deine Größe, in der du das Modell erstellt hast angeben.

Beste Grüße Maik

X_porter einstellung.JPG

Edited by maiky
Link to comment
Share on other sites

Hallo Maik,

ich habe es probiert, aber es hat nicht funktioniert.

Aber mir ist an deinem Bild was aufgefallen, du scheinst eine andere Version des DirectX-Exporters zu haben.

Schau mal, warum steht bei mir Optimierung und bei dir Zusammenfassung?

Manchmal sind es Kleinigkeiten in Versionen, die den Unterschied ausmachen.

gruss

jürgen

 

DirectxExporter_Versionen.jpg

Link to comment
Share on other sites

So...Freu ;D

es hat funktioniert (mit freundlicher Unterstützung !!!).;)

Die Version des DirectX-Exporters die ich mir hier downgeloaded hatte ist O.K. Es ist die Version 2.0 (steht zumindest im Kopf der .rb-Datei mit Anpassungen vom 17.05.2017)

Maiks Voreinstellungen sind auch sehr nützlich. Danke auch dir. ;)

Was ich wohl vergessen hatte, ist die in Sketchup  verwendete Textur für die Fenster als.jpg in den gleichen Verzeichnis pfad zum Upload  (Import) ins Bahnstudio abzulegen.

 

jürgen

 

 

Translucent_Glass_Tinted.jpg

Tut1haus_import_Bahnstudio.jpg

Link to comment
Share on other sites

Hallo Jürgen,

Die Version "2.0" in der veröffentlichten Version ist leider ein Fehler von mir (hatte vergessen, dort "3.0" rein zu schreiben). Da dies für den Ablauf nicht relevant ist, habe ich deshalb keine extra Korrektur ausgegeben.

Viele Grüße
BahnLand

Link to comment
Share on other sites

  • 7 months later...

Hallo Manfred,

diese Meldung wird vom Modellbahn-Studio ausgegeben, wenn die für das hochzuladende Modell benötigten Texturen nicht im selben Verzeichnis wir die hochzuladende x-Datei abgelegt sind. In Deinem konkreten Fall liegt Deine x-Datei im Verzeichnis "C:\Users\Kr-Manfred\Desktop". Dort musst Du auch die Textur "Fencing_Weathered.jpg" ablegen. Bitte prüfe, ob Dein Modell noch weitere Texturen benötigt, die Du eventuell auch noch in dieses Verzeichnis legen musst. Sonst bekommst Du diesen Feler noch einmal.

Wenn Du Dir nicht sicher bist, welche Texturen Dein Modell alle verwendet, kannst Du in der x-Datei nachschauen (einfach mit einem Textprogramm - z.B. Notepad - öffnen). Dort findest Du am Anfang Einträge in der Form

Material Multitextur {
  0.6666666666666666;0.5411764705882353;0.48627450980392156;1.0;;
  0.0;
  0.000000;0.000000;0.000000;;
  0.000000;0.000000;0.000000;;
  TextureFilename {"_Custom.png";}
}
Material Verlauf {
  0.027450980392156862;0.027450980392156862;0.027450980392156862;1.0;;
  0.0;
  0.000000;0.000000;0.000000;;
  0.000000;0.000000;0.000000;;
  TextureFilename {"Verlauf08zentrisch.png";}
}

Bei Dir stehen da natürlich andere Dateinamen ;).
Überall, wo Du wie im obigen Beispiel gezeigt die Bezeichnung TextureFilename findest, steht in der nachfolgenden Klammer ein Dateiname, der eine von Deinem Modell verwendete Textur spezifiziert. Alle diese Dateien müssen im selben Verzeichnis abgelegt sein, wo auch Deine x-Datei hinterlegt ist, die Du ins Modellbahn-Studio hochladen möchtest. Nur so kannst Du die obige Fehlermeldung vermeiden.

Viele Grüße
BahnLand

Link to comment
Share on other sites

Hallo,

 

eure Ratschäge + Tips sind sehr gut. Aber ich stolpere bei der Übertragung meines Modells von einer Fehlermeldung in die andere.

Ich besitze den Modellplaner V4 + wollte mein Modell mit SketchUp 2016 erstellen. Beim Importieren bekam ich die Fehlermeldung, dass angeblich die richtige txt-Datei fehle. Die txt_datei ist aber mit der X-Datei + der Textur im gleichen Ordner abgelegt.

Daraufhin hab' ich SketchUp 8 wieder installiert. Dort konnte ich das Modell mit dem DirectX 1.1 übertragen. Die übertragene Txtur war aber verzerrt + nicht korrekt importiert.

Wo liegt mein Fehler?

DirectX-Einstellungen.jpg

DirectX-Fehlermeldung.jpg

DirectX-Protokoll.jpg

Link to comment
Share on other sites

Hallo Manfred,

vor 3 Stunden schrieb manfredkropp:

Beim Importieren bekam ich die Fehlermeldung, dass angeblich die richtige txt-Datei fehle. Die txt_datei ist aber mit der X-Datei + der Textur im gleichen Ordner abgelegt.

ich glaube, dass Du da einem Missverständnis aufgesessen bist. Eine Textur-Datei ist keine txt-Datei, sondern eine Grafik-Datei (z.B. mit der Endung bmp, png, jpg oder dds). Wenn das Modellbahn-Studio meckert, dass die x-Datei wegen einer fehlenden Textur-Datei nicht hochgeladen werden kann, liegt das daran, dass das Modellbahn-Studio die in der x-Datei als Textur referenzierte Grafik- oder Bild-Datei nicht findet, und nicht weil ihm eine txt-Datei fehlen würde.

Die txt-Datei, die vom DirectX-Exporter erzeugt wird, dient nur zur Protokollierung, sodass man später noch einmal nachvollziehen kann, was der DirectX-Exporter gemacht hat. Für das Modellbahn-Studio wird die txt-Datei nicht gebraucht und ist daher irrelevant.

Was ich Deinem Protokoll allerdings entnehmen kann - und genau dafür ist das Protokoll (die txt-Datei) ja da - ist die Tatsache, dass beim Erzeugen der x-Datei auf eine Bilddatei "Stone_Flagstone_Ashlar.jpg" zurückgegriffen wurde. Aus Deiner Aussage, dass Du die mit Sketchup V8 erzeugte x-Datei erfolgreich in das Modellbahn-Studio hochladen konntest, nicht aber die mit Sketchup 2016 erzeigte x-Datei, schließe ich, dass Du die Textur-Datei "Stone_Flagstone_Ashlar.jpg" nicht in jenem Verzeichnis abgelegt hast, in welchem die x-Datei erzeugt wird.

Wenn Du in meinem letzten Beitrag die "Material"-Einträge anschaust, wirst Du erkennen, dass hier nur die Dateinamen ohne Pfadangaben (also ohne Verzeichnispfade) abgelegt sind. Wenn Du also versuchst, die x-Datei in das Modellbahn-Studio hochzuladen, hat das Modellbahn-Studio gar keine andere Chance, als die zugeordneten Textur-Dateien im selben Verzaichnis zu suchen, in dem auch die hochzuladende x-Datei abgelegt ist. Du musst also auf jeden Fall immer vor dem Hochladen einer x-Datei sicherstellen, dass die verwendeten Textur-Dateien auch wirklich im selben Verzeichnis abgelegt sind.

Offenbar hast Du beim Erstellen Deines Sketchup-Modells und die zu verwendenden Textur(en) aus einem anderen Verzeichnis zugewiesen, als jenem, welches Du für das Erstellen der x-Datei mittels des DirectX-Exporters als Zielverzeichnis für die x-Datei ausgewählt hast.

Warum hat es aber dann mit Sketchup V8 trotzdem funktioniert? Die Antwort ist ganz einfach:
Wenn der DirectX-Exporter aus Sketchup V8 aufgerufen wird, werden alle Textur-Dateien, die im Sketchup-Modell referenziert werden, zusammen mit der zu erzeugenden x-Datei automatisch in dasselbe Zielverzeichnis kopiert. Wenn man danach die x-Datei in das Modellbahn-Studio hochlädt, findet dieses daher die im Verzeichnis der x-Datei ebenfalls vorhandenen Textur-Dateien, und kann damit das Modell im Modellbahn-Studio erfolgreich einfügen.

Obwohl sich der DirectX-Exporter für Skecthup 2016 rein funktional von jenem für Sketchup V8 nicht unterscheidet, werden beim neuen Sketchup die dem Modell zugeordneten Textur-Dateien nicht mehr automatisch in das Zielverzeichnis für die x-Datei kopiert. Dass sich hier der DirectX-Exporter anders verhält als bei Sketchup V8 liegt daran, dass Sketchup in den neueren Versionen für die genutzen Plugins (und dazu gehört auch der DirectX-Exporter) eine andere Ruby-Version verwendet (Ruby ist die Script-Sprache, in der Sketchup-Plugins - speziell auch der DirectX-Exporter - geschrieben sind). Und in der neuen Ruby-Version scheint die automatische Mitnahme der im Sketchup-Modell referenzierten Textur-Dateien nicht mehr implementiert zu sein.

Die Folge ist, dass man nun selbst dafür sorgen muss, dass die benötigten Textur-Dateien (wie z.b. die Datei "Stone_Flagstone_Ashlar.jpg") in jenem Verzeichnis abgelegt werden, in das auch die x-Datei geschrieben wird.

Ich persönlich gehe dabei immer folgendermaßen vor:
Ich definiere für jedes Modell oder jede Modell-Gruppe ein eigenes Priojekt-Verzeichnis, in dem die SKP-Datei oder bei mehreren Modellen die zugehörigen SKP-Dateien abgelegt werden. In diesen Projektverzeichnis lege ich ein Unterverzeichnis "DirectX" an, in welchem beim jeweiligen DirectX-Export die erzeugte(n) x-Datei(en) abgelegt werden soll(en). Dort hinterlege ich bereits vor dem Bau des Sketchup-Modells die benötigten Textur-Dateien. Wenn ich dann in Sketchup die Textur(en) dem Modell zuordne, bediene ich mich der zugehörigen Textur-Datei(en) in diesem DirectX-Verzeichnis. Wenn ich dann den DirectX-Exporter aufrufe, um aus dem Sketchup-Modell eine x-Datei zu erzeugen, wähle ich als Zielverzeichnis für die Ablage dieser x-Datei genau dieses Unterverzeichnis "DirectX" aus. Wenn ich dann mit den DirectX-Exporter dort die x-Datei erzeugt habe, weiß ich, dass dort auch die zugeordneten Textur-Dateien vorhanden sind. Wenn ich dann im Anschluss die x-Datei in das Modellbahn-Studio hochlade, hat dieses auch kein Problem, die Textur-Dateien dort zu finden, und kann daher die x-Datei (mitsamt den zugehörigen Texturen) erfolgreich übernehmen.

Bitte beachte, dass die Verwendung des Unterverzeichnisses "DirectX" für die x-Datei und die Textur-Dateien mein persönlicher "Arbeitsstil" ist und von Dir nicht zwingend exakt gleich realisiert werden muss. Wesentlich ist nur, dass nach dem Erzeugen der x-Datei(en) sichergestellt ist, dass auch die verwendeten Textur-Dateien im selben Verzeichnis abgelegt sind (diese können durchaus auch nachtrglich dort hinterlegt werden). Sie müssen spätestens vor dem Hochladen der x-Datei in das Modellbahn-Studio dort hinterlegt worden sein.

Viele Grüße
BahnLand

Link to comment
Share on other sites

Hallo ManfredKropp,

die Meldung hatte ich Heute auch schon. Hast Du irgendwo ein Teil verbaut, mit einem "Ü" / "Ä" oder ähnliches ? Das Studio mag keine Umlaute.

Den Buchstaben ändern hilft dann meist.

Schönen Grüsse

Andreas (astt)

Link to comment
Share on other sites

Hallo Manfred,

Andreas hat mich gerade überholt.

Ja, Du darfst in Deinem Modell und damit in der erzeugten x-Datei keine Bezeichnungen verwenden, die Umlaute oder andere Sonderzeichen enthalten. Einzig der Unterstrich und das Minuszeichen sind erlaubt. Auch dürfen diese Bezeichnungen keine Leerzeichen enthalten.

Viele Grüße
BahnLand

Link to comment
Share on other sites

Hallo @manfredkropp hast Du die Dateien in einem Ordner gespeichert und den Ordner hast Du zum Beispiel Brücke genannt? 

Das würde nicht funktionieren der DirectX Exporter akzeptiert auch keine Umlaute und Sonderzeichen im Ordnernamen.

Beispiel: Den Ordner hast Du Brücke genannt, da der DirectX Exporter keine Umlaute akzeptiert musst du den Ordner in Bruecke umbenennen. Probiere das mal vielleicht hilf es Dir

Viel Grüße Steffen

Link to comment
Share on other sites

Hallo @neffets ,

das mit den Umlauten stimmt, so wie bereits oben beschrieben.

Allerdings ist es egal, ob der Ordner Umlaute besitzt. Du lädst ja nicht den Ordner sondern das Modell aus dem Ordner hoch. Der Ordner hat nichts mit dem x-Exporter zu tun.

Habe es gerade ausprobiert, bei mir hat es auch mit einem "Ä" im Ordner Namen funktioniert.

Schöne Grüsse

Andreas (astt)

Link to comment
Share on other sites

Hallo @astt die Umlaute im Ordnernamen beziehen sich auf SketchUp 8 und dem DirectX Exporter von Bahnland.
In SketchUp 8 ist es unbedingt notwendig auf die Schreibweise in Datei und Ordner Namen zu achten.
Ich habe zwei Ordern mit ganz primitiven Modellen erstellt mit Sketchup 8 angehängt.
Öffne die Modelle mit SketchUp 8 Exportiere mit dem DirectX Exporter einmal in den Ordner Wuerfel Du wirst sehen das geht,
Das gleiche in den Ordner Würfel Du wirst sehen das geht nicht, es kommt zu einer Fehlermeldung. siehe Foto.
Das Problem ist schon einmal aufgetreten.
Das passiert aber nur mit SketchUp 8
Der Grund warum die Brücke von @manfredkropp nicht ins MBS importiert wird ist ein anderer, das hat etwas mit der Materialbezeichnung zu tun, die müsste händisch umbenannt werden.

@BahnLand eine Frage: Ich erstelle zum Beispiel einen ganz primitiven Würfel in SketchUp 8 texturiere den, nur zur Probe meinetwegen mit zwei Texturen aus SketchUp, exportiere ihn mit dem DirectX Exporter dann werden die Texturen im selben Verzeichnis abgelegt in der sich die x Datei befindet, das finde ich in Ordnung.
Wenn ich dasselbe z.B. in SketchUp 2016 mit dem DirectX Exporter exportiere werden keine Texturen mit exportiert.
Ist das so gewollt oder geht das in den neuen Versionen von SketchUp nicht mehr?
Um die Texturen zu bekommen muss man sie aus SketchUp heraus speichern ( die Dateiendung lautet .skm) dann z.B. mit 7-Zip entpacken und danach in das richtige Verzeichnis kopieren, das hat allerdings den Nachteil da werden die Materialbezeichnungen verändert und es kommt beim Import ins MBS zu der von @manfredkropp gezeigten Fehlermeldung.
Man muss sie händisch Umbenennen.
Man arbeitet ja sowieso mit Multitexturen aber mal schnell ein Modell ganz einfach zu texturieren nur mal um zusehen wie es denn im MBS ankommt da wäre es meiner Meinung nach besser die Materialien würden auch in den neuen Versionen von SketchUp mit exportiert.

Viele Grüße Steffen

Fehlermeldung.thumb.jpg.6dcaeba6a248e41ec4eb08f4b5b9ffb2.jpg

Wuerfel.zip

 

                                      

 

Link to comment
Share on other sites

Hallo @neffetsund alle anderen,

ich weiß leider nicht, warum bei den neueren Sketchup-Versionen die Textur-Dateien beim Export des Sketchup-Modells nicht mehr in das Zielverzeichnis für die x-Datei mit kopiert werden. Ich kann nur vermuten, dass dies mit der Verwendung einer neueren Ruby-Version (die Sketchup-Plugins sind "Ruby-Scripts") zusammenhängt. Möglicherweise ist es also nicht einmal ein "Sketchup-Problem", sondern ein "Ruby-Problem".

Andererseits hatte ich früher mit Sketchup 8 des öfteren die Situation, dass ich bei einer fertig erzeugten x-Datei einfach die Texturdatei im selben Verzeichnis korrigierte, und dann das Modell mit der korrigierten Texturdatei neu in das Modellbahn-Studio einspielte. Wenn ich dann vergaß, die korrigierte Textur-Datei auch in Sketchup selbst dem Modell neu zuzuordnen (Texturdatei in Sketchup neu laden), konnte es passieren, dass ich beim nächsten Export dieses Modells die im Zielverzeichnis korrigierte Texturdatei mit der in Sketchup noch zugewiesenen alten Texturdatei überschrieb. Dann waren meine Textur-Änderungen natürlich alle weg.

Ich kann mir daher vorstellen, dass es möglicherweise sogar "Absicht" ist, dass in den neueren Sketchup-Versionen die Textur-Dateien nicht mehr automatisch beim Export zusammen mit der erzeugten x-Datei in das Ziel-Verzeichnis geschrieben werden. Aber wissen tue ich es nicht.

vor 5 Stunden schrieb neffets:

Um die Texturen zu bekommen muss man sie aus SketchUp heraus speichern ( die Dateiendung lautet .skm) dann z.B. mit 7-Zip entpacken und danach in das richtige Verzeichnis kopieren, das hat allerdings den Nachteil da werden die Materialbezeichnungen verändert und es kommt beim Import ins MBS zu der von @manfredkropp gezeigten Fehlermeldung.
Man muss sie händisch Umbenennen.

So umständlich muss man es nicht machen - eigentlich ist es ganz einfach:

5b86c78c83a3e_01LeererWrfelundTexturauswahl.thumb.jpg.40905768df93468eadec1bf7f3c4a862.jpg

Zunächst wird das leere Modell (hier der Würfel) mit einer mit Sketchup mitgelieferten Textur bemalt.

5b86c78f136f5_02AusgewhlteTextur.thumb.jpg.3b2236c89e8000ecdddb0b3699eb9196.jpg

Klickt man danach auf das Häuschen, werden die im Modell bisher verwendeten Texturen aufgelistet. Hier ist es nur die eine ausgewählte Textur "Naturwerksteinfliese". Klickt man nun diese Textur-Anzeige mittels Doppelklick an, ...

5b86c7916351c_03Texturbildbearbeiten.thumb.jpg.bc529f5f8e7e79f411dac319f8cd45eb.jpg

... werden die Eigenschaften dieses "Materials" eingeblendet. Insbesondere gibt es eine Referenz auf die zugrunde gelegte Texturdatei. Klickt man nun auf den eingekreisten Button ganz rechts, ...

5b86c793b7a81_04Texturbildspeichern.thumb.jpg.bd902de75a2969765b7e5b54bd5fe59c.jpg

... wird das in den Einstellungen von Sketchup definierte Grafikprogramm geöffnet (bei mir ist es Microsoft Paint) und die Textur dort geladen. Diese kann nun in eine beliebige Datei auf dem PC abgespeichert werden. Hier empfiehlt es sich, den bereits im Dateinamenfeld voreingestellten Namen zu verwenden (es sei denn, dieser enthält unzulässige Zeichen wie z.B. Umlaute - dann muss man einen anderen Namen verwenden). Als Verzeichnis wählt man das Zielverzeichnis aus, in welchem beim Export die erzeugte x-Datei abgelegt werden soll.

5b86ca9b1782d_05Texturdateineuladen.thumb.jpg.673ca248ca8bce515141b3704f6e2184.jpg

Nun klickt man in Sketchup den anderen (nun eingekreisten linken) Button an, um die Textur für das oben angezeigte Material (hier "Naturwerksteinfliese") neu zu laden. Als Datei wählt man nun die im Zielverzeichnis für die x-Datei abgelegte Texturdatei aus. Das war's dann auch schon.

5b86c7989b31c_06Zielverzeichnis.jpg.97f94e680282d889dd88feecd8aecf4d.jpg

Wenn man nun den Export der x-Datei veranlasst und dort als Zielverzeichnis dasselbe Verzeichnis angibt, hat man am Ende sowohl die x-Datei als auch die zugehörige(n) Texturdatei(en) im selben Verzeichnis stehen. Man hat hiermit auch insbesondere sichergestellt, dass die Materialbezeichnungen (die ja durch diese Vorgehensweise nicht verändert werden) und die Texturdatei-Referenzen in der x-Datei stimmig sind und zum Inhalt des Zielverzeichnisses passen.

Damit steht dann diesbezüglich einem erfolgreichen Hochladen des Modells in das Modellbahn-Studio nichts mehr entgegen.

Viele Grüße
BahnLand

Edited by BahnLand
Link to comment
Share on other sites

vor 19 Stunden schrieb BahnLand:

So umständlich muss man es nicht machen - eigentlich ist es ganz einfach:

Hallo @BahnLand  wieder eine perfekte Anleitung, wie alle Anleitungen von Dir.

Diese Methode ist wirklich ganz einfach.
Was mir noch aufgefallen ist: Vorm DirectX Export müssen die Materialbezeichnungen in SketchUp kontrolliert werden, sie dürfen keine Leerstellen und keine führenden Ziffern enthalten.
Ich nehme an das ist ein Grund weshalb es bei @manfredkropp   zu Fehlermeldungen kommt.
Viele Grüße Steffen

5b87dd69120ca_SketchUpMaterielproblem.thumb.jpg.4e37a1f985b95347543b2b3fb0b525b2.jpg

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...