Blender Studio
  • Films
  • Projects
  • Training
  • Characters
  • Tools
  • Blog
  • Join
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    DEVELOPMENT

    • Developers Blog

      Latest development updates, by Blender developers.

    • Documentation

      Guidelines, release notes and development docs.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

Training Highlights
Stylized Rendering with Brushstrokes
Geometry Nodes from Scratch
Procedural Shading Fundamentals
Stylized Character Workflow

Training types
Course Documentation Production Lesson Workshop

Training categories
Animation Geometry Nodes Lighting Rendering Rigging Shading
Film Highlights
Wing It!
2023
Charge
2022
Sprite Fright
2021
Spring
2019
Project Highlights
Project DogWalk
Interactive
Gold
Showcase
BCON24 Identity
Showcase
Fighting with Grease Pencil
Article
Course
Geometry Nodes from Scratch
Basics
  1. 01

    Theory - Basics

    Free
  2. 02

    Example - Rock Generator

Data Structure
  1. 01

    Theory - Data Structure

  2. 02

    Example - Simple Rock Scattering

Fields
  1. 01

    Theory - Fields

  2. 02

    Example - Advanced Rock Scattering

  3. 03

    Example - Tree Generator

Attribute Propagation
  1. 01

    Theory - Attribute Propagation

  2. 02

    Example - Grass Tuft Generator

Extras
  1. 01

    Hair Assets in Blender 3.5

    Free
  2. 02

    Make Procedural Fur in Blender 3.5

    Free
  3. 03

    Simulation Nodes in Blender 3.6 LTS

    Free
  4. 04

    Node Tools in Blender 4.0

    Free
  5. 05

    Matrix Socket in Blender 4.2

    Free
  6. 06

    Interactive Node Tools in Blender 4.2

    Free
  7. 07

    Gizmos, For-Each Zone and more new Geometry Nodes features - Blender 4.3

    Free
Files
  1. Low Poly Assets
  2. Low Poly Example Scene
  3. Array Tools Free
  4. Doodle Cloud Free
  5. Spaceship Generator Free
  6. Geometry Components Demo

Login to view this content

Join Blender Studio for just €11.50/month and get instant access to all of our training and film assets!

Login Join Blender Studio
Simon Thommes
Simon Thommes Author
License CC-BY
Report Problem
Data Structure

Theory - Data Structure

Join to leave a comment.

20 comments
Alfred Lam
Alfred Lam
Jan. 27th, 2025

Why blender is so hard to learn? All those terminologies contradict with other programs, mathematics or programming. Domains, attributes, layers and components doesn't mean what you think it means!!

Simon Thommes
Simon Thommes
Jan. 27th, 2025

@Alfred Lam I'm not sure what other programs you are referencing, but I think the more you learn about it the more you'll see how it isn't actually too different. You will always have some differences in naming between software.

Alfred Lam
Alfred Lam
Jan. 28th, 2025

@Simon Thommes Agree, just making sure that I will not duplicate my effort. All those terms, are they official terminology that the developer/documentation of blender uses. Don't really want to learn another set, just to understand the documentations when I need to reference it.

Thanks.

Rafael Blasco
Rafael Blasco
Sept. 19th, 2024

Thank you, Simon. Your work is awesome and payless

Ethan Wilson
Ethan Wilson
Feb. 17th, 2024

This is awesome. As a self-taught Blender artist, I feel like so many tutorials & classes skip over explaining the fundamentals. But this feels like the building blocks of information I've been missing.

Gabriel Elkind
Gabriel Elkind
Jan. 7th, 2024

Presumably geometry is also storing the references between vertices and edges, edges and faces, right? Is this something that's ever accessible through the spreadsheet?

Simon Thommes
Simon Thommes
Jan. 8th, 2024

@Gabriel Elkind This kind of data is not available in the spreadsheet, no

Sebastian Kloch
Sebastian Kloch
Sept. 19th, 2023

I work as programmer so presented knowledge is very useful to know. I like very much to understand what is happening. A "Domain" is something new to me and now I finally understand what spreedsheet shows. Usually I just ignore this window.

Crisp Ness
Crisp Ness
June 25th, 2023

Is there a way to get the colored columns in the spreadsheet like in this video? I'm currently using 3.5.1. I tried to find a theme setting for it, but to no avail.

Simon Thommes
Simon Thommes
June 26th, 2023

@Crisp Ness Oh! No the colors are just an edit I made in the video to point out what I am talking about, there is no such feature in Blender.

Stefan Karlsson
Stefan Karlsson
April 23rd, 2023

wonderful material, thank you so much. [on atributes]

Stefan Karlsson
Stefan Karlsson
April 23rd, 2023

.... [on attributes] "They can only be edited in geometry nodes". Can these also be edited in the python API? In general, I am interested in workflows combining geometry nodes and python

Simon Thommes
Simon Thommes
April 24th, 2023

@Stefan Karlsson You can access all generic attributes via object.data.attributes and process them however you want with numpy or such. It's going to be a lot slower than geometry nodes though, so I'd recommend using them as much as possible.

Hizkia Subiyantoro
Hizkia Subiyantoro
Jan. 15th, 2023

Thank You :) Great Explained

Yovany Alvarez
Yovany Alvarez
Sept. 7th, 2022

Wonderful material

Marty Fouts
Marty Fouts
June 4th, 2022

How does text fit into this model?

Simon Thommes
Simon Thommes
June 7th, 2022

@Marty Fouts Text in terms of information can be passed around using the String datatype in Geometry Nodes. When you are talking about text in 3D space, that is done by converting the string using a font into geometry. You can use the String to Curves node to generate curves from the text. These you can then process like any other geometry. For example filling the curves and extruding the mesh.

Ingmar Franz
Ingmar Franz
Jan. 2nd, 2023

@Simon Thommes In order to manipulate the extruded text with a following "Bevel" modifier, I needed to use a "Realize Instances" node.

Luke Gorrie
Luke Gorrie
May 28th, 2022

This is excellent. As a programmer what I want is to understand the abstract data structures behind the nodes view. I don't get that from the documentation nor the YouTube tutorials. Thanks!

Satish Goda
Satish Goda
May 21st, 2022

Very excellent! Thank you for a succinct explanation Thommes.  :)

Films Projects Training Blog Blender Studio for Teams
Pipeline and Tools
  • CloudRig
  • Blender Kitsu
  • Brushstroke Tools Add-on
  • Blender Studio Extensions
Characters
  • Mikassa
  • Whale
  • Ballan Wrasse
  • Snow
Studio
  • Terms & Conditions
  • Privacy Policy
  • Contact
  • Remixing Music
Blender Studio

The creators who share.

Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite