Exemplo n.º 1
0
        protected Scene3D(MasterRenderer3D renderer, Canvas canvas, World3D world, Space3D space) :
            base(canvas, world, space)
        {
            Debug.Assert(renderer != null, "3D scenes must be created with a non-null renderer.");

            Renderer = renderer;
        }
Exemplo n.º 2
0
        protected Game3D(string title, Dictionary <TLoopType, Type> loops, TLoopType loopType, int updateTick = 60,
                         int renderTick = 60) : base(title, loops, loopType, updateTick, renderTick)
        {
            renderer   = new MasterRenderer3D(camera);
            activeLoop = CreateLoop(loopType);
            mainTarget = new RenderTarget(Resolution.RenderWidth, Resolution.RenderHeight, RenderTargetFlags.Color |
                                          RenderTargetFlags.Depth);
            mainSprite      = new Sprite(mainTarget, Alignments.Left | Alignments.Top);
            mainSprite.Mods = SpriteModifiers.FlipVertical;

            MessageSystem.Subscribe(this, CoreMessageTypes.ResizeWindow, data =>
            {
                mainSprite.ScaleTo(Resolution.WindowWidth, Resolution.WindowHeight, false);
            });
        }
Exemplo n.º 3
0
        public ShadowMapSizeTester(Camera3D camera, MasterRenderer3D batch)
        {
            this.camera = camera;
            this.batch  = batch;

            localCamera                = new Camera3D();
            localCamera.Position       = vec3.UnitZ * 25 - new vec3(0, 8, 0);
            localCamera.Orientation    = quat.FromAxisAngle(0, vec3.UnitX);
            localCamera.OrthoWidth     = 64;
            localCamera.OrthoHeight    = 36;
            localCamera.NearPlane      = 1;
            localCamera.FarPlane       = 60;
            localCamera.IsOrthographic = true;

            renderTarget = new RenderTarget(300, 225, RenderTargetFlags.Color | RenderTargetFlags.Depth);
            primitives   = new PrimitiveRenderer3D(localCamera, 1000, 100);
            sprite       = new Sprite(renderTarget, null, Alignments.Left | Alignments.Top);
            sprite.Mods  = SpriteModifiers.FlipVertical;
        }