Pisał tu ktoś może jakąś "tile based" grę w SDL? Mam problem z płynnością i nie wiem, w którym miejscu mam błąd :/ Mogę wstawić kod jak będzie więcej zainteresowanych #naukaprogramowania #cpp
@czlenson95: Mam na razie tylko narysowaną plansze i wygenerowaną na niej kwadraty jak coś xD Żadna to jeszcze gra, jeśli to cie ciekawi :P Próbuję wyeliminować problemy z optymalizacją od razu niż później z tym walczyć.
Problem z płynnością mam podczas przesuwania planszy, bo mimo, że fps mam ustawione na 60 to ekran "przeskakuje" o drobne piksele.
Próbuję wyeliminować problemy z optymalizacją od razu niż później z tym walczyć
@TenAnonToKlopoty: Właśnie najpierw powinieneś napisać działający kod a dopiero później brać się za optymalizację. Może pokaż kod to ktoś będzie w stanie coś pomóc.
@kostur86: Możliwe, że tak czasem jest, ale tutaj muszę zbudować jakieś podstawy i jak one będą słabe to później będzie ciężko je zmienić. https://pastebin.com/skL9zjtW brakuje tutaj Input.h i .cpp, ale one raczej nie są potrzebne do mojego problemu
@TenAnonToKlopoty: Nie jestem ekspertem, ale wydaje mi się że powinieneś używać OpenGL - narysować to na teksturze i następnie zmieniać jej położenie lub parametry u/v wtedy sterowniki karty będą mogły przyspieszyć wyświetlanie. Możesz pewnie użyć http://www.lonesock.net/soil.html albo uczyć się o OpenGL
@kostur86: I to będzie działać ogólnie z tym co mam tu w SDLu napisane? Pytam bo nie znam się jakoś bardzo, SDL pierwszy raz dotknąłem parę dni temu :D
@kostur86: Ok, myślałem na początku, że to mój algorytm, mój sposób myślenia o rysowaniu tego na ekranie był nieprawidłowy, a SDL_image wystarczał do tego.
@kostur86: Zdaje sie po to ktos uzywa wysokopoziomowych bibiliotek zeby sie nie #!$%@? z openglem bezposrednio tylko go schowac za mozliwie duza iloscia abstrakcji.
@TenAnonToKlopoty: Mysle, sobie ze moze najpierw ustal jaki jest problem. Osiagasz faktycznie to zalozone 60 fps czy mniej? Jak mniej to sie zastanow dlaczego. Jak masz 60 to znaczy, ze problem nie jest w wydajnosci tylko np. za duze przesuniecie robisz i stad wrazenie skakania.
@simia: Mogę zerknąć. Jeszcze co do tych FPSów to zmodyfikowałem troszkę część kodu, która zajmowała się nimi na:
if ((1000 / fps) > (SDL_GetTicks() - time)) { fps++; SDL_Delay(1000 / fps - ((SDL_GetTicks() - time))); } else fps--; I działa płynniej pod względem tych "skoków", ale po wyświetleniu tych FPSów okazuje się, że nie osiągam ich, tylko skacze między 40 a 60.
Mogę wstawić kod jak będzie więcej zainteresowanych
#naukaprogramowania #cpp
Próbuję wyeliminować problemy z optymalizacją od razu niż później z tym walczyć.
Problem z płynnością mam podczas przesuwania planszy, bo mimo, że fps mam ustawione na 60 to ekran "przeskakuje" o drobne piksele.
@TenAnonToKlopoty: Właśnie najpierw powinieneś napisać działający kod a dopiero później brać się za optymalizację.
Może pokaż kod to ktoś będzie w stanie coś pomóc.
https://pastebin.com/skL9zjtW
brakuje tutaj Input.h i .cpp, ale one raczej nie są potrzebne do mojego problemu
SDL_Surface *img_ground = IMG_Load("ground.bmp"),
//...if ((1000 / fps) > (SDL_GetTicks() - time))
{
fps++;
SDL_Delay(1000 / fps - ((SDL_GetTicks() - time)));
}
else
fps--;
I działa płynniej pod względem tych "skoków", ale po wyświetleniu tych FPSów okazuje się, że nie osiągam ich, tylko skacze między 40 a 60.