[osg-users] geometry shader with opengles
lin hui
594642540 at qq.com
Tue Apr 3 05:23:13 PDT 2018
Hi,
I have succeeded on Android ,But not well on IOS,whether it is iphone4 or 6p or 6sp...
they all show: version '310' is not supported
(geometry shader only works on es3.1 later)
But version 300 is OK(but couldn't use geometry shader),So is there somthing i missed?
code now like this:
#version 310 es
#extension GL_EXT_geometry_shader : enable
uniform mat4 osg_ModelViewMatrix;
uniform mat4 osg_ViewMatrix;
uniform mat4 osg_ProjectionMatrix;
uniform mat4 osg_ViewMatrixInverse;
uniform float TubeRadius;
uniform int EdgeCount;
uniform vec3 DirLightDir_V3;
layout(points) in;
layout(triangle_strip, max_vertices = 4) out;
out vec2 gf_uv;
void main()
{
vec4 offset0 = vec4(0,0,0,0);
vec4 offset1 = vec4(1,0,0,0);
vec4 offset2 = vec4(1,1,0,0);
vec4 offset3 = vec4(0,1,0,0);
gl_Position = osg_ProjectionMatrix * (gl_in[0].gl_Position + offset0);
gf_uv = offset0.xy;
EmitVertex();
gl_Position = osg_ProjectionMatrix * (gl_in[0].gl_Position + offset1);
gf_uv = offset1.xy;
EmitVertex();
gl_Position = osg_ProjectionMatrix * (gl_in[0].gl_Position + offset3);
gf_uv = offset3.xy;
EmitVertex();
gl_Position = osg_ProjectionMatrix * (gl_in[0].gl_Position + offset2);
gf_uv = offset2.xy;
EmitVertex();
EndPrimitive();
}
Thank you!
Cheers,
lin
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=73246#73246
More information about the osg-users
mailing list