gl_position = projectionMatrix * vIEwMatrix * modelMatrix * vec4(in_position,1.0)
如果我将in_position作为GL_INT的vec3传入,而我将矩阵作为GL_float传递给mat4,是否会进行正确的转换?是否有性能成本?
是否有可能将我的转换矩阵准备好定点?
这是通过2D游戏完成的,我认为这比使用3D更可行.我真的更喜欢准确性,因为当事物离原点很远时,大地图上的位置似乎会降低.我意识到我可能只能将对象位置变为整数,而顶点仍被描述为浮点数.但是,我认为我的碰撞方案可以更好地使用定点顶点.一般性能差异是什么?
解决方法 这将意味着一个int to float转换将惩罚你的表现.您应该在cpu到GPU复制时将in_position转换为vec3.如果使用Matrix对象将它们存储在cpu上,则可以使用以下方法强制转换它们:MatrixXf data_as_float = data_as_int.cast<float>();
然后使用data_as_float调用glBufferData.
总结以上是内存溢出为你收集整理的c – 使用顶点着色器的定点算术全部内容,希望文章能够帮你解决c – 使用顶点着色器的定点算术所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)