CG Sketchbook , notes and tutorials

  • wlv5
  • bconf2013-shading-21
  • final-difcol
  • tuning18
  • tuning10
  • tuning6fog
  • detailing10
  • texturing18
  • texturing12
  • texturing3


Kenshi : texturing game env assets


Long time without posting ! i know. At least, it’s because of  constant work, and that means i have stuff to show !

(often the delay before being able to show something is up to 1-2 years., too bad but that’s how it works)

Here are screenshots of game environment texturing work i did earlier this year for 3D-Masala (who did modelling and supervision and doing a great job at that : reviewing and pointing me to a cleaner, more polished look )  (makers of the game Kenshi )

W.i.p shot of the dirt and edge wear maps painted in Blender (hand-refined, based on processing a cavity map + grunge tileables)

bench-scratchmaskW.i.p shot of detailing hipoly sculpts : metal plates done in Blender sculpt , baked to normals (as the concrete edges chipping in this case, in others concrete nm was handpainted, processed in gimp and converted to nm)


Branched path tracing and complex node trees tests (BConf13 slides)

Just back from Blender Conf 2013 .. so nice , as usual :D

Below the slides i had prepared for the Tube project talk . Presentation was very short, so i only mentioned the tests i did on render performance of complex node trees in progressive path tracing vs. branched path tracing.

The 1st 10 slides are misc. w.i.p. images from Tube , the last ones show some comparisons between integrators , basically : branched being faster for easier cases (like absence of transmission and sss components and no dof or motion blur which require high AA ) and if setup correctly (trying to keep AA samples as low as possible)

Also the comparison is between complex node trees (= blending dirtmaps and tileables ‘live’ in the cycles material nodes) and ‘baked’ materials (= not lightbake, just ‘flattening’ the node tree to a single image per channel)

And the result is, baked shaders are much faster (circa. 150%) than complex nodetrees in progressive mode , while in branched the difference is only around 10%.

The test should be more extensive , with more data points ..but this seems to be the pattern. That’s relatively good news for shading artists wanting the flexibility and speed of setup of complex nodetrees but worried about their technical rendertime performance.

More to come on the subject, please post if you have any question.

This slideshow requires JavaScript.

EDIT : seems the slideshow gallery type doesn’t allow fullscreen , to see images fullsize (to read rendertimes!)  click below (“more..”) to see expanded gallery with links to fullsize slides.

Read the rest of this page »

Final! (..final1, at least)


This is the final image of my personal still project. after some feedback i got on forums :

it was mentioned adding a character, .. but characters are an issue : being an env artist, that’s what i focus on . When i tried to have chars in my last personal still .. they weren’t at the same level as the hard-surface parts, and i don’t want people to be distracted by a bad skin shader or similar..

So i thought , if not chars .. at least some storytelling element would help , i came up with the idea of the cordon.. (like a crime scene, or a contagion zone .. ) it’s just a minor element but adds some plot , as well as just phyisically filling some space in the road area , and ,as for composition , it mirrors the curve of the arch above.

The other update is i’ve added displacement to the foreground bricks … being those so close up, makes a nice difference to have the detailed silhouette and better shading… (and it wasn’t much work , i just added some subd, a displace modifier an used weight paint to tweak intensity in different areas)

Latest feedback i got -just after publishing as final on BA, argh! :) – was a mock-up for better composition and perspective. A great suggestion .. especially considering i’m still bothered that my last big personal project was precisely too simmetrical in composition .  I think i’ll keep it this way and wrap up, but , i’ll remember that , check the mockup at CGS forums, quite interesting :

Diffcol pass and wireframe :

final-wire+AO final-difcol

Video ‘post mortem’ project analysis :


new still : time to wrap

Here’s the latest render of this env still .  It’s time to wrap this up ! but i still want some feedback so i’m posting some material to share on forums :


Slideshow of all test renders from blockout to final tweaks :

This slideshow requires JavaScript.

Below, a screengrab showing which materials are based on dirtmaps (the ones in greyscale ) dirtmaps were 1st baked with the batchbake script , then painted over. The coloured parts are materials based on photos (of a ‘complete’ architectural piece like a wall panel or door) , except the sidewalk tiles based on sculpts  done in Blender (and photos)


And Some passes from the latest render (AO and diff) :



Read the rest of this page »

New Still : few more bits and pieces


Can you spot the difference with previous update ? just kidding .. the tweaks are getting smaller , but still, at this point you want to patch up all the small imperfections or unfinished bits.

Some visible changes are to composition, mostly on color grading and exposure,  including changing  brightness of some material to get better overall colors (i.e. the background building bricks are brighter and of a cooler hue  now )

I’ve refined the fog , using the “shaded” mode instead of “shadowed” , it’s slower but more realistic , the godrays are barely visible  but more ‘physically’ plausible.

An interesting bit -even if not very visible- is that i’ve finally painted (photo-based) spec and bumpmaps for the green doors on the right and ‘diamond’ wall (on the left) :  those parts are heavily based on photos (meaning the model is traced over an actual photo of the full wall or door )

Basing the model heavily on a photo of a complete architectural element definitely helps realism .. However i was bothered by the shading which looked a bit more “plain” and flat : it had bump and spec , but derived from the photo in cycles nodes, i spent about 30mins each in gimp with brushes and filters and i think they now integrate better with the rest.

In general , using good , complex photo textures was one of the aims of this still … i always relied more on tileables and complex shaders than good photos,(in the end, here too they’re just a few pieces).

But they have their pros .. like the door in the background : i think i wouldn’t have came up myself with such an interesting pattern in weathering (instead i just found a gorgeous looking hallway door in the city center.. and snapped a photo)




New still : volumetrics



It took some experiments but i finally have fog, with light rays !

It was a long time i wanted to learn volumetrics properly, and get some proper ‘god rays’/ light halos and a ‘physically simulated’ fog  .. not uniform but showing swirls, movement and interaction with the env.

Making smoke simulations in blender is heaps of fun , but somehow also quite frustrating ,  it’s intuitive because it’s all based on physical params (emitters of smoke , wind forces , etc..) but it took quite a few iterations of change-the-sim-rebake-render-tweak and redo .. mostly in order to get an interesting distribution.


Above is a screenshot of the smoke sim scene , using a very simplified geometry loosely matching the scene as obstacle , some smoke emission from the ground , some from vertical planes on the side of the scene and 2 wind forces to push the smoke accross the scene.


Rendering the pass was the tricky part :


The screenshot above is the fog ‘pass’ : i copied the smoke sim result to another scene with the actual geometry , rendered , then partially colorized the smoke  based on depth (in comp) .

“God rays” were though to get .. the trickiest part was figuring out that “shaded” volume mode enables this effect , but only if light cache resolution is high enough (like 512 instead of default 50 )

But i ended up using “shadowed” : it does lightrays too ,  even if less refined (as if these volume shadows where perfectly sharp)  but is also generally faster to render.

Also the shading params aren’t as intuitive as for “solids” (“diffuse or glossy”) : In a Blender volume material  “reflection” is what will respond to external lights , so that must be high , a bit of scattering/trasmission and density  are necessary , but best kept low (quite low , even like 0.0X)  to reduce the  thickness of depth-fog vs. the intensity of the rays. And it’s necessary to have quite strong lights for them to show up as volume rays.

Though i don’t know much of the technical workings of volumes .. it would make an interesting tutorial , i’ll try making something for my YT channel when i’m done with this still.








New still : almost there…

Almost done , still to do for sure is some volumetric light and fog , and a few more details (some props ? and floating leaves or litter …)

I kind of like the light and comp as it is now .. however , i’m never sure : modelling and textures ,for me,  either ‘work’ or ‘don’t’,  i can easily decide  if they’re done or not.

Refining light and comp ?  it’s a much less linear process .. at this point of making a still i always become paranoid of messing up the look ..or that a different comp could make everything look much better :D

One way to manage this is checking the previous wip renders (doing them often and always saving them) :  in this case i ‘confirmed’  improvements in contrast and exposure ..but i probably lost something in colors : too little saturation? …


In the screenshot below,  some  details about the render setup in Cycles :

It’s non-progressive -of course!  this mode is working fine now ( since january fixes i think, but i had not tried vast scenes so far )

I’m getting some decent rendertimes .. Well , sorta. This render is 3 hours on my 6 cores cpu .. but it’s not that bad .. the scene is not optimized for speed (as in being  hipoly and fancy materials ), the Gi uses 4 bounces, there’s  a hint of dof and motion blur on the leaves (still wip) and resolution is 150% of fullHD .

The noise is very uniform  from the 1st sample : that’s a good sign, means  not much rendertime is ‘wasted’ sampling some stuff more than necessary ( ‘stuff’ like  direct light or AA, which  require less samples than gi or ao)

And no fireflies !  well, it’s sunlight and not too much glossy , so not a very though case .. but check the left lamp (selected and with nodes shown in editor below ) the “light falloff” node can be super-helpful : it smooths the intensity  decay curve close to the lamp source .. so areas very close to the lamp won’t receive super strong light intensity , and won’t generate fireflies !

By contrast , the lamp under the balcony on the right is still missing that tweak , and you can see it does generate fireflies in the diff indir channel (bottom left of screenshot)

Edit : And by the way ,  in the diff indir pass, notice the light on the far building facade ? that’s bounce light from a white diffuse card (hidden on the right ) .. that adds some nice bounce light without adding  lamps.

That’s also something to remember .. when modelling buildings and streets , you don’t need the ones you won’t see , but if you’re using GI  you can often use some planes to bounce back sunlight  for realism and/or for a specific light effect..


New still: road and other facades


About everything is textured ! and most is working ok, with some tweaks to do (the dirt color in the green building, the puddles water shader) i’m also planning to add some more mesh details and props (especially to the background building) , and rework some models (like the garden entrance).

I’ve also worked a bit on the lighting ,  trying to get a balance between dusk sunlight and artificial light.

Also, i’d really like to  have some  volumetric light and fog ,  so i guess i can’t refine the comp much (in contrast .. staturation and key/fill light ratio ..) before setting that up.

But, In general, .. this render gives a good idea of where this is going .. And, as usual, with my renders it has a peculiar “matte” look to it … and , more than that, the lighting isn’t very contrasted .. if you blur the image you quickly get to a flat grey  .. But i also like that matte look !  you can read and see detail in shadow areas and it’s not too “cheap-cg-glossy”  (when i say matte or glossy here , i don’t mean ‘materials’  but the ‘film’ ..the general look/lighting style )

This question is also related to something that i started figuring out during Mango.. that’s the “conflict” between lighting and textures : strong, rich, contrasted textures can get in the way of lighting , almost “overriding” the lighting itself  …this image is a good test ground for this , at some point i’ll have to do the comp not starting from the final render but rebuilding it from passes , so i can try to balance influence of color passes and dir/indir light passes … let’s see..

Btw , thanks for the comments !  i’ve posted this only on the blog and social networks because so far i stuck to ‘my own plan’ and  had lots to test anyway, but at some point i should try to get more crits and additional ideas ..

New still : modelling and texturing sidewalks









More texturing and detailing.. And, who knew ? making good looking sidewalks is hard !

In general, at this point,  judging the results  always gets confusing .. you have ‘finished’ pieces next to clay or basic materials ; there is light and comp , but it’s far from final ,etc.. So you just have to keep working ..and know where to suspend judgement ..

In the pic below the progression of sidewalks .. took quite a few iterations !  first i ‘slapped on’ some tileables ..and the result was so bad i realized this element would take some serious work .

So i dug into my library of tiles textures for the better ones -those with hand sculpted bumpmaps .

That wasn’t enough :  just using bump looked horrible on the left sidewalks , so i added displacement .. But in the end i modelled and placed individual lowpoly tiles (with bump tex)  : it takes time but it’s better looking and lighter on rendertime than displacement.

Next some  tweaks to the sidewalk shape (for composition reasons.. ) and added some pebbles using  particle scattering .

And finally tweaking the color so the sidewalks don’t stick out that much (they were definitely too bright)

Pfff.. that took a while :)  Next the road ..



New Still : Early texturing


In the pic. below the current state of this env. still , i’ve started texturing, even though there’s still quite a bit to do on the modelling side :  detailing modelling for sure (wires,  dirt and litter, pebbles, etc..) but possibly also some composition tweaks  and other big changes.

What i wanted to check first , was the foreground arch .. i wasn’t sure if i could get away with detailing it only by texturing or if it needed more  mesh details .. seems it worked, i’ll add some stuff, but just ‘pasted’ on top , not changing the base mesh..


And the textured view :

As usual it’s just b/w dirtmaps , no full color textures , all the rest is done with vertcol , tileables and lots of nodes.



One other thing i wanted to test early was the 3 steps stencil node group i used often (not so much lately) , here i’m using V3 (you can see the params below , and it’s available in the resources page downloads )

The screenshot below shows on the right the handpainted dirtmap and on the left the viewport shows the effect of ‘noise’ on the dirtmap .. of course the black/grey/white are replaced in the final render by tileable photo textures , but the noise overlay does an important job : the handpainted dirtmap is quite simple , blobby and blurry . The noise overlay adds ‘character’ (here a peeling plaster pattern)  without spending too much time detailing with complex brushes each specific dirtmap..



And  the diffuse color channel :

One thing i’ve learnt better in the last months (especially in the work on Tube) is that generally speaking is best to have a quite flat dif-col : don’t over-shade it .

E.g. in tiles and bricks textures don’t shade/darken the grouts at all , if you have a bumpmap, it  will do the job . Darkening the grouts in the diffuse will only over-do the effect.



And of course , all is stil w.i.p. and there’s no comp at all for now (only some AO overlay)



Get every new post delivered to your Inbox.

Join 29 other followers

%d bloggers like this: