public TrackedDeviceBufferManager(Device device) { objectSpaceToWorldTransformBufferManagers = new CoordinateNormalMatrixPairConstantBufferManager[MaxDeviceCount]; for (int i = 0; i < MaxDeviceCount; ++i) { objectSpaceToWorldTransformBufferManagers[i] = new CoordinateNormalMatrixPairConstantBufferManager(device); } }
public FigureGroup(Device device, FigureFacade parentFigure, FigureFacade[] childFigures) { this.parentFigure = parentFigure; this.childFigures = childFigures; this.modelToWorldTransform = new CoordinateNormalMatrixPairConstantBufferManager(device); this.parentDeltas = new InOutStructuredBufferManager <Vector3>(device, parentFigure.VertexCount); parentFigure.RegisterChildren(childFigures.ToList()); }
public RenderModelRenderer(Device device, ShaderCache shaderCache, TrackedDeviceBufferManager trackedDeviceBufferManager) { this.trackedDeviceBufferManager = trackedDeviceBufferManager; this.cache = new RenderModelCache(device, new BasicSpecularMaterial.Factory(device, shaderCache)); var vertexShaderWithBytecode = shaderCache.GetVertexShader <RenderModelRenderer>("game/render-models/RenderModelVertex"); vertexShader = vertexShaderWithBytecode; inputLayout = new InputLayout(device, vertexShaderWithBytecode.Bytecode, InputElements); this.componentSpaceToObjectTransformBufferManager = new CoordinateNormalMatrixPairConstantBufferManager(device); }
public MenuRenderer(Device device, ShaderCache shaderCache, TrackedDeviceBufferManager trackedDeviceBufferManager, ControllerManager controllerManager, ShaderResourceView menuViewTexture) { this.trackedDeviceBufferManager = trackedDeviceBufferManager; this.controllerManager = controllerManager; this.menuViewTexture = menuViewTexture; vertexShader = shaderCache.GetVertexShader <MenuRenderer>("menu/renderer/Menu"); companionWindowVertexShader = shaderCache.GetVertexShader <MenuRenderer>("menu/renderer/CompanionWindowMenu"); pixelShader = shaderCache.GetPixelShader <MenuRenderer>("menu/renderer/Menu"); menuToControllerSpaceTransform = new CoordinateNormalMatrixPairConstantBufferManager(device); Matrix menuToControllerTransform = Matrix.Scaling(0.10f) * Matrix.Translation(0, 0, 0f) * Matrix.RotationX(MathUtil.PiOverTwo); menuToControllerSpaceTransform.Update(device.ImmediateContext, menuToControllerTransform); }
public MeshRenderer(Device device, ShaderCache shaderCache, Matrix transform, TriMesh mesh) { this.meshBuffers = new MeshBuffers(device, mesh); this.modelToWorldTransform = new CoordinateNormalMatrixPairConstantBufferManager(device); var vertexShaderAndBytecode = shaderCache.GetVertexShader <MeshRenderer>("game/MeshVertex"); this.vertexShader = vertexShaderAndBytecode; this.inputLayout = new InputLayout(device, vertexShaderAndBytecode.Bytecode, MeshBuffers.InputElements); using (var texture = MonochromaticTextures.Make(device, Color.LightGray)) { var textureView = new ShaderResourceView(device, texture); this.material = new BasicSpecularMaterial(device, shaderCache, textureView); } this.transform = transform; }
public Backdrop(Device device, ShaderCache shaderCache) { float size = 5f; Matrix transform = Matrix.Translation(0, size / 2, 0); QuadMesh mesh = GeometricPrimitiveFactory.MakeCube(size).Flip(); this.meshBuffers = new MeshBuffers(device, mesh.AsTriMesh()); this.modelToWorldTransform = new CoordinateNormalMatrixPairConstantBufferManager(device); var vertexShaderAndBytecode = shaderCache.GetVertexShader <Backdrop>("backdrop/Backdrop"); this.vertexShader = vertexShaderAndBytecode; this.inputLayout = new InputLayout(device, vertexShaderAndBytecode.Bytecode, MeshBuffers.InputElements); this.pixelShader = shaderCache.GetPixelShader <Backdrop>("backdrop/Backdrop"); this.transform = transform; }