Skip to content

Instantly share code, notes, and snippets.

@GainDeveloper
GainDeveloper / mlMeshCopyToMorph
Last active September 21, 2023 12:01
mlMeshCopyToMorph.py
import modo
from mlFoundation import mlMath
meshes = modo.Scene().selectedByType('mesh')
source = meshes[0]
target = meshes[1]
indexToPosition = {}
@GainDeveloper
GainDeveloper / mlMorphYToV.py
Created May 9, 2021 23:19
Takes Y axis diff of a morph and saves it as V in secondary UVs.
import modo
from mlFoundation import mlMath
mesh = modo.Mesh()
uvmap = mesh.geometry.vmaps.uvMaps[1]
morphMap = mesh.geometry.vmaps.morphMaps[0]
with mesh.geometry as geo:
for vertex in geo.vertices:
yPos = 0
@GainDeveloper
GainDeveloper / mlFlattenYStoreV.py
Created January 3, 2021 15:26
Collapses selected in vertices in Y axis and stores the offset in the V component of the second uv channel.
import modo
from mlFoundation import mlMath
mesh = modo.Mesh()
uvmap = mesh.geometry.vmaps.uvMaps[1]
bb = mlMath.BoundingBox3D()
for vertex in mesh.geometry.vertices.selected:
bb.EncapsulatePoint(vertex.position)
@GainDeveloper
GainDeveloper / mlFreezeNormals.py
Created October 6, 2020 13:18
Freezes scale or rotations whilst maintaining vertex normals. Place in lxserv folder.
#/*
#================================================================================================
# Part of the ModoMLTools for The Foundry's Modo.
# Author: Myles Lambert : myleslambert18@gmail.com
# Description: Freezes rotation whilst also updating vertex normals.
#================================================================================================
#*/
import lx, lxifc, lxu
import modo