Skip to content

Instantly share code, notes, and snippets.

View anatawa12's full-sized avatar
🏃‍♂️
Working on Many Projects

anatawa12 anatawa12

🏃‍♂️
Working on Many Projects
View GitHub Profile
@anatawa12
anatawa12 / SimpleAvatarUploader.cs
Created January 13, 2026 16:27
A simple script to upload avatars with VRCSDK Public API
/*
* SimpleAvatarUploader
* A simple script to upload avatars with VRCSDK Public API
* https://gist.github.com/anatawa12/029f749b527ed0a8d6dc853a5bcf9b94
*
* This tool is made to provide a simple way to upload avatars with the same way as Continuous Avatar Uploader does, to test compatibility with other avatar-related tools.
*
* Continouus avatar uploader currently uses `IVRCSdkAvatarBuilderApi.Build` API to build,
* and use `VRCApi.UpdateAvatarBundle` to upload the avatar bundle just built.
*
@anatawa12
anatawa12 / QuickCopyComponents.cs
Last active January 2, 2026 14:47
Copy Components from one GameObject to another quickly & bulkily.
/*
* Quick Copy Components
* https://gist.github.com/anatawa12/c984c98b8676d1893d7d3f79f50c18aa
*
* Copy Components from one GameObject to another quickly & bulkily.
*
* The window allows you to copy components from source GameObjects to another GameObjects.
* This does not copy recursively, only components attached to the specified GameObjects are copied.
*
* MIT License
@anatawa12
anatawa12 / CopyClothSettingsByDistance.cs
Created January 2, 2026 14:37
Copy cloth settings from source cloth to destination cloth based on distance from a point.
/*
* Copy Cloth Settings By Distance
* https://gist.github.com/anatawa12/3448b46d43b9f89ac22be985bf9c3c21
*
* Copy cloth settings from source cloth to destination cloth based on distance from a point.
*
* MIT License
*
* Copyright (c) 2023 anatawa12
*
@anatawa12
anatawa12 / BlendShapeSyncGenerator.cs
Last active January 2, 2026 12:30
Simple window to generate Modular Avatar's Blendshape Sync components.
/*
* BlendShapeSyncGenerator
* Simple window to generate Modular Avatar's Blendshape Sync components.
* https://gist.github.com/anatawa12/b577547d96eea6975279dee2a7e59578
*
* 1. Click `Tools/anatawa12 gists/BlendShapeSyncGenerator` to open this window.
* 2. Set `Find Root Object` to the root GameObject of your avatar, or outfit you want to process.
* 3. Set `Sync Sources` to SkinnedMeshRenderers which has blendshapes you want to sync from. This is tipically mesh like Body_base.
* 4. Click `Find Candidates` button to find SkinnedMeshRenderers which can sync blendshapes from `Sync Sources`.
* 5. Enable / disable blendshape sync you want to generate.
@anatawa12
anatawa12 / UpdateAnimationHashSetProcessor.cs
Last active January 2, 2026 12:01
A IVRCSDKPreprocessAvatarCallback to update animation hashset of VRCAvatarDescriptor.
/*
* UpdateAnimationHashSetProcessor
* A IVRCSDKPreprocessAvatarCallback to update animation hashset of VRCAvatarDescriptor.
* https://gist.github.com/anatawa12/e4b346a295d44476763814a7cad6bfd9
*
* Updates animation hashset of VRCAvatarDescriptor as the last IVRCSDKPreprocessAvatarCallback
*
* MIT License
*
* Copyright (c) 2023 anatawa12
@anatawa12
anatawa12 / ObjectRecursiveDiff.cs
Last active January 2, 2026 11:59
Simple utility to show differences between two UnityEngine.Objects recursively.
/*
* ObjectRecursiveDiff
* Simple utility to show differences between two UnityEngine.Objects recursively.
* https://gist.github.com/anatawa12/96f14582df903936986b786b9210b4dd
*
* Click `Tools/anatawa12 gists/ObjectRecursiveDiff` to open this window.
*
* MIT License
*
* Copyright (c) 2023 anatawa12
#!/bin/sh
":" /*
exec deno run --allow-read --allow-write "$0" "$@"
exit $?
":" */
const folder = Deno.args[0];
if (!folder) {
console.error("Usage: shuffle-guid-in-folder.ts <folder>");
@anatawa12
anatawa12 / nginx-proxy-manager
Last active November 11, 2025 19:04
simple command to manage https://github.com/nginx-proxy/nginx-proxy docker instance
#!/bin/sh
# nginx-proxy-manager: Simple script to manage nginx-proxy container and its networks.
# Requires Docker to be installed and running.
#
# Usage: nginx-proxy-manager <command> [options] [arguments]
# Commands:
# start Start or restart the nginx-proxy container.
# stop Stop the nginx-proxy container.
# pull Pull the latest nginx-proxy image.
@anatawa12
anatawa12 / ProfileSwitcher.cs
Last active September 18, 2025 03:44
A script to switch VRChat account profile in the Unity Editor. This can be useful when you have multiple accounts like personal and work accounts.
/*
* Profile Switcher for VRChat SDK
* https://gist.github.com/anatawa12/fc3376768f6f3c2f9e7c8e60596ad99f
*
* A script to switch VRChat account profile in the Unity Editor.
* This can be useful when you have multiple accounts like personal and work accounts.
*
* ## Account Safety
* This script does not store any credentials in the code, it uses VRChat's built-in multiple profile feature.
* This script only changes the profile index and let VRCSDK to re-login with credentials VRChat stores.
@anatawa12
anatawa12 / SelectionHistory.cs
Last active June 4, 2025 07:51
This is a tool to back / forward history with mouse button 4, 5
/*
* SelectionHistory
* This is a tool to back / forward history with mouse button 4, 5.
*
* https://gist.github.com/anatawa12/70a50d924fe018716761741780893b3a
*
* Click `Tools/anatawa12 gists/Selection History/Show history` to open window, or just click mouse back/forward button.
*
* MIT License
*