internal RwHAnimFrameExtensionNode(RwNodeFactory.RwNodeHeader header, BinaryReader reader)
            : base(header)
        {
            int version = reader.ReadInt32();

            if (version != VERSION)
            {
                throw new NotImplementedException("Unexpected version for RWHierarchyAnimPlugin");
            }

            NameId = reader.ReadInt32();
            int numNodes = reader.ReadInt32();

            if (numNodes == 0)
            {
                return;
            }

            RwHAnimHierarchyFlags flags  = (RwHAnimHierarchyFlags)reader.ReadUInt32();
            int keyFrameSize             = reader.ReadInt32();
            List <RwHAnimNodeInfo> nodes = new List <RwHAnimNodeInfo>(numNodes);

            for (int i = 0; i < numNodes; i++)
            {
                nodes.Add(new RwHAnimNodeInfo(reader));
            }

            Hierarchy = new RwHAnimHierarchy(flags, nodes);
        }
示例#2
0
 public RwHAnimHierarchy(RwHAnimHierarchyFlags flags, List <RwHAnimNodeInfo> nodes)
 {
     Flags = flags;
     Nodes = nodes;
 }