2013-08-25 18 views
0

我想弄清楚如何讓文字跨越屏幕,當它到達一端時,它會一點一點地平穩消失,並在另一端重新出現因爲它正在消失。Xna/Monogame文字從一端消失並重新出現在另一端

我已經有我的文本移動和我的碰撞檢測,但我無法弄清楚如何做一個從一側到另一側的平滑過渡。

有沒有人做過這個?

回答

0

我認爲你必須在x = 0繪製包含相同的文字,一個出發兩個不同的字符串,另外一個應該x = -Window.ClientBounds.Width開始。
通過這種方式,您只需增加Update中的x位置,因此當第一個字符串開始從屏幕右側消失時,第二個字符串的結尾將從屏幕的左側出現。
當然,每當位置超過Window.ClientBounds.Width時,您需要更改移出屏幕的字符串的x位置。

if (stringPosition1.x >= Window.ClientBounds.Width) 
    stringPosition1.x -= 2 * Window.ClientBounds.Width; 

如果這是你想要的。

+0

明確的工作,但我想知道是否有一個更聰明的方式... – AntoineLev

+0

我認爲這是最簡單和正確的方式來做到這一點。另一種解決方法是通過char來測量字符串char的長度,當長度超過屏幕右側時,在屏幕的另一側繪製剩餘的字符。但是恕我直言,這是一個愚蠢的解決方案。 – pinckerman

+0

@Mostaguen聰明往往不會更好。簡單的解決方案更易於維護和調試,而且開發時間更短。 – craftworkgames

相關問題