ItJustDonn

joined 1 month ago
6
submitted 4 hours ago* (last edited 3 hours ago) by ItJustDonn@slrpnk.net to c/blender@lemmy.world
 

Hi all, I wanted to show some snippets of a project I'm working on. Something I'm calling GuitarNodes, a Geometry Nodes setup for making a procedurally customizable guitar that's easy to animate in Blender.

Here's a brief showcase of the features I've put into it:

Modular Parts

With Menu Switch nodes, it's easy to have swappable parts for the guitar. I've only (crudely) modeled one set at the time, but it's easy to see how a user could keep individual parts in separate collections to switch through. I also plan to make a second (crude) set to alternate between

Menu switch nodes make it easy to swap parts

Body
  • Simply choose what body mesh you want
  • Can be translated and rotated with gizmos
Headstock
  • Choose desired headstock
  • Origin for object is at the nut so that it attaches directly to fretboard
Tuning Pegs
  • Note that there is a difference between L and R pegs
  • Follows an adjustable guide mesh to stick to headstock
    • Guide mesh can have individual rows of points(pegs) spaced apart more/less in X direction with gizmos
      • Can switch between a guide mesh and curve, where the curve is for in-line pegs
        • I don't have the line nodes done yet but it'll behave similarly
      • String ends can be adjusted in normal Z direction to match custom peg height

Headstock with adjustable guide mesh and tuning peg L and R collections

Output Jack
  • Can be rotated, follows a guide empty and faces the normal of the guitar body
  • Could also be modular if that's a detail you want to have

Output jack follows guide empty while sticking to body

Tone Knobs
  • Follows a guide curve that resamples to fit number of knobs
    • You can edit this curve shape in order to arrange the knobs to your liking
  • Will also be modular, such that you can change all of the knobs

Tone knobs follow editable guide curve with adjustable knob count

Bridge
  • Also modular
  • Bridge can be moved in Y direction across the body with gizmo
  • String ends can be adjusted in Z direction to match custom bridge height with gizmo

Bridge adjusted with gizmo and strings follow automatically

Saddle
  • Automatically connects strings to bridge
  • Also modular
  • Can be rotated with gizmo

Saddle can be rotated and automatically fits guitar scale length

Neck and Fretboard
  • Uses profile curves at nut, 12th fret, and end of fretboard
  • Adjustable fret count
    • Frets are spaced formulaically
  • Minimal UI
    • Shows measurement of string scale and the fretboard
Strings
  • Adjustable count
  • Adjustable gauges
  • Tuning-based frequency oscillation in X direction (menu switch)
  • Flip string order for left/right handed
  • Adjustable oscillation intensity for varied strumming
  • Adjustable fretted note values per string
    • As the fretted note gets higher, the center of string oscillation moves accordingly
    • As the fretted note gets higher, the oscillation frequency increases accordingly

Fretboard with oscillating strings that use integers to adjust fretted notes

Next plans (v0.8ish - 1.0):

  • Adding Z-dimension to oscillation for more realism
  • Add per-fret string translation that slightly increases string frequency for bending
  • Custom guitar body, drawn with grease pencil (shoutout to Joey C for the inspiration!)

Use grease pencil to create a custom guitar body

  • I need help 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
  • Adding a moveable pickguard whose Z-axis points in the body's normal direction
    • Probably going to use a guide empty
    • Might also implement custom designs with grease pencil
    • Adjustable Z-direction with gizmo
  • Player UI
    • Shows chord chart for finger placements based on the current lowest fretted note
      • Outlier high fretted notes will be shown next to the chart

Further out plans

  • 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)
    • How much of this requires knowledge of handling UVs through geo nodes?
  • Simulation nodes for painting custom materials on guitar (or just a good setup for other users to vertex paint it)
  • 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
  • Implement a whammy bar that affects strings
  • Any other feedback that I like enough to implement myself
[–] ItJustDonn@slrpnk.net 2 points 1 day ago (1 children)

Could a group of individuals set up a project through a co-op like Comradery?

[–] ItJustDonn@slrpnk.net 6 points 3 days ago (3 children)

Open source means it can be publicly audited to help soothe suspicion, right? I imagine that would take time, though, if it's incredibly complex

[–] ItJustDonn@slrpnk.net 1 points 3 days ago

I've been getting into the fediverse for less than a month, and it seems the biggest barrier for a newcomer like me is settling on a select few out of many clients/apps. One question I think a lot of people migrating want to know is (and I open this up to anyone):

What's the fewest signups needed if we want to enjoy all of the federated replacements to corporate social media? It sounds like each client demands its own account but I'm wondering where/if there's overlap, because…

My Lemmy account already worked on movim before i discovered movim. That's really cool but I don't know 100% how that worked (same community server, I think), and how many other apps/clients offer that.

Movim is XMPP and I don't know how that overlaps with ActivityPub, but I want to better understand so that I know how few accounts are necessary so I can micro and macro blog, share original/repost images videos and music, have group communities, and have a personal page to post things on as opposed to thread/conversations/forum posts and not have to manage ten separate accounts if I can help it

[–] ItJustDonn@slrpnk.net 2 points 5 days ago (1 children)

Nah just keep hitting B and imagine you're literally exhausting the dialogue and making him miserable 😂

[–] ItJustDonn@slrpnk.net 2 points 5 days ago

Good to know! Still new to the fediverse so I'm trying to get a good lay of the land in terms of what different platforms offer

[–] ItJustDonn@slrpnk.net 1 points 6 days ago (2 children)

Isn't Hubzilla the next one they made?

[–] ItJustDonn@slrpnk.net 1 points 1 week ago

I had a feeling it was something like that 😅 I'm excited for the platform and for the future of the fediverse, and I hope the upsizing is as painless as possible!

[–] ItJustDonn@slrpnk.net 7 points 1 week ago (3 children)

Patiently waiting for my application to get accepted (ಥ﹏ಥ) how long does it take on average?