Valve BSP loader



  • Hallo Leute,
    ich bin schon seit ca. 2 Monaten am DirectX API lernen und wollte jetzt anfangen Modele reinzuladen um dan weiterarbeiten zu können.
    Da ich bei manchen selbstgemachten Engines die Maps von Half Life 2 usw. gesehen habe ,dachte ich mir das auch als Model bzw. Map verwende.

    Meine Fragei st jetzt ob man einen normalen BSP loader dafür braucht ,da die Maps als bsp File vorliegen oder man irgendwas beachten sollte.Natürlich währe ein Verweis auf einen schon vorhandenen Loader in C/C++ besser 😉

    Vielen Dank



  • Bei einer .bsp Datei handelt es sich nicht einfach nur um ein Model. Das ist ein weitaus komplexeres Format, da eben eine komplette Map darin gespeichert ist, inkl. verschiedenster Datenstrukturen zum effizienten Rendern riesiger Level und whatnot.
    Wenn du nur irgendwelche Modelle laden willst, dann würd ich dir erstmal zu einem einfachen Format wie z.B. .obj raten. Es ist imo eine sehr wertvolle Erfahrung sowas mal selbst zu schreiben. Ansonsten gibts natürlich fertige Libraries wie z.B. assimp.



  • Ich weiß schon ,dass BSP nicht nur ein Model ist,war auch iwie bischen falsch formuliert.
    Ich hab in der Valve SDK was über die BSP files gefunden unteranderem die verschiedeen chunks.Werde mal versuchen dazu einen loader zu schreiben....

    Eine Frage.Ich bin mir nicht ganz sicher aber wird in den BSP Dateinen auf Modeldateinen verwiesen oder werden die direct in die BSP Datei geschrieben??



  • Bob Wolfskin schrieb:

    Eine Frage.Ich bin mir nicht ganz sicher aber wird in den BSP Dateinen auf Modeldateinen verwiesen oder werden die direct in die BSP Datei geschrieben??

    Hängt davon ab. Auf die Modelle der verschiedenen Entities dürfte normalerweise verwiesen werden...



  • Ok ich werde lieber erstmal einfachere Modeldatein laden.Dazu wollte ich Obj Files benutzen.
    Kann mir jemand sagen ,was gearde so das schnellste Filestream protocol ist bzw. was die schnellste Filestream bibliothek für C/C++ ist?

    Dankesehr



  • Hast du denn ein Performacneproblem? Verwend einfach die normalen C++ Streams und fertig 😉


Anmelden zum Antworten