假设我有几何图形并创建了一个包含三角形邻接信息的索引缓冲区。然后,将绘制模式从 更改GL_TRIANGLES为GL_TRIANGLE_ADJACENCY。问题是,我可以使用几何着色器将几何图形从三角形邻接转换为三角形带吗?
像这样的东西:
layout(triangles_adjacency) in;
layout(triangle_strip, max_vertices = 3) out;
in Vertex
{
vec3 normal;
} vertex[];
out FragmentVertexData
{
vec3 normal;
vec3 fragpos;
} VertexOut;
void main()
{
for(int i = 0 ; i < gl_in.length(); i+=2)
{
gl_Position = ProjectionMatrix * ViewMatrix * ModelMatrix * gl_in[i].gl_Position;
VertexOut.normal = vertex[i].normal;
VertexOut.fragpos = vec3(ModelMatrix * gl_in[i].gl_Position);
VertexOut.fragpos = gl_Position;
EmitVertex();
}
EndPrimitive();
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试过了,事实上它绘制了几何图形,但法线出了问题。我也必须对它们建立索引吗?我错过了一步吗?
这就是我在片段着色器中使用fragpos和法线的方式
vec3 normal = normalize(VertexOut.normal);
vec3 lightDir = normalize(light.position - VertexOut.fragpos);
Run Code Online (Sandbox Code Playgroud)
这是我编写三角形邻接索引缓冲区的算法: …
我想从python脚本中打开一个.blend文件并解析它(获取对象,动画和材质).到目前为止我已经阅读过关于如何从blender API(作为blender附加程序运行脚本)执行此操作的文档,但我想从命令行运行此脚本而不打开blender.
我感谢你能给我的所有帮助.
我一直在使用JFreeChart以绘制一些系列,但我对图例中标签之间的空间有疑问。
有谁知道如何在图例之间设置空格?例如,现在:

这就是我想要的样子

我会感谢你的帮助。