У меня возникла странная проблема, позволяющая правильно настроить мой уровень на основе tilemap. На оси y все плитки являются нормальными и выровнены, вместо этого на оси x они, кажется, делятся на пробел, я не могу понять, почему ...Правильно отображать Tilemap на экране
Я создал матрицу с значениями перечисления (от 0 до 2), и я циклически менял свою матрицу в a для цикла , чтобы отобразить плитку с текущим номером: ex. GROUND = 0; и т.д ...
Вот фотография того, что он выглядит как http://it.tinypic.com/r/ali261/8
Вот спрайт для плитки http://it.tinypic.com/r/21kggw5/8
я добавлю код здесь.
for(int y = 0; y < 15; y++)
{
for(int x = 0; x < 20; x++)
{
if(map[y][x] == GROUND)
render(tileTex,x*64 - camera.x,y*64 - camera.y,&gTileSprite[0],0,NULL,SDL_FLIP_NONE);
else if(map[y][x] == UGROUND)
render(tileTex,x*64 - camera.x,y*64 - camera.y,&gTileSprite[1],0,NULL,SDL_FLIP_NONE);
else if(map[y][x] == SKY)
render(tileTex,x*64 - camera.x,y*64 - camera.y,&gTileSprite[2],0,NULL,SDL_FLIP_NONE);
tBox[y][x].x = x*64;
tBox[y][x].y = y*64;
tBox[y][x].w = TILE_WIDTH;
tBox[y][x].h = TILE_HEIGHT;
}
}
Вы пытались сравнить плитку размером 64x64 с помощью спрайт-карты с одиночной плиткой размером 64x64, отображаемой на экране? Трудно сказать, не видя спрайта, но похоже, что на плитки происходит фильтрация (сглаживание). Если плитки окружены прозрачными областями, крайние пиксели могут стать размытыми (смешанными) с прозрачными пикселями. Видеть спрайт-лист определенно будет преимуществом в диагностике этой проблемы. Приведенный выше код не показывает мне никаких очевидных проблем. – enhzflep
Я добавил его сейчас @enhzflep – Steve
вы гениальный мой друг @enhzflep благодаря вам я нашел проблему, которая на самом деле была на tilemap. Я увеличил изображение, и я нашел эти проклятые размытые пиксели! пожалуйста, сделайте ответ, чтобы я мог принять ваш ответ. Steve – Steve