Esempio n. 1
0
    //-----------------------------------------------------------------------------------
    void BoneMemoryManager::nodeCreated( BoneTransform &outTransform, size_t depth )
    {
        growToDepth( depth );

        BoneArrayMemoryManager& mgr = mMemoryManagers[depth];
        mgr.createNewNode( outTransform );
    }
    //-----------------------------------------------------------------------------------
    void ObjectMemoryManager::objectCreated( ObjectData &outObjectData, size_t renderQueue )
    {
        growToDepth( renderQueue );

        ObjectDataArrayMemoryManager& mgr = mMemoryManagers[renderQueue];
        mgr.createNewNode( outObjectData );

        ++mTotalObjects;
    }
Esempio n. 3
0
    //-----------------------------------------------------------------------------------
    void BoneMemoryManager::nodeMoved( BoneTransform &inOutTransform, size_t oldDepth, size_t newDepth )
    {
        growToDepth( newDepth );

        BoneTransform tmp;
        mMemoryManagers[newDepth].createNewNode( tmp );

        tmp.copy( inOutTransform );

        BoneArrayMemoryManager &mgr = mMemoryManagers[oldDepth];
        mgr.destroyNode( inOutTransform );

        inOutTransform = tmp;
    }
Esempio n. 4
0
    //-----------------------------------------------------------------------------------
    void BoneMemoryManager::nodeAttached( BoneTransform &outTransform, size_t depth )
    {
        growToDepth( depth );

        BoneTransform tmp;
        mMemoryManagers[depth].createNewNode( tmp );

        tmp.copy( outTransform );

        BoneArrayMemoryManager &mgr = mMemoryManagers[0];
        mgr.destroyNode( outTransform );

        outTransform = tmp;
    }
    //-----------------------------------------------------------------------------------
    void ObjectMemoryManager::objectMoved( ObjectData &inOutObjectData, size_t oldRenderQueue,
                                            size_t newRenderQueue )
    {
        growToDepth( newRenderQueue );

        ObjectData tmp;
        mMemoryManagers[newRenderQueue].createNewNode( tmp );

        tmp.copy( inOutObjectData );

        ObjectDataArrayMemoryManager &mgr = mMemoryManagers[oldRenderQueue];
        mgr.destroyNode( inOutObjectData );

        inOutObjectData = tmp;
    }