在Cinder中绘制文本

时间:2012-01-10 19:00:33

标签: cinder

我想知道是否有办法绘制gl::texture文件而不必在每个循环中使用gl::draw命令。有没有办法可以画一次,然后不用担心。

draw()的每个循环上绘制图像会减慢我的应用程序速度,因此我只想在屏幕上绘制一次,然后在需要时更新它们。

1 个答案:

答案 0 :(得分:2)

引用Cinder的教程:

“当您创建一个新的Cinder项目时,您会注意到为您声明了一些函数。每个Cinder项目都由三个主要函数组成。您可以在setup()方法中初始化变量,该方法在调用时调用一次你的程序开始了。你在update()方法中对这些变量进行了更改。最后,你在程序窗口中绘制()内容。更新和绘制是任何Cinder项目的心跳.UpdateSetup,然后更新和绘制,更新和绘制,更新和绘制,直到你退出应用程序。“

有一种方法可以在OpenGL中永久地绘制对象并且在Cinder中常常绘制,但我不推荐它。是在绘制函数中禁用gl :: clear()。您不能有选择地删除任何不需要的对象。您必须从头开始渲染场景。想想OpenGL的帧缓冲更多的画布。每次调用gl :: clear()时,你都会使用画笔,然后用gl :: clear()将画布涂成黑色或指定颜色。之后,帧缓冲区是“tabula rasa”,您必须从头开始绘制要显示的所有内容。如果在绘制新对象时没有说明任何gl :: clear()命令就像你的画布保持原样并且在已经绘制的画面上绘制你的对象。