2015-06-08 28 views
0

我有一个游戏,我目前正在使用,它使用多个视图(例如一个小地图)。是否可以在任何视图下绘制一个SFML窗口?

事情是,我想在某些时候添加淡化效果,所以我认为我会创建一个黑色的图像,它是屏幕的大小,并使用计时器更改其alpha值。这部分不是问题。

现在发生的情况是主区域(即窗口默认视图)正在消失(因为图像的不透明度正在增加),但小地图(小地图视图)不受影响。这是视图的正常行为,但有没有办法将图像绘制到整个窗口中,而不管视图如何?

在此先感谢

+0

也许暂时重置视图? – Hiura

+0

@Hiura你是什么意思重置? – Saryk

+0

就像这样:'auto tmp = window.getView(); window.setView(window.getDefaultView());/*绘制你的东西*/window.setView(tmp);' – Hiura

回答

2

为了澄清,你有默认视图在那里你会得到的主要游戏,那么你就必须在小地图视图,你会画的小地图。在游戏中的某个时刻,您希望整个屏幕都变成黑色。这听起来像你一直试图在默认视图上绘制黑色图像(改变alpha)来使这个效果起作用。

所以,你需要第三个视图,你画你的黑色图像来获得这种衰落效果。

+0

您的澄清完全正确。 我想到了这一点,但我找不到设置到第三个视图,这不会干扰其他视图。我试图创建一个视图的大小的屏幕,它出现在现有的顶部(或推到一边,我不知道) – Saryk

相关问题