Example #1
0
        public override int OnCalculateSize(bool force)
        {
            _texIndices = 0;
            int size = 12;

            foreach (SRT0TextureNode n in Children)
            {
                if (n._indirect)
                {
                    _indIndices += 1 << n._textureIndex;
                }
                else
                {
                    _texIndices += 1 << n._textureIndex;
                }
                size += 4 + n.CalculateSize(true);
            }
            return(size);
        }
Example #2
0
        public override bool OnInitialize()
        {
            if ((_name == null) && (Header->_stringOffset != 0))
            {
                _name = Header->ResourceString;
            }

            _texIndices = (TextureIndices)(int)Header->_textureIndices;
            _indIndices = (IndirectTextureIndices)(int)Header->_indirectIndices;

            for (int i = 0; i < 8; i++)
            {
                _usageIndices[i] = ((Header->_textureIndices >> i) & 1);
            }

            for (int i = 0; i < 3; i++)
            {
                _usageIndices[i + 8] = ((Header->_indirectIndices >> i) & 1);
            }

            return((int)_texIndices > 0 || (int)_indIndices > 0);
        }
Example #3
0
 public override int OnCalculateSize(bool force)
 {
     _texIndices  = 0;
     _indIndices  = 0;
     _dataLength  = 0;
     _entryLength = 12;
     foreach (SRT0TextureNode n in Children)
     {
         if (n._indirect)
         {
             _indIndices |= (IndirectTextureIndices)(1 << n._textureIndex);
         }
         else
         {
             _texIndices |= (TextureIndices)(1 << n._textureIndex);
         }
         n.CalculateSize(true);
         _entryLength += 4 + n._entryLength;
         _dataLength  += n._dataLength;
     }
     return(_entryLength + _dataLength);
 }
 public override int OnCalculateSize(bool force)
 {
     _texIndices = 0;
     int size = 12;
     foreach (SRT0TextureNode n in Children)
     {
         if (n._indirect)
             _indIndices += 1 << n._textureIndex;
         else
             _texIndices += 1 << n._textureIndex;
         size += 4 + n.CalculateSize(true);
     }
     return size;
 }
        public override bool OnInitialize()
        {
            if ((_name == null) && (Header->_stringOffset != 0))
                _name = Header->ResourceString;

            _texIndices = (TextureIndices)(int)Header->_textureIndices;
            _indIndices = (IndirectTextureIndices)(int)Header->_indirectIndices;

            for (int i = 0; i < 8; i++)
                _usageIndices[i] = ((Header->_textureIndices >> i) & 1);

            for (int i = 0; i < 3; i++)
                _usageIndices[i + 8] = ((Header->_indirectIndices >> i) & 1);

            return (int)_texIndices > 0 || (int)_indIndices > 0;
        }