this is rad, man. I finally gave it a whirl the other day
Is there any way to load multiple highpolies and bake them onto a single lowpoly though? i wish the listview in the main baking tab were expandable to see more details for a particular bake or something
Also, since we have separate folders, could there be an option for both the highpolies and lowpolies to share the same name with no suffix/prefix? I've talked to a few people who do that, even though I usually use some sorta prefix/suffix myself
awesome work! lookin forward to more updates, man! This could totally change how i interact with xnormal
Hey Funky
Glad you love it ! And thanks for the feedback
We should find a way to package your cool map merger together as a single package too
As for baking multiple highpolies onto a single lowpoly, the current architecture doesn't allow it. since it looks for a file in each subfolder.
It's probably doable, just it would mean a lot of work. Also, what kind of other details would you need to see, if you expanded a particular bake?
The original idea behind the baker, was to facilitate batch baking of an exploded character, which goes completly in the opposite direction of multiple high on a low.
I'm wondering how i'd go for adding this with the current setup.
About, the "no suffix/prefix", it's easier to implement.
I've not work on the tool for a while, (pretty busy at work and home), so I can't promise I'll integrate those features, but i'll keep them on the drawing board
Thanks again for your feedback!
Also things will probably change when (if it ever happens, lol) xNormal 4.0 get released.
the prefix/suffix thing isn't really a big deal, it's certainly simple enough to rename the files properly if you think it'd muck up your intended workflow.
But the multiple-highpoly thing is super big. I figured it'd take some refactoring of the architecture though :S. Think for instance if you have a jacket with patches on it or a zippered pocket, metal snaps, etc. which you wanted to bake all onto 1 lowpoly. This also makes the Bake Base Texture with the 'ObjectID' option much less useful since you can't derive your colormasks to help you make dDo material masks. There are a few ways I could see doing it, but just figured id throw out some ideas!
Hi,
Just wanted to report a little bug, if you are already in the needed resolution in the set all setting and you want to change the resolution of your objects, you have to leave the current resolution and choosing it back as it doesn't refresh if you just click on it.
And a feature I'd like to see is an option allowing you to bake a tangent space normal map and an object space normal map in one batch, instead of having to baking one and ticking the tangent box to bake the second batch.
Hi there, I can't seem to get the program to work. it's found my high polys, my low polys, and my cages, it has them all there, but pressing bake doesn't seem to do anything at all, and all the individual bake me buttons are greyed out.
I'm sure I'm missing something very obvious, but can anyone please tell me what I'm doing wrong? Cheers
DMarmor: I'll work on this as soon as I get some freetime !
Sazu: Hum, you're sure you have xNormal installed, ? Something mustn't be right if the individual buttons are disabled. -> Bake ALL/Selected will skip invalid meshes (one with greyed out individuals bake buttons)
Can you send me a screeshot by PM?
Is it different if you change the "use cage" settings?
This makes up for a clearer interface you can see what's missing instantly.
-> If you're in "not use cage" mode, the Cage Checkbox will say ok no matter what (instead of N/A/unchecked box). (I'll be honest, it was easier than hiding them)
-> New little button for a Set ALL dimensions. This is to "fix the bug" of having to change global resolutions twice for the already selected values.
Fixes:
-> The object's BaseName generation was faulty due to case sensitivity. So now object_suffix is the same as object_SUFFIX or Suffix
-> If you're in "not use cage" mode, the Cage Checkbox will say ok no matter what (instead of N/A/unchecked box). (I'll be honest, it was easier than hiding them)
-> New little button for a Set ALL dimensions. This is to "fix the bug" of having to change global resolutions twice for the already selected values.
-> The global resolution value is now saved too between sessions.
-> The global resolution value is now the default value for new items found.
New/Changed:
-> Bake Both Normals Checkbox: Allows you to bake both object and tangent space normal maps. This will run a separate bake specifically for the object-space normal map. Note that it'll force the "Tangent" space checkbox if it's not ticked.
-> Auto Refresh: The app now monitors the baking folder, so you can see instantly what's going on when renaming/deleting/adding files the different baking folders.
-> Therefore the refresh button has been removed.
-> The global setting panel is now static and won't be collapsed when you're expanding another map settings panel.
Fixes:
-> Internal: Changed/Refactored some redondant code.
Wow, this is awesome indeed. I was wondering if it's possible to bake more objects on the same map. That would be very useful in my workflow for complex assets where I need to use more objects instead of one, this way it's easier to manage separate parts. That feature would make this one of my favorite tools. Other than that everything works smooth.
Alex262: That's the whole point of this tool. However, you're asking for an image editing by merging them. Which in my current set of skills, not in my capacity to do directly in c#.
Okay but just to be sure that we're talking about the same thing I wanted to mention that in xNormal if you select let's say 20 lp/hp/cage objects they will be automatically baked on the same map. Isn't it possible to achieve the same functionality just by loading xNormal once for baking a group of object sets (hp/lp/cage) instead of loading xNormal for each set?
How yeah, sorry ;p It is. But the point of the batcher, originally was to bake exploded mesh individually, to be recombined later to avoid overlaps and such.
Now I guess I could try a grouping feature, to batch multiple high/low on a single map but that makes things a bit complicated to detect what's required (5 high poly for 5 lowpoly or just one lowpoly etc?)
For now it's easier to bake everything separately and merge things with the script in photoshop.
Just started using this program and first off, it's fantastic! I have run into a bug.
First I can't bake if my files are different formats. I currently have my Low Poly and Cage set to FBX, but my High Poly is an OBJ. The batcher will load the LP and Cage but doesn't load the High Poly, even if I have my file extensions set correctly. Unless I open the HP in Maya and save it out as a FBX then the batcher will read the file.
I'm able to work around this issue, but I could move a lot faster if this was resolved. Anyways, keep up the good work this going to quickly become a must have tool!
EDIT:
Sorry it was my fault, the error told me it was probably a cage error but I loaded the wrong mesh and they didn't had any uvs
Hi,
On my side I still have the cage issue even with the 1.0.6.9.
It tells me it has a cage and it can't bake any map.
What is strange is that only one of my object can be baked and it doesn't seems to differ from the others.
And the object which can be baked has everything ticked as Ok, Baked, Low Poly, High Poly, Cage.
An other me
I have an issue with the naming, it doesn't work when you have a name begining by H or L, I guess it is because it create a conflict with the way it found High poly and Low poly.
In my case I have an object named grenade_handle, and it can't find the High poly mesh correctly.
I changed the name to _landle and it create the same error.
The workaround is to have a minus (-) to name your high and low when you are naming using underscores (_)
Great plugin! It could be great if it was possible to use one highpoly with same name for two identical lowpoly objects which use different uvs. So for instance, I have one decoration object with one uvs, then I copy pase it in the same place and move its uvs . Next I use same highpoly to bake both. Now it looks like I have to copy and rename same highpoly which is not cool or maybe there is a way ?
Another small wish is to be able to set Anti-Aliasing seperatly for ao and normals. I have noticed that Anti-Aliasing 4 is fast for normals and it looks better but very slow for ao and I dont need very detailed ao so I usually use 1 Anti-Aliasing for ao and 4 for normals.
This is a really awesome tool! As xvampire has asked, I would love the ability to have multiple highpoly meshes to bake from.
I'm also curious if there is a way to bake height maps without having to have manual user input? I am baking a bunch of maps, and the HM Tonemapper currently keeps it from being fully automated.
Edit:
Just realized under height map settings there's the option for 'Manual' and 'Raw FP Values', so I'll give those a whirl
To everyone: I could do this. But that was not the original plan when this was created, it was made to bake exploded Highpoly onto exploded LowPoly. I'll see what I can do with the little time I have. But thank you all for your feedback.
One way could be to either identify manually the Highpoly you want to bake with another one. Or use folders in the Highpoly folder, if a folder has the same name as a lowpoly object, it uses every highpoly found within it and an option to enable this.
ahtiandr : Separated AA for AO could be tricky to set up or require an extra pass as the AA setting is common to every map.
sorry didn't want to take over your thread, or point fingers at your tool - which is great.
just wanted to give him a solution to his multiple mesh thing. but seems like using the folders might already be the fix, as we do it the exact same way with our tool
Anyway,
I managed to spend a few hours on this, and now, the tool supports multiple High Poly Meshes for a single Lowpoly.
v 1.0.6.10 New/Changed:
- Support baking of multiple HighPoly Mesh on a single map (for a single lowpoly mesh).
- Refactored some code.
- When Refreshing, the selected checkbox will keep its previous state (instead of becoming checked)
Instructions to bake Multiple HighPoly Meshes on a single map:
In the HighPoly folder, you need to create a new folder that'll contain the HighPoly meshes to be baked on a single pass.
2 Important naming rules:
- The folder needs to have the same name as the lowpoly objects, but with the correct suffix(or Prefix) for HighPoly.
- The highpoly meshes in that folder need to have the correct suffix(or Prefix) and extension for HighPoly as well.
In the tool, you need to tick the checkbox on the item that require multiple HighPolies.
Be aware that'll only check for the folder and the highpolies inside it if this checkbox is ticked. In the tool, if this folder exists but is empty, the highpoly cell will be red showing 'N/A'.
Finally you cannot set "highpoly" settings for each highPoly from this subfolder. What you set in the tool will be applied to all of them. (as if they were a single mesh)
I think that'll work for baking out my AO stuff. That way i can have stuff not in the low uv's affect the ao. And then combine after.
What do you think about adding a checkbox or button that just bakes the whole que as one combined map? That way I can work on all my objects individually in zbrush and bring them all together in the bake. Would be super handy for padding issues.
Thanks a ton for this tool, it's such a time saver!
Its not a bad option, but im doing a lot of hard surface stuff, with a dense page, so my preference is to do it in the bake
you do realize, that xnomral itself also does it in post?
and i've been doing the same for months now, bake all pieces without padding, combine them in photoshop and run the xnormal dilation filter over it. it will be perfect. unless your unwrap isn't good. but then xnormal doing it will not change a thing.
What do you think about adding a checkbox or button that just bakes the whole que as one combined map?
That's the whole point of this tool: Bake stuff exploded, combine in Photoshop (using funkybunnies script): SCRIPT.
Secondly the tool doesn't bake everything in a single pass for one reason: if one object crashes, the whole operation is cancelled for all the others. So I do each object bakes in one pass. (Bakes all the maps for one object, quit, start xnormal again with next object etc...)
I'm run into an issue with the new update. I'm getting an error, "Cage probably different from lowpoly mesh". Which wasn't happening before the update. Even if you turn off "use cage" the error still occurs.
I've tested the same meshes in xnormal manually and there is no problem. I've tested with sbm and obj.
One think i forgot to mention, for some reason semantec flags the installer as a virus.
Also, I have a super greedy request, but I thought I'd throw it out there.
Often after my first bake, I'll notice something i want to fix in my sculpt, or maybe cage. And I'll fix maybe 5-10 things a time. After that I have to figure out which ones to bake again.
Do you think you can detect which models have been updated and put a visual indicator in the tool?
Totally shameless request, I know. Sorry and thanks for your work.
hi @trebor777 nice update!
it definately uselful when work with multiple zbrush subtool ,
zbrush naming system is quite ... disaster so using those folder will help the pipeline a lot ...
Replies
Keep going man !
edit: Im an idiot, i forgot to change the Prefix tabs... Thanks!
Is there any way to load multiple highpolies and bake them onto a single lowpoly though? i wish the listview in the main baking tab were expandable to see more details for a particular bake or something
Also, since we have separate folders, could there be an option for both the highpolies and lowpolies to share the same name with no suffix/prefix? I've talked to a few people who do that, even though I usually use some sorta prefix/suffix myself
awesome work! lookin forward to more updates, man! This could totally change how i interact with xnormal
Glad you love it ! And thanks for the feedback
We should find a way to package your cool map merger together as a single package too
As for baking multiple highpolies onto a single lowpoly, the current architecture doesn't allow it. since it looks for a file in each subfolder.
It's probably doable, just it would mean a lot of work. Also, what kind of other details would you need to see, if you expanded a particular bake?
The original idea behind the baker, was to facilitate batch baking of an exploded character, which goes completly in the opposite direction of multiple high on a low.
I'm wondering how i'd go for adding this with the current setup.
About, the "no suffix/prefix", it's easier to implement.
I've not work on the tool for a while, (pretty busy at work and home), so I can't promise I'll integrate those features, but i'll keep them on the drawing board
Thanks again for your feedback!
Also things will probably change when (if it ever happens, lol) xNormal 4.0 get released.
the prefix/suffix thing isn't really a big deal, it's certainly simple enough to rename the files properly if you think it'd muck up your intended workflow.
But the multiple-highpoly thing is super big. I figured it'd take some refactoring of the architecture though :S. Think for instance if you have a jacket with patches on it or a zippered pocket, metal snaps, etc. which you wanted to bake all onto 1 lowpoly. This also makes the Bake Base Texture with the 'ObjectID' option much less useful since you can't derive your colormasks to help you make dDo material masks. There are a few ways I could see doing it, but just figured id throw out some ideas!
great work, man!
Just wanted to report a little bug, if you are already in the needed resolution in the set all setting and you want to change the resolution of your objects, you have to leave the current resolution and choosing it back as it doesn't refresh if you just click on it.
And a feature I'd like to see is an option allowing you to bake a tangent space normal map and an object space normal map in one batch, instead of having to baking one and ticking the tangent box to bake the second batch.
I'm sure I'm missing something very obvious, but can anyone please tell me what I'm doing wrong? Cheers
Sazu: Hum, you're sure you have xNormal installed, ? Something mustn't be right if the individual buttons are disabled. -> Bake ALL/Selected will skip invalid meshes (one with greyed out individuals bake buttons)
Can you send me a screeshot by PM?
Is it different if you change the "use cage" settings?
Upcoming change: Goodbye Checkbox, welcome COLORS!
This makes up for a clearer interface you can see what's missing instantly.
-> If you're in "not use cage" mode, the Cage Checkbox will say ok no matter what (instead of N/A/unchecked box). (I'll be honest, it was easier than hiding them)
-> New little button for a Set ALL dimensions. This is to "fix the bug" of having to change global resolutions twice for the already selected values.
Fixes:
-> The object's BaseName generation was faulty due to case sensitivity. So now object_suffix is the same as object_SUFFIX or Suffix
-> If you're in "not use cage" mode, the Cage Checkbox will say ok no matter what (instead of N/A/unchecked box). (I'll be honest, it was easier than hiding them)
-> New little button for a Set ALL dimensions. This is to "fix the bug" of having to change global resolutions twice for the already selected values.
-> The global resolution value is now saved too between sessions.
-> The global resolution value is now the default value for new items found.
New:
-> Using Colored Text instead of checkboxes
New/Changed:
-> Bake Both Normals Checkbox: Allows you to bake both object and tangent space normal maps. This will run a separate bake specifically for the object-space normal map. Note that it'll force the "Tangent" space checkbox if it's not ticked.
-> Auto Refresh: The app now monitors the baking folder, so you can see instantly what's going on when renaming/deleting/adding files the different baking folders.
-> Therefore the refresh button has been removed.
-> The global setting panel is now static and won't be collapsed when you're expanding another map settings panel.
Fixes:
-> Internal: Changed/Refactored some redondant code.
This is going from strength to strength, Thanks again for developing this!
But good news, to merge lots of maps together; you already have a fantastic photoshop script that I mention, made by FunkyBunnies : http://www.funkybunnies3d.com/tools/photoshop/FB_combineMaps.jsx
-> http://www.funkybunnies3d.com/tools.php
Now I guess I could try a grouping feature, to batch multiple high/low on a single map but that makes things a bit complicated to detect what's required (5 high poly for 5 lowpoly or just one lowpoly etc?)
For now it's easier to bake everything separately and merge things with the script in photoshop.
First I can't bake if my files are different formats. I currently have my Low Poly and Cage set to FBX, but my High Poly is an OBJ. The batcher will load the LP and Cage but doesn't load the High Poly, even if I have my file extensions set correctly. Unless I open the HP in Maya and save it out as a FBX then the batcher will read the file.
I'm able to work around this issue, but I could move a lot faster if this was resolved. Anyways, keep up the good work this going to quickly become a must have tool!
Bug Fixed! it's a little bug introduced when i refactored my code.
Sorry it was my fault, the error told me it was probably a cage error but I loaded the wrong mesh and they didn't had any uvs
Hi,
On my side I still have the cage issue even with the 1.0.6.9.
It tells me it has a cage and it can't bake any map.
What is strange is that only one of my object can be baked and it doesn't seems to differ from the others.
And the object which can be baked has everything ticked as Ok, Baked, Low Poly, High Poly, Cage.
I have an issue with the naming, it doesn't work when you have a name begining by H or L, I guess it is because it create a conflict with the way it found High poly and Low poly.
In my case I have an object named grenade_handle, and it can't find the High poly mesh correctly.
I changed the name to _landle and it create the same error.
The workaround is to have a minus (-) to name your high and low when you are naming using underscores (_)
Another small wish is to be able to set Anti-Aliasing seperatly for ao and normals. I have noticed that Anti-Aliasing 4 is fast for normals and it looks better but very slow for ao and I dont need very detailed ao so I usually use 1 Anti-Aliasing for ao and 4 for normals.
Anyway, really awesome thing you did !!!
I'm also curious if there is a way to bake height maps without having to have manual user input? I am baking a bunch of maps, and the HM Tonemapper currently keeps it from being fully automated.
Edit:
Just realized under height map settings there's the option for 'Manual' and 'Raw FP Values', so I'll give those a whirl
I'd like to see this as well. I want to bake out ao with all my low and high meshes + cages in one pass.
It might be useful to do this with normal as well to deal with edge padding issues.
http://www.polycount.com/forum/showthread.php?t=125244
To everyone: I could do this. But that was not the original plan when this was created, it was made to bake exploded Highpoly onto exploded LowPoly. I'll see what I can do with the little time I have. But thank you all for your feedback.
One way could be to either identify manually the Highpoly you want to bake with another one. Or use folders in the Highpoly folder, if a folder has the same name as a lowpoly object, it uses every highpoly found within it and an option to enable this.
ahtiandr : Separated AA for AO could be tricky to set up or require an extra pass as the AA setting is common to every map.
just wanted to give him a solution to his multiple mesh thing. but seems like using the folders might already be the fix, as we do it the exact same way with our tool
Anyway,
I managed to spend a few hours on this, and now, the tool supports multiple High Poly Meshes for a single Lowpoly.
v 1.0.6.10
New/Changed:
- Support baking of multiple HighPoly Mesh on a single map (for a single lowpoly mesh).
- Refactored some code.
- When Refreshing, the selected checkbox will keep its previous state (instead of becoming checked)
Instructions to bake Multiple HighPoly Meshes on a single map:
In the HighPoly folder, you need to create a new folder that'll contain the HighPoly meshes to be baked on a single pass.
2 Important naming rules:
- The folder needs to have the same name as the lowpoly objects, but with the correct suffix(or Prefix) for HighPoly.
- The highpoly meshes in that folder need to have the correct suffix(or Prefix) and extension for HighPoly as well.
In the tool, you need to tick the checkbox on the item that require multiple HighPolies.
Be aware that'll only check for the folder and the highpolies inside it if this checkbox is ticked. In the tool, if this folder exists but is empty, the highpoly cell will be red showing 'N/A'.
Finally you cannot set "highpoly" settings for each highPoly from this subfolder. What you set in the tool will be applied to all of them. (as if they were a single mesh)
I think that'll work for baking out my AO stuff. That way i can have stuff not in the low uv's affect the ao. And then combine after.
What do you think about adding a checkbox or button that just bakes the whole que as one combined map? That way I can work on all my objects individually in zbrush and bring them all together in the bake. Would be super handy for padding issues.
Thanks a ton for this tool, it's such a time saver!
thanks!
you do realize, that xnomral itself also does it in post?
and i've been doing the same for months now, bake all pieces without padding, combine them in photoshop and run the xnormal dilation filter over it. it will be perfect. unless your unwrap isn't good. but then xnormal doing it will not change a thing.
That's the whole point of this tool: Bake stuff exploded, combine in Photoshop (using funkybunnies script): SCRIPT.
Secondly the tool doesn't bake everything in a single pass for one reason: if one object crashes, the whole operation is cancelled for all the others. So I do each object bakes in one pass. (Bakes all the maps for one object, quit, start xnormal again with next object etc...)
I'm run into an issue with the new update. I'm getting an error, "Cage probably different from lowpoly mesh". Which wasn't happening before the update. Even if you turn off "use cage" the error still occurs.
I've tested the same meshes in xnormal manually and there is no problem. I've tested with sbm and obj.
Working on a fix.
Will have an update soon.
Fixed:
- Bug : The xml file wasn't generated properly for the highpoly mesh data for single highpoly meshes.
Fixed:
- Bug : When Using prefixes: The xml file wasn't generated properly for the highpoly mesh data for single highpoly meshes.
Also, I have a super greedy request, but I thought I'd throw it out there.
Often after my first bake, I'll notice something i want to fix in my sculpt, or maybe cage. And I'll fix maybe 5-10 things a time. After that I have to figure out which ones to bake again.
Do you think you can detect which models have been updated and put a visual indicator in the tool?
Totally shameless request, I know. Sorry and thanks for your work.
it definately uselful when work with multiple zbrush subtool ,
zbrush naming system is quite ... disaster so using those folder will help the pipeline a lot ...
just made a little video tutorial:
[ame]https://www.youtube.com/watch?v=fFj25geeoqk[/ame]