Just to clarify I do not want to bake vertex colors to a texture. I want to bake passes like AO and Curvature to the Vertex Color. So the Red of the Vertex Colors could be AO and the Green of the Vertex Colors Curvature and B and A for something else.
I found a Blender plugin but it still needs a UV for the baking process and it freezes forever when it try to use lightmap generated UVs with 500000 polys. This is for importing ca 10 million polygon meshes to UE5 and only using the Vertex Colors to setup a material, using AO and Curvature to do something similiar you can do in Substance Painter with Smart Materials.
Any ideas which programm could do this or what could be a workaround here?
Replies
https://docs.knaldtech.com/doku.php?id=knald_release_1_2
Yea, I tried that. Problem is you are stuck with the masks that Zbrush can generate which are mostly low quality and I'm not sure if the Smoothness can even count as curvature. Also, there is no way to put something in a color channel, just Fill color which will then overwrite the other channels at least partially.
There's not much out there that'll handle meshes of that size in an efficient manner - largely because there are much more effective ways to get results (i.e textures)
@Davision3D : otherwise, assuming that you can get the desired pass to show up in Zbrush (for instance by loading it up as a texture), you can definitely bake it to Polypaint there, and then get the information back to Blender by first writing it out as OBJ (to which Zbrush will add the unofficial vertex color data chunk) and then converting it to PLY in Meshlab. And then Blender can import the vertex colors from that (IIRC).
I feel like there is some sort of hidden feature here (leveraged by the texture to vertex color baking addon that showed up recently), as some documentation refer to a way to toggle the baker from texture mode to vertex mode but I can't seem to find how. Maybe something gets triggered when switching the object to Vertex Paint mode ?
It's especially odd considering how easy it is to do the inverse operation (baking from vcol to texture).
BTW @Davision3D, if your goal/need is *only* about vertex color AO, then FAOGen is a great solution. It's very fast, gives great results, and lets you save the AO pass either as texture or as vertex data. And the FBX files it writes are readable directly by Blender. If you have a sample object you'd like to see processed feel free to link it.
Now whether or not you'll be able to pack things up per RGB channel (to also store curvature) is another question. Blender can generate a decent-ish curvature pass natively but I am not sure how you'd then combine it with the AO pass without having some way to bake things down somehow (assuming that UE can only read one vcol channel. But if it can read multiple just like Blender does, then you could maybe have as many as you need as opposed to RGB packing)
https://www.youtube.com/watch?v=daukdTFRF9o
(I probably should have used a CombineRGB node rather than a MixRGB/Add but hey, same thing really)
Regarding speed : well, if anything it is always possible to generate the source passes with any other external tool (using textures if needed, with automatic UVs) and then bake that down as vcols later. EZ Baker can even communicate with Toolbag to get the bakes done and imported back in : https://blenderartists.org/t/ez-baker/1245869
And then as said there's also FAO gen, and Zbrush/3DCoat. Not sure if Xnormal can write down its GPU AO pass as vcols.
Good luck !
https://www.youtube.com/watch?v=rnuZF7ayjFk
https://www.youtube.com/watch?v=ln2TOz_TDpA
@gnoop Yeah, In the second video towards the end, he shows why it may not be the best approach to use and it's something to be mindful of. Works best from a distance if the vertex color is blurred.
But if you take a look at this video here.
https://www.youtube.com/watch?v=frkTqxMPJmQ
https://80.lv/articles/discussing-the-possibilities-and-drawbacks-of-unreal-engine-5-s-nanite/
The vertex colors seem to be holding up fine and its obvious the vertex colors has been blurred to hide the vertices shifting. With a detail texture maps, it can even be taken further.