public FrameworkDebugOverlay(IFrameworkMessenger frameworkMessenger, IDebugAnalytics debugAnalytics, IFramesPerSecondMonitor fpsMonitor, ISystemComponents systemComponents, IDrawStageRenderer drawStageRenderer, IIdGenerator idGenerator, IDrawQueueFactory drawQueueFactory, IDrawQueueGroupFactory drawQueueGroupFactory, IQueueToBufferBlitter queueToBufferBlitter, IDrawStageBuffersFactory drawStageBuffersFactory, IDrawStageBatcherFactory drawStageBatcherFactory, IFontManager fontManager ) { _frameworkMessenger = frameworkMessenger; _debugAnalytics = debugAnalytics; _fpsMonitor = fpsMonitor; _systemComponents = systemComponents; _drawStageRenderer = drawStageRenderer; _idGenerator = idGenerator; _drawQueueFactory = drawQueueFactory; _drawQueueGroupFactory = drawQueueGroupFactory; _queueToBufferBlitter = queueToBufferBlitter; _drawStageBuffersFactory = drawStageBuffersFactory; _drawStageBatcherFactory = drawStageBatcherFactory; _fontManager = fontManager; Visible = false; ReInitialise(); }
public RenderStageModelFactory(IFrameworkMessenger frameworkMessenger, IStartupPropertiesCache startUpPropertiesCache, ISystemComponents veldridComponents, IVeldridWindowUpdater windowUpdater, IDrawQueueGroupFactory drawQueueGroupFactory, IDrawStageBatcherFactory drawStageBatcherFactory, IGpuSurfaceManager gpuSurfaceManager, IPipelineFactory pipelineFactory, IGaussianBlurWeightsAndOffsetsCache gaussianWeightsAndOffsetsCache, IQuadMeshBuilder quadMeshBuilder, IBlendStateConverter blendStateConverter, IShaderLoader shaderTools) { _frameworkMessenger = frameworkMessenger; _startUpPropertiesCache = startUpPropertiesCache; _systemComponents = veldridComponents; _windowUpdater = windowUpdater; _drawQueueGroupFactory = drawQueueGroupFactory; _drawStageBatcherFactory = drawStageBatcherFactory; _gpuSurfaceManager = gpuSurfaceManager; _pipelineFactory = pipelineFactory; _gaussianWeightsAndOffsetsCache = gaussianWeightsAndOffsetsCache; _quadMeshBuilder = quadMeshBuilder; _blendStateConverter = blendStateConverter; _shaderTools = shaderTools; }
public Graphics(IStartupPropertiesCache startUpPropertiesCache, ISystemComponents systemComponents, IRenderCommandQueue renderCommandQueue, ICommandProcessor commandProcessor, IRenderStageManager renderStageManager, IRenderStageVisitor renderStageVisitor, IGpuSurfaceManager surfaceManager, IViewportManager viewportManager, IFontManager fontManager, ICameraManager cameraManager, IFrameworkDebugOverlay debugOverlay) { _startUpPropertiesCache = startUpPropertiesCache; _systemComponents = systemComponents; _renderCommandQueue = renderCommandQueue; _commandProcessor = commandProcessor; _renderStageManager = renderStageManager; _renderStageVisitor = renderStageVisitor; _surfaceManager = surfaceManager; _viewportManager = viewportManager; _fontManager = fontManager; _cameraManager = cameraManager; _debugOverlay = debugOverlay; Initialise(); }
public GpuSurfaceManager(IApplicationAssembly applicationAssembly, IFontsAssembly fontsAssembly, ISurfaceAssembly surfaceAssembly, IFrameworkMessenger frameworkMessenger, IIdGenerator idGenerator, IStartupPropertiesCache startUpPropertiesCache, IGpuSurfaceCollection gpuSurfaceCollection, IImageSharpLoader imageSharpLoader, IGpuSurfaceFactory gpuSurfaceFactory, ISystemComponents components, IFileSystem fileSystem) { _startUpProperties = startUpPropertiesCache.User; _applicationAssembly = applicationAssembly; _fontsAssembly = fontsAssembly; _surfaceAssembly = surfaceAssembly; _frameworkMessenger = frameworkMessenger; _idGenerator = idGenerator; _surfaceCollection = gpuSurfaceCollection; _imageSharpLoader = imageSharpLoader; _gpuSurfaceFactory = gpuSurfaceFactory; _components = components; _fileSystem = fileSystem; Initalise(); }
public CameraModel2D(ISystemComponents components, uint initVirtualResolutionX, uint initVirtualResolutionY, float initialZoom, Vector2 initialWorldFocusPosition) { _components = components; _worldViewProjectionBuffer = components.Factory.CreateBuffer(new BufferDescription(128, BufferUsage.UniformBuffer | BufferUsage.Dynamic)); var resourceLayout = components.Factory.CreateResourceLayout( new ResourceLayoutDescription( new ResourceLayoutElementDescription("WorldViewProjection", ResourceKind.UniformBuffer, ShaderStages.Vertex) ) ); ResourceSet = components.Factory.CreateResourceSet( new ResourceSetDescription(resourceLayout, _worldViewProjectionBuffer) ); SetWorldFocusAndZoom(initialWorldFocusPosition, initialZoom); SetWorldRotationRadiansClockwiseFromPositiveY(0.0f); SetResolution(initVirtualResolutionX, initVirtualResolutionY); UpdateScreenMatrix(); UpdateWorldMatrix(); }
public void Render(CommandList cl, ISystemComponents systemComponents) { var framebuffer = systemComponents.Device.SwapchainFramebuffer; _drawStageModel.ClearDynamicDrawQueue(); CalculateAndDraw((int)framebuffer.Width, (int)framebuffer.Height); _drawStageModel.Process(); cl.SetFramebuffer(framebuffer); cl.ClearDepthStencil(1.0f); var surface = new GpuSurface { Type = GpuSurfaceType.SwapChainOutput, Framebuffer = framebuffer, Texture = null, TextureView = null, ResourceSet_TexMirror = null, ResourceSet_TexWrap = null }; _drawStageRenderer.Render(cl, _drawStageModel, surface, _camera); }
public BlurStageModel(IFrameworkMessenger frameworkMessenger, IStartupPropertiesCache startUpPropertiesCache, ISystemComponents systemComponents, IGpuSurfaceManager surfaceManager, IGaussianBlurWeightsAndOffsetsCache gaussianWeightsAndOffsetsCache, uint sampleSurfaceWidth, uint sampleSurfaceHeight) { _frameworkMessenger = frameworkMessenger; _startUpPropertiesCache = startUpPropertiesCache; _systemComponents = systemComponents; _surfaceManager = surfaceManager; _gaussianWeightsAndOffsetsCache = gaussianWeightsAndOffsetsCache; _sampleSurfaceWidth = sampleSurfaceWidth; _sampleSurfaceHeight = sampleSurfaceHeight; TexelShiftSize = new Vector2(1.0f / (1.0f * _sampleSurfaceWidth), 1.0f / (1.0f * _sampleSurfaceHeight)); CreateSurfaces(); _current = new BlurEffectConfiguration() { MixAmount = 0.0f, NumberOfBlurSamples = 4, ReSamplerType = ResizeSamplerType.NearestNeighbour }; _isTransitioning = false; }
public SurfaceCopyStageRenderer(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IGpuSurfaceManager gpuSurfaceManager) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _gpuSurfaceManager = gpuSurfaceManager; }
public CoordinateTransforms(ISystemComponents systemComponents, ICameraManager cameraManager, IViewportManager viewportManager) { _systemComponents = systemComponents; _cameraManager = cameraManager; _viewportManager = viewportManager; }
public GpuSurfaceFactory(IFrameworkMessenger frameworkMessenger, ISystemComponents components) { _frameworkMessenger = frameworkMessenger; _components = components; GenerateTextureSamplers(); GenerateCachedTextureLayout(); }
public Surfaces(IStartupPropertiesCache startUpPropertiesCache, IGpuSurfaceManager surfaceManager, ISystemComponents systemComponents) { _systemComponents = systemComponents; _startUpPropertiesCache = startUpPropertiesCache; _surfaceManager = surfaceManager; }
public void FloatTextureBuilder_CatchesNullInput_ThrowsException() { ISystemComponents components = Substitute.For <ISystemComponents>(); IFloatTextureBuilder builder = new FloatTextureBuilder(components); Assert.Throws <Yak2DException>(() => { builder.GenerateFloat32VeldridTextureFromPixelData(null, 100, 100); }); components.ReleaseResources(); }
public CustomVeldridStageRenderer(IFrameworkMessenger frameworkMessenger, IGpuSurfaceManager gpuSurfaceManager, ISystemComponents systemComponents ) { _frameworkMessenger = frameworkMessenger; _gpuSurfaceManager = gpuSurfaceManager; _systemComponents = systemComponents; Initialise(); }
public void FloatTextureBuilder_CatchesInvalidInput_ThrowsExceptionIfDataSetAndSizesDoNotMatch() { ISystemComponents components = Substitute.For <ISystemComponents>(); IFloatTextureBuilder builder = new FloatTextureBuilder(components); Assert.Throws <Yak2DException>(() => { builder.GenerateFloat32VeldridTextureFromPixelData(new float[100], 10, 9); }); components.ReleaseResources(); }
public CoreMessenger(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IResourceReinitialiser systemResourcesReinitialiser) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _systemResourcesReinitialiser = systemResourcesReinitialiser; _messageQueue = new Queue <CoreMessage>(MESSAGE_QUEUE_INITIAL_SIZE); }
public ShaderLoaderFunctions(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IApplicationAssembly applicationAssembly, IGraphicsAssembly graphicsAssembly, IFileSystem fileSystem) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _applicationAssembly = applicationAssembly; _graphicsAssembly = graphicsAssembly; _fileSystem = fileSystem; }
public CustomVeldridStageModel(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IVeldridWindowUpdater windowUpdater, CustomVeldridBase stage) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _windowUpdater = windowUpdater; CustomStage = stage; Initialise(); }
public MeshRenderStageModel(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IQuadMeshBuilder quadMeshBuilder) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _quadMeshBuilder = quadMeshBuilder; CreateLights(); GenerateInitialLightingConfigurations(); UpdatePropertiesBuffer(); UpdateLightsBuffer(); GenerateDefaultMesh(); }
public MeshRenderStageRenderer(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IViewportManager viewportManager) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _viewportManager = viewportManager; Initialise(); }
private Pipeline _pipeline; //rename internal version public DistortionRenderer(ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer, IViewportManager viewportManager) { _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _ndcQuadVertexBuffer = ndcQuadVertexBuffer; _viewportManager = viewportManager; Initialise(); }
public SinglePassGaussianBlurRenderer(ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer, IGaussianBlurWeightsAndOffsetsCache gaussianWeightsAndOffsetsCache) { _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _ndcQuadVertexBuffer = ndcQuadVertexBuffer; _gaussianWeightsAndOffsetsCache = gaussianWeightsAndOffsetsCache; Initialise(); }
public ShutdownManager(IFrameworkMessenger frameworkMessenger, ISystemComponents veldridComponents, IGraphicsShutdownManager graphicsShutdownManager, IGpuSurfaceManager gpuSurfaceManager, IFontManager fontManager, ISdl2EventProcessor sdl2EventProcessor ) { _frameworkMessenger = frameworkMessenger; _veldridComponents = veldridComponents; _graphicsShutdownManager = graphicsShutdownManager; _gpuSurfaceManager = gpuSurfaceManager; _fontManager = fontManager; _sdl2EventProcessor = sdl2EventProcessor; }
public StyleEffectsStageModel(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _random = new Random(); _staticTime = 0.0f; CreateBuffers(); CreateDefaultConfigurationAndFillBuffers(); SetMovieStatePropertiesToDefaultValues(); SetAllTransitionsToFalse(); //Not needed as above sets all time for transitions to 0 and that causes falses on all transitions }
public BloomSamplingRenderer(ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer, IDownSamplerWeightsAndOffsets downSamplerWeightsAndOffsets) { _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _ndcQuadVertexBuffer = ndcQuadVertexBuffer; _downSamplerValues = downSamplerWeightsAndOffsets; Initialise(); _sampleType = null; }
public DrawStageBuffers(ISystemComponents components, IStartupPropertiesCache startUpPropertiesCache) { _device = components.Device; _factory = components.Factory; var props = startUpPropertiesCache.Internal; var sizeVertex = props.DrawStageInitialSizeVertexBuffer < 3 ? 3 : props.DrawStageInitialSizeVertexBuffer; var remainder = props.DrawStageInitialSizeVertexBuffer % 3; var sizeIndex = remainder == 0 ? props.DrawStageInitialSizeIndexBuffer : props.DrawStageInitialSizeIndexBuffer + (3 - remainder); //I don't think this does what i expect (there are not 3 indices used per vertex?) CreateDeviceBuffersAndDataStagingArrays(sizeVertex, sizeIndex); SetMaxNumberOfLayersForDepthScaling(props.DrawStageInitialMaxNumberOfLayersForDepthScaling); }
public CameraModel3D(ISystemComponents components, Vector3 position, Vector3 lookAt, Vector3 up, float fovDegrees, float aspectRatio, float nearPlane, float farPlane) { _components = components; InitBuffers(); SetCameraProjection(fovDegrees, aspectRatio, nearPlane, farPlane, true); SetCameraView(position, lookAt, up); }
public ColourEffectsStageRenderer(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer, IViewportManager viewportManager) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _ndcQuadVertexBuffer = ndcQuadVertexBuffer; _viewportManager = viewportManager; Initialise(); }
private Pipeline _pipeline; //rename internal version public DistortionGradientShiftRenderer(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IGpuSurfaceManager surfaceManager, IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _surfaceManager = surfaceManager; _ndcQuadVertexBuffer = ndcQuadVertexBuffer; Initialise(); }
public DrawStageRenderer(IFrameworkMessenger frameworkMessenger, ISystemComponents components, IShaderLoader shaderLoader, IPipelineFactory pipelineFactory, IGpuSurfaceManager surfaceManager, IViewportManager viewportManager) { _frameworkMessenger = frameworkMessenger; _components = components; _shaderLoader = shaderLoader; _pipelineFactory = pipelineFactory; _surfaceManager = surfaceManager; _viewportManager = viewportManager; Initialise(); }
public SurfaceCopyStageModel(IFrameworkMessenger frameworkMessenger, ISystemComponents systemComponents, IGpuSurfaceManager surfaceManager, uint stagingTextureWidth, uint stagingTextureHeight, PixelFormat pixelFormat, Action <TextureData> callback) { _frameworkMessenger = frameworkMessenger; _systemComponents = systemComponents; _surfaceManager = surfaceManager; SetCallback(callback); SetPixelFormatAndCreateStagingTextureAndDataArray(stagingTextureWidth, stagingTextureHeight, TexturePixelFormatConverter.ConvertVeldridToYak(pixelFormat)); }