@newkrok/three-utils - v2.0.1
    Preparing search index...

    @newkrok/three-utils - v2.0.1

    THREE Utils

    Run Tests NPM Version NPM Downloads Bundle Size

    Three.js-based utility library providing essential tools for THREE.js applications including assets loading, audio management, geometry utilities, and more.

    Asset Management - Streamlined loading and management of 3D models, textures, and other assets • Audio Integration - Easy-to-use audio management for 3D environments • Geometry Utilities - Helper functions for geometric calculations and operations • Object Utilities - Deep object manipulation, merging, and comparison tools • Time Utilities - Time formatting and management functions • Vector3 Utilities - Enhanced Vector3 operations and calculations • Callback Utilities - Advanced callback management and throttling • Dispose Utilities - Memory management and cleanup helpers • Token Utilities - Unique ID generation and token management • TypeScript Support - Full TypeScript definitions included • Modular Exports - Import only what you need for optimal bundle size

    🚀 Coming Soon - Interactive examples and live demonstrations

    npm install @newkrok/three-utils
    

    Include the script directly in your HTML:

    <script src="https://cdn.jsdelivr.net/npm/@newkrok/three-utils@latest/dist/three-utils.min.js"></script>
    <!-- or -->
    <script src="https://unpkg.com/@newkrok/three-utils@latest/dist/three-utils.min.js"></script>
    import { 
    CallbackUtils,
    DisposeUtils,
    ObjectUtils,
    TimeUtils,
    TokenUtils,
    Vector3Utils,
    GeomUtils
    } from '@newkrok/three-utils';

    // Generate a unique ID
    const uniqueId = TokenUtils.getUniqueId();

    // Format time display
    const formattedTime = TimeUtils.formatTime(65432); // "01:05"

    // Deep merge objects
    const merged = ObjectUtils.deepMerge(obj1, obj2);

    // Vector3 operations
    const absVector = Vector3Utils.absVector3(someVector);
    // Import specific modules only
    import { CallbackUtils } from '@newkrok/three-utils';
    import { GeomUtils } from '@newkrok/three-utils';

    // Use callback throttling
    CallbackUtils.callWithReducer('myKey', myFunction, 16); // ~60fps

    // Check if point is in triangle
    const isInside = GeomUtils.isPointInATriangle(point, triangle);
    import { Assets } from '@newkrok/three-utils/assets';

    // Load 3D models, textures, and other assets
    // (See API documentation for detailed usage)
    import { Audio } from '@newkrok/three-utils/audio';

    // Manage 3D audio in your Three.js scenes
    // (See API documentation for detailed usage)

    This utility library is actively used in various Three.js projects:

    Automatically generated TypeDoc: https://newkrok.github.io/three-utils/

    Contributions are welcome! Please feel free to submit a Pull Request.

    MIT © Istvan Krisztian Somoracz