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

Aktuelle Zeit: Do Apr 18, 2024 22:07

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



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: glTF
BeitragVerfasst: Mi Sep 09, 2015 10:53 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Beim klicken durch die github-Repositories von Khronos bin ich auf glTF gestoßen. Das ist ein Modellformat welches analog zu den GPU-Nahen Texturformaten ebenfalls GPU-Nah sein soll. Hat damit schonmal jemand was gemacht? Hat sich jemand die Spec schonmal reingezogen?

Ich seh da auf dem ersten Blick JSON, was mir schonmal weh tut. Und ich bin mir nicht sicher, wie sinnvoll der Approach ist. Ich meine, gerade sowas wie Materialien behandelt man ja in Engines durchaus unterschiedlich.

viele Grüße,
Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTF
BeitragVerfasst: Mi Sep 09, 2015 16:24 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Ich hab damit schonmal rumgespielt. Das Format kommt aus der OpenGL ES Ecke (ich glaub die Leute von Cesium entwickeln da federführend), deshalb wohl auch JSON.

Aber die eigentlichen Daten liegen ja binär vor, der JSON-Teil beschreibt dann ja nur die Szene, ist also relativ knapp gehalten.

Daneben beinhaltet es auch die Shader, wobei das (wie du sagts) i.d.R. eh keinen Sinn macht weil die ja aus der Engine gesetzt werden.

Für mich ist das Format aber bisher nur im Zusammenhang mit WebGL interessant, ansonsten bleib ich bei .X. Aber mal sehen, wenn ASSIMP Support für glTF bekommt, und die DCC Tools die ich benutz ordentliche Im- und Exporter überleg ich mirs nochmal ;)

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTF
BeitragVerfasst: Do Sep 10, 2015 09:19 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Sascha Willems hat geschrieben:
Aber die eigentlichen Daten liegen ja binär vor, der JSON-Teil beschreibt dann ja nur die Szene, ist also relativ knapp gehalten.

Mit gzip/xz/lzma/whatever ist danach auch nicht mehr viel von übrig, darum mache ich mir keine Sorgen eigentlich. Wahrscheinlich ist JSON sogar das richtige Tool, ich seh’s nur immer mit einem weinenenden Auge, wenn Leute auf JSON XML-Features drauftackern (namespaces, schemata…). Aber ich will hier jetzt bloß keinen XML-JSON-War lostreten.

Sascha Willems hat geschrieben:
Daneben beinhaltet es auch die Shader, wobei das (wie du sagts) i.d.R. eh keinen Sinn macht weil die ja aus der Engine gesetzt werden.
Eben! Das verwirrt mich. Ich meine, gerade im WebGL oder Embedded-Kontext will man doch Resourcen schonen. Und zumindest ich hab bei meinen Anwendungen sehr oft sehr ähnliche wenn nicht gar gleiche Shader (v.a. seit ich dieses One-Shader-To-Rule-Them-All-Unreal-Zeug (linktrenner) von diesem Physically Based Shading course hier kenne). Da hat es keinen Sinn, die im Material mitzuführen, eher will ich ein Material was mir genau die Properties vom Unreal Shader angibt.

Sascha Willems hat geschrieben:
Für mich ist das Format aber bisher nur im Zusammenhang mit WebGL interessant, ansonsten bleib ich bei .X
Wenn man sowieso schon ASSIMP verwendet ist man sowieso sehr flexibel.

viele Grüße,
Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTF
BeitragVerfasst: Do Sep 10, 2015 15:03 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 18, 2004 16:45
Beiträge: 2621
Wohnort: Berlin
Programmiersprache: Go, C/C++
Bei WebGL ist es ein natives Format, weil json ist native in Javascript supported und der binäre Datenblob wird direkt an WebGL weiter gegeben.
Für nicht WebGL ist es eher ein hantliches Intermediate Format.
Json ist schneller und mit weniger Code zu parsen als XML und für Objekte ist es übersichtlicher.
Es erinnert mich ein bisschen an Collada.

Ich hab allerdings auch schon mit einem eigenen Format gearbeitet, was auch mit Json als Logik und Binary Streams im zip Archive kommt und ein parser dafür ist super schnell und einfach programmiert. Das ist für Intermediate Formate wichtig.

Collada tut glaube ich die Binary Streams mit Base85 kodieren, damit es im XML liegen kann.

Für Intermediate benutzt ich FBX und Collada, weil FBX SDK von Autodesk ziemlich hantlich ist, beide Formate kann und die von vielen Tools unterstützt wird.
Das Format selber ist aber super gruselig.

_________________
"Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren"
Benjamin Franklin

Projekte: https://github.com/tak2004


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTF
BeitragVerfasst: Di Sep 15, 2015 19:35 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Interessant finde ich auch die Möglichkeit Open3DGC zu benutzen. Hab das mal grade gemacht :

Code:
  1. collada2gltf.exe -f vulkanscene_enhanced.dae -c Open3DGC -m binary -p


Und aus der COLLADA-Scene mit ~12 MByte ist ein glTF -File mit nur noch 1,4 MByte geworden. Klar, unfairer Vergleich, aber endlich auch mal Kompression für 3D Modelle und nicht nur Texturen.

Mal schauen wie sich das aufs Modell auswirkt. Ohne Open3DGC waren es als glTF (binär) circa 8 MByte. Grade im Web spielt die Downloadgröße ja eine Rolle. Wenn der Download also länger dauert als das Entpacken der Daten dürfte das was bringen.

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


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 22 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.197s | 17 Queries | GZIP : On ]