Autor Wątek: [C++] Export danych mesha 3d do tablicy  (Przeczytany 1496 razy)

Offline slowbro

  • Użytkownik

# Styczeń 01, 2018, 13:51:05
Cześć

Znacie może jakieś nadrzędzie (plugin do softu 3d) umożliwiające wyeksportowanie i zapisanie danych mesha 3d do tablicy C++, którą następnie można zainkludować do kodu? Interesuje mnie zapisywanie do tablicy współrzędnych wierzchołków oraz koordynatów tekstury obiektu. Może istnieje jakiś konwerter?

Pozdrawiam

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Kyroaku

  • Użytkownik

# Styczeń 01, 2018, 18:05:02
Chcesz z edytora grafiki 3D wyeksportowac plik źródłowy, zawierający tablicę w C++? Po co?.

Jeśli jednak chodzi Ci o ładowanie modeli 3D z pliku, to mam 4 propozycje:
  • .obj - format tekstowy. Bardzo przyjemny do implementacji własnego parsera, bo można po prostu podejrzeć dane chociażby w notatniku. Upośledzony jednak, jeśli chodzi o późniejsze zastosowanie - dużo zajmuje, wolno się ładuje i jeśli dobrze pamiętam, to raczej nie zapisuje się w tym wielu informacji o scenie.
  • Assimp - biblioteka do ładowania modeli z przeróżnych formatów (osobiście używam .dae - Autodesk Collada). Tym już załadujesz prawie wszystko :P Od wierzchołków, normalnych, tangesów, po animacje szkieletowe, światła, kamery.
  • Własny format plików - można napisać plugin do np 3DS Max'a, który wygeneruje Ci plik z tym, czego potrzebujesz w takiej formie, jakiej chcesz. Na upartego nawet plik .h z tablicą wierzchołków i texcoordów. Zdecydowanie będzie to najlepsza opcja, ale wymaga trochę więcej pracy.
  • .3ds - binarny format od 3DS Max'a. Jeśli .obj Cię nie przekonuje, a nie chcesz korzystać z gotowych rozwiązań, jak Assimp, to mogę polecić .3ds. Napisałem kiedyś tego loader i w sumie to była fajna zabawa ;) Taka trochę łamigłówka.

Offline slowbro

  • Użytkownik

# Styczeń 01, 2018, 23:17:26
Dzięki za propozycje. Potrzebuje dane mesha mieć w postaci tablicy; idealnie w postaci pliku .h do dołączenia do kodu. Potrzebuje mieć to w takiej postaci, ponieważ robię rozpoznanie i przymiarki do napisania demoscenowego intra 64 kb.

Offline Kyroaku

  • Użytkownik

# Styczeń 02, 2018, 00:48:43
Wydawało mi się, że w takich demkach chodzi o to, że scene się generuje i animuje programowo. Takie "includowanie scen" brzmi jak oszukiwanie.

Offline slowbro

  • Użytkownik

# Styczeń 02, 2018, 09:36:17
Obydwa podejścia są dobre.

Offline MDW

  • Użytkownik
    • www.encore-games.com

  • +1
# Styczeń 02, 2018, 20:13:13
Wydawało mi się, że w takich demkach chodzi o to, że scene się generuje i animuje programowo. Takie "includowanie scen" brzmi jak oszukiwanie.
W intro-compo wszystko jest dozwolone. Ograniczenie wielkości pliku wykonywalnego jest ostre więc nawet napakowanie przeliczonych scen jest sztuką. :)

Offline Avaj

  • Użytkownik

# Styczeń 02, 2018, 23:13:54
Znajdź sobie eksporter modeli do JSONa albo XMLa. Wtedy wystarczy nawiasy kwadratowe albo przecinki dodać i już masz C++.