Home Technical Talk

Unbiased node-based baking coming to Blender

polycounter lvl 3
Offline / Send Message
Avvi polycounter lvl 3
Dalai Felinto is re-writing texture baking in Blender right now (introduction here). It will be based on a quite new (now standard) Blender rendering engine, Cycles. It's unbiased, flexibly customizable with nodes and super fast.

What's NOT decided yet is the interface and the functionality needed in real full-scale production, like game dev. Hence the discussion:
http://blenderartists.org/forum/showthread.php?326534-Cycles-baking-is-here&p=2596892&viewfull=1#post2596892
So, game devs, join the discussion immediately! :)

What I think:
Blender needs a serious asset managment in the baking system (like specyfing a high-poly list for each low-poly separately. Or like keeping settings per each low-poly). Plus, I recommend you read feature proposal on how to bake in speculars/reflections and how custom maps could be done, by Bartek Moniewski: http://wiki.blender.org/index.php/User:Bartekmoniewski/Cycles_Baking_Proposals

Plus, if Blender wants popularity in game dev, they should be looking on mobile games now. Games utilizing reflection-to-diffuse baking (with glosiness, speculars) look awesome now. Because the mobile devices are not as good in shaders, yet they feature crazy memory amounts.

To be more specific - I'd like to use Cycles-based baking at QubicGames, because our whole workflow has been on Blender for 8 years, yet we needed to develop our own light baking. I really want that new system to be well though out --> useful!

Replies

  • Neox
    Options
    Offline / Send Message
    Neox veteran polycounter
    To me the most important thing baking is, that i don't have to ever touch it. If I want to, i obviously should be able to customize it. But if i want predictable results i NEED the same settings for anything and have to rule out the biggest source of error. Us humans.
    That said, it should be able to load and apply bake settings automatically to what i throw at it.
    I don't want to tell it "this is you lowpoly" and "these are your highpolies", i don't want to click a gazillion of times for simple things like baking X amount of Highpolies into a lowpoly.

    Thats why we wrote a little wrapper for Xnormal, all you need to do is set up settingfiles (this is the you CAN touch settings part), a folder with subfolders containting high- and lowpoly models and a folder where to output the maps.

    once that is done i hit bake and wait, it doesn't matter if i bake 1 or 100 characters, it will bake whatever i throw at it.
  • Avvi
    Options
    Offline / Send Message
    Avvi polycounter lvl 3
    Great clever automation. Obviously I mean setting the hi-poly list once and forever per object. Or a group maybe. Or - Blender would need a way to access objects in external scene files from inside a Python script.
  • Ponk
    Options
    Offline / Send Message
    Ponk polycounter lvl 8
    Neox - Blender may work like that in near future. This is the matter few months. Once TDs prepare one specific material we will be able to assign it to all the objects and bake them with same settings.
    This may apply to standard bake when you load hipoly with texture and bake it onto lowpoly. I'm the guy behind proposal that Avvi mentioned in first post and I will try to convince Blender devs to make it more automated and error-proof. If you have some advises you are welcome.

    But Cycles is more than just baking normals and diffuse. :) With all the nodes magic we can actually use it to make textures from scratch. Think more like Substance Designer than xNormal. For static textures it is even more powerful because of 3d textures and Open Shading Leanguage.
    Beauty thing is that we can put any shader network to node groups and give artist only selected inputs to play with. Node groups can be linked from other files

    Imagine this scenario. You have procedural rock shader made by mixing noises and bending some vectors, all closed in nice node group with just few inputs. Then you copy it and modify color inputs a bit. After that both node groups are mixed by OSL shader that masks crevices.
    Finally moss shader with box-projected image texture. You can mix it with rock shader by object normals. Or better- OSL script that takes group of spotlights and convert object shading information to mask.
    Once one smart TD make that material (or node groups) artist can use it to bake any number of objects. As you can see things this thing can be powerfull. ;)

    We only need to wait couple of months for proper bake management and UI. By now cycles can bake only one texture a time and some of them need a bit of hacking.
  • frmdbl
    Options
    Offline / Send Message
    frmdbl polycounter
    @Neox
    true

    I hope they first make an implementation of baking that works well and isn't too different in terms of usage from existing solutions
    (that just work well, like xnormal).


    I've seen reinventing the wheel way to many times when it comes to implementing new things in Blender, but I guess some of it comes from the devs being afraid of copying commercial apps.

    That said of course, OSL is very powerful and lightmap baking and other mobile oriented things can be useful too.
  • Shadownami92
    Options
    Offline / Send Message
    Shadownami92 polycounter lvl 7
    While I'm pretty good using Xnormal for most bakes. I think the thing I'm most excited for when it comes to baking with Blender cycles is baking lightmaps for use in Unity, though with the upcoming development on baking with a cage in Blender I feel like this should also be nice to help the workflow of baking matcaps and whatnot for base textures.
  • Dashiva
    Options
    Offline / Send Message
    Dashiva triangle
    It actually works pretty well at the moment. It even has a "cage." Dalai seems like he's on the right path.

    http://wiki.blender.org/index.php/User:Bartekmoniewski/Cycles_Baking_Proposals

    was also proposed on the mailing list. The problem is the mailing list is slowly being taken over by BGE people...
Sign In or Register to comment.