Chcę napisać analizator składni dla pliku .obj Blendera. Format pliku wydaje się być oczywisty, ale wydaje się również, że brakuje niektórych danych. Na przykład prosta kostka (domyślna kostka Blendera) ma 8 linii wierzchołków, ale spodziewałem się zobaczyć 36 linii (12 trójkątów tworzących sześcian).Jakie są specyfikacje pliku Waveob .obj?
Myślę, że zamieszanie, w leasingu dla mnie, wynika ze sposobu, w jaki kostki są tworzone w direct3d. Direct3d wymaga 36 wierzchołków, aby utworzyć sześcian. Myślę więc, że muszę wywnioskować pozostałe 28 wierzchołków. Tego rodzaju zgadywanie może powodować problemy w późniejszym czasie podczas próby przeanalizowania wierzchołków w celu uzyskania bardziej złożonych kształtów. Pomyślałem więc, że jeśli znajdę oficjalne specyfikacje w formacie pliku, może to dać mi pewien wgląd w interpretację danych.
Wygląda na to, że ktoś wcześniej zadał to samo pytanie: How to get proper number of vertices in OBJ file from DCC tools such as Blender for use in OpenGL ES? , ale nie miał dla mnie żadnych przydatnych informacji.
[Oto podstawowe wyjaśnienie] (http://jamwaffles.co.uk/tutorials/opengl/wavefrontloader/fileexplanation). Jest 8 wierzchołków, ale w dalszej części mamy dane _face_ (linie 'f'), które określają, które wierzchołki tworzą twarz. – Bojangles
Wystarczy napisać, że pliki OBJ blendera nie różnią się w żaden istotny sposób od innych plików OBJ (nie ma specjalnych danych tylko dla blendera), jeśli piszesz czytnik - możesz po prostu wyszukać dokumenty, aby obsługiwały specyfikację OBJ wavefront. – ideasman42
Witam! @James Czy skończyłeś parser? Czy to jest open source? Szukałem również dobrej specyfikacji _.obj_. Pracuję teraz także nad parserem. – im7mortal