Hi PC, this is my thread filled with my scatter brain collection of things I am working on. I have been focusing a lot on my process of making art lately and wanted a place to collect them all.
Material Work:
Working on some materials to test some blended material workflow things in UE4.
Tileable Red Brick: Zbrush, Substance Designer and Marmoset.
Next is to make the three other materials to blend with this. Plaster, Damaged Brick, and Stain/Grunge.
Shader:
I am building a material blend shader in UE4 that has majority of features you would need to blend your materials together on an asset. Here is a work in progress of the blending working.
It is being driven by this low res blend map:
This is what the material instance looks like:
Completed Features:
-4 Different Materials driven by an RGB map
-Detail Ramp maps to get better transitions between materials.
-Layer independent UV scaling
-Metaless, Roughness, and AO packed into single texture. Lose bit depth, but save memory and shader cost.
-Base 1:1 normal map and AO map.
-Color tinting for base color.
Kind of Working, but needs work:
-Detail Ramp map channel selector. Currently using 0, 1, 2. Need to look into how to make it just RGB.
-Mask controls to grow/shrink, and soften/sharpen. Not exposed in Material Instance yet.
To do list:
-Logic in shader to toggle on and off entire layer.
-Add support for vertex blending with a simple toggle.
-Better normal blending using the derivative solution.
-Roughness adjustment control variable.
-Scrolling UVs.
-Heightmap blending for parallax occlusion mapping.
-Directional projection for top down snow, moss, dirt, ect.
-Look into a better Fresnel solution, with possible controls to tweak.
-Will add more as I think of them.
Workflow Improvements:
Zbrush: Found this awesome startup script that lets you get rid of annoying things you have to do every time you start Zbrush:
https://gumroad.com/l/ZStar#Zbrush: Made a custom pallet of brushes and buttons I use all the time:
Next I want to work on the process for getting assets from Maya/Zbrush into Substance Designer/Painter, and then into UE4.
After that is work on some auto mask generators for building and generating RGB blend maps in Substance Designer.
Thanks for stopping by!
Replies
I have a small update today. General windows workflow improvements using a couple small programs.
First is direct folders: http://www.codesector.com/directfolders
Base program is free, and they have a few more features in the paid one.
It lets you middle mouse click anywhere in windows and get access to the same bookmarks, last locations you saved to, and quick access to your most commonly used folders. It also works in photoshop which has the worst file browser ever. Overall saves a lot of time jumping around your file structure. Here is a quick little layout I made:
Another program I love is Fences. It lets you create bounding boxes, folder portals, and automatic desktop organization for your desktop. I also like it because if you have to do anything to your video drivers, or change monitors around, it keeps your desktop the same. Window will randomly reshuffle your desktop whenever that stuff gets changed. Its well worth the $10.
This is what it looks like:
Website: http://www.stardock.com/products/fences/
Short video: https://www.youtube.com/watch?v=w9-xDAnfYlI
Have fun!
Also thanks a lot for sharing, I really appreciate that you spent the time to write these posts
Highpoly done, will do lowpoly and UVs soon.
After I bake the asset, I want to create a bunch of different custom nodes that create different texture detail masks using all that baked information.
Curious about your workflow from zbrush to Substance Designer. Did you sculpt the entire tileable texture out and then use substance to texture it? Or did you sculpt specific bricks and then use Substance to organize them? I am really starting to dig into the environment materials and had experimented with a similar workflow but it didn't yield results I had been looking for in my first set of iterations.
Large 'chunky' detail shapes are made in Zbrush always, like bricks, mud, rock, plaster, etc. I layout these out completely in zbrush, like this:
Basically following this workflow: http://polycount.com/discussion/126224/zbrush-tiling-sculpts
I like to do it in zbrush because it give me more control and feel than I can get from trying to do it procedurally.
Medium details are a mix of Substance and Zbrush. Sometimes I will sculpt some cracks, pebbles, divots, and other random details and then scatter them around in Substance. Sometimes I generate it fully in Substance just depends on what I think is faster.
Small scale detail are always done in Substance like pits, surface noise, grit, etc.
Then I bake a ton of different maps, Normal, AO, Cavity, Height, Transmission, random matcaps, and a few others. I use my bakes as masks and I start layering my texutre together in Substance using a combo of procedural and photo sourced information.
These are some graph examples:
For the detail normal map I made the height map 100% in Substance.
For the albedo its a lot of the baked information with some procedural edits to make masks to blend together photos.
Hope that helps!
I built an auto baker using Pymel, Substance Bath Tools, and Substance Designer. You save your Maya file somewhere, and anything you place in the lowpoly, highpoly, and cage groups will automatically get baked with the folder structure and naming taken care of. Here it is in action:
Maya:
Here is what the output looks like in the directory:
Bakes:
The naming is all based off of the name and location of your Maya file.
Here is what the SBS file looks like:
Still have lots to do with it but I am happy with the progress so far
why is the normal map so bright in the "Bakes" folder? it looks fine in the SD graph :S
When you bake with the tiff format in Substance it bakes it in 32bit, and then when you hook it up in Substance it applies the correct color space correction to it.
It is super bare bones right now, but it works which is cool.
Added features to change resolution, AA, lowpoly UV set, and select the name matching feature. Also cleaned up the options how to handle the highpoly to speed up the tool a bit, and also support an externally selected file.
Also setup a Trello board for it. It is a great little post-it note type organization tool, which is an awesome way to organize personal projects: https://trello.com/
Here is the board:
Here is a UI update:
I added 2 new features:
-Make Cage Mesh, deletes the old cage and creates a new one by combining all the lowpoly meshes together. I want add a couple things to help quickly edit the cage mesh, like color coding the different meshes, and quick buttons to edit the cage.
-Create Painter File, launches Substance Painter with the lowpoly and textures imported. I am exploring additional functionality by using a template file to launch from which I can store more settings in.
I did some code re-organizing and found I can actually bake multiple maps at once instead of just one at a time like I was previously doing. I reduced my bake times by about half, here are some timed results for those interested:
Baking 7 maps: AO, Color ID, Curvature, Normal, Position Map, Thickness, and World Space Normal.
All bake times start when the Bake! button is hit, and include the time it takes to export all the meshes.
650,000 triangle highpoly @ 2048 with 2xAA = 1:29
650,000 triangle highpoly @ 4096 with 2xAA = 4:49
10mil triangle highpoly @ 2048 with 2xAA = 5:55
Note that a 10mil triangle mesh takes 1 minute to export out of Maya.
I did a test in Knald and found that it took me about 4 min to just setup the bake in the first place, so this saves a bunch of time which is awesome. It also makes re-baking an asset much faster too.