основные функции sceGu*:
// Инициализация графики
sceGuInit();
// Завершение работы с графикой
sceGuTerm();
// Начало работы с новый дисплей-листом
sceGuStart(GU_DIRECT, list); // лист должен быть выровненным на границу 16 байт
// Установка формата пикселей и размера фреймбуфера
// (обычно SCR_WIDTH=480, SCR_HEIGHT=272, BUF_WIDTH=512, PIXEL_SIZE=2 или 4)
sceGuDrawBuffer(GU_PSM_5650, (void*)0, BUF_WIDTH);
// Установка размеров экрана
// Пусть FRAME_SIZE = BUF_WIDTH * SCR_HEIGHT * PIXEL_SIZE
sceGuDispBuffer(SCR_WIDTH, SCR_HEIGHT, (void*) FRAME_SIZE, BUF_WIDTH);
// Установка размеров экрана
sceGuDepthBuffer((void*)(FRAME_SIZE*2), BUF_WIDTH);
// Установка смещения. Пространство рендеринга на PSP – 4096х4096, мы рисуем в центре
sceGuOffset(2048 - (SCR_WIDTH/2), 2048 - (SCR_HEIGHT/2));
// Установка окна - координаты центра и размеры
sceGuViewport(2048, 2048, SCR_WIDTH, SCR_HEIGHT);
// Пространство значений глубины
sceGuDepthRange(65535, 0);
// Закончить текущий дисплей-лист
sceGuFinish();
// Ждать конца отрисовки дисплей-листа
sceGuSync(0, 0);
// Ждать вертикальной синхронизации
sceDisplayWaitVblankStart();
// Поменять местами видимый и рабочий буферы
sceGuSwapBuffers();
// Включить(GU_TRUE) или выключить(GU_FALSE) дисплей
sceGuDisplay(GU_TRUE);
// Выбор формата палитры
sceGuClutMode(GU_PSM_4444, 0, 0xff, 0);
// Загрузка палитры
sceGuClutLoad((PALETTE_ENTRIES/8), pPalette);
// Установка форматы текстуры
sceGuTexMode(GU_PSM_T8, 0, 0, 0);
// Установка текущей текстуры
sceGuTexImage(TEX_LOD, TEX_WIDTH, TEX_HEIGHT, TEXBUF_WIDTH, pTexture);
// Выбор типа фильтрации текстуры (анизотропки нету

sceGuTexFilter(GU_LINEAR, GU_LINEAR);
// Отрисовать набор примитивов (индексированных или нет)
sceGuDrawArray(PRIMITIVE_TYPE, VERTEX_FORMAT, VERTEX_COUNT, pIndices, pVertices);