Website powered by

Groups in Blender - Parent to Empty

Tutorial / 25 December 2020

Grouping multiple objects might seem like a simple operation but with multiple different ways of grouping, Blender doesn't seem straightforward. Using the Parent to Empty method, either by hand or through the Extra Mesh Addon, allows for similar group behavior as one might expect it from other software such as Maya.

Hope you enjoyed and found this helpful.

-Lukas

Cloth, Hooks and Curtains - Blender

General / 17 July 2020

Edit: Original Video no longer available - Source files remain at your disposal.

Making curtains with Blender Cloth Simulation isn't all too difficult. The process can be a bit awkward but leads to a quick and good end result.
Check out my source files here:  https://artstn.co/m/VLwe
-Lukas

Production Tips, Link Data, & Modifiers - Blender

Tutorial / 05 June 2020

Edit: Original Video no longer available - Source files remain at your disposal.

For many years now I have been using Blender and its features to speed up my workflow to create environments. Linking Mesh Data between objects and using Modifiers to quickly create non-destructive and semi-procedural models. I found multiple techniques helped me to iterate during production and quickly adapt my work to feedback and changes. 

I hope this is of interest to you and maybe you have additional tips and tricks. If so please don't hesitate to share them in the comments.

Check out my source files here: https://artstn.co/m/xzN2

-Lukas

Soft Body Physics - Blender

Tutorial / 22 May 2020

Edit: Original Video no longer available - Source files remain at your disposal.

Using Soft Body Physics to crush some beer cans! In today's Blender Tutorial I am walking through my setup and show some weight painting tricks. This one is pretty simple but produces great results. Check out my source files here: https://artstn.co/m/2pkw

-Lukas

UE5 Level of Detail - Volume Modling - OpenVDB

General / 17 May 2020

I don’t like speculations: you can’t build anything on them, only on facts. So instead of joining seemingly every game artist on Twitter speculating about a graphics programmer's implementations let’s look at what we can assume as a “fact”. 

To me, the one important point in this is our future LOD0 will be a high poly mesh.
Two likely observations: this LOD0 won’t have floating geometry; this LOD0 will need to have all details in the mesh.
I am omitting all my open questions such as transparency or what will happen with netting like mesh that has small holes. 

The question I am interested in: how will we make detailed LOD0s with the same or with less production time. Going through Twitter I did see a couple of people saying “production time will be a bottleneck, not tech” - this intrigued me.
Looking at past engine changes the above statement has been true. More details mean more workload. Or does it? 

I strongly believe we are on the eve of technology where the detail shown can be created in procedural and semi procedural ways. Yes: the UE5 tech demo seems to be using mostly Quixel Megascans as their environment art, with sculpted statues, but even after their photoscanning the actual model is not made by hand. 

Can we get a similar amount of detail with non-manual labor and without Photoscanning? I went down a rabbit hole with this and came back up with some thoughts:

Substance Designer - heightmap galore

Making materials and using created height maps with displacements in your 3D software is far from a new workflow. Indeed I have been using this in productions for a while now. Any generic stone, rock, and cliff face does not need to be sculpted. Get a heightmap from your library or ask your friendly (and amazing) neighborhood materials artist to make you one and then put it on a mesh. So far you then had to low poly this and use the same tiling texture with a normal-map to get a good result.
In theory - if you are making a rock heavy game - you need boxes: remesh them together, displacement with an array of maps and get a pretty good looking result. Once this is set-up the hand-modeled shape of the boxes dictate the outcome.

I have been toying with this idea for a while now. And whilst I have not had time to implement it it's a very, very, interesting workflow to make cliffs for my personal project Sails of War. (More soon? - Maybe)

Volume Modeling / OpenVDB

We can take this a step further: Houdini! Make it procedural. Or - hear me out - we use an OpenVDB workflow in other software too. Back when I was using C4D on a daily basis they added Volume Modeling in R20:

Video by Maxon

This is probably the nicest looking UX/UI implementation for this kind of workflow. In general, I have always liked C4D's UI/UX though: it feels very organized and neat, especially for a stack of modifiers.

That said Blender (in theory) has the same implementation:

Video by YouTube User "veezen"

The only problem with Blender: this seems to be disabled at the moment. Which is a crying shame because UE5 or not any artist would love this right now. If you do want to get it it’s in old 2.8Beta builds (if you can find one online). I was able to find a version and 2-minute test gave me this:

Both models are the same - the left having the OpenVDB modifier, a Smooth, and a Decimate.  

A Mix is always Best

Procedural OpenVDB workflows mixed with height map displacements get you quite close to rather quick and detailed results. Even floral patterns in stone - aka the amazing small detail that's very annoying to get right. If you don’t have to worry about edge flow and geometry (as much) you don't need to sit there and integrate the floral pattern by hand. You model them with splines and add mesh with a modifier - you CSG boolean it to the main mesh; smooth it out; done. Potentially saving you a lot of hassle because this is - keep in mind - 100% nondestructive until the end. 

Is this the end all be all? No. Of course not. Lots of open questions and lots of possible problem areas. Ontop: this is an environment artist’s point of view. Hard Surface artists might find CAD applications more useful; more organic work a Voxel/OenVDB like workflow.

The real point here is: the future will have even more technology to take work off your hands. I really do think that “sculpt all detail” - whilst it’s still extremely impressive and I envy those artists - is mostly redundant in the future. Those are some high words, and zBrush will still have its place of course, but a lot of detail can be obtained in procedural ways - and no it is not losing the “artist's touch” as it were. I am very intrigued by an OpenVDB/Volume Modeling workflow. It basically feels like non-destructive sculpting. Or mix it with arrays and other procedurals and get mesh which looks similar to Megascans processed models. This loops back to thinking about "Digital Photoscanning" and my thoughts on 100% 4D procedural texturing. But that's all for today - I'll think more about it and I do hope Blender officially adds this modifier back, else I might need to pick up Houdini or get back into Cinema4D.

Till next time,
-Lukas


Procedural Trash Bags - Blender

Tutorial / 15 May 2020

Edit: Original Video no longer available - Source files remain at your disposal.

I took the last tutorial and cloth simulations a step further. Today I am going over how I made trash bags mostly procedural and with quite a simple setup. Make sure to check out the source files, available for free right here on ArtStation: https://artstn.co/m/dnGb
Oh and by the way: you don't need Blender for this. Any software with similar features will do.

GAME.ART.TALK - EPISODE 008

General / 11 May 2020


GAME.ART.TALK. invited me to come on and we had a great time talking about my career and how I got into making games. We talked about my university experience, my thoughts on schools and learning in the modern area, the importance of online communities, and tutorials. We also touched on my favorite topic Leadership and Management, which fits nicely into the question: where do you want to grow to and how do you get better: 


Always fun to be on podcasts and discuss our industry! Thanks for having me, Christoph!

Cloth Simulation w/ Sewing and Pressure - Blender

Tutorial / 08 May 2020

Edit: Original Video no longer available - Source files remain at your disposal.

Watch below how to create a simple cloth simulation using sewing and the new pressure options in Blender 2.8. Make sure to check out the source files, available for free right here on ArtStation: https://artstn.co/m/My0o

-Lukas

Digital Photogrammetry - Baking Textures from High-Poly

General / 02 May 2020

As touched on in the last blog-post I have been exploring a different texture workflow. I have been calling it "Digital Photogrammetry". In short, the idea is: 

  • a) model a high-poly model
  • b) texture the model with procedural 3 and 4D materials
  • c) create a low poly - preferably automate this
  • d) bake texture maps from the high to the low

Why do this?

For any model you already high-poly, low-poly and, bake, or for any model with a unique texture, this workflow should allow for a multitude of semi-procedural improvements. First off: changing your high-poly model doesn't have an impact on your texture; using 4D textures means even destructive changes still create correct and accurate visuals - updates are automatic and no re-texturing is needed (just a rebake to low).
Woods, stones all other materials should not just be photo-accurate on their surface but also in their depth. 4D textures have this power. In addition, an ever-growing library of base materials and grunge should speed up the workflow immensely.
Think about how fast texturing in Substance Painter is once you have made smart materials fitting your project. 

Your high-poly doesn't need UVs; baking down these materials to a low-poly texture map allows for more detail and a dynamic change in texture map resolution. It doesn't matter what size the target is - it's origin does not care.
You can thus bake to an appropriate texel density but still come back later and bake to double its size - the amount of detail will increase with a larger map seeing how the origin is generated and not bound to any pixel values. So you are able to down-res and up-res without losing detail because the detail is (for all intends and purposes) unlimited.    

Hence the (slightly misleading) name. In effect what you are doing is baking highly detailed information into a game ready asset. 

Quick Material Test on high-poly.

Now that is the theory. To execute it I have been using Blender.
And here is where the fork in the road happens. The above you may take and implement in any software. Any software with 3 and 4D materials will do. Avoid pixel-based applications, avoid any applications with tiling textures. Choose software that does not need UVs to map textures.

Again: we are not projecting limited pixel textures onto the high poly; the idea is to create fully procedural materials outside of texture map limitations. 

Before I talk about Blender I do want to point out that this is my first time trying to use its generated textures to fully texture any model. The software has recently seen improvements in this area.


So then: does it work? Well. Yes and No.

There are limitations to the software right now. Not having an automatic curvature input in Eevee - unless baked by hand - makes it hard. Not having a real curvature even in cycles. The reliance on cycles itself is annoying - and contributes to a constant slow experience. Shaders recompile a lot and complex setups are sluggish.
Not wanting any 2D texture maps means a lot of the Substance Designer presets for grunge and scratches are not an option. 3 or 4D based scratches and grunge work but need a lot of setup time and can be overly complex. Blender has no presets.
Ideally, you would have a whole host of dirt node groups ready to use. This is what makes Substance Designer so great out of the gate - all those custom grunge maps are all just node groups already - having presets means you are ahead right away.  
For me and a small portfolio scene: is it worth it? No.

This - like many other workflows and pipelines - would need a lot of setup time. I could have made a good looking unique texture in Substance Painter in less than half a workday. This has already taken 3 - and the result isn't great (mostly because of my low skill in this matter).

There are also major points of UX issues and annoyance. Some here:

  • Slow with constant Shader Compiling
  • Mixing Shaders (and with it prest node groups) works well but makes the material very heavy and slow. 
  • Pointiness based curvature isn't great for sharp details and only available in Cycles and only works well with a high-density mesh. 
  • Realtime Eevee AO is not a great representation of actual AO when used as a mask for dirt. 
  • No real curvature map 
  • No Sharpen or Blur in Shader
  • No real way of viewing Shader Inputs / No "Buffer View"
  • Substance Designer Style Color Gradient Picker would be amazing. 
  • Baking to low-poly is (horribly) slow
  • Baking to low-poly is extremely tedious which each map needing all material outputs changed to a diffuse shader to bake color

Could I get better results with more time spent and more knowledge of how Blender procedural materials work? Ye: 100%. I have seen some awesome stuff around the web. It just isn't going to be a quick result and it isn't going to be very amazing UX. But:

Is it worth it overall? 

(Potentially) Yes! (but maybe not right now and not in Blender)

If you had a full setup and library of materials you could just drop them on and would get a mere instant good result. Set a couple of sliders - mix some shaders based on mask presets. We are talking Substance Smart Materials / Designer presets but in 4D and without input texture limitation. No tiling of grunge maps or patterns. It's an improved version of Smart Materials / Designer Presets.  
I can see it. I can absolutely see it.
Model a high-poly, choose materials, add mask presets, and hit a single button to get an automatic low-poly and texture.
Your game requirements set the polycount and texture size. And you can still take these maps into Substance Painter or Photoshop to further give them an artistic touch if needed.

Having the choice to work losslessly with source model textures is very interesting. You would still use tiling textures and materials in the engine for large surfaces of course - but any unique texture you already have could greatly benefit from this workflow.
I am willing to make a prediction: This will come. This will happen. Especially with 3D and 4D noises. Especially in a future of proceduralism and automation. 

For this current scene, however, I will throw my models into Substance Painter and choose the quick and dirty way - I just don't have a need nor time to do an elaborate setup of base materials and grunges. And currently, Blender is not fast enough in this workflow.
Watch the future though: this - or something very similar - will come!


So. I'll leave it here. For a one-time environment art project and scene, the headaches and large up-front setup time are too much. For a very interesting future workflow? Ye. Very promising for a large operation. 

Till next time,
-Lukas

P.S.: If Substance Designer had 3 and 4D textures (more than their current 3D ones that is) this would be amazing. You could do the same setup but it would be way nicer. With Substance automation, you could achieve a level of quick and easy integration and the speed of sbs/sbsr files and bakes is unmatched - it's miles ahead of Blender.
P.P.S.: The real future is procedural 4D textures at runtime with no need for pixel texture maps. Just saying - but it might be a while.

UE4 Light-baking on a Laptop - Part 2

Work In Progress / 29 April 2020

Lighting is such an important part of your scenes - one might say the most important part. I am really happy to work with amazing lighting artists who make my Level Art look good - but at the same time as I can vocally express my intentions, I always felt like my actual lighting skill sucked or at least is sup-par.


Time to get better at it.

I spent my last couple lunch breaks looking into the tech behind real-life lights and watched a rather reassuring interview with Boon Cotter who mentions his gut-feeling and lots of iteration to get amazing results (seriously his Uncharted 4 work is awesome).
And I think the last part of that is important. Iteration. No need to rush something if you can slowly dial in lighting and get a feeling for the atmosphere and how to get it.
I did switch Unreal over to manual exposure and tried my lamps by their real-life values. Oddly enough this scene renders out like this with a Shutter-Speed of 60 and an ISO of 100. If my (limited) DSLR work is anything to go by I would have expected an ISO upwards of 800 and a much, much, slower shutter. Either UE4 is off - or I am doing something wrong. That aside iteration and changes to the light intensity and temperature have brought the light closer to what I set out to have.

Even if it's slow on a laptop I love the result of baked light. There is an amount of atmosphere to it you just don't yet (or ever) get from dynamic lights. The way a good light bake spills into a room and almost looks like a still render -- you can almost feel it.
I think I'll leave the light settings like this for now; it's time to move on and come back later.
Because baking light takes a lot of down-time I have some time to spare during lunch to push some other ideas.
This is a high-poly model for the lamp in the scene on the left (blockout in the screenshot above):
high-poly with solid color materials - ready to texture.
I have had this idea for a while now: model and texture a high-poly. 

Do all that texturing procedurally (and in Blender). Then bake it down to a low-poly. In theory, what this means is a photorealistic high-poly and textures are baked into a low-poly game asset. Think of it as photo-scanning - except its partly procedural, digital, and never leaves your computer. 

"Digital Photogrammetry" so to say. (Because who wants to go outside during a pandemic anyway.)

I have a high-poly lamp now. Time to spent a couple of days on procedural texturing - I'd like to not use any image textures; avoid repeating details. Again, in theory, this means no matter the low-poly polycount or texture size you can come back in 10 years and bake out a higher resolution version - you basically have a near-infinite detailed version always at the ready to bake down from. 


I'll see how it goes and will write about it - if it goes well expect a Blender Tutorial for this workflow.

-Lukas