Example #1
0
        public void Read(FileReader reader)
        {
            reader.ReadSignature(4, "GMX2");
            reader.SetByteOrder(true);
            HeaderSize = reader.ReadUInt32();

            while (reader.Position < reader.BaseStream.Length)
            {
                long pos = reader.Position;

                string Magic       = reader.ReadString(4);
                uint   SectionSize = reader.ReadUInt32();

                reader.SeekBegin(pos);
                switch (Magic)
                {
                case "PADX":
                    PADX padding = new PADX();
                    padding.Read(reader);
                    break;

                case "INDX":
                    INDX indexGrp = new INDX();
                    indexGrp.Read(reader, GetLastMesh());
                    GetLastMesh().IndexGroup = indexGrp;
                    break;

                case "VMAP":
                    VMAP vmap = new VMAP();
                    vmap.Read(reader);
                    GetLastMesh().VMapGroup = vmap;
                    break;

                case "MESH":
                    MESH mesh = new MESH();
                    mesh.Read(reader);
                    Meshes.Add(mesh);

                    Console.WriteLine($"MESH {mesh.VertexCount} {mesh.FaceCount} {mesh.SkinningFlags} {mesh.VertexSize}");
                    break;

                case "VERT":
                    VERT vert = new VERT();
                    vert.Read(reader, GetLastMesh());
                    GetLastMesh().VertexGroup = vert;
                    break;

                case "ENDX":
                    reader.ReadSignature(4, "ENDX");
                    uint EndSectionSize = reader.ReadUInt32();
                    break;

                default:
                    throw new Exception("Unknown section! " + Magic);
                }

                reader.SeekBegin(pos + SectionSize);
            }
            Console.WriteLine("MESHES " + Meshes.Count);
        }
Example #2
0
        VMAP IOutboundService.GetVMAP(int id)
        {
            ImpulseApp.Models.AdModels.SimpleAdModel adGBO = db.GetAdById(id);


            VMAP                vmap                 = new VMAP();
            VMAPAdBreak         vmapAd               = new VMAPAdBreak();
            VMAPAdBreakAdSource adSource             = new VMAPAdBreakAdSource();
            List <VMAPAdBreakAdSourceVASTAdData> ads = new List <VMAPAdBreakAdSourceVASTAdData>();

            foreach (var state in adGBO.AdStates)
            {
                VMAPAdBreakAdSourceVASTAdData vast = new VMAPAdBreakAdSourceVASTAdData();
                vast.VAST = GetVastFromAdState(state);
                ads.Add(vast);
            }
            adSource.VASTAdData       = ads.ToArray();
            adSource.allowMultipleAds = true;
            adSource.followRedirects  = true;
            vmapAd.AdSource           = new VMAPAdBreakAdSource[1];
            vmapAd.AdSource[0]        = adSource;
            vmap.AdBreak    = new VMAPAdBreak[1];
            vmap.AdBreak[0] = vmapAd;
            return(vmap);
        }
Example #3
0
        public static VMAP GetVMAP(ImpulseApp.Models.AdModels.SimpleAdModel adGBO)
        {
            VMAP                vmap     = new VMAP();
            VMAPAdBreak         vmapAd   = new VMAPAdBreak();
            VMAPAdBreakAdSource adSource = new VMAPAdBreakAdSource();
            //vmapAd.TrackingEvents = null;
            List <VMAPAdBreakAdSourceVASTAdData> ads = new List <VMAPAdBreakAdSourceVASTAdData>();

            foreach (var state in adGBO.AdStates)
            {
                VMAPAdBreakAdSourceVASTAdData vast = new VMAPAdBreakAdSourceVASTAdData();
                vast.VAST = GetVastFromAdState(state);
                ads.Add(vast);
            }
            adSource.VASTAdData       = ads.ToArray();
            adSource.allowMultipleAds = true;
            adSource.followRedirects  = true;
            vmapAd.AdSource           = new VMAPAdBreakAdSource[1];
            vmapAd.AdSource[0]        = adSource;
            vmap.AdBreak    = new VMAPAdBreak[1];
            vmap.AdBreak[0] = vmapAd;
            return(vmap);
        }
Example #4
0
 public void Render(int centerTileX, int centerTileY)
 {
     MAP.Render(centerTileX, centerTileY);
     VMAP.Render(centerTileX, centerTileY);
 }
Example #5
0
 public void LoadTile(int tileX, int tileY)
 {
     MAP.LoadTile(tileX, tileY);
     VMAP.LoadTile(tileX, tileY);
 }