Skocz do zawartości

Kurs cz. II


lion

Rekomendowane odpowiedzi

Witam! Jako, że nie mam co robić o 3:00 nad ranem, postanowiłem napisać drugą część kursu :D Dzisiejszy kurs pokaże jak zrobić grę 3D z widokiem z lotu ptaka (GTA2).

 

Na początku przygotujmy wszystkie niezbędne sprite'y i tekstury. Zacznijmy od ludzika, sprite z jego rysunkiem nazwiemy spr_camera. Teraz malujemy dach budynku i nazywamy go spr_building.

 

Teraz przechodzimy do background'ów, będą one służyć nam jak tekstury. Najpierw tekstura budynku, czyli ściany (rysujemy cegiełki, okienka, dzrzwi itp.) tekturę nazywamy bac_building. Drugim bacgroundem będzie ulica, rysujemy asfalt czy co tam sobie chcecie i zapisujemy jako bac_road. Z malowaniem to tyle w tym kursie.

 

Przejdźmy do obiektów, na pierwszy odstrzał idzie obj_camera. Tworzymy eventy Creat i Step, w create dajemy taki kod:

d3d_start();
draw_set_color(c_white);

 

Zaś w step:

 

if (place_free(x,y+8)&&keyboard_check(vk_up)) { y+=8; }
if (place_free(x,y-8)&&keyboard_check(vk_down)) { y-=8; }
if (place_free(x+8,y)&&keyboard_check(vk_right)) { x+=8; }
if (place_free(x-8,y)&&keyboard_check(vk_left)) { x-=8; }

 

Tym oto sposobem stworzyliśmy sterowanie naszego ludzika, ale na tym nie kończymy. Tworzymy obiekt obj_road, w Create dajemy mu kod:

 

tex=background_get_texture(bac_road);

 

Zaś w draw:

 

d3d_draw_floor(0,0,0,room_width,room_height,0,tex,room_width/32,room_height/32);

 

Dzięki temu skryptowi mamy gotowe podłoże. Teraz ostatni obiekt (pewnie nie mogliście się doczekać) obj_building, w obiekcie stworzymy model budynku i nałożymy na niego dwie tekstury, które wcześniej przygotowaliśmy. Zrobimy to tak: w Create

tex=background_get_texture(bac_building);
tex2=sprite_get_texture(spr_building,0);

 

a w Draw:

 

// tutaj zagadka dla was żebyście coś przynajmniej zrozumieli

d3d_draw_block(x,y,0, x+128,y+128,-128, tex,1,1);

d3d_draw_floor(x,y,-128, x+128,y+128,-128, tex2,1,1);

 

Na koniec tworzymy room i wwaliamy do niego wszystkie obiekty, to tyle tej części kursy. Troche to zagmatwane, ale pisałem to o 3:00 rano, a przynajmniej zaczelem bo teraz jest za 5 min 4:00 :P

Odnośnik do komentarza
Udostępnij na innych stronach

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ę
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...