Author Topic: Baking from multi mesh onto single mesh...possible?  (Read 1141 times)

If I'm using a low poly single mesh with multiple material IDs, and want to bake, is it possible to leave the single mesh as is and use multi-high res meshes for the bake somehow?  Maybe by referencing the material ID's of the low res mesh part, instead of mesh name suffix.

Or is the only way to do this to have the low mesh separated out by mesh names with corresponding high mesh names?

I meant to post this in the baking forum, mods please move...thanks.
Last Edit: October 20, 2019, 04:30:49 pm

In the painter academy series for model preparation and baking, Wes illustrates making 3 fbx files, one containing the low mesh parts separated out, one for the high mesh parts, and one for IDs which contained two mesh parts I believe.  At the end of the series the question is, which fbx do you use in painter?

Do you use the ID fbx, and bake using the low fbx and high fbx? or in order to bake by name would you need to use the low fbx in painter for your project mesh (which really contains multiple meshes) and only option for bake by name is input high mesh.


What would be the point baking from multiple highres meshes onto a single lowres mesh? If you have a single lowres mesh, use a single highres mesh.

What do you mean by 'low poly single mesh with multiple material IDs'? You have a lowres mesh and created multiple TextureSets from material assignments?

Having multiple highres meshes only makes sense if you have multiple corresponding lowres meshes and want to use the 'match by mesh name' feature. You can have a single lowres mesh and multiple highres meshes, it won't have any influence on anything though (in comparison to having a single highres mesh), and you can't use the 'match by mesh name' feature.
Last Edit: October 20, 2019, 05:15:56 pm

What would be the point baking from multiple highres meshes onto a single lowres mesh? If you have a single lowres mesh, use a single highres mesh.
To avoid baking artifacts from neighboring parts.  For game assets, sometimes it's best to have a single mesh, but to get a good bake with a mesh that has parts close to each other, wouldn't multi-mesh bake be best, but then you have to handle going back to the single mesh?

What do you mean by 'low poly single mesh with multiple material IDs'? You have a lowres mesh and created multiple TextureSets from material assignments?
Yes, multiple material id's mean multiple texture sets.

Having multiple highres meshes only makes sense if you have multiple corresponding lowres meshes and want to use the 'match by mesh name' feature. You can have a single lowres mesh and multiple highres meshes, it won't have any influence on anything though (in comparison to having a single highres mesh), and you can't use the 'match by mesh name' feature.
I understand that, but in this video series:
https://academy.substance3d.com/courses/substance-painter-model-preparation/youtube-3pft-kodkg0
..at the end, Wes ends up with a high res fbx file with multi high res parts, a low res fbx with mult parts and an ID fbx with only 2 low res parts, but doesn't show what he uses in painter.  I understand he can use the high res if he only wants high res mult mesh, he could also use the low res multi part and take advantage of the bake by name and add in the high res multi part for the baking mesh, but what is the point of the ID fbx?

I got lost here and in other videos, people (Wes included) start out by creating a new painter project with an fbx low res, not specifying if it is single or multi part mesh, then when they get to explain the baking and bake by name do they illustrate going back into the modeling program and splitting the parts up into _low and _high.  Which I assume at that point they have to then use an fbx _low with multi meshes.

But there is a disconnect in my thinking I am asking about here.  It seems if painter can separate texture sets based on material IDs, could it also bake the parts of the mesh like this too without needing the mesh to be actually split in multi-mesh _low parts?

Wes in some other videos (the lantern series) explained baking ID artifacts that were solved by splitting up the mesh into _low and _high parts.  I thought since this has to do with IDs, maybe the painter project mesh doesn't need to split up and can be a single mesh but with multiple mat IDs/texture sets...so I was asking if the single mesh used in painter (in my case my low res single mesh model) can utilize the bake by name feature using an fbx _high multi part mesh that has the same material IDs as what's on the low res single mesh model?  Meaning, painter's bake by name would focus on the material IDs to bake regardless of the meshes (project mesh and fbx _high multi-mesh bake mesh) being single or mult.

That way I can put together my low res single mesh in my modeling program that has the mat IDs setup, and in painter, utilize the good bake by name separation using a _high res parted out fbx, and in the end still use my single low res mesh with good bake and IDs/texture sets separated which is my goal.

In the painter academy series for model preparation and baking, Wes illustrates making 3 fbx files, one containing the low mesh parts separated out, one for the high mesh parts, and one for IDs which contained two mesh parts I believe.  At the end of the series the question is, which fbx do you use in painter?

Do you use the ID fbx, and bake using the low fbx and high fbx? or in order to bake by name would you need to use the low fbx in painter for your project mesh (which really contains multiple meshes) and only option for bake by name is input high mesh.
An example of what I mean here is, what if you have an imported painter single mesh that has multiple mat IDs/texture sets and want to bake with parts, enter bake maps and instead of only selecting the high res fbx multi mesh, you would specify an additional fbx file for the _low parts...so the bake would use the two fbx multipart meshes to bake in parts, then apply that to the UVs of the single painter mesh...the single painter mesh and the fbx _low would have to be the same UVs shell shape/size/resolution etc, and polycount woud have to match.

But wouldn't this work?  I'm assuming I'm thinking beyond what painter can currently do, but I was just asking if I was missing something like this that it could do already.

This way, peps that wanted to use a single low res mesh game asset could utilize the bake by name feature for better bakes, simply by providing 2 fbx files, _low and _high both multi part, but still work on a single mesh in painter with multiple IDs/texture sets.  Seems like there is a step missing in the pipeline I thought might be there already.
Last Edit: October 20, 2019, 06:15:54 pm

Post screenshots of your actual project please... and describe your problem in just a few simple words. This is too much text for me to quickly filter out what the actual problem is.

How do you want to avoid baking neighboring parts if there are no separate neighboring parts/ it is just one single object? Quick answer: not possible.

Each neighboring lowpoly part needs a corresponding highres part in order for this to work. If you have just a single lowpoly object, there is no reasonable or actual way to use the 'match by mesh name' feature. It compares the names of the individual sub-objects. If there is just a single object, there is nothing to compare. End of story.

'Yes, multiple material id's mean multiple texture sets.'

No they don't. I have no idea about what you are doing in your project, you need to tell us how you actually set it up. If you created the TextureSets from UDIMs, material assignments of the lowres mesh mean nothing.

You are aware that TextureSets are completely separate from the 'mesh by mesh name' feature, right? The number of TextureSets is not linked to the number of sub-objects you have. You can have a single TextureSet, and any number of highres + lowres objects to bake from.
Last Edit: October 21, 2019, 03:18:50 pm