Jump to content

[SOLVED] WidgetSpriteVideo troubles in OpenGLES render


photo

Recommended Posts

Posted

ObjectGuiMesh mesh;
WidgetSpriteVideo video;
...
void test(string meshname, string filename)
{
   	mesh = add_editor(new ObjectGuiMesh(meshname,"core/gui/"));
   	mesh.setMaterial("gui_base","*");
   	mesh.setProperty("surface_base","*");
   	Gui gui = mesh.getGui();
   	video = new WidgetSpriteVideo(gui,filename);
   	gui.addChild(video,GUI_ALIGN_EXPAND);
   	video.setLoop(1);
   	video.play();
}
...

\

 

Result -

 

 

GLESFrameBuffer::enable(): unsupported

OpenGLES error: invalid framebuffer operation

 

 

ObjectGui obj;
WidgetSpriteVideo video;
 void test_gui(string filename)
{
   	obj = add_editor(new ObjectGui(20.0f,15.0f,"core/gui/"));
   	obj.setWorldTransform(Mat4(translate(-2.5f,2.0f,-3.0f)));
   	obj.setMaterial("gui_base","*");
   	obj.setProperty("surface_base","*");
   	obj.setMaterialState("mode",2,0);
   	Gui gui = obj.getGui();
   	video = new WidgetSpriteVideo(gui,filename);
   	gui.addChild(video,GUI_ALIGN_EXPAND);
   	video.setLoop(1);
   	video.play();
}

 

Result : no video.

 

Both tests are not working in OpenGLES render.

Posted

solution :

 

in /core/shaders/simple/gui/fragment-base-ambient.shader fix

 

color.xyz = saturate(fixed3(1.40200f * uv.y,-0.71414f * uv.y - 0.34414f * uv.x,1.77200f * uv.x) + color.x);

 

to :

 

color.xyz = saturate(vec3(1.40200f * uv.y,-0.71414f * uv.y - 0.34414f * uv.x,1.77200f * uv.x) + color.x);


×
×
  • Create New...