Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Procedural 3D Modeling Using Geometry Nodes in Blender
Procedural 3D Modeling Using Geometry Nodes in Blender

Procedural 3D Modeling Using Geometry Nodes in Blender: Discover the professional usage of geometry nodes and develop a creative approach to a node-based workflow

By Siemen Lens
$35.99 $24.99
Book Mar 2023 282 pages 1st Edition
eBook
$35.99 $24.99
Print
$44.99
Subscription
$15.99 Monthly
eBook
$35.99 $24.99
Print
$44.99
Subscription
$15.99 Monthly

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Mar 17, 2023
Length 282 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781804612552
Vendor :
Blender Foundation
Category :
Concepts :
Table of content icon View table of contents Preview book icon Preview Book

Procedural 3D Modeling Using Geometry Nodes in Blender

An Introduction to Geometry Nodes

In this book, you’ll learn how to work with Geometry Nodes. You will find basic and intermediate-level information about Geometry Nodes here. This book will help you learn various topics, such as distributing points, modifying meshes, creating meshes, and covering the basic nodes.

If you are learning any kind of Blender workflow, Geometry Nodes will surely be a handy tool to know about. They open up new possibilities for procedural modeling and animation.

You’ll also get the chance to try your skills with fun exercises throughout this book; these include exercises such as making a procedural plant, a procedural landscape, and a Procedural LED panel.

In this chapter, we’ll talk about the practicality of Geometry Nodes, why they might be useful for you, and some scenarios in which this new tool will be helpful. We will also go over the different node inputs and outputs. Finally, at the end of this chapter, you will learn how to access the Geometry Node system.

In this chapter, we will cover the following topics:

  • Understanding the Geometry Node system
  • In what situations are Geometry Nodes applicable?
  • Understanding the Geometry Node editor
  • The different node inputs and outputs
  • And finally, how to access the Geometry Node editor

Technical requirements

In this book, we will use Blender version 3.3, which can be downloaded from this link: https://download.blender.org/release/Blender3.3/

If you do not have certain nodes, then you might have an outdated version of Blender. While newer versions of Blender might work with this book, we cannot guarantee that everything will match the explanations we give. For the best experience, we recommend using Blender 3.3.

To download and view the complete node trees of the relevant chapters, click on this link: https://packt.link/UvynW.

To make it easier for you, we have included all of the node trees we cover in this book as scenes in this blend file (link above). You can switch these scenes by looking at the top right of your screen, where you see the name of the exercise. If you click this, you'll get the option to select your preferred chapter.

Understanding the Geometry Node system

The Geometry Node editor is a new feature in Blender 3.0. Over the months, it has evolved into a very useful tool that every CG artist should know. Geometry Nodes is all about procedurally modeling your mesh. This can help with big scenes where you need lots of objects to have variation. For example, if you are making a forest, every tree needs to have a bit of variation; otherwise, the scene will look like a render. To easily add variation to trees, we use Geometry Nodes.

Previously, creators would use hair particles to scatter objects along a mesh. With Geometry Nodes, this is no longer needed. Geometry Nodes will help in scattering all objects just the way you want. There are lots of ways to scatter your objects. We will also go over the various ways to randomize these instances. The idea of Geometry Nodes is to procedurally generate a complex mesh out of a basic and simple input.

Unlike the Material Nodes editor, which does not use a Modifier, the Geometry Node editor is a Modifier that can be applied from the Modifiers tab. This Modifier can be combined with other Modifiers like any other would. The Geometry Nodes Modifier consists of a few parts:

Figure 1.1: The Geometry Nodes Modifier

Figure 1.1: The Geometry Nodes Modifier

Part 1 refers to how many times the node tree has been used. If the node tree is only being used by one object, this number will not be there.The button in part 2 allows you to select a node tree out of the different node trees in your project.

Part 3 allows you to link various attributes to this variable. For example, you can link weight paint values with this for a simple stone distribution solution.

The button in part 4 allows you to animate the value of part 5. This can also be done by pressing i on any value field.

Lastly, part 5 defines the current value that is being inputted into the node tree. You can change this value by clicking on it or by holding down your mouse cursor while sliding.

Behind this Modifier lies the Geometry Node system. It consists of various nodes to procedurally model your objects.

In what situations are Geometry Nodes applicable?

Many people think that Geometry Nodes are the new way to model in Blender, and for certain scenarios, this is true. But there are times when you’re better off using the normal modeling workflow.

Geometry Nodes are usually used to procedurally generate multiple objects at once and to scatter objects around on a mesh, for example, scattering grass onto a field, generating roads procedurally, or generating multiple buildings at once.

Geometry Nodes are generally not used to model complex organic structures with lots of features, for example, faces, human figures, clothes, etc.

While it is certainly possible to model these objects via Geometry Nodes, it’s very impractical to do so because the amount of detail in these objects is near impossible to program mathematically using Geometry Nodes. It’s much more practical to model the structures via the normal modeling workflow in Blender.

Now that we’ve got a better understanding of when Geometry Nodes are applicable, we’ll talk about everything you need to know about the Geometry Node editor.

Understanding the Geometry Node editor

The Geometry Node system makes use of the node tree design in Blender, like the material node editor. Much like the material node editor, the node system flows from left to right. Geometry Nodes can modify and create different types of geometry, such as the following:

  • Meshes
  • Curves
  • Point clouds
  • Volumes
  • Instances

Let’s take an in-depth look at these terms.

A mesh is a structural build of a 3D model consisting of faces. 3D meshes make use of the three axis points, x, y, and z. A mesh is made up of vertices, which make up edges, which, in turn, make up faces.

A curve is a way to define paths in Blender; this can be used on multiple occasions. For example, if you want a camera to follow a specific path, this can be done with curves. These can also be modified, used, and created in the Geometry Node editor. This will be explained in Chapter 8, Editing Curves with Nodes.

A point cloud is a selection of scattered points around a mesh. These point clouds are only visible in the viewport and not in the render.

A volume is a semi-transparent effect that can also be experimented with in the Geometry Node editor. Volumes are usually used to create abstract effects in the Geometry Node editor but can also be used to create a foggy atmosphere in your scene.

An instance is best explained as a copy of the original mesh. This can be used to copy multiple objects around a mesh, much like we used to do with hair particles. This is mostly used to scatter rocks or grass onto a base mesh.

All of these datatypes will use the same connection type, a Geometry connection. This node connection is green. Let’s have a look at the input and output node connection of the Geometry Node system.

Exploring the standard Geometry Nodes blocks

The first node that this book will introduce you to is the Group Input node.

Figure 1.2: Group Input node

Figure 1.2: Group Input node

The standard Geometry output of this node returns the base mesh of your object before any modifications have been made. This mesh basically returns the mesh you've inputted into the object's Edit mode.

This node is used to add variables to the Geometry Nodes Modifier so that you can have easy access to the most used variables. To create these variables, just slide a value into the unused node socket, and it will automatically occupy the node socket.

At the end of the node tree, you will use a Group Output node.

Figure 1.3: Group Output node

Figure 1.3: Group Output node

This will define the end of the Modifier. Just like the Group Input node, the Group Output node has an unused node socket to output extra data to the Modifier. This can be used to define UV maps, for example.

The different node connections and how to use them

Now that we’ve looked into the group input and group output nodes, let’s go over the various node connection inputs and outputs.

Let’s start by explaining the various input and output shapes in the Geometry Node editor.

Exploring different shapes

Let’s take a closer look at the input and output shapes in the Geometry Node editor.

The round node connection

This is what a round input/output node connection looks like:

Figure 1.4: The round input/output node connection

Figure 1.4: The round input/output node connection

This is a round input/output node connection. This defines a single node value. For example, in geometry nodes, a single node connection can send through multiple values from other locations. With a round connection, this is not the case. This will likely result in the value being rounded to one value or returning an error value.

The squared input/output node connection

This is what a squared input/output node connection looks like:

Figure 1.5: The squared input/output node connection

Figure 1.5: The squared input/output node connection

It accepts multivalue fields. This means that every vertex on our mesh will be calculated separately according to the node tree. This feature in Geometry Nodes is very fun to play around with because each point gets its own flow of calculation, which opens up a world of interesting possibilities. An example of this feature is adding noise displacement to your mesh; each vertex will get its own displacement because each vertex is being calculated separately thanks to the square input/output node connection.

Exploring different node connection colors

Here’s an in-depth look at the different colors in the Geometry Node editor.

Boolean node connection

This node connection offers Boolean values.

Figure 1.6: The Boolean input/output node connection

Figure 1.6: The Boolean input/output node connection

This node connection will define either an on or an off value; in other words, this is a value with either a 1 or a 0. As explained previously, this can either be a single value (circle shape) or multiple values (square shape).

Vector node connection

This is a vector node connection.

Figure 1.7: The vector input/output node connection

Figure 1.7: The vector input/output node connection

This carries three values combined into one. These values can be separated with a Separate XYZ node. It can also be combined with a Combine XYZ node. The vector node is used to define positions, rotations, scales, and offsets. It can also be used to define UV maps in the material node editor.

Geometry node connection

This is a geometry node connection.

Figure 1.8: The geometry input/output node connection

Figure 1.8: The geometry input/output node connection

This defines geometry and instances. When you slide an object from the outliner into the Geometry Node editor, you will see this connection to add this instance to your Geometry Nodes project. This is also the connection you will see when you generate a point cloud with the Distribute Points on Faces node. This node will also show up on both sides when you use any geometry-modifying node, such as Transform Instance node, Scale Instance node, and any primitive mesh node. All of these nodes will be explained in Chapter 2, Understanding the Functionalities of Basic Nodes.

Integer node connection

This is the integer node connection.

Figure 1.9: The integer input/output node connection

Figure 1.9: The integer input/output node connection

This defines or accepts any value that is an integer; some examples of integer values are 0, 1, 2, 3, and 4. These values are basically values without a decimal point. These are usually used to define indexes of certain things, for example, duplicate objects. This node connection can be found on nodes such as the ID node, the Duplicate Elements node, and the Index node.

Value node connection

This is the value node connection, also known as the factor node connection.

Figure 1.10: The value input/output node connection

Figure 1.10: The value input/output node connection

This defines a plain value. The difference between this and an integer node connection is that the value node connection can contain decimal points. Some examples of nodes containing this node connection are the Noise Texture node and any math node. This value can also make use of multivalue fields, just like the square symbol we previously discussed.

Color node connection

This is a color value.

Figure 1.11: The color input/output node connection

Figure 1.11: The color input/output node connection

This node connection contains three values, an R channel (red), a G channel (green), and a B channel (blue), also known as the RGB channels. These can be separated into their respective RGB values using a Separate RGB node. They can also be combined using a Combine RGB node. Just like the examples explained in the Exploring different shapes section, this node connection can also make use of multivalue fields.

String node connection

This node connection defines a string of text.

Figure 1.12: The string input/output node connection

Figure 1.12: The string input/output node connection

This value will mainly be seen on nodes that are made to create or modify text, such as the String node, the String to Curves node, and the String Length node. This will be explained in depth later on in the book.

Material node connection

This node connection defines a material.

Figure 1.13: The material input/output node connection

Figure 1.13: The material input/output node connection

It can be used to set the material of selected geometry in the node editor. This node basically refers to a material you’ve already made and one that is included in the project file. Some nodes that make use of this node connection are the Material node, the Set Material node, and the Replace Material node.

Multi-connection inputs

Let’s look into some special node connections.

Multi-Connection inputs allow you to connect multiple output connections into one input socket. This is generally used to join multiple datatypes of the same type into one output.

Figure 1.14: Geometry multi-connection input

Figure 1.14: Geometry multi-connection input

The node connection seen here is usually used to combine elements; for example, the input shown in the preceding figure is used to join geometry together.

Figure 1.15: String multi-connection input

Figure 1.15: String multi-connection input

The preceding socket is used to join strings together. It works in the same way as the geometry multi-connection input.

Exercise – accessing the Geometry Node system

Now, you’ll learn how to access the handy Geometry Nodes tool in Blender.

Make sure you at least have Blender 3.2, but in this book and chapter, we will be using Blender 3.3. Let’s begin:

  1. Firstly, let’s start by opening Blender.
  2. Then, you can head on to the Geometry Nodes tab in the top section of your screen. Now your journey begins.
Figure 1.16: Blender startup screen

Figure 1.16: Blender startup screen

When you click on the Geometry Nodes tab at the top of your screen, you’ll see the following:

Figure 1.17: Geometry Node editor tab with info overlayed

Figure 1.17: Geometry Node editor tab with info overlayed

This might look overwhelming at first sight, but don’t worry, this book will guide you through all the parts of this node editor.

There are four parts you’ll need to know about on this screen:

  • Spreadsheet

This is a separate window that allows you to see various bits of information about elements of your geometry, such as, for example, the properties of instances.

  • Viewport

This is your main view in Blender. It allows you to see the project in 3D space.

  • Outliner

This is a list of all the objects in your current scene. This makes it easy to create instances by sliding your object from the outliner right into the Geometry Node editor.

  • Geometry Node editor

The Geometry Nodes editor is your main editing workspace for working with Geometry Node trees.

To start working on Geometry Nodes, it’s important to learn how to add a node tree to your projects. There are two ways to do this:

  • One way to do this is to add a Geometry Nodes Modifier from the Modifiers tab in the Properties tab:
Figure 1.18: Geometry Nodes Modifier

Figure 1.18: Geometry Nodes Modifier

After you’ve added the Modifier to the Modifier stack, you’ll need to press the New button. You’ve now successfully created a new node group.

  • The other way to do this (and the quicker way since we’re already in the Geometry Nodes workspace) is to just click the New button in the Geometry Node editor. This automatically adds a new Geometry Nodes Modifier along with a beginning and end node. The following figure shows the New button you’ll find at the top of the Geometry Nodes workspace to add a new node tree, along with all the functions of the button.
Figure 1.19: Node group selection box

Figure 1.19: Node group selection box

This is the end of the chapter. In this chapter, you’ve learned about the various node connections you will come across in the node editor, along with how to access the node editor.

Congratulations! You now know the basics of the Geometry Node editor.

Summary

In this chapter, we’ve covered the various node connections. This includes the Vector, Boolean, Color, Integer, Value, String, Material, and Geometry Inputs, along with the different shapes of node connections. We have explained how to access the Geometry Node editor in various ways, how the node system works, how it flows, and everything there is to know about this new system in Blender. Having read this chapter, you will now understand how this Geometry Node system works and what kinds of node connections are available in the Geometry Node editor.

In the next chapter, we’ll go over the basic nodes you’ll be needing the most in your basic projects. This is important because we will be using these nodes in the coming chapters.

Left arrow icon Right arrow icon

Key benefits

  • Develop a creative mathematical thinking of the modeling workflow
  • Understand how Blender and geometry nodes store and manage the data that you are handling
  • Learn different scatter methods and how to use them

Description

For anyone working in the computer graphics industry, understanding how to use Blender’s new geometry nodes tools to manipulate and generate 3D geometry in a node-based workflow is an essential skill. In this book, you’ll learn how to use the basic and intermediate features of geometry nodes that are a crucial part of your Blender roadmap. You’ll start by understanding the different node inputs and outputs followed by the basic nodes you’ll need throughout your geometry nodes projects. The book will show you how the node system works and enable you to put your newfound knowledge to use through exercises that involve modifying curves, meshes, and more. You’ll work on a range of interesting projects such as creating a procedural plant, where you’ll use nodes to generate the intricate details and variations of a plant in a procedural manner, and a spiderweb generator to refine your skills of cleaning up a node tree. Finally, you’ll build a procedural LED panel using geometry nodes to generate the look of an LED panel. By the end of this book, you’ll be able to overcome any geometry node issue confidently and make complicated geometry node trees exactly how you need them.

What you will learn

Discover the different node inputs and outputs that geometry nodes have to offer Get the hang of the flow of the geometry node system Understand the common nodes you’ll be using along with their functions in the geometry node editor Modify basic mesh primitives using the node system inside Blender Scatter and modify objects aligned onto a curve Become familiar with the more advanced nodes in the geometry nodes system Link geometry and material nodes editors using named attributes Implement your new-found knowledge of nodes in real-world projects

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Mar 17, 2023
Length 282 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781804612552
Vendor :
Blender Foundation
Category :
Concepts :

Table of Contents

23 Chapters
Preface Chevron down icon Chevron up icon
1. Part 1 – Familiarizing Yourself with the Node System Chevron down icon Chevron up icon
2. Chapter 1: An Introduction to Geometry Nodes Chevron down icon Chevron up icon
3. Chapter 2: Understanding the Functionality of Basic Nodes Chevron down icon Chevron up icon
4. Chapter 3: Must-Have Add-ons for Building Node Trees Chevron down icon Chevron up icon
5. Part 2 – Creating a Mesh in the Geometry Node System Chevron down icon Chevron up icon
6. Chapter 4: Making Use of Node Primitives Chevron down icon Chevron up icon
7. Chapter 5: Distributing Instances onto a Mesh Chevron down icon Chevron up icon
8. Chapter 6: Working with the Spreadsheet in Blender Chevron down icon Chevron up icon
9. Chapter 7: Creating and Modifying Text in the Geometry Node Editor Chevron down icon Chevron up icon
10. Part 3 – Modifying Meshes and Curves in the Geometry Node System Chevron down icon Chevron up icon
11. Chapter 8: Editing Curves with Nodes Chevron down icon Chevron up icon
12. Chapter 9: Manipulating a Mesh Using Geometry Nodes Chevron down icon Chevron up icon
13. Part 4 – Hands-On Projects Involving Advanced Workflow Techniques Chevron down icon Chevron up icon
14. Chapter 10: Creating a Procedural Plant Generator Chevron down icon Chevron up icon
15. Chapter 11: Creating a Procedural Spiderweb Generator Chevron down icon Chevron up icon
16. Chapter 12: Constructing a Procedural LED Panel Chevron down icon Chevron up icon
17. Part 5 – Best Practices to Improve Your Workflow Chevron down icon Chevron up icon
18. Chapter 13: Tips and Tricks for the Geometry Node Editor Chevron down icon Chevron up icon
19. Chapter 14: Troubleshooting the Most Common Problems in Geometry Nodes Chevron down icon Chevron up icon
20. Index Chevron down icon Chevron up icon
21. Other Books You May Enjoy Chevron down icon Chevron up icon
Appendix: Important Shortcuts Chevron down icon Chevron up icon

Customer reviews

Filter icon Filter
Top Reviews
Rating distribution
Empty star icon Empty star icon Empty star icon Empty star icon Empty star icon 0
(0 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 0%

Filter reviews by


No reviews found
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.