我正在尝试使用多个 VAO 和 VBO 在 OpenGL 中渲染多个对象。为了使用相同的顶点渲染多个对象,我已经完成了,但我想要做的是为每个对象使用不同的顶点,例如绘制一个正方形和一个圆形。对于正方形,我只需要 6 个顶点,但对于圆形,我需要 360 个顶点。我在读取或创建着色器时出错。
这是顶点着色器:
#version 330 core
layout (location = 0) in vec4 position;
uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;
void main()
{
gl_Position = projection * view * model * position;
}
Run Code Online (Sandbox Code Playgroud)
片段着色器:
#version 330 core
layout(location = 0) out vec4 color;
uniform vec4 u_Color;
void main()
{
color = u_Color;
}
Run Code Online (Sandbox Code Playgroud)
VAO 和 VBO 生成和绑定
// Circle
std::vector<VertexFormat> vertices;
for (int i = 0; i < 360; …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个函数,它将元组列表作为参数并按第二个元素排序.它不打印任何其他,只是错误'***异常:main.hs:20:1-76:函数sortWords中的非详尽模式'这是代码:
sortWords :: [(String, Int)] -> [(String, Int)]
sortWords [(str,num)] = sortBy (\x y -> compare (snd x) (snd y)) [(str,num)]`
Run Code Online (Sandbox Code Playgroud)
以下是我如何调用该函数
main = do
putStrLn $ show $ sortWords [("friend",1),("she",2)]
Run Code Online (Sandbox Code Playgroud)
我不得不说我在http://Repl.it网站上运行我的程序
谢谢!
我正在尝试创建一个以元组列表作为参数的函数.该函数通过每个元组的第二个元素对元组列表进行排序.我的代码是创建一个模式,它匹配元组列表只有一个元素.为了测试,我调用带有两个元素的元组列表的函数,并且我有'函数中的非穷举模式'错误.
如何创建模式以匹配元组列表中的所有元素.
这是创建函数的代码.
sortWords :: [(String, Int)] -> [(String, Int)]
sortWords [(str,num)] = sortBy (\x y -> compare (snd x) (snd y)) [(str,num)]
以下是我如何调用该函数.
main = do
putStrLn $ show $ sortWords [("friend",1),("she",2)]
我在http://repl.it上运行我的程序.