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

Aktuelle Zeit: Fr Jul 18, 2025 15:15

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 22 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: Unbekannte Modelle Laden
BeitragVerfasst: Fr Jul 11, 2008 11:38 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
Hallo

Also ich wollte wissen ob es eine Möglichkeit gibt Modelle zu laden ohne texturen oder auch mit ist egal
von irgendeinem Format.

Ich hab hier nämlich Dateien von einem Spiel welche die einzelnen 3D Maps enthalten
Doch ich hab keinerlei Informationen darüber.

Gibt es dazu ein Verfahren?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 11:45 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jul 29, 2003 00:11
Beiträge: 436
Naja, um eine Datei laden zu können, musst du schon wissen, wie die aufgebaut ist.
Oder aber auch ein Programm zum Konvertieren in ein dir bekanntes Format benutzen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 11:47 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
hm wie stellen es denn die Leute an welche Editore für Dateiformate von Spielen basteln?
Die können ja auch nicht sofort wissen wie eine Datei aufgebaut ist.

Irgendwo muss man ja was hernehmen können oder nicht?

EDIT:
Beispiel
Hier zum beispiel ein Editor (kann man irgendwie nciht mehr downloaden)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 12:34 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 16, 2008 20:26
Beiträge: 158
Wohnort: Berlin
Programmiersprache: c++,c#,java,ruby,php
Naja doch schon, weil Sie entweder ihr eigenes Format machen und somit genau wissen, wie die Daten vorliegen, oder sie ein Format nehmen und davon natürlich dann wissen wie es aufgebaut ist. Klar einfach so kann mans nicht wissen, aber derjenige, der das Format entworfen hat, wird das ja nicht einfach so machen und vergessen wie das war, sondern es dokumentiert haben ;)
Weil herauszufinden wie das ganze Aufgebaut ist, ist denke ich mal nicht ohne weiteres möglich, vor Allem wenn es ein nicht menschen lesbares Format ist, welches in einem Texteditor bearbeitbar ist.

Und keinerlei Informationen ist schlecht nichtmal eine Dateiendung? Anhand der könnte man es shcon Indentifizieren ansonsten suchen, welches Format das Spiel genutzt hat und gucken ob das hinhaut.
mfg revolte

_________________
System: Phenom XII X4 955 3,21Ghz , GTX 560 TI, 4GB-Ram, Windows 7 64x


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 12:41 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
also es ist von Ragnarok Online

es sind im ganzen 3 dateien und dann auch die Texturen.
RSW (Resource World File)
GAT (Ground Altitude File)
GND (keine Ahnung)

Zitat:
I'm not sure what GND and RSW files really are. But it seems that offset 166-169 (32-bit x86 floating point) in the RSW file represents the water level of the map.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 12:44 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Zitat:
Die können ja auch nicht sofort wissen wie eine Datei aufgebaut ist.

Sofort natürlich nicht, aber ich schätze, es hat etwas mit Hartnäckigkeit zu tun. Viele Spiele haben ein proprietäres (nicht veröffentlichtes) Model-Format, aber man kriegt trotzdem Hinweise im Web, wo man ansetzen muss. Die Leute "knacken" Formate einfach. Wenn sich die Spielehersteller davon Publicity (genauer: mehr Umsatz) versprechen, unternehmen sie einfach nichts dagegen. Es bilden sich manchmal ganze Communities, die Spielecontent herstellen, also zusätzliches Zeug für Spiele, nimm etwa mal die Sims. Wenn die Spielehersteller das grundsätzlich in ihren Lizenzbedingungen verboten haben, befindet sich die ganze Community in einer rechtlichen Grauzone. Es sind ein Haufen Kinder darunter, die gar nicht wissen, in welcher Gefahr sie sich eigentlich befinden. Ich könnte jetzt sagen: Willkommen in der wirklichen Welt. 8)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 12:49 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
ja ich weiss dass es Gefahren mit sich bringt
Aber ich habe und hatte nie vor wenn ich nen Editor bastele ihn dann auch zu release.

Es ist zur meiner Vergnügung gedacht und als Training eigenltich auch.
Und ich kann mir so mal anschauen wie sowas aufgebaut ist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 13:02 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Hab kurz gegoogelt mit den Stichworten: Model Format "Ragnarok Online"

Und auf DAS gekommen: http://www.vsoftonline.com/blog/?page_id=58

Vielleicht hilft das?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 13:16 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
also Helfen tut es sicher
nur weiss ich nicht ob das genügt um eine Map zu laden.

Ich hab nur bei einem Editor gemerkt dass sie die glew32.dll benutzen
Keine Ahnung ob damit was anzustellen ist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 13:27 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
Ich hab bei der Site die Sie mir gegeben haben bei Links etwas sehr informatives gefunden:

Gat
GND
RSW

Wie müsste dieser Aufbau in Delphi aussehen?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 14:33 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Hey, Du musst hier nicht "Sie" sagen - wir sind hier alle per Du.

Ich hab es mir kurz angesehen, z.B. das GND:

* Field Size Type Description 0 Header 6 bytes Integer GRGN..
6 Size X 4 bytes Integer Size of field
10 Size Y 4 bytes Integer Size of field
14 Ratio 4 bytes Float Proportion Ratio usually 10.0
18 Texture Count 4 bytes Integer Number of textures used
22 Size of Texture 4 bytes Integer Size of Texture Path
{ Textures (Texture Path Size/2)
0 Path 40 bytes Char Path to file
40 ?? 40 bytes Char -


Die Spalte mit dem Stern drauf ist das Offset.

SizeX - 4bytes Integer: Das wäre in Delphi ein normaler Integer (wenn Du mit Win32 arbeitest), könnte aber auch ein Cardinal sein, was ich jetzt aber mal nicht annehme.
Ein Float mit 4Bytes ist ein Single (ein Float ist eine Gleitkommazahl).
Und ein Char ist ein Char.

Wenn Du mit Delphi arbeitest, müsstest Du die Definitionen der Integer- und Float-Typen in der Hilfe finden:
Stichworte: 1) Integer-Typen, 2) Reelle Typen (= Gleitkommazahlen)

Zumindest bei mir sind die Integers unter einem Stichwort mit Bindestrich zu finden, die Gleitkommazahlen kaben keinen Bindestrich. Als ich es beim erstenmal gesucht habe, hab ich ein bisschen gebraucht.
Viele Grüße,
Traude


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 14:44 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
Tut mir leid wurde gelehrt Manieren zu zeigen^^

Also würde das denn so aussehen:

Code:
  1.  
  2. Gnd = record
  3.     Header : Integer;
  4.     SizeX  : Integer;
  5.     SizeY  : Integer;
  6.     Ratio  : Single;
  7.     TextureCount  : Integer;
  8.     SizeOfTexture : Integer;
  9.     Path   : Char;
  10.     ___    : Char;
  11.   end;


{ Textures (Texture Path Size/2)
Diesen Abschnitt versteh ich nicht


Sind die anderen nun auch records?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 15:17 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
[edit] ops da waren ja noch ein paar posts dazwischen...das bezieht sich jetzt auf die .GAT Datei[/edit]
probiers mal so:

Code:
  1. type
  2.   TGATHeader = record
  3.     Header : array[1..6] of Char;
  4.     SizeX : Integer;
  5.     SizeY : Integer;
  6.   end;
  7.  
  8.   TGATRow = record
  9.     LeftBottom, RightBottom, LeftTop, RightTop : Single;
  10.     CellType : Byte;
  11.     DummyField : array[1..3] of Byte;
  12.   end;
  13.  
  14. var
  15.   GATHeader : GATHeader;
  16.   GATRow : array of array of TGATRow;
  17.  
  18.  
  19. procedure Read;
  20. var
  21.   x, y: integer;
  22.   F : File;
  23. begin
  24.   AssignFile(F, Dateiname);
  25.   Reset(F,1);
  26.  
  27.   // Header lesen
  28.   Read(F, GATHeader);
  29.  
  30.   // Header auf gültigkeit prüfen
  31.  
  32.   // Array dimensionieren
  33.   SetLength(GATRow, GATHeader.SizeX);
  34.   for x := 1 to GATHeader.SizeX do begin
  35.     SetLength(GATRow[x], GATHeader.SizeY);
  36.   end;
  37.  
  38.   // Zellen lesen
  39.   for x := 1 to GATHeader.SizeX do begin
  40.     for y := 1 to GATHeader.SizeY do begin
  41.       Read(F, GATRow[x, y];
  42.     end;
  43.   end;
  44.  
  45.   CloseFile(F);
  46. end;


Ich hab das jetzt nicht getestet, da ich keine .GAT Datei zur Hand habe und auch syntaktisch nicht geprüft weil ich zu faul war delphi zu starten.
Evtl. musst du noch x und y in der letzten Schleife vertauschen, falls die Zellen gespiegelt sind.

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 15:27 
Offline
DGL Member
Benutzeravatar

Registriert: So Apr 13, 2008 09:52
Beiträge: 30
Bekomm Meldung:

Read(F, GATHeader);
Read(F, GATRow[x, y]);

Haben zuviele Parameter


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 11, 2008 15:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
wie gesagt...ist nicht getestet...

aber da fehlte ein T in meinem listing :)
Code:
  1. var
  2.   GATHeader : TGATHeader;
  3.   GATRow : array of array of TGATRow;

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 22 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 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:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.010s | 15 Queries | GZIP : On ]