인터넷에서 다운로드 한 다른 장면을로드 할 수있는 간단한 유니티 응용 프로그램을 만들었습니다. 장면에 스크립트가 포함되어 있지 않은 경우 효과적입니다. 그 장면은 별도의 응용 프로그램 스크립트가 문제없이 작동으로 시작되면Application.LoadLevel을 통해로드 된 장면의 스크립트가 작동하지 않습니다.
The class defined in script file named 'XXX' does not match the file name!
하지만 장면 BuildPipeline.BuildStreamedSceneAssetBundle를 통해 저장하면 내가 설명있어 한 : 게임 오브젝트와 연결하는 스크립트가 있다면 그것은 오류와 함께 실패 오류.
나는 간단한 코드를 통해 장면을로드 : 나는 그것을 위해 DontDestroyOnLoad를 호출하기 때문에
WWW www = new WWW("file://" + file);
yield return www;
loadedBundle = www.assetBundle;
Application.LoadLevel(name);
주요 스크립트는 장면에서 유지됩니다.
내가 Unity3D 3.5.0를 통해이 시나리오를 확인하고 내가 실수를 할 3.5.1
?
고마워요. 내 시나리오 당신은 자산 번들 스크립트를 포함 할 수 있습니다 정의
정말인가요? [documentation] (http://docs.unity3d.com/Documentation/Manual/scriptsinassetbundles.html)에는 Apple 제한 사항으로 인해 iOS를 제외하고 스크립트를 번들에 포함시키는 것이 좋습니다. –
나는 확신한다. 스크립트는 바이트 코드로만 포함 할 수 있습니다. 다른 질문을 확인하십시오 : http://stackoverflow.com/questions/10808033/how-to-compile-unity3d-script-to-include-it-to-assetbundle –