如何在QT窗口上渲染OpenGL视口?即使设置了glViewport(100, 100, 100, 100)
,它也会在所有窗口中呈现。我想显示Opengl的局部视图和QT控件的局部视图。
我正在使用QT5 + QML(QQuickWindow)。
答案 0 :(得分:1)
注意,glViewport
指定将规范化的设备坐标转换为窗口坐标。但这并不能“保护”特定矩形外部的帧缓冲区区域被写入。
因此,它不会影响glClear
之类的操作。
Scissor Test可用于定义矩形,并丢弃不在矩形内部的片段的操作。
剪刀测试必须由glEnable(GL_SCISSOR_TEST)
启用,矩形剪刀区域可以由glScissor
定义:
例如
glEnable(GL_SCISSOR_TEST);
glScissor(100, 100, 100, 100);