コード例 #1
0
        public void Init()
        {
            ConfigureLogger();

            Logger.Info("Starting Up Watertight Engine!  Game {0}, Version {1}", Name, Version);

            //Init the Filesystem
            System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor(typeof(FileSystem).TypeHandle);

            //TODO: Configure Engine from a config file

            TickFunction EngineTick = new TickFunction
            {
                TickFunc     = Tick,
                TickPriority = TickFunction.HighPriority,
                CanTick      = true,
            };

            GameThreadTickManager.AddTick(EngineTick);

            Renderer = (Renderer)Activator.CreateInstance(RendererType);
            //TODO: Thread This.  For now, we just tick it
            GameThreadTickManager.AddTick(Renderer.RenderTickFunction);

            MaxFPS = 250;

            foreach (ResourcePtr resourcePtr in PreloadResources)
            {
                Logger.Info("Preloading Asset: {0}", resourcePtr.ToString());
                resourcePtr.Load();
            }

            OnInit();

            Logger.Info("Finished Loading Engine.  Ready to Begin");
        }
コード例 #2
0
 protected internal void AddTickfunc(TickFunction TickFunc)
 {
     GameThreadTickManager.AddTick(TickFunc);
 }