Skip to content

Instantly share code, notes, and snippets.

View revoconner's full-sized avatar
💭
AAAAAAAAAAAAAAA!!!

Rév O'Conner revoconner

💭
AAAAAAAAAAAAAAA!!!
View GitHub Profile
image

Your Github Nav - user script

Browser user script to go to YOUR Issues, Pr, Repos etc that you created, not contributed to, assigned, mentioned etc.

@revoconner
revoconner / README.md
Created May 27, 2026 03:39
cleanup vercel deployments

vercel-rm

A tiny Windows .bat that prunes Vercel deployments for a given project, keeping only the ones worth keeping. Drop the file anywhere on PATH and call it from any cwd.

Keep rules

Keeps a deployment if any of these are true:

  1. It is the latest READY production deployment overall.
  2. It is the latest READY deployment (production or preview) on its branch.
@revoconner
revoconner / suppressInputAsOutput.py
Created December 30, 2025 18:02
Maya - Stop showing script in the output section of maya's script editor. Tested only in 2025, and 2026.
# suppressInputAsOutput.py
import maya.OpenMaya as OpenMaya
callback_id = None
suppress_enabled = True
def output_filter(msg, msg_type, filter_output, client_data):
global suppress_enabled
# kHistory = 1 (command echo)
@revoconner
revoconner / Maya_packMultiObj_UV.py
Last active January 3, 2026 00:38
Maya tool for packing (layout) UV shells of multiple objects together around existing shells. Great for creating Atlases, when you have already manually packed some assets.
# Maya tool for packing UV shells around existing shells.
# Pack (layout) UV of multiple objects together without overlapping on existing unselected uv shells
# Maya 2023 and above only
# License: MIT
import maya.cmds as cmds
import maya.api.OpenMaya as om2
import maya.mel as mel
from collections import defaultdict
@revoconner
revoconner / Maya_align_pivot_to_components.py
Last active December 19, 2025 08:10
Maya script to align pivot orientation to the best-fit (average) plane of multiple selected components. Aligns pivot rotation perfectly to arbitrary selected vertices, faces, or edges!
"""
Maya's pivot orientation can be manually adjusted in Edit Pivot mode, but aligning it to match an arbitrary
selection of components is tedious and imprecise when:
- The target plane has no obvious orientation to reference
- Selected components are scattered with no clear alignment
- Finding the correct axis would require manual trial and error
- Manual aligning with component doesn't give the best result (you can only ever
select one component as far as I understand)
@revoconner
revoconner / maya_flatten_to_best_fit_plane.py
Last active December 19, 2025 02:24
Maya script (python) to flatten selected vertices/edges/faces to their best-fit plane using SVD or averaged face normals.
"""
Maya's scale tool can flatten geometry by scaling to 0 on an axis, and while
the axis can be manually defined, this becomes impractical when:
- The target plane has no obvious orientation to reference
- Selected components are scattered with no clear alignment
- Finding the correct axis would require tedious manual calculation
This script calculates the best-fit plane for any selection using SVD and
projects vertices onto it, regardless of orientation.
@revoconner
revoconner / FBXToPrimitiveCubesColliders.cs
Last active December 22, 2025 02:54
Create cube primitive colliders from imported meshes in Unity
/*
Build colliders in DCC application like maya and blender
Export and import it as fbx,
Run the tool to convert
************
Only supports cuboids shape,
so build your colliders with cubes.
***********
Full support of transform, rotation and scale in object space
Does not support shear
@revoconner
revoconner / cleanup.py
Created November 23, 2024 15:26
Static object cleanup in maya for games export
import maya.cmds as cmds
import maya.mel as mm
def show_completion_dialog():
if cmds.window("cleanupMessage", exists=True):
cmds.deleteUI("cleanupMessage")
# Create window
window = cmds.window("cleanupMessage", title="Script Complete", widthHeight=(300, 100))
main_layout = cmds.columnLayout(adjustableColumn=True, columnAlign="center")