我有一个ortho在2D的时刻设置,当我调整窗口的大小时,它会拉伸窗口中绘制的任何东西,有没有办法让窗口只显示黑色的时候窗口被调整大小或至少保持内容的纵横比,所以它们不会伸展。我已经尝试了一些我在这里看到的实现,但没有任何实际的工作。OpenGL防止在窗口调整大小
编辑:对不起球员有位金发碧眼的时刻,此刻
Protected Overrides Sub OnResize(ByVal e As EventArgs)
MyBase.OnResize(e)
GL.Viewport(0, 0, Width, Height)
GL.MatrixMode(MatrixMode.Projection)
GL.LoadIdentity()
GL.Ortho(-1.0, testvalue, testvalue , 1.0, 0.0, 4.0)
End Sub
测试值是5000,窗口大小为800x800
当窗口改变尺寸时,请包括使用“正射影”图形投影矩阵设置的实际代码。为了按照你想要的方式工作,我希望在调整窗口大小之前和之后看到一些数学来补偿宽高比。 –
已编辑!我确实尝试并结合纵横比,将测试值乘以宽度/高度,但它非常不礼貌,并未真正保持比例。 –