2015-05-09 107 views
0

使用Unity應用程序並嘗試製作基本菜單畫面。Unity畫布不顯示在設備上

我運行Unity 5.0.1p3。

儘管無關緊要,但這可能很重要:我的應用使用Vuforia,其他場景沒有問題。

因此,當我嘗試使用默認的Unity Camera創建菜單屏幕並添加畫布時,它在Unity編輯器中完美工作,但不在設備上。

在設備上,我只是獲取背景(這是相機前的平面),而圖像/按鈕不顯示畫布上的任何內容。

而且,當應用程序基於Eclipse的logcat開始我得到這個錯誤:

05-09 11:18:14.047: E/Unity(2092): A script behaviour has a different serialization layout when loading. (Read 32 bytes but expected 52 bytes) 
05-09 11:18:14.047: E/Unity(2092): Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts? 
05-09 11:18:14.047: E/Unity(2092): 
05-09 11:18:14.047: E/Unity(2092): (Filename: ./Runtime/Serialize/SerializedFile.cpp Line: 1652) 
05-09 11:18:14.047: E/Unity(2092): A script behaviour has a different serialization layout when loading. (Read 32 bytes but expected 124 bytes) 
05-09 11:18:14.047: E/Unity(2092): Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts? 

而且這個問題只顯示後我導出我的菜單腳本。 在開始將我與以前有關序列化問題的問題聯繫起來之前,我已經檢查了他們的問題,我不知道這與我的關係如何。

MenuScreen.cs如下:

using UnityEngine; 
using System.Collections; 

public class MenuScreen : MonoBehaviour { 

    private Rect b; 
    private Rect o; 
    private Rect f; 


    // Use this for initialization 
    void Start() { 

     int w = Screen.width; 
     int h = Screen.height; 

     //name = new Rect (px ,py ,bh, bw) 
     b = new Rect (w -3*w/4, h - 4*h/5 , 2*w/4, h/10); 
     o = new Rect (w -3*w/4, h - 3*h/5 , 2*w/4, h/10); 
     f = new Rect (w -3*w/4, h - 2*h/5 , 2*w/4, h/10); 

    } 

    // Update is called once per frame 
    void OnGUI(){ 

     if (GUI.Button (b, "Begin")) { 
      Application.LoadLevel("SolidWhite"); 
     } 


     if (GUI.Button (o, "Options")) { 
      //Application.LoadLevel("Options"); 
     } 

     if (GUI.Button (f, "FAQ")) { 
      //Application.LoadLevel("FAQ"); 
     } 

    } 

} 
+0

「輸出」腳本究竟是什麼意思? –

+0

就像,將包含腳本的場景添加到Build中。對於那個很抱歉。 –

回答

1

您需要更改ARCamera 的backgroundPlane的着色器只需選擇您ARCamera,在它之下你會發現攝像機及其BackgroundPlane。選擇它並將着色器更改爲Mobile/Diffuse。希望這可以幫助。