Autor Wątek: Wczytywanie modeli 3D z blendera do mojej gry - pytania  (Przeczytany 6634 razy)

Offline Kos

  • Użytkownik
    • kos.gd

# Grudzień 07, 2011, 18:35:38
Nie ma różnic międzmy takimi rozwiązaniami? Chodzi mi tutaj o ilość klatek na sekundę :)
No bo skoro wczytam na raz całą mapę to boję się że jednak gra będzie potrzebowała troszkę więcej mocy kompa.
Dlaczego więcej? Może mniej :D, bo karta ma tyle samo do roboty (nawet mniej, bo obiektów nie musi przemnażać przez ich transformacje, a Ty masz wtedy tylko 1 draw call na całą geometrię. Musisz jednak wtedy upewnić się, że dasz radę całą wyrysować 1 shaderem i z 1 zestawem tekstur (atlas?).
Z drugiej strony, jeśli geometrii jest na tyle dużo, że Ci się coś krztusi, to wtedy dobrze jest scenę pociąć na obiekty (sekcje?) i wprowadzić jakąkolwiek formę cullingu per-sekcja.
Nie ma złotego środka.

Offline Mr. Spam

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

Offline DarkPeter

  • Użytkownik

# Grudzień 07, 2011, 20:19:25
Ilość takich ciągów typu 1/1/1 wskazuje ile face ma wierzchołków.
Ja akurat przykładowo dałem 3 (trójkąt), ale może być ich więcej, a nawet mniej (dla linii)

Te liczby wskazują indeksy w tablicach jak sobie już wczytasz.
Jednak nadal nie rozumiem.
Zrobiłem sobie w blenderze kwadrat:
Cytuj
# Blender v2.59 (sub 0) OBJ File: ''
# www.blender.org
mtllib kwadrat.mtl
o Plane
v -3.793847 0.139698 0.896998
v -3.793847 0.139698 2.896998
v -5.793847 0.139698 2.896998
v -5.793846 0.139698 0.896998
usemtl
s off
f 1 4 3 2

Na i w ostatniej linijce jest: 1, 4, 3, 2
Co mam teraz brać pod uwagę?

Offline Kos

  • Użytkownik
    • kos.gd

# Grudzień 07, 2011, 20:50:09
"1 4 3 2" jest równoznaczne "1// 4// 3// 2//", czyli bez normalnych i texcoordów.

Olej obj. :)

Offline DarkPeter

  • Użytkownik

# Grudzień 07, 2011, 21:11:30
"1 4 3 2" jest równoznaczne "1// 4// 3// 2//", czyli bez normalnych i texcoordów.

Olej obj. :)
W takim razie co mam zrobić?

Offline Kos

  • Użytkownik
    • kos.gd

# Grudzień 07, 2011, 21:25:08
Miałeś napisane, że PLY jest prostszy, bo się doskonale mapuje na VBO (i może mieć więcej atrybutów). http://people.cs.kuleuven.be/~ares.lagae/libply/ply-0.1/doc/PLY_FILES.txt

Offline DarkPeter

  • Użytkownik

# Grudzień 13, 2011, 19:04:49
Udało mi się wczytać obiekt z OBJ'a :D
Tylko mam jeszcze jedno małe pytanie: które linijki odpowiadają za texcoordy?

Offline JasonVoorhees

  • Użytkownik
    • FotoGry

# Grudzień 13, 2011, 19:17:28
Napisalem w pierwszej odpowiedzi w tym temacie, vt.

Offline DarkPeter

  • Użytkownik

# Grudzień 13, 2011, 19:19:45
Napisalem w pierwszej odpowiedzi w tym temacie, vt.
Problem w tym, że wczytałem do OBJ'a oteksturowany plik i o dziwo żadna linijka nie zaczyna się od vt 0.o

Offline Kos

  • Użytkownik
    • kos.gd

# Grudzień 13, 2011, 19:24:56
To znaczy, że ten model nie ma texcoordów. Texcoordy i normale są opcjonalne w obj.

Offline Kos

  • Użytkownik
    • kos.gd

# Grudzień 13, 2011, 19:26:30
Jeśli sam eksportowałeś z obj, to nie zaznaczyłeś pewnie tej opcji:


Offline DarkPeter

  • Użytkownik

# Grudzień 13, 2011, 19:36:45
Mam to zaznaczone.
Natomiast nie jestem pewien czy ta tekstura rzeczywiście została nałożona.
Na "Renderze" nie ma tej tekstury.
Nie jestem za bardzo obeznany w blenderze ^^

Offline voytech

  • Użytkownik

# Grudzień 13, 2011, 19:38:23
@Kos: jak nie ma koordynat to ta opcja będzie zignorowana.


Offline DarkPeter

  • Użytkownik

# Grudzień 13, 2011, 19:59:21
@Kos: jak nie ma koordynat to ta opcja będzie zignorowana.


Mam coś takiego tam.
Ale jak w ogóle się te tekstury wczytuje? Ba ja nawet ich w blenderze nie wiedze. A skoro nie ma tekstur to nie ma UV.

Offline Vxx

  • Użytkownik

# Grudzień 13, 2011, 20:08:05
Ogólnie chodzi o to, że Blender nie zapisze żadnych UV (nawet z zaznaczoną opcją "Include UVs"), jeśli do modelu nie jest przypisana żadna tekstura, nie jest ważne czy pusta, proceduralna czy z pliku.

Offline DarkPeter

  • Użytkownik

# Grudzień 13, 2011, 20:10:25
No ale jak ją przypisać?