Friday, 27 June 2025

Piotr Krynski's Efficient Environment Design for Blender #4

 The factory


This lesson goes into areas that I have never even considered. The subject is a background element; a large factory and its surrounding greeble. What this makes me realise is that Piotr is working all the time to the composition in his head and on his sketches. I've tended to work the wrong way; I'll build a little world and then try (and often fail) to find a decent composition. Piotr's approach is that of a concept artist who needs to deliver the shots. I need to think more in terms of time spent vs results gained.

Scanned factory being previs'ed in photoshop with kitbashing the composition. Where will this go, I wonder.


Tip: Upping the scan's texture size.
This is something I've known that I'd have to deal with while creating my own scans. They native textures are too crappy for hero assets. This looks like the start of a workflow, using my new addon:


Image Resizer

Piotr's rule-of-thumb: Keep all textures below 10 MB. There's a resizer tool in the To Optimize Tools.


Oh my word. Piotr took the ideas he laid down in the photoshop kitbash and started to boolean his factory scan into various pieces so that he can kitbash the larger structure that he wanted for his scene.

Chop chop chop
The lesson concludes with some adjustments to the materials and UV as the enlarged factory takes shape.

Tweak, tweak, tweak


Thursday, 26 June 2025

Asset farming

 A break for terrains. Actually learning something useful, thanks in large part to the environmental design course.

Key lessons:

  • You can do a lot using the Project from View UV Unwrap. Piotr is maybe the fourth artists who said they use it for about 90% of their work. This could be a concept artist's approach-"move quickly and don't quite build things properly"-but it's working for now.
  • Procedural textures have a lot going for them: driving variation with seed values and being able to tweak parameters. Low memory cost (at the expense of other resources, especially with lots of complex node trees. However, they really don't tell the kind of stories that real-world photo sources can capture. 
  • Use the UV editor to find interesting alignments with source images that are not even remotely seamless. Seamless textures are critical in the long run, but for fleshing out the materials of an environment, it's all about the character of surfaces.

So I started with some base artefacts.

First Asset: Small concrete barriers; so-called "cement sentries"


The texture maps are home-grown. I then realised that for PBR I'd need to generate some supporting maps using Materialise, but it stopped working because of missing framework components.

I recalled that there was an addon that automatically generated the required maps from a target colour map. It's pretty cheap, too. 

Pbr Texture & Material Generator For Blender




What's nice is this tool is very intuitive, once you realise that materials you "create" are all in memory until you save the maps out and turn them into an asset. My materials were disappearing because I mistakenly thought that "what the monkey sees, money keeps".

Its documentation is minimal, but this is one of those cases where keeping things simple allows users to install and use with minimal head scratching.

To be clear, this isn't a one-click-and-done solution. All the default materials have excessive specularity, so my concrete blocks appear too slick and shiny. However, the adjustment parameters are available to make the necessary adjustments.

Next asset: A modular wall section


Something a bit bigger

Something modular

Next up: Continued training from Piotr's Environmental Design course

Wednesday, 25 June 2025

Beta Testing

 
This is a bit of a break in the rules: I'm using the beta of 4.5, which is a few weeks away from its expected release. What do you know? It's been absolutely solid and, dare I say, faster once I shifted over to the Vulcan API.



Add on: Retopoflow


I need to finally learn how to tackle retopology for generative outputs from Sparc3d and my own scans. Retopoflow is considered the best. It's not cheap, but it does come from  Cookie3D's developers.



I ran through a quick test, and it's maybe harder to use than I thought. I just need to do some simple practice exercises. The jump from version 3 is significant as the add on now in integrated into Blender's UI rather than as a bolt-on set of tools.


Starting off

Select a target object, Shift+A, Add Mesh, then choose Retopology at Cursor. This creates an empty mesh. Use Ctrl+Left click to start building.

Card mountains


I had another quick play with cards for mountain ranges. The lighting issues may be holding me back from using this technique in anger.

I had a play with the visibility settings, but I was still getting inconsistent lighting where the card catches the in-scene sunlight.



Overview. 2 cards!


The Wall:

In this lesson Piotr builds the curved canal wall. It's pretty straightforward non-destructive method where he uses the simple deform modifier on the in-scene assets while modelling on an unmodified instance, away from the scene, so that as he models, he can see how it looks in the final scene. Clever!

He refers to Textures.com as a source for bigger, more idiosyncratic textures for mixing. It looks good. I think I signed up on the site about a decade ago, but never used it.



It's interesting to think in terms of writing a sentence with a texture choice. The right texture says more, or has the capacity to say a lot more than a 2m x 2m seamless square.

* When Piotr drops in his chosen texture map he disables specularity and roughness on the shader because "they wash away the texture information".

* 95% of UV unwrapping is ...align your view perpendicular to the main face and then UV unwrap using Project from View.

* Avoid using noise from nodes because it doesn't create noise consistent with your complex real-world materials.  

* Adds a quick bump map


Add the colour into the Height input of a Bump node then pass the Bump node's output into the shader's Normal input. Then add a colour ramp between the colour and the bump which you can then use to control bumpiness by values.

Applies a second material on the bottom of the wall, applies it to a new material on the mesh. Aligns the texture, then creates some cuts in the model to match the protrusions in the material.

Repeats this step for the ends of the wall section.


Tip: Avoid long runs of perfectly straight lines.


Even with handrails, you should add a tiny amount of distortion to break straight lines. Looking at scans, even though they can be a bit gloopy, they often come with that slight break in regularity that often screams "CG." Solution: Subdivide the mesh and apply a slight displacement modifier (Musgrave noise).


Tip: At this stage, the model isn't entirely in the scene, so you can't tell how it will turn out, so don't try to go too far.


Razorbill


I got nowhere. This kind of model takes a lot of prep and care.


Tuesday, 24 June 2025

Piotr Krynski's Efficient Environment Design for Blender #3

6. Lighting

More important than the story!! Top of the pyramid, no matter how good your story, if the lighting fails to support your composition...it was all for nought.


Example: Water Colourist Dean Mitchel. Lighting gives you strong contrasts and defines shapes.


  • Great compositions offer instant clarity. The observer doesn't need to work in order to understand what is seen. Use lighting to make that clarify.


Starting Point: Strong sunlight and blue sky (shadows)

Monday, 23 June 2025

Industry disruption incoming

 Oh boy. This is significant

Combine generative technology like Midjourney with the mesh generation of Sparc 3d and what happens?

1. Sketch

ADS-77 Razorbill


2. Retexture in Midjourney

Input the above sketch with a simple description:

"Halo Pelican style VTOL dropship with pivot engine pods photorealistic on a white background"

I like this more, but the cockpit wasn't well-formed.


3.  Generate the mesh with Sparc3D

A few minutes later...
4. Import into Blender


So sketch to model in a few minutes. Granted, this is where the hard work will begin because those models are unreasonably dense (after a remesh, they're 5 million faces).

I need to watch some retopology tutorials to take one of these models to the next step: make it usable.

Sunday, 22 June 2025

Blender School: Basic Design Rules

 


Piotr Krynski's
Efficient Environment Design
for Blender  #3



3. Basic Design Rules


1. Big, Medium, Small


In order to show that something is big you need to contrast it with small things. Points of reference!

2. Repetition. Creating a scene involves adding lots of different elements. The quality if the visual experience will be governed by how these different elements work with each other. Use repetition as a way of giving the scene an underlying order, like the refrain of a song, a kind of visual reference point or commonality.

3. NEVER HALF. Breaking elements in half is a way to instantly remove stimulating qualities from a composition. The Rule of Thirds is your friend.

Rust placement

See how the rust areas creep in and don't go halfway across one panel. The result is large areas of calm punctuated by the rust noise. See how the rust noise has a strong naturalistic character. It doesn't look like the product of a noise node.

Piotr creates a sketch and demonstrates his thinking in terms of visual tension and repetition, where things need to be varied and where they need to echo.


Don't overdo your sketching. Once you move into 3D, things will always change. It's hard to predict how shapes will translate into 3D.

4. Preparation

Before moving to Blender, you need to get your story straight. In this lesson, Piotr runs through his preparation for his amazing canal shot, partly inspired by a level in Halflife: Alex.




1. References. Look for ideas and inspiration
2. Use your references to plan your shot and your time. What elements will be quick to create, what could be repeated? Don't spend a lot of time building something you use once in your scene somewhere in the background.
3. Don't try to do too much in a scene. Originally Piotr was going to include a chase but evoking the necessary tension draw attention from his intended subject: the cool environment.

5. Addons


There are a bunch of addons that Piotr finds super-useful... Piotr focuses on what he needs for this course, not what is overall a good addon.

S-Tier  (The essentials)

Tootimize-tools

This critical addon manages scene optimisation. Intelligent file-size reduction will impact your performance. High-spec modern PCs can handle vertices, but moving massive textures around will often cause lag.


 This isn't a sexy add-on, but it saves time when you want to drop objects into a scene by cutting out a lot of menu driving time.

Curve Basher

Mastery over curves and therefore wires. How does this compare with Cableator?

Simply Cloth Pro

This is now called Simply Cloth Studio. 

Gaffer Manager

A really good HDRI manager that lets you put in HDRIs and manage them.

Hard Ops

[Got this] This needs no introduction, but I need to pick up that training course.  

A-Tier

Aquatiq water library

This is just an excellent resource for complex and varied water shaders.

[Got this] Amazing resource of scanned trees. It doesn't go S-tier because even the low-poly versions have massive polycount. You may need to decimate.

Piotr thinks that Terrascapes assets are the best for Blender. Also, a bit heavy.


This is an amazing resource for drop-in sky HDRIs. Very efficient but the presets become a crutch and the settings seem too low for light values and shadows, e.g. a high sun doesn't generate the expected light values, it's too dull.

B-Tier

E-Cycles/K-Cycles

Great because it can save a scene because it uses non-standard rendering. However, its non-standard and can trip you up.

It's an amazing add-on, but it gets you caught up in geometry nodes. Piotr uses the shrink map modifier on a plane. It's easier and faster. Hmm, I'm not sure. Piotr has a good point about how grass objects are often too small and so require too many scatter objects to be convincing.

C-Tier


Mask Tools

Great tool but Piotr avoids using procedural tools for edge ware and these kinds of procedurally driven textures. It's a great tool, though.

Fluent-Materialize

[Got this] It can impact performance.


Physical Starlight and Atmosphere

[Got this] This is an amazing addon for realism and power, but it is C-tier because it is a resource hog. It introduces a lot of lag when doing quick scene iterations. It is amazing for less demanding scenes.




Saturday, 21 June 2025

Blender School: Piotr Krynski's Efficient Environment Design for Blender

 I had my eye on this course last year. Now that I'm taking environmental scenes more seriously, I decided to invest. I want to consume it before the middle of next week.



Lesson One: Composition.

Before moving into Blender, Piotr talks about starting with composition. 

* Think about what scene you are creating. What composition is going to work best for your subject? Why? Because you need to decide the priority of things or you will spend hours building an element that ends up being in the background which you could have created with a simple alpha card.

* Where is your horizon line? This is going to drive the overall composition. Is your subject a castle on a hill, or is it the river?

* Repetition.  A way of showing depth in a way that is immediately understandable.

* Never halves!! Basic composition rule that you break at your peril.

* Leading lines. The viewer's eye must go on a journey. Things like rivers and cables are an easy option for drawing the eye. Grouping of shapes and value-grouping (dark and light blocks). Visible rhythms!

* Imitate nature, avoid random noise.

* Group shapes by values

* "When you bring an element into your image it becomes your compositional tool!"

* We like visual clarity so that we understand what we are seeing without hard work


Lesson Two: Examples


Piotr demonstrates how he followed the above rules while creating some of his portfolio work.


See how objects are clustered very particularly. This is not random noise; it's a very careful grouping. In this case, the groups cluster satisfyingly but also repeat to draw your view towards the hidden horizontal line without the giant train station building. "Contrast, calmness. Contrast, calmness..."



Amazing work and already my head is swimming with the  sense of  seeing from a new perspective.

Friday, 20 June 2025

Most impressive!

 I have dabbled with photogrammetry. It's a powerful and relatively easy way to generate 3D assets for a scene. I always intended to go deeper into the field, maybe trying my hand at a full workflow instead of using my phone app, which admittedly works pretty well.

So there's a new method. Instead of scanning an object with a lidar rangefinder-equipped phone, you input a single image and allow a machine-learning algorithm to do the hard work. That doesn't sound like it's going to compete with a photogrammetry capture, but you know what, a bit bloody does.

See  https://huggingface.co/spaces/ilcve21/Sparc3D









Tuesday, 17 June 2025

Cramming for an exam...

 I have a task to complete for Halo: Raptor. It's potentially enormous and will require me to stretch my skills far beyond their current limits. Not only do I need to improve the quality of my output, but I also need to radically change my process for improved efficiency and portability.

Giant terrains...how do you get them to render? One strategy is to separate a terrain into layers rendered as a composite or faked in a single pass using alpha cards.

I'll try that last one first. Create a mountain range render, then place that render on a card that conforms to your camera. This tricks the eye into believing the mountains are a natural background in the scene, not a fake one. If done right.

Mountain Alpha Cards

Actually, this could be a new product for Superhive...

Goes away and makes an attempt...

It works, but...

The workflow is good, but there are a few caveats. Firstly, Blender has a full compositor, and doing this as a compositing task offers a lot more control. However, that comes with a more hands-on approach with the compositor, and you need a bit more planning.

Here's what I did:

Background Terrain Cards

1. Render a very big mountain range, up to 8K if possible. The size of the card will be determined by your scene requirements. If your mountains are a little more than a misty silhouette, you only need to worry about a jaggy edge. Starting out big means you can downsize your image during an optimisation pass, which is easier than finding out that your image started out too small.

2. In the Render tab, go to the Film panel and turn on Transparent. This turns the background of your render transparent.

Save the output as a file that stores the alpha channel, such as a PNG (RGBA). 

10,000 x 2000 (rendered at x1.5) 17MB file

2. I optionally took the output to Affinity Photo and added a mask/transparency gradient on the bottom edge. This lets the card sit above a terrain with a softer edge. Often, the mountains will sit behind a foreground, so this isn't necessarily useful. You can maybe do this in Blender using Texture Paint with a falloff curve, but I knew how to do this in ten seconds in an external editor.

Bottom edge edited.

3. Create the card object on which you will project your mountain image. Don't use a plane! Instead, create a cylinder with a good number of faces. Make it huge. The one in this example has a 2000m radius and is 500m tall. Delete both the top and bottom faces, then delete enough segments so that your card image will match its aspect ratio. Don't forget to select faces in flip the normals so that they point inwards.


4. Create a material for the card. Plug the image's Alpha channel into your shader's Alpha input. In this example I added an extra node to allow me to increase the card's decrease brightness. Play around with your material setup to help make the results suitable for your scene.

5. You may need to fix the card's UV map to make it render correctly. It should be one of the easier UV fixing tasks you do, as the card's UV should just be a contiguous set of faces forming a long rectangle. Play with the UV so that your mountains have the correct aspect ratio, not too tall or stretched too long.

Add a foreground terrain.

6. That's all the setup done. Next, you need to play around with everything to get it working as well as possible. The first thing you need to account for is lighting. You need your sunlight source in your scene to match with the light falling on the background card.

Projecting onto the cylinder means that, if done correctly, you can turn the camera and maintain the illusion.



Monday, 16 June 2025

Back to World Creator School...

Today I am putting down my tools and going back to World Creator. I have a workflow, I think it works and I enjoy using it. Great? Not great. That is a recipe for halting your development. What don't I know? What functions or features have I brushed over, that could improve my work?

This will be a really big post because I want to record as much information as possible for future reference.

Etienne M. Mountain Range

Etienne is one of the World Creator community's stars. His work impresses everyone, and he's been generous enough to share insights into his workflow.

Here's how he tackled a mountain range:


1. Sculpt mountain peaks using the dot brush with reduced strength.
2. Use the regular brush to lift up the ground under the peaks. Create a smoother transition between the mountains and the lowlands in the foreground.
3. Add some gentle hills in the foreground.
4. On the Global Biome set the Global Strength to 0.6
5. Filter as follows: Basic Erosion - Ridged. Rocky - Wide, giving more cliffs and rock outcroppings. Then Advanced Erosion: Wide Flows. 
6. Simulation Layer. Oh gawd this is so important and I didn't do this! Use sand simulation for the sediment build-up at the base. Not too much spawn! 

Materials

1. Dirt layer. Cavity: Convex, lower threshold and increase strength to smoothen the transition between mountain and dirt.
2. Rocky layer. Roughness, turn the strength down to almost zero.

Roughness. Low Strength

3. Dirt Flow layer. Apply a flow that works the way you want. Fine for deep cut streams, with more flooding and deltas in the lower regions.
4. Snow level 1. Slope layer. Height distribution with distortion to break up the snow boundry
5. Snow layer 2. Cavity-concade. Height distribution with Perlin nose. Realism!


First attempt

Sheesh! This almost set my PC on fire. 31GB of VRAM gobbled up. Almost certainly a combination of terrain resolution, the number of big masks and the fact that the render is of the whole mountain range.


By contrast, this was a quick render that didn't use nearly as much VRAM.


Is it time for me to grasp the nettle that is the new BETA? It works in a way that offers a lot more control over biomes, but I found it very hard to use and, not surprisingly, it was unstable.

That was a few months ago. I think that the beta has moved on. I should get my hands dirty!


BETA 

World Creator 2025 has moved to a new biome system, and I don't fully understand it yet.



Two biomes (Square blocks in the middle and hex blocks around the edge) have been painted via masks. That is very cool!


Two masks! The top mask painting covers all the biomes underneath.


Grey terrain - Global (base)
White terrain - Biome (Applying mask1)
Red terrain - Biome1 (Applying mask2)


Saturday, 14 June 2025

I'm an environment artist

 

On Friday, I joined Sparrow Films as an environmental artist for their project: HALO: Raptor. It's a fantastic opportunity, but having signed an NDA, I probably won't be saying or showing too much about the work. Here is their latest teaser:



Thursday, 12 June 2025

Collaborator...

 I'm still treading water. I create terrain heightmaps, then plug them into Blender and set up very basic scenes. It's like sketching. You get quick, satisfying results, but the result never creates anything very worthwhile; it's a lot of starting points.

Stratamap. High displacement on the rock material swamps the heightmap's own detail.

Nohkinhg from above

Nohkinhg Talus -heavy slopes

Arginthia Plains

A quick post-processed planet..

A project comes up with an opportunity to collaborate.

Tonight, I'm having a chat with the director of an animated web series in development. I may be set to contribute some environments/models. It's exciting but a bit scary.  Having the time and freedom to do what you want is not as creatively interesting as being given constraints and targets. I'll report what I can after the chat, subject to discretion and NDAs.    

Here's a new art book.... *clue*

                                                                         

Piotr Krynski's Efficient Environment Design for Blender #4

 The factory This lesson goes into areas that I have never even considered. The subject is a background element; a large factory and its sur...