[英]How to rotate vertices exactly like with glRotatef() in OpenGL?
我需要优化渲染代码,目前我正在使用glPushMatrix()和glTranslatef()和glRotatef()。 但是,这比在单个顶点数组调用中呈现所有对象的成本更高。
OpenGL中是否有一些快速内置函数来像glRotatef()那样旋转我的顶点数据? 如果没有,您建议使用哪种库或方法? 我知道的唯一方法是使用sin / cos函数旋转顶点,但是我不确定这是最快的方法,还是会导致相同的结果。
我只需要每个对象沿一个轴旋转一次(2D渲染),因此它不需要太复杂,也不需要完全支持glPushMatrix()系统。
编辑:我不想为此使用着色器。
Edit2:我仅渲染沿零点旋转的单个四边形(在2D模式下),因此每个顶点的值从-10到10。 我当前的代码: (quad.vert[i].x*cosval)-(quad.vert[i].y*sinval)
(也是y的两倍)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.