Nanoutils
Nanoutils is a collection of small, focused utilities for Unity: editor tools, components, and scripts designed to speed up common workflows (navigation, skyboxes, missions, boards, ragdolls, modular building, and more).
Install / Use
/learn @marcoantap/NanoutilsREADME
Nanoutils
Nanoutils is a collection of small, focused utilities for Unity: editor tools, components, and scripts designed to speed up common workflows (navigation, skyboxes, missions, boards, ragdolls, modular building, and more).
Github: https://github.com/marcoantap/Nanoutils
Email: marcoantap@gmail.com
Reddit: u/cronocr
Made in Costa Rica
Installation
There is no special setup or installer.
- Open your Unity project folder.
- Copy all Nanoutils files into your project's
Assetsfolder (or copy the entireNanoutilsfolder intoAssets). - Let Unity import/compile the scripts.
- Open the relevant tools from the Unity menu under
Tools/Nanoutilsor add the components to GameObjects as needed.
Nanoutils works in regular Unity projects; no additional packages are required beyond the Unity standard libraries.
Included Tools
Editor Tools
- NuFind (
NuFind/Editor/NuFind.cs): Editor window to search, filter, and select scene objects or assets quickly. - NuMarks (
NuMarks/Editor/NuMarks.cs): Scene bookmark manager; lets you bookmark, organize, and jump to scene objects with one click. - NuAimFollower (
NuAimFollower/Editor/NuAimFollower.cs): Helper editor tooling for aim‑following behaviours. - NuAssetOptimizer (
NuAssetOptimizer/Editor/NuAssetOptimizer.cs): Editor utilities to analyze and optimize project assets. - NuAssetDetector (
NuAssetDetector/Editor/NuAssetDetector.cs): Finds and reports assets that match specific rules (missing references, unused, etc.). - NuMaterialReplacer (
NuMaterialReplacer/Editor/NuMaterialReplacer.cs): Batch‑replace materials on many objects at once. - NuFloatingHandle (
NuFloatingHandle/Editor/NuFloatingHandle.cs): Custom scene handles for positioning and editing objects. - NuPrefabInstances (
NuPrefabInstances/Editor/NuPrefabInstances.cs): Tools for inspecting and managing prefab instances in the scene. - NuPrefabSelector (
NuPrefabSelector/Editor/NuPrefabSelector.cs): Quick selector and spawner for prefabs during level building. - Shared NuEditorOfGameObject (
Shared/Editor/NuEditorOfGameObject.cs): Shared custom inspector helpers used across several tools.
Gameplay & Components
- NuPlayerController (
NuPlayerController/Components/NuPlayerController.cs): General‑purpose player controller component suitable for action or adventure prototypes. - NuBoards (
NuBoards/Scripts/NuBoard.cs,NuBoards/Scripts/NuBoardPiece.cs): Grid/board and piece logic for board‑style games. - NuDialogs (
NuDialogs/Scripts/NuDialogs.cs,NuDialogs/Scripts/NuDialog.cs): Simple dialogue system for conversations and dialog boxes. - NuModulars (
NuModulars/Components/NuModular.cs,NuModulars/Components/NuModularJoint.cs): Modular building system with joints for snapping and composing modular pieces. - NuCardBattles (
NuCardBattles/Scripts/NuCardBattle.cs,NuCardBattles/Scripts/NuCardBattlePlayer.cs): Lightweight card‑battle framework for turn‑based card games. - NuCustomization (
NuCustomization/Components/*.cs): Character and model customization tools (humanoids, parts, swappable meshes). - NuMissions (
NuMissions/Scripts/NuMission.cs,NuMissions/Components/NuMissions.cs): Mission/quest tracking framework for defining and running missions. - NuTrains (
NuTrains/Components/NuTrain.cs,NuTrains/Components/NuTrainJoint.cs): Simple train and wagon system using joints between cars. - NuRagdoll (
NuRagdoll/Components/NuRagdoll.cs): Ragdoll helper component for toggling ragdoll physics on characters. - NuLabel (
NuLabel/Components/NuLabel.cs): World‑space or screen‑space labeling component for annotating objects.
Visuals & Skyboxes
- NuSkyboxBlender (
NuSkyboxBlender/Components/NuSkyboxSlider.cs+ shader): Blend between multiple cubemap skyboxes with independent rotation, animated transitions, and automatic cycling. - Shared visual helpers (
Shared/Scripts/NuColors.cs,Shared/Scripts/NuMaterials.cs,Shared/Scripts/NuMeshes.cs): Utility methods for working with colors, materials, and meshes.
Shared Utilities & Components
- Math & data utilities (
Shared/Scripts/NuMath.cs,Shared/Scripts/NuData.cs,Shared/Scripts/NuStrings.cs,Shared/Scripts/NuObjects.cs,Shared/Scripts/NuPhysics.cs,Shared/Scripts/NuNode.cs): General‑purpose helper functions and data structures used by multiple Nanoutils tools. - Spawning & animation helpers (
Shared/Components/NuSpawn.cs,Shared/Components/NuCollectableAnimator.cs,Shared/Components/NuAnimator.cs,Shared/Components/NuItems.cs): Common gameplay building blocks for spawning objects and simple animations. - Transform & motion helpers (
Shared/Components/NuGlobalScale.cs,Shared/Components/NuRotation.cs,Shared/Components/NuOscillator.cs,Shared/Components/NuFreezeRotation.cs,Shared/Components/NuRootMotionOverride.cs): Components for scaling, rotating, oscillating, and constraining transforms at runtime. - Audio helpers (
Shared/Components/NuAudioPlayer.cs,Shared/Components/NuDictionaryOfAudioClip.cs): Lightweight utilities to manage and play audio clips. - UI & rendering helpers (
Shared/Components/NuCanvasToTexture.cs,Shared/Components/NuLineBetweenPanels.cs,Shared/Components/NuMirrorFlipCamera.cs,Shared/Components/NuLamp.cs,Shared/Components/NuProbe.cs): Utilities for UI lines, canvas‑to‑texture rendering, mirror cameras, lights, and probes. - Event & state helpers (
Shared/Components/NuEvent.cs,Shared/Components/NuSemaphore.cs,Shared/Components/NuVisible.cs,Shared/Components/NuContact.cs): Small components for events, visibility toggling, contacts, and simple state tracking. - Dictionary components (
Shared/Components/NuDictionaryOfTexture2D.cs,Shared/Components/NuDictionaryOfGameObject.cs): Serializable dictionary‑style components for mapping keys to textures or GameObjects. - Randomization helpers (
Shared/Components/NuRandomPitch.cs): Simple random pitch variation for audio playback.
How to Use
- Editor windows: Open from Unity menu entries under
Tools/Nanoutils(for example, NuMarks or NuFind). Dock them like any other editor window. - Runtime components: Add the component to a GameObject from the
Add Componentmenu, then configure its public fields in the Inspector. - Shared scripts: Use them from your own code by adding
usingstatements for the relevant namespaces and calling the provided static helpers.
Each sub‑folder in Nanoutils is self‑contained. You can remove tools you don't need by deleting their specific folders, as long as you keep any Shared scripts that those tools depend on.
