Как объявить массив SDL_Surface

Переписываю код с паскалеподобного языка MidletPascal, на c++ и программно рисую графику через SDL2.

Как объявлять массив с типом SDL_Surface?

...
tex:array [0..255] of image;//Объявление массива текстур типа image
...

procedure loadtexture;
 var
  ix,iy,iz:integer;
  im:image;
 begin
  im:=loadimage('/terrain.png');
  iz:=0;
  for iy:=0 to 15 do
  for ix:=0 to 15 do
   begin
    tex[iz]:=rotate_image_from_image(im,ix*16,iy*16,16,16,0);
    iz:=iz+1;
   end;
 end;

Функция rotate_image_from_image принимает:

1 аргументом - картинку из которой нужно копировать участок

2 и 3 аргументом - координаты (x,y) от которых нужно начинать

И 4 и 5 аргумент - ширину и высоту копируемой текстуры шириной 16x16

5 не используется;

Возвращает тип image

//Просто hello world:
#include <SDL2/SDL.h>

int main(int argc, char *argv[]) {
  SDL_DisplayMode displayMode;
  SDL_Window *window;
  SDL_Surface *screenSurface;

  SDL_Init(SDL_INIT_EVERYTHING);
  SDL_GetDesktopDisplayMode(0, &displayMode);
  window = SDL_CreateWindow("Hello World!", SDL_WINDOWPOS_UNDEFINED,
                            SDL_WINDOWPOS_UNDEFINED, displayMode.w / 2,
                            displayMode.h / 2, SDL_WINDOW_SHOWN);
  screenSurface = SDL_GetWindowSurface(window);

  SDL_FillRect(screenSurface, NULL,
               SDL_MapRGB(screenSurface->format, 255, 0, 0));

  SDL_UpdateWindowSurface(window);

  SDL_Delay(10000);
};

Ответы (0 шт):