示例#1
0
        private void Start()
        {
            // instantiate input manager, and register unity input
            var inputManager = new InputManager();

            inputManager.RegisterInputSource(InputSource);

            // instantiate local input aggregator and register the input manager
            var localInputAggregator = new LocalInputAggregator();

            localInputAggregator.InputManager = inputManager;
            _inputAggregator = localInputAggregator;

            _sim = new Sim.Simulation();

            _sim.AddObjectFactory(ObjectFactory);

            _sim.ScheduleEvent(new CreateObject
            {
                Obj = new Player()
            });
            _sim.UpdateTick();

            ReCaluclateFrameInterval();
            _remainingDelta = _targetInterval;
        }
示例#2
0
        public void ObjectCreated(Sim.Simulation sim, Object obj)
        {
            var player = obj as Player;

            if (player != null)
            {
                var go = Instantiate(PlayerPrefab, RootGameObject.transform);
                go.transform.SetPositionAndRotation(Vector3.zero, Quaternion.identity);

                var observer = go.GetComponent <PlayerObserver>();
                if (observer != null)
                {
                    obj.Subscribe(observer);
                }

                return;
            }
            throw new NotImplementedException();
        }