evg

Это так называемый rotozoom. Т.е. поворот с циклическим увеличением/уменьшением текстуры. В данном случае используется XOR-текстура. Размер поля обязательно должен быть степенью двойки.

XOR - текстура

XOR-текстура генерируется путем выполнения xor над координатами точки:


   for(var y=0; y < SCREEN_HEIGHT; y++)
   for(var x=0; x < SCREEN_WIDTH;  x++)
         tex[x][y] = (y^x) & 255;

rotozoom

Старт | Стоп

Коментарии