Zombie-Games Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Mam probel z 3D Mam obj_ghost i chce zeby miał jakiś wygląd ! Ale tu pojawia się problem bo niewiem gdzie jest błąd ponieważ duszka wogule niewidać . Oto skrypt na rysowanie OBJ_GHOST DRAW GML d3d_draw_wall(x-8*global.camsin,y-8*global.camcos,19,x+48*global.camsin,y+8*global.camcos,3,tex,1,1); Gdzie tu jest błąd ! Jesli potrzeba więcej danych to napiszcie . PS Obrazek ducha jest wielkośći 64x64 ! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 4 Sierpnia 2014 Administratorzy Udostępnij Opublikowano 4 Sierpnia 2014 A co to jest tex? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 4 Sierpnia 2014 Autor Udostępnij Opublikowano 4 Sierpnia 2014 textura (sprite) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 ale czy to faktycznie textura czy sam sprite. Bo trzeba użyć jednej z funkcji która konwertuje sprit/background na texturę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 4 Sierpnia 2014 Autor Udostępnij Opublikowano 4 Sierpnia 2014 czyli jakiej ????? Prubowałem tak że wkleiłem sprite do BG ale nic niedało Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 sprite_get_texture(spr, subimg); background_get_texture(bck, subimg); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Czołg Krymski Opublikowano 4 Sierpnia 2014 Filar Społeczności Udostępnij Opublikowano 4 Sierpnia 2014 słuchaj, rówieśniku *ból serca*, w tym wyżej przytoczonym Twoim kodzie masz pięknie rozpisane parametry Twojego duszka. Jest tam też takie coś jak "tex". Jest to tzw zmienna, którą definiujemy w create tego duszka. A więc starczy, że w create dasz GML tex= sprite_get_texture(nazwatextury,0); albo GML tex= background_get_texture(nazwatextury,0); zależnie od tego, czy Twoja textura jest spritem, czy backgroundem. Pamiętaj też, by nigdy nie nazywać textury tak samo jak obiekt, ogólnie musisz pamiętać, by żadna nazwa w Twoim projekcie się nie powtarzała, nieważne czy to path, czy nawet skrypt edit: skarbie, proszę zrób też coś z ortografią, bo poprawna polszczyzna źródłem sukcesów w życiu prywatnym i zawodowym Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 4 Sierpnia 2014 Autor Udostępnij Opublikowano 4 Sierpnia 2014 W : OBJ_GHOST : CREATE: GML z = -60 tex = sprite_get_texture(spr_ghost,0) z1 = z z2 = z+12 zgrav = 0 STEP: GML z1 = z z2 = z+12 zgrav -= 0.3 z += zgrav if distance_to_object(obj_player) > 100 { sound_play(snd_enemy_psycho) } DRAW: GML d3d_draw_wall(x-8*global.camsin,y-8*global.camcos,19,x+48*global.camsin,y+8*global.camcos,3,tex,1,1); Oto wszystkie skrypty znajdujące się w OBJ_GHOST . edit: skarbie, proszę zrób też coś z ortografią, bo poprawna polszczyzna źródłem sukcesów w życiu prywatnym i zawodowym Na ortografię zawsze zwracam uwagę tylko że tego posta x2 wyżej pisałem z pośpiechu :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Czołg Krymski Opublikowano 4 Sierpnia 2014 Filar Społeczności Udostępnij Opublikowano 4 Sierpnia 2014 czy Twoja textura na pewno nazywa się spr_ghost i czy na pewno jest spritem, a nie backgroundem? I czy nie ma może innego sprita o tej samej nazwie? W razie czego pisz na priv, możesz mi wysłać cały project i zobaczę co się nie klei Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Ogólnie to zarzuć jeszcze jak masz zrobioną kamerę. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 4 Sierpnia 2014 Autor Udostępnij Opublikowano 4 Sierpnia 2014 A oto Kamera :) : OBJ_PLAYER (to jest kamera tylko tak nazwałem ;) ) : CREATE: GML friction =.2 zdirection = 0 xpre = 0 ypre = 0 dir = 0 d3d_start() d3d_set_hidden(1) d3d_set_lighting(0) d3d_set_culling(0) texture_set_interpolation(1) d3d_set_fog(1,c_black,-1000,200) sound_play(snd_play) // dzwięk odtwarzany podczas gry global.camx = x; global.camy = y; global.camsin = sin(direction*pi/180); global.camcos = cos(direction*pi/180); STEP: GML dir -= (display_mouse_get_x()-display_get_width()/2)/8 zdirection += (display_mouse_get_y()-display_get_height()/2)/6 if (zdirection<-80) zdirection=-80 else if (zdirection>80) zdirection = 80 display_mouse_set(display_get_width()/2,display_get_height()/2) Collision with OBJ_PARENT_WALL: GML { x = xprevious y = yprevious if (abs(hspeed) >= abs(vspeed) && not place_meeting(x+hspeed,y,obj_parent_wall)) { x += hspeed; exit;} if (abs(vspeed) >= abs(hspeed) && not place_meeting(x,y+vspeed,obj_parent_wall)) { y += vspeed; exit;} speed = 0; } Keyboard W : GML motion_add(dir,.4) speed=min(speed,2) -^- S: GML motion_add(dir+180,.4) speed=min(speed,2) motion_add(dir+90,.4) speed=min(speed,2) -^- A: GML motion_add(dir+90,.4) speed=min(speed,2) -^- D : GML motion_add(dir+270,.4) speed=min(speed,2) i DRAW : GML d3d_set_projection(x,y,40,x+cos(dir*pi/180),y-sin(dir*pi/180),40-sin(zdirection*pi/180),0,0,1) draw_set_alpha(1) draw_set_color(c_white) d3d_draw_floor(0,0,0,room_width,room_height,0,background_get_texture(bg_floor),room_width/8,room_height/8) d3d_draw_floor(0,0,64,room_width,room_height,64,background_get_texture(bg_ceiling),room_width/8,room_height/8) To chyba mój największy post :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 4 Sierpnia 2014 Udostępnij Opublikowano 4 Sierpnia 2014 Więc tak kamera używa: x+cos(dir*pi/180), y-sin(dir*pi/180) a wall próbujesz obracać do zmiennych global.camsin = sin(direction*pi/180); global.camcos = cos(direction*pi/180); które nic nie robią bo są w create i w sumie tak z dupy tam są, tym bardziej że do obrotu kamerą używasz zmiennej dir a nie direction. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 5 Sierpnia 2014 Autor Udostępnij Opublikowano 5 Sierpnia 2014 OK problem rozwiązany Tu był błąd GML z = -60 tex = sprite_get_texture(spr_ghost,0) z1 = z z2 = z+12 zgrav = 0 Wystarczyło GML z = -60 zmienić na GML z = 60 Po prostu sprite wchodził pod ziemie :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Zombie-Games Opublikowano 5 Sierpnia 2014 Autor Udostępnij Opublikowano 5 Sierpnia 2014 Dobra teraz inny problem : Sprite jest ale nie obraca się w stronę gracza > Co tym razem !! Wszystkie skrypty parę postów wyżej :helpsmilie: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Sutikku Opublikowano 5 Sierpnia 2014 Udostępnij Opublikowano 5 Sierpnia 2014 Dobra teraz inny problem : Sprite jest ale nie obraca się w stronę gracza > Co tym razem !! Wszystkie skrypty parę postów wyżej :helpsmilie: Nie jestem zbyt dobry w 3D, ponieważ stanąłem na rysowaniu ścian, sufitu, podłogi i poruszaniu kamery ale jedno wiem! Jest ZNACZĄCA różnica między draw_wall, a draw_block, (nie pamiętam dokładnie, nazw funkcji). Zmień z draw_wall, na draw_block. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 5 Sierpnia 2014 Udostępnij Opublikowano 5 Sierpnia 2014 Już ci napisałem gdzie masz błąd. Obracasz ten sprit do niewłaściwej zmiennej. 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ę