鼠标位置会更改绘制多维数据集的大小

时间:2012-01-14 13:33:49

标签: c++ opengl sfml

我正在使用OpenGl进行SFML教程,我遇到了这个非常奇怪的问题。 在我的代码中,立方体的绘图工作正常,但它在我的鼠标后调整大小。如果我的鼠标位于左上角,则立方体的大小几乎为零,如果我的鼠标位于右下角,则会正确绘制立方体(全尺寸)。 img832.imageshack.us/img832/440/sfmlprob.png

这正常(教程代码):http://pastebin.com/hrzrC52j

这个不起作用(我的代码):http://pastebin.com/8ja0Qpkb

如果我将教程中的所有代码复制到我自己的代码中,它可以正常工作(不会调整大小),所以代码中应该有一些区别,但我一遍又一遍地看了一遍,找不到任何应该调整立方体的大小。

1 个答案:

答案 0 :(得分:1)

if (Event.Type = sf::Event::Resized)
    glViewport(0,0,Event.Size.Width,Event.Size.Height);

实际应该是

if (Event.Type == sf::Event::Resized)
    glViewport(0,0,Event.Size.Width,Event.Size.Height);

因此,您使用了=而不是==,并且所有包含鼠标移动的事件都已通过glViewport代码。