22
submitted 3 weeks ago by [email protected] to c/[email protected]

Wow, it's been a while...but I'm still alive! More exciting still, is that I've been able to chip away at a decent amount of items off my checklist. Enough to give an update on...

Guitar Nodes v0.8(ish)!

So what and why even?

  • GuitarNodes fits in the middle of a Venn diagram, between (Blender v4+) animators and guitar enthusiasts
  • Simply put, it's a tool that aims to make it easier to create, customize, and animate a guitar, while minimizing time spent on all of the steps that come between the joy of a sweet guitar model and the pain of setting it up for (passably) realistic animation
  • Once I clean up any orphaned data, I will release this version and all subsequent versions for free!

Features

Body

  • Menu switch between guitar bodies in a modular fashion [1]
  • Transform with gizmos [1] [2] [3]

Headstock

  • Menu switchable [1]

Tuning Pegs

  • Menu switchable [1]
  • Projects tuning pegs onto headstock based on aligning guide geometry [2] [3]
  • Creates simple string-ends that connect from each peg to the nut [4] [5]

Neck

  • Creates a mesh that bridges 3 profile curves [1]
    • Nut profile curve
    • 12th fret profile curve
    • End of fretboard profile curve

Frets

  • Currently uses a stand-in mesh, but I'll throw a menu switch in if there's a demand for custom fret bars
  • Adjustable fret count
  • The frets use a luthier's math formula to calculate their distance based on the length of the guitar string scale [1] [2]

Strings

  • Adjustable string count, spread, and action [1]
  • Menu switch to choose between gauges (currently only 6- and 7-string gauges have been implemented)
  • Strings vibrate according to note frequency (or whatever you want if you get in the nodes and change it manually)
  • This is currently also manually listed similar to string gauges
    • I will rework this when I can get it to interact with MIDI files
  • Strings stop vibrating based on chosen fretted notes
  • Notes can be bent
  • String gauges flip if "Lefty" boolean is checked
  • _Player_Controls nodegroup has values for each string
    • Fret number being played [2]
    • Bend amount [3] [4]
    • String oscillation axes (X and Y), with sliders to determine how much in each direction [5]
    • String depression depth, to mimic being depressed by a finger when fretted [6]
    • Flip direction of the strum
    • Each string has its own adjustable oscillation strength ("Osc Height")

Saddle

  • Could easily add a menu switch for the geometry if you want to go modular
  • Automatically fits at the end of the string (based on scale length) [1]
  • Has a dial gizmo to rotate the saddle (Z-axis) in place [2]

Bridge

  • Could easily add a menu switch for the geometry if you want to go modular
  • Samples the guitar body to place in alignment with the Saddle
  • Distance from bridge can be adjusted with a linear gizmo [1]
  • Connects end strings (saddle to bridge)
    • Strings have adjustable Z-height with linear gizmo [2]

Pick Guard

  • Could easily add a menu switch for the geometry if you want to go modular
  • Follows the X-/Y-axis placement of a Guide Empty [1]
  • Samples the guitar body to place with Z-up facing the body's normal direction
  • Rotate and translate in Z with gizmos [2]
  • Can be toggled on/off with boolean switch

Tone Knobs

  • Could easily add a menu switch for the geometry if you want to go modular
  • Instances knobs based on raycast from a Guide Curve [1]
  • Resolution determines number of knobs
  • Extrude guide curve in X/Y direction to change direction of knob layout [2]
  • Can be toggled on/off with boolean switch

Output Jack

  • Could easily add a menu switch for the geometry if you want to go modular
  • Samples the guitar body to position based on location
  • Follows the X-/Y-axis placement of a Guide Empty [1]
  • Can be rotated with dial gizmo [2]
  • Can be toggled on/off with boolean switch

UI

  • Shows scale and fretboard length (toggle with boolean)
    • Follows the string (scale) and fretboard geometries respectively
  • Shows fretboard chart (toggle with boolean) [1]
    • Shows frets currently selected on each string (integers on _Player_Controls nodegroup) with a red dot
    • Shows the fret by number for where dots are traditionally inlaid on a guitar fretboard (i.e. 3, 5, 7, 9, 12, repeat per octave)
    • Fretboard expands and shrinks to fit all of the fret dots
      • The amount of geometry culled is adjustable
    • Adjustable UI fretboard line thickness
    • Is adjustable with a transform gizmo [2]

Future Plans

Nearer

  • Add per-fret string translation that slightly increases string frequency for bending
  • I need help (still!) getting the points which the Tone Knobs instance at: they currently do not rotate to point the Z in the normal direction of the body. Instead, they all seem to match the first point's Z direction only. I want each point to recognize the normal of the nearest faces it's stuck to
  • A strings-only version, for people that want to use their own guitar models

Further out

  • Custom guitar body, drawn with grease pencil (shoutout to Joey C for the inspiration!)
  • Simulation nodes for strings, so that you can have oscillation decay over time
  • Simulation nodes that interact with a plectrum object, so they can be literally strummed (probably gonna need a bit of help, too!)
  • Better procedural materials
    • Is it possible to use a For Each Element zone to change string material based on its position/diameter (i.e. thicker strings are wound material)
    • How much of this requires knowledge of handling UVs through geo nodes?
  • Simulation nodes for painting custom materials on guitar
  • Possible driver UI that changes a lot of these values, so that you don't have to go into the nodes to change things
  • Want to implement a tablature-style tracker
    • Automatically keys the string fret values to match the song's rhythm, accounting for framerate
  • Pickups & Selector Switch
  • Whammy Bar?!
  • Any other feedback that I like enough to implement myself
top 1 comments
sorted by: hot top new old
[-] [email protected] 1 points 3 weeks ago* (last edited 3 weeks ago)

also if WebMs can be embedded, please someone let me know how since they show up blank in the post preview

this post was submitted on 21 Aug 2025
22 points (100.0% liked)

Blender

3348 readers
11 users here now

A community for users of the awesome, open source, free, animation, modeling, procedural generating, sculpting, texturing, compositing, and rendering software; Blender.

Rules:

  1. Be nice
  2. Constructive Criticism only
  3. If a render is photo realistic, please provide a wireframe or clay render

founded 2 years ago