我正在尝试使用 freeglut 进行一些 opengl 编程。假设一个在 3D 空间中移动的对象(彗星/飞机),我想将其追踪的路径渲染为点云(表示飞机留下的白色轨迹)。
我的问题是,每次调用 glutDispFunc 时,我都需要使用 glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT) 清除屏幕,以便让飞机移动(我正在使用键盘功能来改变飞机的位置)。但是,我还需要显示大量的点,这些点会随着飞机的移动而不断累积。我尝试过使用清晰的屏幕
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
随着点数的增加,这会导致性能严重下降,但可以显示移动平面以及点云。任何人都知道如何处理这种情况?