Пишу теперь в чистом 3D. Выяснил занимательную вещь - тест глубины обратный по смыслу должен быть. Буфер инвертирован sceGuDepthRange(65535,0);, вот и глубина от масимальной (у наблюдателя) до минимальной (в бесконечности). Т.е. вместо
sceGuDepthFunc(GU_LEQUAL); (рисовать, если меньшая глубина), нужно использовать sceGuDepthFunc(GU_GEQUAL); (рисовать, если большая). А я-то не врубаюсь, почему картинки нет? Вроде была раньше. А сам давным-давно заменил на LEQUAL по аналогии с OpenGL.
Проверил sceGuDepthRange(0,65535);. Не работает LEQUAL. Значит, буфер действительно инвертирован.
добавлено через 1 час 21 минуту
Нифига себе Z-буффер у этой приставки! У неё банально точности может не хватить. Делаешь sceGumPerspective(30.0f,16.0/9.0f,1.0f,1000.0f);, т.е. передняя и задняя плоскости отсечения: 1 - 1000, соответственно. Появляются артефакты на дистанциях -100 и дальше. Просто ошибка 16-ти битного Z-буфера. Пришлось уменьшить диапазон до 50 - 200.