Unity アプリで作業し、基本的なメニュー画面を作成しようとしています。
Unity 5.0.1p3 を実行しています。
無関係ではありますが、これは重要かもしれません: 私のアプリは Vuforia を使用しており、他のシーンは問題ありません。
そのため、デフォルトの Unity カメラを使用してメニュー画面を作成し、キャンバスを追加しようとすると、Unity エディターでは完全に機能しますが、デバイスでは機能しません。
デバイスでは、背景 (カメラの前の平面) を取得するだけで、Image/Button はキャンバス上にあるものを何も表示しません。
また、アプリが 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?
この問題は、Menu スクリプトをエクスポートした後にのみ発生します。シリアライゼーションの問題に関する以前の質問に私をリンクし始める前に、私はすでに彼らの問題をチェックアウトしましたが、これが私のものとどのように関係しているのかわかりません.
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");
}
}
}