Mauro Lopez Gimenez's Avatar

Mauro Lopez Gimenez

@vincentzaraek

Senior character TD @ Naughty Dog. Focused on ML applied on character rigging and animation

66
Followers
69
Following
19
Posts
25.11.2024
Joined
Posts Following

Latest posts by Mauro Lopez Gimenez @vincentzaraek

Video thumbnail

Just released a simple open-source tool that uses classical ML to blend regions from multiple 3D meshes into new ones
Pick source meshes, paint regions, interpolate in latent space.

Great for learning how ML can work with geometry.

πŸ‘‰ github.com/lopezmauro/m...

#ml #3d #opensource #techart

16.05.2025 07:26 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Is this better than RBF solvers for driving muscle deformations?
Is this better than RBF solvers for driving muscle deformations? YouTube video by Vertex Theory

Big thanks to Jeff Brodsky of Vertex Theory for this incredible video showcasing my tool! If you haven’t seen it yet, don’t miss out, it’s a fantastic walkthrough! πŸŽ₯ youtu.be/kEQK5Sd4484?...

10.02.2025 04:42 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - lopezmauro/ml-example-nodes: This repository contains Python machine learning nodes for instructional use onlyβ€”NOT for production. All inferences are based on pure math, with no external lib... This repository contains Python machine learning nodes for instructional use onlyβ€”NOT for production. All inferences are based on pure math, with no external libraries, to help you understand the ...

πŸš€Repo Update!
Based on your feedback, I’ve added:
✨ Import/Export functionality
⏰ Custom train time range (for non-animated inputs)
πŸ”„ Linear Regression often struggles with Euler rotations. I’ve added rotation matrix support
github.com/lopezmauro/m...
#MachineLearning #AutodeskMaya #ML #Rigging

10.02.2025 04:42 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

I created these nodes in Maya since most production rigs|animations are done there. There aren’t many production-level character rigs in Houdini.
That said, the inference math quite is simple, so I might put together a few snippets to achieve something similar in Houdini in the future. Stay tunedπŸ˜‰

27.01.2025 23:46 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

πŸ‘ Give a like if you'd love a follow-up on adding non-linearity to linear regression! Or drop a comment to let me know what you'd like to see next.

I’m always excited to dive deeper into #MachineLearning applied to #Rigging topics and #CharacterTD

26.01.2025 04:22 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
GitHub - lopezmauro/ml-example-nodes: This repository contains Python machine learning nodes for instructional use onlyβ€”NOT for production. All inferences are based on pure math, with no external lib... This repository contains Python machine learning nodes for instructional use onlyβ€”NOT for production. All inferences are based on pure math, with no external libraries, to help you understand the ...

Excited to share my PCA Blendshape Node for #AutodeskMaya

This educational tool lets you explore PCA (Principal Component Analysis), allowing you to choose how much to compress your data while optimizing performance and preserving detail.

github.com/lopezmauro/m...

#MachineLearning #ML #Rigging

26.01.2025 04:22 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 1

πŸ’‘ Coming next: a PCA Blendshape Node
These tools are instructionalβ€”Not meant for production use but great for exploring ML in 3D animation. Feedback & contributions are welcome!

27.12.2024 15:57 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
GitHub - lopezmauro/ml-example-nodes: python machine learning nodes mean to be used as instructional material NOT FOR PRDUCTION USE python machine learning nodes mean to be used as instructional material NOT FOR PRDUCTION USE - GitHub - lopezmauro/ml-example-nodes: python machine learning nodes mean to be used as instructional...

πŸ€– Dive into ML in Autodesk Maya
I’ve made a repo with example ML nodes for Maya, starting with a Regression Node for linear regression inference. Perfect for learning & experimentation!

πŸ“‚ Check it out: github.com/lopezmauro/m...

#MachineLearning #AutodeskMaya #ML #Rigging #CharacterTD

27.12.2024 15:57 πŸ‘ 4 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Post image

You think you know… but you have no idea. Naughty Dog’s 5th franchise is our wildest adventure. We cannot wait to show you more!

19.12.2024 16:52 πŸ‘ 405 πŸ” 55 πŸ’¬ 67 πŸ“Œ 5
Intergalactic: The Heretic Prophet Announcement Trailer
Intergalactic: The Heretic Prophet Announcement Trailer YouTube video by Naughty Dog

Super proud and happy to be able to finally show this project and showcase the in-game Realtime ML facial and cloth tech that I've working on πŸ€“

#Rigging #MachineLearning #ML #CharacterTD #Intergalactic #NaughtyDog

youtu.be/o7TVPoxwi74?...

13.12.2024 04:24 πŸ‘ 11 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0

Also, in my experience, ML models are easier to implement in custom pipelines. Their inference relies on straightforward linear algebra, making them simpler implement. And since they are easy to interpret, can be integrated with post train fine-tune with artist-driven tools (edit weight and bias)

11.12.2024 20:20 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Neural networks are great for model complex, non-linear relationships. However, for simpler problems, ML's advantages in efficiency (like you mention), data requirements (they can be trained with smaller data sets), and interpretability (easier to understand how each feature affect the outputs).

11.12.2024 20:20 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

3️⃣ PCA for Generating New 3D Faces (Eigenfaces for Meshes)

Use PCA to reduce the dimensionality of 3D facial data, then generate new faces by interpolating in the reduced space, and then convert it back to the original space for a brand new face.

11.12.2024 16:44 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

2️⃣ K-Means for Vertex Clustering by Position and Normals

Use k-means clustering to group vertices based on spatial proximity and normal direction. This helps segment parts of a mesh automatically (e.g., head, torso, limbs).

11.12.2024 16:43 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

1️⃣ Linear Regression for "Smart" Driven Keys:
Use linear regression to model the relationship between a driver (e.g., joint rotation) and a driven (e.g., blendshape weight). Instead of setting keys manually, train the relationship using example data and let the model interpolate for unseen values.

11.12.2024 16:40 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Neural networks might be stealing the spotlight, but classical machine learning is still a powerful and accessible tool for smarter, faster rigging workflows. In this thread, I’ll share three cool ML examples you can use right now πŸ§΅πŸ‘€

#Rigging #MachineLearning #ML #CharacterTD

11.12.2024 16:37 πŸ‘ 5 πŸ” 1 πŸ’¬ 3 πŸ“Œ 0
Post image Post image

Here are some pseudo-code images.
🎯 Modular and easy to extend:
βœ… Add constraints with loss functions.
βœ… Assign weights to losses for flexibility.
βœ… Add new types of losses dynamically.

Perfect for tasks like mesh fitting, alignment, or other approximations
#TechInnovation
#Rigging
#CharacterTD

03.12.2024 22:08 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Neural networks can be powerful tools for approximating mesh deformations by aligning a source mesh to a target mesh

Neural networks can be powerful tools for approximating mesh deformations by aligning a source mesh to a target mesh

One key advantage is the flexibility to include various constraints via loss functions such as:

One key advantage is the flexibility to include various constraints via loss functions such as:

NORMAL LOSS: Preserve source normals to maintain the overall shape of the mesh.

EDGE LOSS: Preserve edge lengths to retain the original volume of the mesh

NORMAL LOSS: Preserve source normals to maintain the overall shape of the mesh. EDGE LOSS: Preserve edge lengths to retain the original volume of the mesh

SYMMETRY LOSS: If the source mesh has symmetry, can penalizes asymmetrical deformations.

LAPLACIAN LOSS: minimizes differences in vertex neighborhoods, preventing unwanted distortions

SYMMETRY LOSS: If the source mesh has symmetry, can penalizes asymmetrical deformations. LAPLACIAN LOSS: minimizes differences in vertex neighborhoods, preventing unwanted distortions

πŸ’‘ Did you know? Neural network libraries like PyTorch can act as general-purpose approximators without building a network.

Just optimize a tensor with losses to solve tasks such a mesh matching with constraints. Continue on🧡

#MachineLearning
#NeuralNetworks
#TechInnovation
#Rigging
#CharacterTD

03.12.2024 22:05 πŸ‘ 2 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0
Post image

Locked in the zone, working hard... then I feel it on my neck: the undeniable presence behind me. The Attention Seeker has arrived.

28.11.2024 14:21 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Normalize inputs for stable training, but not outputsβ€”non-normalized outputs reduce approximation errors.

Normalize inputs for stable training, but not outputsβ€”non-normalized outputs reduce approximation errors.

Avoid Euler angles due to gimbal lock. Quaternions are better but can be inconsistent. Rotation matrices are the most stable.

Avoid Euler angles due to gimbal lock. Quaternions are better but can be inconsistent. Rotation matrices are the most stable.

predict only 6 values of the rotation matrix and compute the last 3 with a cross-product. This keeps the network smaller

predict only 6 values of the rotation matrix and compute the last 3 with a cross-product. This keeps the network smaller

While PReLU works well for large networks, Tanh provides more stable predictions outside the training data.

While PReLU works well for large networks, Tanh provides more stable predictions outside the training data.

Key Takeaways for Neural Networks Driving Joints:

After experimenting with neural networks for joint rotations, here are a few lessons I’ve learned

Have you tried similar methods? Let’s discuss!
#MachineLearning #DeepLearning #NeuralNetworks #AnimationTech #Rigging

27.11.2024 03:10 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0