This is a long time coming for us- Handplane is now a full baking tool. Our goal with handplane baker is to build the most efficient baking tool for a production environment and make it free. We have a lot of cool features that should save you time and effort. I did a video overview of the tool which you can watch here:
https://www.youtube.com/watch?v=ACkX_t3QDnU&feature=youtu.be
v 0.9.2
*Fixed some low level bugs exposed by meshes missing important information (texture coordinates, normals)
*Added notification for bake failures when models are missing texture coordinates, normals, or other critical info.*Sets default image format to tiff 16
Some of the highlights:
I have been doing my testing on 10-20 million triangle meshes. Loading and baking models that large is super quick. With the exception of our ray trace AO, all of our output maps are extremely fast. The raytrace AO is the slowest output but we also have an alternative post process AO that is very quick/smooth and works well in many circumstances. For a benchmark on large mesh handling (with an i7 4770k): A 20 million triangle mesh takes about 6 seconds to load into memory, building the projection structure takes an addition 5 seconds, and baking a 2k 4x super sample tangent space map takes 7 seconds. Totaling 18 seconds for a final quality 2k bake of 20 million triangles.
This lets you bake multiple meshes on top of each other into one output map. No more exploding models. Projection groups also let you do things like isolate ambient occlusion within a group, assign ray projection distances to multiple models at once, and assign materials. Here is an overview of the model loading and projection setup page of our UI:
You can create, save, and share libraries of material base colors. Assign them to pieces of your models and they are baked into an organized PSD set up with layer masks, ready for you to paint on. I am really hoping people post and share their material libraries so we can build a central repository for everyone to work from. You can name and edit colors for 3 material properties in the editor like this:
This is very flexible, and can be used for metalness, specular, or even something like dota2 material output. For dota2 output you would name your channels color, mask1, mask2 and then for the mask layers adjust each RGB color channel to set your desired metalness, color warp... We still need to figure out an a clean way to handle the alpha channel properties for specular exponent and self illumination. You can use the matID swatch color to get an additional 3 color channels but they aren’t masked nicely like the others. Suggestions are welcome.
The resulting PSD pulls in all the naming and colors done in handplane and looks like this: In addition to all of the tangent space outputs in older version of handplane we have added support for Unity 5.3, Unreal 4, and Source 2. All of these have also been ported to the tangent space calculator which I will post separately as handplane 1.6.
*More fast AO output options and improvements to what we currently have.
*I would like to look into substance painter integration or find ways to make our tool work seamlessly with substance.
*Figure out why exporting a model as FBX, and then exporting a second copy with push modifier results in a different file size. This is a pain for cages.
From suggestions:
*figure out FBX issue (someone who has this issue needs to send me files so I can reproduce it)
*Create warning with option to cancel when users bake without an output location set
*Add a button to the UI to open the output location in explorer
*.tga support <- Also make sure 8 bpp output is dithered
*Set tiff to default output. Personally, I don't like PNG files.
*Create a user editable default project
Replies
I have an alpha you can try that has a bunch of fixes, including stability fixes.
http://www.alecmoody.com/handplaneBaker_alpha.rar
The change log looks something like this:
*Fixed PNG not writing correctly for some users
*Added dithering for 8 bit outputs
*Added an option to generate smooth highpoly normals when no mesh normals are found
Also, I wanted to follow up on this. We are looking at providing some additional controls for how projection ray direction is calculated across a face. However, I wanted to point out that in this comparison, the xnormal result is not an averaged projection, which is why there is zero skewing. Look at the split edges where there should be rounded corners.
Does anyone have a suggestion for how they would like multiple ray direction methods to function? It will likely be a global checkbox or dropdown, depending on how many options we create.
1) Improved control over projections. Skew mesh support but also we want to experiment with some changes in how ray directions are calculated (we have some ideas that should allow users to have a slider for control over how ray angles propagate along a face).
2) Model name based projection group generation. We have had several people ask for this and it would likely come in the form of a separate mesh loading button that would automatically populate projection groups
3) Automatic sampling for AO to use the minimum number of samples to achieve and desired noise threshold. It is currently very easy to oversample AO. Also I would like to add some kind of ao sample smoothing to get better results with fewer samples.
4) Automatic settings for curvature and cavity to scale map generation for best dynamic range without clipping any tones.
My question to the community is: are there any big features you would like to see not covered here? Where do you think handplane baker currently falls short?
Maybe a model viewer? One of the core principals we have used in making development decisions is to allow quick handling of truly massive meshes. Sending 50 or 100 million triangles to the GPU is slow and I wouldn't want bake functionality to be handicapped by a limit of how many triangles can be drawn on screen. I can see the usefulness in having a model viewer to debug issues with high/low scale differences.
http://handplane3d.com/download.html
http://www.handplane3d.com/handplane_1.6_beta2.rar
We will package this into the baker release build.
#3 and #4, seem like good ideas as well.
Something that might be handy is if HPB could subdivide the mesh itself, so I can just export the sub-d cage. This could make it easier to deal with many large/dense meshes. HPB would also have to store the results though after the first revision, updating after the input mesh is changed, otherwise you'd soon get tired of waiting for meshes to subdivide every time you re-bake. It would also have to use catmull-clark/p-sub. Not because of edge weighting, just because it's a better algorithm.
I'm just trying the new Alpha build and interestingly enough that problem occurs with the 'smooth high res normals if none-found' , it doesn't save the result, so it has to recalculate the mesh every time you rebake. xNormal doesn't seem to have that problem, unless I just haven't noticed.
More problematic is, I just can't seem to get cage baking to work. No matter how much I fiddle with the back-ray offset scale, I always get significant errors in my bake. If you like I can zip the current example I'm using up and send it to you in a PM.
I don't think there's anything missing - I only had some problems with high poly normals..apparently .obj's from 3dsmax have an issue, but with the latest options in the alpha it's fixed, and the bakes are perfect. So far this looks really promising, can't wait for final version!
Changelog:
v 0.9.3
*Fixed Issue where some users reported not having the correct Visual C++ distribution after installation
*Pressing the bake button while in progress now cancels the bake
*8 bit TGA output
*Added dithering for 8 bit outputs
*Fixed PNG not writing correctly for some users
*Added an option to generate smooth highpoly normals when no mesh normals are found
*Improved loading of mesh normals for high poly models
*Improved stability with large resolution and high sample count bakes
*Added option to suppress warnings for mesh triangulation
*Set default back ray distance to 5
*Added a button next to the output path that opens the output folder in explorer
*Included an installer for our old tangent space calculator in the install dir
There should also be an option to round any intersecting geo as well. Almost like a soft weld.
Having an adjustable intensity would be helpful too.
Still doesn't seem to bake correctly either no matter what I try (OS or TS).
i know that some of those options might sound familiar to an expert but for someone new to the process and who didn't use x-normal they might sound ambiguous
Not at the moment. We are working on a more in depth method to assign materials and group (auto grouping, sub objects, matIDs).
It seems to me HB is only for Windows, at least so far, is this right?
Thanks in advance,
DPC
I just wanted to say I went to get the new .9.3 version off gumroad, donated a little more to say thanks again. The download link that came up was for the 'HandPlaneBaker64_v0.9.2_x64' version, and I thought maybe .9.3 wasn't released yet, however when I tried the emailed download link the 'HandPlaneBaker64_v_0_9_3' came up. Might wanna check the version that is coming from that direct download link. Thanks for the update!
https://gumroad.com/products/znpF
2/5/2017 - v 0.9.4
*Fixed curvature maps not using smooth high res normals.
*Added an option to automatically normalize curvature maps by computing the max curvature generated.
*Added hotkeys: ctrl+o, ctrl-s, ctrl-shift-s, ctrl-n, alt-f4, ctrl-b (bake)
*Added Thickness map output
*Handplane now displays the name of the current project file
*Added logic to protect users from losing unsaved changes to the current project.
*Fixed a bug in AO causing some sample counts to generate slightly dark results.
*Users can now drag and drop a project file to load it.
*Changed ray miss color for curvature maps to middle grey
*Changed ray miss color for AO to black
We also posted the winners of the contest here:
http://polycount.com/discussion/183039/announcing-the-winners-of-the-handplane-baker-contest-new-handplane-build#latest
You guys really rock. I am going to use this tool in an upcoming lecture for the students to use.
(edit) nevermind the request. My file got corrupted. Have to try if it actually works first.
Is there a way for me to make the edges more rounded like the high poly without adding a tiny bevel? Is this something that even pertains to Handplane (or is it a model/render thing)?
I don't really have any crazy ideas on the fine balance of "developing something you love" vs. "putting food on the table", but I hope something good still comes out of this. Been using this since its inception and its excellent for it costing $0 and would still keep using it.
My CPU is i7 7700k. Is this limited by hardware or the baker itself?