I ask for help and advice from those who have more experience than me.
@aldostools @bucanero @Zar @tps and all others (my memory is short)
About multipass sharders, Retroarch on PS3 uses some PSGL functions like glFramebufferTexture2DOES, glGenFramebuffersOES, glBindFramebufferOES, etc etc
Exactly in the source file Retroarch/gfx/drivers/gl.c there is the issue:
Code:
static bool gl2_create_fbo_targets(gl_t *gl, gl2_renderchain_data_t *chain)
{
unsigned i;
glBindTexture(GL_TEXTURE_2D, 0);
gl2_gen_fb(chain->fbo_pass, chain->fbo);
for (i = 0; i < (unsigned)chain->fbo_pass; i++)
{
GLenum status;
gl2_bind_fb(chain->fbo[i]);
gl2_fb_texture_2d(RARCH_GL_FRAMEBUFFER,
RARCH_GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, chain->fbo_texture[i], 0);
status = gl2_check_fb_status(RARCH_GL_FRAMEBUFFER);
if (status != RARCH_GL_FRAMEBUFFER_COMPLETE)
goto error;
}
gl2_fb_texture_2d is glFramebufferTexture2DOES and after calling it, the check of status fail because gl2_check_fb_status (that is glCheckFramebufferStatusOES) return GL_FRAMEBUFFER_UNSUPPORTED_OES
I suppose that graphics driver is GCM and not PSGL.... so.... are all PSGL functions full operational?
Edit: Rectification, video driver is PSGL.