示例#1
0
 public LightSystem(IWorld world, Renderer3Dv2 renderer)
     : base(world, world.EntityFilter().With <Light>().With <Transform3D>())
 {
     _renderer  = renderer;
     _light     = Map <Light>();
     _transform = Map <Transform3D>();
     // TODO: sort based on distance from the current camera
 }
示例#2
0
 public SpriteRenderSystem(IWorld world, ISpriteBatchRenderer spriteBatchRenderer) :
     base(world, world.EntityFilter().With <Transform2D>().With <Sprite>().With <Texture2D>())
 {
     _spriteBatchRenderer = spriteBatchRenderer;
     _transform           = Map <Transform2D>();
     _sprite  = Map <Sprite>();
     _texture = Map <Texture2D>();
 }
示例#3
0
 public UITextRenderSystem(IWorld world, ISpriteBatchRenderer renderer)
     : base(world, world.EntityFilter().With <TransformRectComponent>().With <FontComponent>().With <UITextComponent>())
 {
     _renderer  = renderer;
     _transform = Map <TransformRectComponent>();
     _font      = Map <FontComponent>();
     _text      = Map <UITextComponent>();
 }
示例#4
0
 public Camera3DSystem(IWorld world, Renderer3Dv2 renderer, RendererDebug3Dv3 rendererDebug)
     : base(world, world.EntityFilter().With <Camera>().With <Transform3D>())
 {
     _renderer      = renderer;
     _rendererDebug = rendererDebug;
     _camera        = Map <Camera>();
     _transform     = Map <Transform3D>();
     _relationShip  = Relationship();
 }
示例#5
0
 public Model3DRenderSystem(IWorld world, IRenderQueue renderQueue, Renderer3Dv2 renderer)
     : base(world, world.EntityFilter().With <Transform3D>().With <Model3D>().With <Texture2D>()) // TODO: add support for materials
 {
     _renderQueue = renderQueue;
     _renderer    = renderer;
     _model       = Map <Model3D>();
     _transform   = Map <Transform3D>();
     _texture     = Map <Texture2D>();
 }
示例#6
0
 public MovementSystem3D(IWorld world)
     : base(world, world.EntityFilter().With <Transform3D>().With <Velocity>())
 {
     _transform = Map <Transform3D>();
     _velocity  = Map <Velocity>();
 }
示例#7
0
 public EntitySerializer(IWorld world, Publisher publisher)
 {
     _publisher = publisher;
     _entities  = world.EntityFilter().WithAllEntities();
 }
示例#8
0
 // TODO: Add support for sorting the entities based on parent count
 public Transform2DEntitySystem(IWorld world)
     : base(world, world.EntityFilter().With <Transform2D>())
 {
     _transform    = Map <Transform2D>();
     _relationship = Relationship();
 }
示例#9
0
 public UIButtonSystem(IWorld world, IInputManager inputManager) : base(world, world.EntityFilter().With <Button>().With <TransformRectComponent>())
 {
     _inputManager = inputManager;
     _transform    = Map <TransformRectComponent>();
     _button       = Map <Button>();
 }
示例#10
0
 public BoundingBoxSystem(IWorld world, RendererDebug3Dv3 renderer, IInputManager inputManager) : base(world, world.EntityFilter().With <Transform3D>().With <Model3D>())
 {
     _renderer     = renderer;
     _inputManager = inputManager;
     _transform    = Map <Transform3D>();
     _model        = Map <Model3D>();
 }
示例#11
0
 public TransformRectSystem(IWorld world, IWindow window) : base(world, world.EntityFilter().With <TransformRectComponent>())
 {
     _window       = window;
     _transform    = Map <TransformRectComponent>();
     _relationship = Relationship();
 }
示例#12
0
        public SoundTestSystem(IWorld world, ISoundSystem soundSystem, IInputManager inputManager) : base(world, world.EntityFilter(10).With <SoundClipComponent>())
        {
            _keyboard = inputManager.Keyboard;
            _sound    = Map <SoundClipComponent>();

            _soundEffects = soundSystem.GetPlayer("SoundEffects");
            _music        = soundSystem.GetPlayer("Music");

            _volume = _soundEffects.GetVolume();
        }