2010-10-12 83 views
0

我目前正在搞亂C#XNA 4.0,但我在將Texture2D分配給現有的Texture2D時遇到了一些問題。如下圖所示 的代碼示例:將Texture2D分配到現有的Texture2D

protected override void LoadContent() 
    { 
     spriteBatch = new SpriteBatch(GraphicsDevice); 

     texDisc48 = Content.Load<Texture2D>("textures/disc_24"); 
     texDisc48 = Content.Load<Texture2D>("textures/disc_48"); 
     texDisc96 = Content.Load<Texture2D>("textures/disc_96"); 
    } 
// Random place in the code 
texCurrentDisc = texDisc96; 

但是,當我試圖使用texCurrentDisc在等抽獎,我得到以下錯誤: 這種方法不適合此參數接受空。 參數名稱:紋理。 texCurrentDisc只是初始化爲:Texture2D texCurrentDisc;

+0

你確定你在正確的時間正確地分配它嗎?當您調用Draw時,是否在texCurrentDisc中引用了相同的紋理? – Euphoric 2010-10-12 09:02:14

回答

1

它只是在代碼中的錯誤,具有質感得到了初始化爲時已晚,之前就應該畫它。

0

你可以使用「紋理/ disc_96」加載紋理?我認爲它必須使用像「紋理\ disc_96」。你也分配給texDisc48兩次。 所以也許嘗試:

texDisc24 = Content.Load<Texture2D>("textures\\disc_24"); 
    texDisc48 = Content.Load<Texture2D>("textures\\disc_48"); 
    texDisc96 = Content.Load<Texture2D>("textures\\disc_96");