2013-03-28 139 views
0

我使用XNA製作遊戲。我想將精靈對準屏幕中心。全屏設置爲false時,此功能正常。但是當我將IsFullScreen設置爲true時,它不起作用。XNA全屏問題

我激活了控制檯並在其上打印了屏幕大小。尺寸很好(1366 * 768)。我還打印鼠標指針的當前位置,當我在右下角時,它顯示1279 * 719,這就是爲什麼我的精靈不是中心對齊。爲什麼?

width = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width; 
height = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height; 

_positionStart = new Vector2(width * 0.5F - _startButton.Width * 0.5F, height * 0.5F - 20); 

PS:我使用XNA 4.0與VS2012

PS2:對不起,我的語法,我不說流利的英語:)

回答

2

可能是因爲你的精靈的左上角畫在畫面的中間,這意味着精靈將在右側略微拉低。 嘗試超過0.5,也許0.45或更少的值。這應該有所幫助。

2

好了,如果對方的回答沒有工作,更長,但更有效的方式來做到這一點就太之一:

  1. 設置一個Rectangle()的對象,並作出充當邊界框,並使用.Center功能來對齊它的中心。
  2. heightwidth除以2,然後減去圖像本身的高度和寬度的一半(如果找不到那個,則只需使用上面的邊框)。

希望這可以幫助,我知道這個職位現在有點老了,但其他人可能會偶然發現這一點,並感謝這個答案!