Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Aug 08, 2025 13:36

Foren-Übersicht » DGL » Feedback
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 29, 2003 14:51 
Offline
DGL Member
Benutzeravatar

Registriert: Do Jun 19, 2003 18:50
Beiträge: 92
Hiho Leutz ! Da ich den ASE - Loader nahezu fertig geschraubt habe, habe ich mir beim Thema Material einige Gedanken gemacht. SoS hat gesagt, dass beim 3DS - Format das Material pro Face gespeichert wird. Rein theoretisch wäre es ja auch möglich, das in eine Abwandlung des ASE - Formats zu implementieren. Man müsste an die Face - Indicies anknüpfen und sozusagen das Material pro Face festlegen. Das dumme an der Sache ist : Man braucht dazu wieder ein eigenständiges Proggi. Das heisst : ASE Laden, Mat, Tex und MatSkalierung / Rotation festlegen, neues Format abspeichern. Was mich interessieren würde :
1.) Würde sowas Sinn machen ?
2.) Wie soll das Format dann heissen ?
3.) Sollen die ganzen Daten dann umgekrempelt werden und abgespeichert werden ?
4.) Wenn ja, wie sollte das Format aussehen ?

Mich würde Eure Meinung dazu brennend interessieren.

Nur als kleine Zwischeninfo : Der ASE - Loader kann mittlerweile Material auslesen (ausser Bitmaps) und Animationsdaten darstellen. Der Parser is nur noch bisschen buggy aber das wird dann noch besser ...

_________________
http://www.onkeltorty.net
http://sourceforge.net/projects/simpleassembler


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 29, 2003 14:53 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Ich hab mal für "unnütz" gestimmt, da man dann ja quasi nen eigenen 3D-Editor basteln müsste, mit dem man dann den Faces des ASE-Files die Texturen per Hand zuordnene muss.
Wenn man halt per-Face-Materialien braucht, kann man auch direkt auf 3DS setzen und die Materialien im 3DStudio per-Face zuweisen wenn man das Modell gerade am bearbeiten ist.

Alternativ wäre es aber möglich dann ein eigenes ASE-ähnliches Format zu schreiben, wenn man dann auch einen eigenen Exporter fürs 3DStudio schreibt, oder ein Tool welches 3DS in das eigene, ASE-ähnliche Format wandelt.Das ASE-Format an sich müsste man nicht großartig ändern, sondern am Ende der Facedefinition eigentlich nur noch nen Indes fürs verwendete Material dranhängen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 29, 2003 15:05 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Ich stimme da SoS zu. Es gibt so viele Formate, die Texturen pro Face erlauben, da wäre das zu umständlich. Wenn man kein 3DS lesen kann oder nicht die 3DS Loader units einbinden möchte, dann kann man ja immer noch Milkshape benutzen um in ein Format seiner Wahl zu konvertieren.
"Unnütz" ist vielleicht das falsche Wort dafür, denn Programmieren ist nie unnütz. Ich denke eher, daß man das gleiche Ergebnis auch mit weniger Aufwand erreichen könnte.

@SoS
Du hast ja mal erwähnt das du eine ältere Version vom 3D Studio hast. Wo kann man denn so was erhalten und wie teuer sind ältere Versionen?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 29, 2003 15:09 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
LarsMiddendorf hat geschrieben:
@SoS
Du hast ja mal erwähnt das du eine ältere Version vom 3D Studio hast. Wo kann man denn so was erhalten und wie teuer sind ältere Versionen?

Hmmm...so sicher bin ich mir gar nicht mehr woher ich die alte Version herhab, ist nämlich schon recht lange her seit ich das Teil hab.Aber soweit ich mich erinnern kann bin ich da billig über nen Bekannten drangekommen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 29, 2003 17:10 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Das sehe ich allerdings genau so. Warum das Rad nochmal erfinden. Eine andere Sache die ich an ASE persönlich überhaupt nicht schätze ist, dass diese Format Text ist.
1. Kann es jeder ändern, sobald es als Text auf platte rumschimmelt. (ganz ungünstig)
2. Ist das dadurch, dass es sich um Text handelt, wesentlich größer als Binär. Und vor allem muss man bei laden Jede Zahl erst einmal von Text nach Zahl konvertieren. Was bei großen Objekten ziemlich suboptimal ist.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 30, 2003 14:37 
Offline
DGL Member
Benutzeravatar

Registriert: Do Jun 19, 2003 18:50
Beiträge: 92
Oki dann lasse ich das einfach mal. Könnt Ihr mir noch verraten, mit welchen Methoden man an den Inhalt einer binären Datei kommt ? Ich kenne nur die Methoden für Textdateien ....

_________________
http://www.onkeltorty.net
http://sourceforge.net/projects/simpleassembler


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 30, 2003 14:45 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 17:14
Beiträge: 188
Wohnort: Hannover/Lüneburg
Grob so:

Code:
  1. var
  2.   f: file;
  3.   buf : array[0..1023] of Char;
  4. begin
  5.   AssignFile(f, dateiname);
  6.   Reset(f, 1);  // oder Rewrite(f, 1); um die Datei neu zu erstellen
  7.   BlockRead(f, buf, 1024); // liest 1024 Bytes aus der Datei f
  8.   CloseFile(f);
  9. end;

Schau dir dazu auch mal Streams an. Ansonsten hilft die Delphi-Hilfe mit Seek, BlockRead, BlockWrite (Bytes einlesen), Read und Write (für typerisierte Dateien) und AssignFile sowie CloseFile gut weiter.

_________________
Thunderman
Bei schwierigen Problemen entscheiden wir uns einfach für die richtige Lösung. Klar?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 30, 2003 15:01 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Bei einem Stream würde das dann etwa so aussehen.
<!--pas--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Delphi-Source </td></tr><tr><td id='CODE'><!--pas1--><pre><span class='reserved'>var</span>
FS: TFileStream;
<span class='reserved'>begin</span>
FS := TFileStream.Create(FileName, fmOpenRead); // nur lesen
<span class='reserved'>try</span>
FS.Read(Double, <span class='integer'>8</span>);
FS.Read(Integer, <span class='integer'>4</span>);
FS.Read(Byte, <span class='integer'>1</span>);
FS.Read(Pointer, <span class='integer'>100</span>);
// Schreiben sieht ziemlich genau so aus.
<span class='reserved'>finally</span>
FS.Free;
<span class='reserved'>end</span>;
<span class='reserved'>end</span>;</pre><!--pas2--></td></tr></table><span class='postcolor'><!--pas3-->
Ich persönlich bin ja ein absoluter Anhänger von Streams. Da Streams jede Art von Datenstrom wieder spiegeln können. Also nicht nur Dateien sondern Memorystream, Internet, Resourcen etc.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 30, 2003 19:58 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 17:14
Beiträge: 188
Wohnort: Hannover/Lüneburg
Ich bin auch auf Streams umgestiegen, nur wenn ich kurz ne Datei schreiben oder einlesen möchte nehme ich noch BlockWrite. Um meine Level an sich zu laden und speichern nutz ich aber auch Streams, sind einfach handlicher.

_________________
Thunderman
Bei schwierigen Problemen entscheiden wir uns einfach für die richtige Lösung. Klar?


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Foren-Übersicht » DGL » Feedback


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]