Esempio n. 1
0
        public static void Simple()
        {
            var simpleDemo = new SimpleDemo();

            simpleDemo.Initialize(new DemoRenderer.Camera(1, 1, 1, 1));
            for (int i = 0; i < 128; ++i)
            {
                simpleDemo.Update(null, 1 / 60f);
            }
            double    time                = 0;
            const int frameCount          = 1000;
            int       largestOverlapCount = 0;

            for (int i = 0; i < frameCount; ++i)
            {
                CacheBlaster.Blast();
                var start = Stopwatch.GetTimestamp();
                simpleDemo.Update(null, 1 / 60f);
                var end = Stopwatch.GetTimestamp();
                time += (end - start) / (double)Stopwatch.Frequency;
                var overlapCount = simpleDemo.Simulation.NarrowPhase.PairCache.Mapping.Count;
                if (overlapCount > largestOverlapCount)
                {
                    largestOverlapCount = overlapCount;
                }
                //Console.WriteLine($"FRAME {i}, time (us): {1e6 * simpleDemo.Simulation.Timings[simpleDemo.Simulation.NarrowPhase]}");
                Console.WriteLine($"FRAME {i}");
            }
            Console.WriteLine($"Time per frame (us): {1e6 * time / frameCount}, maximum overlap count: {largestOverlapCount}");
            simpleDemo.Dispose();
        }
 // Disable Screen Rotation on that screen
 void Awake()
 {
     Screen.autorotateToPortrait           = false;
     Screen.autorotateToPortraitUpsideDown = false;
     instance = this;
 }
 private void Start()
 {
     InitCateBtn();
     simpleDemo = GameObject.Find("Main Camera").GetComponent <SimpleDemo>();
 }
        public override void UpdateDatabaseAfterUpdateSchema()
        {
            base.UpdateDatabaseAfterUpdateSchema();
            ImmediatePostDataDemo johnNilsen = ObjectSpace.FindObject <ImmediatePostDataDemo>(CriteriaOperator.Parse("LastName == ?", "Nilsen"));

            if (johnNilsen == null)
            {
                johnNilsen                 = ObjectSpace.CreateObject <ImmediatePostDataDemo>();
                johnNilsen.LastName        = "Nilsen";
                johnNilsen.FirstName       = "John";
                johnNilsen.BooleanProperty = true;
                johnNilsen.NumericProperty = 12;
            }
            ImmediatePostDataDemo maryTellitson = ObjectSpace.FindObject <ImmediatePostDataDemo>(CriteriaOperator.Parse("LastName == ?", "Tellitson"));

            if (maryTellitson == null)
            {
                maryTellitson                 = ObjectSpace.CreateObject <ImmediatePostDataDemo>();
                maryTellitson.LastName        = "Tellitson";
                maryTellitson.FirstName       = "Mary";
                maryTellitson.BooleanProperty = false;
                maryTellitson.NumericProperty = 15;
            }
            SimpleDemo simpleDemoObj = ObjectSpace.FindObject <SimpleDemo>(CriteriaOperator.Parse("Name == ?", "SimpleDemoObject1"));

            if (simpleDemoObj == null)
            {
                for (int i = 1; i < 5; i++)
                {
                    SimpleData simpleData = ObjectSpace.CreateObject <SimpleData>();
                    simpleData.Name    = $"SimpleData{i}";
                    simpleDemoObj      = ObjectSpace.CreateObject <SimpleDemo>();
                    simpleDemoObj.Name = $"SimpleDemoObject{i}";
                    simpleDemoObj.Data = simpleData;
                }
            }
            BusinessObjects.Country c = ObjectSpace.FindObject <BusinessObjects.Country>(CriteriaOperator.Parse("Name == ?", "France"));
            if (c == null)
            {
                c      = ObjectSpace.CreateObject <BusinessObjects.Country>();
                c.Name = "France";
                City city = ObjectSpace.CreateObject <City>();
                city.Name = "Paris";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Lyon";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Marseille";
                c.Cities.Add(city);

                c         = ObjectSpace.CreateObject <BusinessObjects.Country>();
                c.Name    = "USA";
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "New York";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Los Angeles";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Seattle";
                c.Cities.Add(city);

                CascadeLookupBatch cascadeLookup = ObjectSpace.CreateObject <CascadeLookupBatch>();
                cascadeLookup.Name    = "Route 1";
                cascadeLookup.Country = c;
                cascadeLookup.City    = city;

                c         = ObjectSpace.CreateObject <BusinessObjects.Country>();
                c.Name    = "Italy";
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Rome";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Milan";
                c.Cities.Add(city);
                city      = ObjectSpace.CreateObject <City>();
                city.Name = "Venice";
                c.Cities.Add(city);

                cascadeLookup         = ObjectSpace.CreateObject <CascadeLookupBatch>();
                cascadeLookup.Name    = "Route 2";
                cascadeLookup.Country = c;
                cascadeLookup.City    = city;
            }
            ObjectSpace.CommitChanges();

            LargeDataDemo largeDataDemoObject = ObjectSpace.FindObject <LargeDataDemo>(CriteriaOperator.Parse("Name == ?", "LargeDataDemoObject"));

            if (largeDataDemoObject == null)
            {
                for (int i = 1; i < 100000; i++)
                {
                    LargeData obj1 = ObjectSpace.CreateObject <LargeData>();
                    obj1.Name = "LargeData" + i;
                    if (i == 150)
                    {
                        LargeDataDemo largeDataDemo = ObjectSpace.CreateObject <LargeDataDemo>();
                        largeDataDemo.LargeData = obj1;
                        largeDataDemo.Name      = "LargeDataDemoObject";
                    }
                    if (i % 1000 == 0)
                    {
                        ObjectSpace.CommitChanges();
                    }
                }
            }
            ObjectSpace.CommitChanges();
        }