Your comments

o.pos and o.screenpos seem to output the exact same thing? Does this create a wasted output register? Perhaps one could be removed?

This gives a console error though. Expensive is better than an error? I would suggest that shader forge combine the vectors only if it would result in a console error (meaning they have 12+ output registers AND they want d3d9, etc). And otherwise, it wouldn't combine anything. I imagine anyone who actually needs 12 output registers is dealing with an expensive shader already, and so I can't imagine that the combining will add enough additional expense that we should prefer the error over it.

Actually, they might be pink. Initially they may be appearing as pink, and then instantly disappearing. I see a little flash of pink and then nothing. Only happens with shader forge shaders. Any idea what might be the cause?

Not meaning to nag but, this is an easy fix :)


And starting from today and moving forward, every time I release an update to my asset I'm having to break my shaders from being editable in shader forge because of this bug, and I'm linking my users to this post to explain why I'm having to doing that. :) So hopefully this can be fixed...

Sorry, I have no idea, I haven't worked with blender or fbx much.

If you do have duplicate verts along the seams, then you should have more vertices than you would expect, if you were to count them. To count them, you can select the mesh file in the project window, and then expand the preview box located at the very bottom of the inspector window, and it will show you a little preview of the mesh, along with some text that should tell you exactly how many vertices are on your mesh. If it shows that you have more vertices than you expect, then you'll know there must be extra vertices along those seams.


Then I bet your mesh is split into multiple parts. It's not a single, solid mesh. What I would do is get some kind of mesh editor like mesh toolkit or some other one, that will allow you to merge duplicate verts. Because I would bet that along those seams, there are several vertices in every location... verticies on top of each other. One vert will go to the part of the mesh on one side of the seam, and the other vert will go to the part of the mesh on the other side of the seam. And then during tesselation, those verts get moved around which opens up the seam. If blender has an option to merge duplicate verts, use that option. Or... Unity might automatically be creating duplicate verts, I donno. But it sounds like you are wanting to merge those duplicate verts, and there are tools such as mesh toolkit or mesh maker, that can merge duplicate verts. Or you can write your own script to do it, if you are good at that. Good luck. :)

Here's what I had to do to get past this error. This of course makes my shader un-editable in shader forge. The alternative I suppose would be to drop support for d3d9, but I'd like to not do that.