mallo Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 Witajcie ludziska, po raz pierwszy robię grę 3D, i póki co wszystko było pięknie, dopóki nie dodałem oświetlenia wokół gracza (używając "d3d_light_define_point"), dla efektu podziemi. Teraz, kiedy się przybliżam, ściany się robią ciemniejsze, a kiedy się oddalam - jaśniejsze. O_o Co dziwniejsze, oświetlenie dobrze działa na podłodze/suficie. (Jak by co, ten żyrandol to też jest ściana, ale ona się obraca do gracza ciągle) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 wektory normalne zle ustawiasz. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
mallo Opublikowano 30 Listopada 2013 Autor Udostępnij Opublikowano 30 Listopada 2013 No niby tak, ale jeśli zamiast (na forum GM czytałem, by tak zrobić) d3d_draw_wall(x2,y2,z+16,x1,y1,z,tex,1,1); wpiszę d3d_draw_wall(x1,y1,z+16,x2,y2,z,tex,1,1); to wtedy jedna strona tekstury, (ta, na którą chcę patrzeć) jest cała czarna, chyba, że wyłączę oświetlenie. To jak je dobrze ustawić?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 Nie można ustawiać normalnych w funkcji d3d_draw_wall(). Ale możesz zrobić własny model w blenderze z dobrymi wektorami, lub zrobić model składający się z 4 wierzchołków z dostępnych funkcji w GM. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
mallo Opublikowano 1 Grudnia 2013 Autor Udostępnij Opublikowano 1 Grudnia 2013 Dziękuję wam za pomoc, ale... co to ten normalny wektor? Jak używam tego d3d_vertex_normal_texture, to wtedy ściana jest niewidzialna. :/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 Skoro już blendera masz to załaduj sobie jakiś model, wejdź edit mode [tab] otwórz panel klawiszem [N] i znajdź przyciski normals. Są dwa: Face normal i Vertex normals. Jak się robi model tymi funkcjami d3d_vertex_normal_texture to te tutaj są właśnie Vertex Normalami. Włącz sobie ich podgląd w blenderze i zobacz jak to wygląda. To jest po prostu trójwymiarowy wektor wychodzący z wierzchołków. Jak światło pada w tym samym kierunku ale przeciwnym zwrocie co ten vector "vertex normal" to ten wierzchołek jest oświetlony najmocniej. Z odpowiednim ustawieniem tych vertex normali można stworzyć gładsze lub ostrzejsze cieniowanie modelu. Jak vertex normale będą równoległe do face normala to model będzie miał ostre cieniowanie a nie miękkie. Mała dygresja: Funkcja d3d_set_smooth() konfiguruje światło tak że reaguje albo na face normale albo na vertex. Jak jest d3d_set_smooth(true) to światło będzie gładkie ale pod warunkiem że model nie ma równoległych vertex normali do face normala. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Darkhog Opublikowano 2 Grudnia 2013 Udostępnij Opublikowano 2 Grudnia 2013 Mógłbyś wytłumaczyć jak ustawiać vertex normale? Bo mimo używania blendera od wersji 2.43, nie mam pojęcia jak to robić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się