Home Quixel Megascans

REQUEST: Great big Blender thread

Hi!

There has obviously been a lot of questions regarding Blender lately and we tought it would be a good idea to collect everybodys thoughts and ideas and hear what kind of support you want in order to create the best possible work flow!

So what would you like to see from Quixel in the future? Let us have it!

Replies

  • NoiseCrime
    Offline / Send Message
    NoiseCrime polycounter lvl 6
    Great Idea for a thread, but unless i've missed some specific issues I honestly feel there probably isn't much that is needed other than strongly suggesting that users switch to xNormal to bake out the required input maps.

    Though Blender is great in many wyas there are issues with using it to generate input maps and I've addressed some of them in both my post on the suggestions thread and Blender - Export Colour ID Map addon post.

    As I mentioned in the suggestion thread there are some steps Quixel could take that would not only help in the case of Blender but also for any 3D modelling application.

    Specifically these would be to offer per project settings for assigning the mapping between r,g,b channels/components from an image into the relevant directions for both object and tangent space normal maps. That is for Object Space Normals Quixel allow us to define the mapping between r,g,b to x,y,z, whilst for tangent normals being able to flip the x and/or y directions. The most important point being that this should be accessible from 're-import' project not just project creation.

    The reason for this is to avoid being tied to one true representation when in reality 3D apps might provide such assets in a different representation without the ability to change it (e.g. Blender Renderer for object space). The other aspect is when being provided with such assets from clients (as often happens in my work) i'm not reliant on going back and forth with them trying to fix issues I can solve the problem in DDO itself.


    The other issue i've faced is the lack of a quick and effortless method of generating a material colour ID map from blender. I've addressed this in my other thread, and provide a first pass at a Blender python script to do it.

    I am considering if I can improve it and offer some method of assigning actual colour ID's to blender materials without using the diffuse channel. However something i'm unclear on is whether DDO has a default list of id link colours? I couldn't find anything in the ddo script files and i'm not even sure if specific colours actually help, but it seemed to make sense to me to be able to provide material colours that matched the name and colour value of those shown in the drop down link selector. If there is a colour to material name/type list that would be really useful to have.


    Beyond that, Blender and I believe xNormal are missing features to bake gradient maps, but i'm not sure how Quixel could assist? I keep meaning to look into the 3ds Max and Maya solutions you've posted in the DDO Documentation to see if it would be possible to generate such a map from Blender or add as a plug -in to xNormal, but again that would seem to be going beyond what Quixel could or should be doing?


    Overall my only other recommendation is that Quixel focus some time on collating all the information they have gained through this beta test with regard to the main 3D modelling applications and produce some nice documentation to explain the full work flow.
  • nwopolygonshapeshifter
    NoiseCrime wrote: »
    Great Idea for a thread, but unless i've missed some specific issues I honestly feel there probably isn't much that is needed other than strongly suggesting that users switch to xNormal to bake out the required input maps.

    Though Blender is great in many wyas there are issues with using it to generate input maps and I've addressed some of them in both my post on the suggestions thread and Blender - Export Colour ID Map addon post.

    As I mentioned in the suggestion thread there are some steps Quixel could take that would not only help in the case of Blender but also for any 3D modelling application.

    Specifically these would be to offer per project settings for assigning the mapping between r,g,b channels/components from an image into the relevant directions for both object and tangent space normal maps. That is for Object Space Normals Quixel allow us to define the mapping between r,g,b to x,y,z, whilst for tangent normals being able to flip the x and/or y directions. The most important point being that this should be accessible from 're-import' project not just project creation.

    The reason for this is to avoid being tied to one true representation when in reality 3D apps might provide such assets in a different representation without the ability to change it (e.g. Blender Renderer for object space). The other aspect is when being provided with such assets from clients (as often happens in my work) i'm not reliant on going back and forth with them trying to fix issues I can solve the problem in DDO itself.


    The other issue i've faced is the lack of a quick and effortless method of generating a material colour ID map from blender. I've addressed this in my other thread, and provide a first pass at a Blender python script to do it.

    I am considering if I can improve it and offer some method of assigning actual colour ID's to blender materials without using the diffuse channel. However something i'm unclear on is whether DDO has a default list of id link colours? I couldn't find anything in the ddo script files and i'm not even sure if specific colours actually help, but it seemed to make sense to me to be able to provide material colours that matched the name and colour value of those shown in the drop down link selector. If there is a colour to material name/type list that would be really useful to have.


    Beyond that, Blender and I believe xNormal are missing features to bake gradient maps, but i'm not sure how Quixel could assist? I keep meaning to look into the 3ds Max and Maya solutions you've posted in the DDO Documentation to see if it would be possible to generate such a map from Blender or add as a plug -in to xNormal, but again that would seem to be going beyond what Quixel could or should be doing?


    Overall my only other recommendation is that Quixel focus some time on collating all the information they have gained through this beta test with regard to the main 3D modelling applications and produce some nice documentation to explain the full work flow.

    A quick way I make colour maps is by using the lambert colours and baking them out with the default blender renderer. I usually just set it to the "textures" bake out. It's not perfect but it works.
  • nwopolygonshapeshifter
    Some kind of nice workflow between Blender's Cycles renderer and DDO would be a god send. I know were going from PBR to raytraced complex materials and that is a major pain, but it would be amazing if there was a preset within DDO and a blender node setup that would simply involve us plugging in the textures and having the materials display properly.

    I haven't quite managed it but a few guys got pretty close results. (Notable Examples)
    http://extremeistan.wordpress.com/2014/10/07/experimenting-with-physically-based-rendering-in-blender-cycles/
    http://blenderartists.org/forum/showthread.php?350136-Quixel-suite-and-cycles
    http://blenderartists.org/forum/showthread.php?341799-Using-PBR-textures-in-Cycles

    Sounds simple on paper, but it is a huge amount to ask.

    I am sure some of those developing for the blender game engine wouldn't mind a bit more information about the "last-gen" export preset and what and how it exactly works with Blender's game engine.

    Another thing that would be nice to see is an example of how we should be exporting our models so that they play nice with the Suite.

    An old classic but goodie would be just an example pipeline from Blender to xnormal, to the Quixel Suite, and your pick of game engine. Its tried true and tested.

    That's all I can think about for now.
  • NoiseCrime
    Offline / Send Message
    NoiseCrime polycounter lvl 6
    A quick way I make colour maps is by using the lambert colours and baking them out with the default blender renderer. I usually just set it to the "textures" bake out. It's not perfect but it works.

    Yep that is the simplest method i've found, though it still took a fair bit of googling to discover the set up of disabling Texture Rendering via Render->Shading->Textures, then setting the bake to 'texture'. Prior to that I had a really stupid system of using specular colour ;)

    Out of interest would you mind giving my export colour ID map add-on a go and see if it works for you? It should work fine, i'm more interested in whether it has any flaws compared to lambert baking. Link to thread
  • tungerz
    Offline / Send Message
    tungerz polygon
    Thanks for the thread and focus on a blender-quixel pipeline.
    For me, was some confusion with understanding the differences in legacy to suite, example...
    The (awesome(older) tutorials one being the chainsaw.
    With legacy ddo, the .fbx file was in place to import into blender and add materials to your project. With quixel suite, it was not.
    So trying to try, find, or fail on achieving a workflow on material id creation became a blur.
    Try to add the legacy's .fbx to the suites version or bake flat emissive material in cycles, same with blender internal or just skip and add the material ids manually in quixel?
    Can't bake Gradient maps (yet, who knows what up Dalai's sleeve :p)are not available in blender, can't remember about Knald for gradient maps.

    Combine this with my trying to grasp (This is more of a technical learning curve for me to learn) understand baking in blender internal compared to cycles, or using xnormal, I've also been thinking about knald, not sure yet which way to go.
    Now factor in another learning curve on exporting models (Again, just another technical hurdle for me to learn.). To apply modifers on export, will edgesplits export, to triangulate or not?, as .obj or .fbx?
    I've actually had better results as .fbx, some reason strange results of edgesplits not exporting.

    Their has been some development on getting PBR Viewport into blender = blenderartist thread, Psy-Fi's and JWilkins- Viewport Experiments and Oliver over at blendtuts has had very impressive results with his node setup.

    Again, all of this is the same ole noob stuff with an (old dog)trying to learn new tricks.

    Thanks in advance for any and all knowledge.

    Cheers,
    ~Tung
  • MacOrion
    Offline / Send Message
    MacOrion polycounter lvl 9
    this is how i set up my gradient map(baking emision)
    XBbsvJv.png

    I still did not achieve a desirable render with cycles, tried the quixel node group that i found somewhere on the forum.
  • NoiseCrime
    Offline / Send Message
    NoiseCrime polycounter lvl 6
    MacOrion wrote: »
    this is how i set up my gradient map(baking emision)

    I still did not achieve a desirable render with cycles, tried the quixel node group that i found somewhere on the forum.

    Thanks for posting that, looks interesting, but doesn't Quixel require color gradient maps? Maybe you have to bake this three times once from each direction then combine them into a single map in Photoshop?
  • MacOrion
    Offline / Send Message
    MacOrion polycounter lvl 9
    I will check tomorrow how exactly the color gradient map needs to look (which color represents what direction). I think its possible to make a material out of nodes, no need to put it together in PS.
  • allaze-eroler
    Offline / Send Message
    allaze-eroler polycounter lvl 11
    MacOrion wrote: »
    I will check tomorrow how exactly the color gradient map needs to look (which color represents what direction). I think its possible to make a material out of nodes, no need to put it together in PS.

    as i already have blender, i did took my liberty to explore the trick you did there, i did exactly same like your excepted that i did add extra one as you can see :

    suzanne_bake_gradient.png

    on a side note, the third mapping need to be this way : rotation : z -90° because the normal 90° don't work... i Wonder why XD;

    well, hope it will help you out :)
  • FourtyNights
    Offline / Send Message
    FourtyNights polycounter
    The member here, JedTheKrampus made a Cycles shader that imitates UE4's materials, which can be downloaded from here. Easy to use and results are really good:

    https://mega.co.nz/#!gY9zVZoJ!1nTo9ydG47brtHribYTO9ethgypMo9FDQJZK98zRGJQ

    Someone wiser and more experienced could make a skin shader version of that too. (;
  • Eric Ramberg
    Thanks for all the input guys! its of great help to us, keep it coming :)
  • JedTheKrampus
    Offline / Send Message
    JedTheKrampus polycounter lvl 8
    Hmm, you want a skin shader in that you say? I may investigate that sometime after Farfarer and I have fixed UE4's tangent space calculation.
  • MacOrion
    Offline / Send Message
    MacOrion polycounter lvl 9
    how did you fix the tangent space? i put a normal map node and lowered the strength but its still somehow awkward, isn't there any good material setup for cycles? How come i did not find any setup that matches the marmor set when cycles is actually closer to real lightning than ms.
  • JedTheKrampus
    Offline / Send Message
    JedTheKrampus polycounter lvl 8
    In Xnormal, have you got the normal map swizzle set to X+Y+Z+ and the 'compute binormal in the pixel shader' box checked for the MikkTSpace tangent space calculator plugin? (You also need to check this box for UE4 and Marmoset MikkTSpace.)

    You can use normal maps that have a X+Y-Z+ swizzle if you pop in an RGB curves node in between the texture sampler and the normal mapping node. Like this:

    9ICuXQn.jpg

    This is obviously incorrect in this case, because I baked this normal map in Blender against a completely smoothed cube, which means that the normal map has an X+Y+Z+ swizzle. Here's how it looks with the unadulterated Blender bake:

    gq7NOda.jpg

    When I made this, I didn't know how to properly set up image-based lighting in Cycles, so the lighting is probably not as good in the file you downloaded. To ameliorate this, you can go to the world settings, open a .hdr or .exr-formatted equirectangular skybox image (not a .tga as I have), and plug the texture both into color and into strength. When I set up image-based lighting these days, I usually do it like this:

    UJIH0sl.jpg

    The cyan-boxed widgets, from left to right, control the following: First, rotation of the sky. Second, the texture to use for the sky. Third, a simple adjustment to overall brightness. Fourth (farther to the right, in the properties panel), make sure to check Multiple Importance Sampling, as this makes the render converge a lot faster.

    Here are some good places to find skyboxes for rendering in Cycles:

    sIBL Archive, non-commercial use only

    Marmoset Panos

    Or, if you want to see about how something will look in a particular spot in your scene in UE4, you can capture an environment map using render targets. Instructions are available in this thread.

    You may also want to change "Clamp Indirect" under the sampling parameters to something like 10 or so; this will reduce noise a lot without changing the final image much. I also usually set Filter Glossy to 1 to reduce noise. If you are making a beauty render with Cycles for your portfolio, I also recommend that you do tonemapping in the compositor.

    rUJ6yC5.png

    Image on the left has tonemapping, image on the right doesn't. You can see that it particularly makes the metals more believable. The non-metals are maybe a little bit washed out, but you can always tweak the parameters with a viewer node to figure out what will work best for your particular piece.
  • FourtyNights
    Offline / Send Message
    FourtyNights polycounter
    Hmm, you want a skin shader in that you say? I may investigate that sometime after Farfarer and I have fixed UE4's tangent space calculation.

    That would be amazing, yes. Keep up the good work guys.
  • ajherzog1234
    I mostly have been doing lower poly hard surface work with the suite and ndo works great with some but not many bugs..

    Letting the suite generate curvature info works really bad. So I bake curvature from xnormal with 127 background.(read that this works best) If I use stock smart materials it still does not follow edges with the custom curvature and I will have to manually adjust it every time before it shapes up. I'm not sure if this is blender issue only but it seems it is as sample assets work perfect even without custom curvature. I've given up on Ddo for the time being because of this.

    Has any blender user experienced this kind of problem?
  • CKohl
    Offline / Send Message
    CKohl polycounter lvl 10
    I'd say that's more of a generic issue rather than a Blender issue (Maya user here). I've been struggling with getting good curvature on an M1 tank using either xNormal to bake a custom curvature map or letting Suite generate it from the normal map.
  • ajherzog1234
    Thanks a lot for the response about maya... It felt to me like it was a blender only issue
  • nwopolygonshapeshifter
    In Xnormal, have you got the normal map swizzle set to X+Y+Z+ and the 'compute binormal in the pixel shader' box checked for the MikkTSpace tangent space calculator plugin? (You also need to check this box for UE4 and Marmoset MikkTSpace.)

    You can use normal maps that have a X+Y-Z+ swizzle if you pop in an RGB curves node in between the texture sampler and the normal mapping node. Like this:



    This is obviously incorrect in this case, because I baked this normal map in Blender against a completely smoothed cube, which means that the normal map has an X+Y+Z+ swizzle. Here's how it looks with the unadulterated Blender bake:



    When I made this, I didn't know how to properly set up image-based lighting in Cycles, so the lighting is probably not as good in the file you downloaded. To ameliorate this, you can go to the world settings, open a .hdr or .exr-formatted equirectangular skybox image (not a .tga as I have), and plug the texture both into color and into strength. When I set up image-based lighting these days, I usually do it like this:


    The cyan-boxed widgets, from left to right, control the following: First, rotation of the sky. Second, the texture to use for the sky. Third, a simple adjustment to overall brightness. Fourth (farther to the right, in the properties panel), make sure to check Multiple Importance Sampling, as this makes the render converge a lot faster.

    Here are some good places to find skyboxes for rendering in Cycles:





    Or, if you want to see about how something will look in a particular spot in your scene in UE4, you can capture an environment map using render targets. Instructions are available in this thread.

    You may also want to change "Clamp Indirect" under the sampling parameters to something like 10 or so; this will reduce noise a lot without changing the final image much. I also usually set Filter Glossy to 1 to reduce noise. If you are making a beauty render with Cycles for your portfolio, I also recommend that you do tonemapping in the compositor.



    Image on the left has tonemapping, image on the right doesn't. You can see that it particularly makes the metals more believable. The non-metals are maybe a little bit washed out, but you can always tweak the parameters with a viewer node to figure out what will work best for your particular piece.

    Ugh I've been wracking my brain trying to come up with results like those in your pictures. You got any money shots of the node setups of your materials?

    EDIT IM AN IDIOT AND SHOULD READ THE ENTIRE THREAD. Ignore my post!
  • Eric Ramberg
    Great job everybody! this is a massive help for us, keep it going!!

    nwopolygonshapeshifter - Im sorry but we cant ignore posts, that´s just not the polycount way, i think the best thing for everybody would be if you posted a picture of yourself with a Fool's cap, standing in the corner and feeling ashamed ;)
  • JedTheKrampus
    Offline / Send Message
    JedTheKrampus polycounter lvl 8
    So, Farfarer and I worked together and fixed the tangent basis in UE4, and now I'm working on a big update for my Cycles shaders that make it easy to recreate just about any shading model that's currently in UE4, in Cycles. So far, this includes the default lit, unlit, clear coat, and "subsurface" shading models. However, I'm running into a couple of quandaries while replicating the new subsurface profile shading model that's appeared in 4.5. I'm wondering if anyone has some sample assets that they've put into UE4 that they would be willing to donate to science so that I can make sure the engines are synced as well as they can be. If you do, please send a PM with a link...I don't want to release a shoddy shader if it's at all possible, and it's probably going to take some serious hacks to get UE4's screen-space technique to gel with a proper BSSRDF.
  • JedTheKrampus
    Offline / Send Message
    JedTheKrampus polycounter lvl 8
    Here's a quick teaser if anyone is interested:

    hDeRrYE.png
  • MajorNightmare
    Hi Everyone,

    I've had some good success with Blender and Quixel Legacy. See my material conversion for Blender @ BlendSwap. They don't work as well with the Suite, but I'm thinking it was more to do with Beta Suite. As far as normals go, yes use Xnormals, if you want perfect normals. Among the issues listed, I've noticed they are quite noisy. This may not be an issues until you have very reflective surfaces that seem to show the noise quite clearly. I don't use Cycles, since baking wasn't an option until recently. Check the dDo widget and BattleLord I created on Blendswap. They look great in Unity with Marmoset Skyshop.

    Cheers
Sign In or Register to comment.