2013-07-02 98 views
0

我已經構建了一個Flash - 文件使用Unity3D。 Flash文件偶爾無法加載到網頁上。這種行爲在網絡瀏覽器和操作系統之間一直是零星的。例如,我只在Mac上看到使用Google Chrome的這種行爲。其他報告聲稱此活動發生在Windows的不同瀏覽器中。我想知道這是否是一個內部錯誤。Flash無法加載:

在視圖區域的左上角,我收到一個Fatal error: "null" in a red background。從Flash Player內容調試

反饋顯示了這一切:

Fatal Error : ArgumentError: Error #3672: Buffer creation failed. Internal error. 
at flash.display3D::Context3D/createVertexBuffer() 
at com.unity::UnityNative$/Ext_Stage3D_Create_VertexBuffer() 
at com.unity::UnityNative$/_ZN14GfxMolehillVBO16UpdateVertexDataERK16VertexBufferData() 
at com.unity::UnityNative$/_ZN4Mesh15CreateSharedVBOEm() 
at com.unity::UnityNative$/_ZN4Mesh12GetSharedVBOEm() 
at com.unity::UnityNative$/_ZN8DrawUtil11DrawMeshRawERKN9ShaderLab14ChannelAssignsER4Meshi() 
at com.unity::UnityNative$/_ZThn28_N12MeshRenderer6RenderEiRKN9ShaderLab14ChannelAssignsE() 
at com.unity::UnityNative$/_ZN13BatchRenderer5FlushEv() 
at com.unity::UnityNative$/_Z25DoForwardShaderRenderLoopR23ForwardShaderRenderLoopR17RenderLoopContextR13dynamic_arrayI16RenderObjectDataLj4EL18MemLabelIdentifier52EEbbP13RenderTextureb() 
at com.unity::UnityNative$/_Z12DoRenderLoopR10RenderLoop13RenderingPathRSt6vectorI11VisibleNodeSaIS3_EEbP6ShaderRKSs() 
at com.unity::UnityNative$/_ZN6Camera6RenderEiP6ShaderRKSs() 
at com.unity::UnityNative$/_ZN13RenderManager13RenderCamerasEv() 
at com.unity::UnityNative$/NativeExt_PlayerLoop() 
at com.unity::UnityContentInternal/playerLoop() 
at com.unity::UnityContent/onEnterFrame() 

負載稍後提供這種反饋:

Fatal Error : Error: Error #1000: The system is out of memory. 
at flash.utils::ByteArray/set length() 
at com.unity::UnityNative$/sbrk() 
at com.unity::UnityNative$/malloc() 
at com.unity::UnityNative$/_ZN21UnityDefaultAllocatorI17LowLevelAllocatorE8AllocateEji() 
at com.unity::UnityNative$/_ZN13MemoryManager8AllocateEji10MemLabelIdiPKci() 
at com.unity::UnityNative$/_Z15malloc_internalji10MemLabelIdiPKci() 
at com.unity::UnityNative$/_ZN9Texture2D8TransferI18StreamedBinaryReadILb0EEEEvRT_() 
at com.unity::UnityNative$/_ZN9Texture2D23VirtualRedirectTransferER18StreamedBinaryReadILb0EE() 
at com.unity::UnityNative$/_ZN14SerializedFile10ReadObjectEli18ObjectCreationModebPP8TypeTreePbPP6Object() 
at com.unity::UnityNative$/_ZN17PersistentManager26LoadFileCompletelyThreadedERKSsPlS2_ibP12LoadProgress() 
at com.unity::UnityNative$/_ZN21PreloadLevelOperation7PerformEv() 
at com.unity::UnityNative$/_ZN14PreloadManager26UpdatePreloadingSingleStepEb() 
at com.unity::UnityNative$/NativeExt_LoadFirstLevel() 
at com.unity::UnityContentInternal/loadFirstLevel() 
at com.unity::UnityContent/onFrameInitStep() 

回答

2

接收不同的區域後,我意識到我的Flash文件是一個大內存豬。我將問題的根源縮小到紋理問題。
在我的情況下,有幾個紋理製作一個3D球體,每個體積大小約爲2MB。我將每個紋理壓縮到100KB以下。

+1

如果您發現這是真正的原因,您可能希望接受自己的答案作爲正確答案,以幫助未來的訪問者解決類似問題。 – budwiser

+0

感謝Budwiser負責人。我對這個解決方案有80%的正面評價。我知道「哪裏」的一部分。如果有意義的話,我還沒有能夠完全確定「什麼」,「如何」和「爲什麼」部分。 –