Ejemplo n.º 1
0
 public GameRenderer(IPlayerRenderer playerRenderer,
                     IWorldRenderer worldRenderer,
                     ILightMapRenderer lightMapRenderer,
                     IUpdateResolver <IEntity> updateResolver)
 {
     _playerRenderer   = playerRenderer;
     _worldRenderer    = worldRenderer;
     _lightMapRenderer = lightMapRenderer;
     _updateResolver   = updateResolver;
 }
Ejemplo n.º 2
0
        public WorldRendering(IWorldRenderer worldRenderer, SpriteBatch spriteBatch,
                              GraphicsDevice graphicsDevice, ContentManager contentManager, World world, Camera camera)
        {
            _worldRenderer  = worldRenderer;
            _spriteBatch    = spriteBatch;
            _graphicsDevice = graphicsDevice;
            _world          = world;
            _camera         = camera;

            _crosshairTexture = contentManager.Load <Texture2D>("crosshair");
        }
Ejemplo n.º 3
0
        public MainGame(
            ILogger logger,
            ClientStartParameters clientStartParameters,
            IOptions <GraphicsSettings> graphicsSettings,
            INetworkClient networkClient,
            IWindowProvider windowProvider,
            IWorldProvider worldProvider,
            IWorldRenderer worldRenderer,
            IContext context)
        {
            _logger = logger;
            _clientStartParameters = clientStartParameters;
            _graphicsSettings      = graphicsSettings;
            FNALoggerEXT.LogError  = message => _logger.Error("FNA: {@Message}", message);
            FNALoggerEXT.LogInfo   = message => _logger.Information("FNA: {@Message}", message);
            FNALoggerEXT.LogWarn   = message => _logger.Warning("FNA: {@Message}", message);

            _networkClient                = networkClient;
            _networkClient.Connected     += NetworkClientConnected;
            _networkClient.Disconnected  += NetworkClientDisconnected;
            _networkClient.ChunkReceived += NetworkClientChunkReceived;

            _windowProvider = windowProvider;
            _context        = context;
            _windowProvider.Load();
            _ftc           = new FrameTimeCalculator(this);
            _worldProvider = worldProvider;
            _worldRenderer = worldRenderer;

            Content.RootDirectory    = nameof(Content);
            Window.Title             = "UO-Studio";
            Window.AllowUserResizing = true;
            Activated   += WindowActivated;
            Deactivated += WindowDeactivated;

            _ = new GraphicsDeviceManager(this)
            {
                PreferredBackBufferWidth       = graphicsSettings.Value.ResolutionWidth,
                PreferredBackBufferHeight      = graphicsSettings.Value.ResolutionHeight,
                PreferMultiSampling            = graphicsSettings.Value.IsMultiSamplingEnabled,
                GraphicsProfile                = GraphicsProfile.HiDef,
                SynchronizeWithVerticalRetrace = graphicsSettings.Value.IsVsyncEnabled
            };

            _camera = new Camera(graphicsSettings.Value.ResolutionWidth, graphicsSettings.Value.ResolutionHeight)
            {
                Mode = CameraMode.Perspective
            };

            IsMouseVisible  = true;
            IsFixedTimeStep = false;
        }
Ejemplo n.º 4
0
 public RobotAutomaton(IWorld world, IWorldRenderer renderer)
 {
     _world           = world;
     _renderer        = renderer;
     _commandExecutor = new CommandExecutor(_world);
 }