ImGui::NewFrame()做了什么
时间: 2024-02-03 12:04:33 浏览: 261
imgui:通过cimgui为Nim绑定ImGui
ImGui::NewFrame() 是 Dear ImGui 库中一个重要的函数,它用于开始一个新的帧(Frame)。在这个函数中,Dear ImGui 会清除上一帧产生的所有状态信息,并准备好接收用户的新的输入和绘制。具体来说,ImGui::NewFrame() 会做以下几件事情:
1. 清空输入状态:包括鼠标状态、键盘状态和字符输入状态等。
2. 清空绘制状态:包括顶点缓冲区和绘制指令缓冲区等。
3. 更新时间状态:记录当前帧的时间戳以及上一帧到当前帧的时间间隔。
4. 更新窗口状态:更新窗口的大小和位置等状态信息。
5. 更新鼠标光标状态:根据鼠标位置和输入状态等信息计算出鼠标光标的状态。
6. 准备开始新的帧绘制:将 Dear ImGui 库的一些状态信息设置为绘制状态,以便用户可以开始绘制 GUI 元素。
总之,ImGui::NewFrame() 函数是 Dear ImGui 库中一个非常重要的函数,它为用户提供了一个干净的状态,以便他们可以在其中绘制 GUI 元素,并且它在每一帧都需要被调用一次。
阅读全文