我想在屏幕上画一个简单的2D火柴人。我也想让它消除锯齿。
问题在于我想使用一个骨骼系统,在我知道如何根据关节位置绘制火柴人本身之后编写。这意味着我不能使用精灵 - 我希望我的火柴人在代码中完全可以控制。
如果能够绘制曲线也会很棒。
使用模型绘制3D火柴人即使不是更好也会很棒。相机将被定位为2D,但我仍然会有深度。问题是我只有Maya的经验,OpenGL中模型的导出和顶点加权看起来很乱......
我试图找到用于2D抗锯齿绘图的库或启用多次采样并正常绘制,但我没有运气。我也尝试使用OpenGL的原生抗锯齿,但它似乎已被弃用,并且行连接很糟糕......
我不希望它太复杂,因为,它不应该 - 它只是我的程序的第一部分,它正在绘制一个火柴人 ......
我希望你们能帮助我,我相信你们比我更了解。)
答案 0 :(得分:4)
您可以启用GL_SMOOTH。要检查设备是否支持平滑线所需的线宽,可以使用glGet(GL_SMOOTH_LINE_WIDTH_RANGE);
如果您希望代码是通用的,您还可以使用抗锯齿纹理。 看一下这个链接
http://www.opengl.org/resources/code/samples/advanced/advanced97/notes/node62.html
答案 1 :(得分:0)
获得抗锯齿的唯一方法是使用GL库,它知道如何为example,SDL获得抗锯齿GL上下文。从火柴人那里,你可以用彩色多边形画他。