slipster216 / VertexPaint

Unity 5.3 Vertex Painter
Other
906 stars 151 forks source link

Painted Static Mesh error on play #10

Closed ArieLeo closed 8 years ago

ArieLeo commented 8 years ago

I'm getting error when going into play mode with painted static meshes. Mesh are static and lightmapped, tested with 2 layer splat shaders, vertex color painted, uv flow painted. Using refractivewater sample material. The flow are broken when going into play mode, Lightmap UV also sometimes broken (could it be related with UV2 are used as flowdir uv?) also spammed with this error msg below.

Not allowed to access vertices on mesh 'Combined Mesh (root: scene)' UnityEngine.Mesh:get_vertices() JBooth.VertexPainterPro.VertexInstanceStream:Apply(Boolean) (at Assets/Painter/VertexInstanceStream.cs:371) JBooth.VertexPainterPro.VertexInstanceStream:Start() (at Assets/Painter/VertexInstanceStream.cs:104) Not allowed to access triangles/indices on mesh 'Combined Mesh (root: scene)' UnityEngine.Mesh:get_triangles() JBooth.VertexPainterPro.VertexInstanceStream:Apply(Boolean) (at Assets/Painter/VertexInstanceStream.cs:376) JBooth.VertexPainterPro.VertexInstanceStream:Start() (at Assets/Painter/VertexInstanceStream.cs:104) Not allowed to access colors on mesh 'Combined Mesh (root: scene)' UnityEngine.Mesh:get_colors() JBooth.VertexPainterPro.VertexInstanceStream:EnforceOriginalMeshHasColors(Mesh) (at Assets/Painter/VertexInstanceStream.cs:124) JBooth.VertexPainterPro.VertexInstanceStream:Apply(Boolean) (at Assets/Painter/VertexInstanceStream.cs:397) JBooth.VertexPainterPro.VertexInstanceStream:Start() (at Assets/Painter/VertexInstanceStream.cs:104)

slipster216 commented 8 years ago

You can't make the meshes static because then the mesh data won't be available on the CPU. If you want them static, you need to save them out as unique assets with the tools under the bake menu.

ArieLeo commented 8 years ago

Here's a sample of broken lightmap UV due it also use for FlowDirection lightmapuv

ArieLeo commented 8 years ago

woops you're commenting while i'm uploading :p i see, alright then.

slipster216 commented 8 years ago

I use the third uv channel for flow, leaving the second for light mapping, so it should be ok. Perhaps you accidentally overwrote them by painting into the wrong channel? If so, you can remove that data and the originals will be used by clicking on that stream in the UI.

ArieLeo commented 8 years ago

just an information after the last pull, the lightmap uv problem are gone, it seems that related with the last shader fix. Scratch that, the lightmap problem is stil there. even with 3 layer. And i'm already painting on UV2 for flow map but it seems it's also use by lightmaps

ArieLeo commented 8 years ago

the lightmap UV are fixed when removing the vertex instance stream manually then repaint.