public void SetCommonParmeters(CommonShaderParameters commonShaderParameters, Matrix modelMatrix) { Effect.Parameters["View"].SetValue(commonShaderParameters.View); Effect.Parameters["Projection"].SetValue(commonShaderParameters.Projection); Effect.Parameters["EnvMapTransform"].SetValue((Matrix.CreateRotationY(commonShaderParameters.EnvRotate))); Effect.Parameters["World"].SetValue(modelMatrix); }
public void SetCommonParmeters(CommonShaderParameters commonShaderParameters, Matrix modelMatrix) { var typedEffect = (Effect as BasicEffect); typedEffect.Projection = commonShaderParameters.Projection; typedEffect.View = commonShaderParameters.View; typedEffect.World = modelMatrix; }
public void Draw(GraphicsDevice device, CommonShaderParameters parameters) { Shader.SetCommonParmeters(parameters, ModelMatrix); if (Faces != null) { Geometry.ApplyMeshPart(Shader, device, Faces); } else { Geometry.ApplyMesh(Shader, device); } }
public override void Draw(GameTime gameTime) { //GraphicsDevice.Clear(Color.CornflowerBlue); GraphicsDevice.DepthStencilState = DepthStencilState.Default; GraphicsDevice.RasterizerState = RasterizerState.CullNone; CommonShaderParameters commonShaderParameters = new CommonShaderParameters() { Projection = _camera.ProjectionMatrix, View = _camera.ViewMatrix, CameraPosition = _camera.Position, CameraLookAt = _camera.LookAt, EnvRotate = 0 }; foreach (var item in _renderItems[RenderBuckedId.Normal]) { item.Draw(GraphicsDevice, commonShaderParameters); } GraphicsDevice.RasterizerState = _wireframeState; foreach (var item in _renderItems[RenderBuckedId.Wireframe]) { item.Draw(GraphicsDevice, commonShaderParameters); } GraphicsDevice.RasterizerState = _selectedFaceState; foreach (var item in _renderItems[RenderBuckedId.Selection]) { item.Draw(GraphicsDevice, commonShaderParameters); } foreach (var item in _renderItems[RenderBuckedId.Line]) { item.Draw(GraphicsDevice, commonShaderParameters); } GraphicsDevice.DepthStencilState = DepthStencilState.Default; GraphicsDevice.RasterizerState = RasterizerState.CullNone; }
public void Render(GraphicsDevice device, CommonShaderParameters commonShaderParameters, Matrix ModelMatrix) { VertexPosition[] _originalVertecies = new VertexPosition[6]; var halfLength = _size / 2; _originalVertecies[0] = new VertexPosition(_pos + new Vector3(-halfLength, 0, 0)); _originalVertecies[1] = new VertexPosition(_pos + new Vector3(halfLength, 0, 0)); _originalVertecies[2] = new VertexPosition(_pos + new Vector3(0, -halfLength, 0)); _originalVertecies[3] = new VertexPosition(_pos + new Vector3(0, halfLength, 0)); _originalVertecies[4] = new VertexPosition(_pos + new Vector3(0, 0, -halfLength)); _originalVertecies[5] = new VertexPosition(_pos + new Vector3(0, 0, halfLength)); _shader.Parameters["View"].SetValue(commonShaderParameters.View); _shader.Parameters["Projection"].SetValue(commonShaderParameters.Projection); _shader.Parameters["World"].SetValue(ModelMatrix); foreach (var pass in _shader.CurrentTechnique.Passes) { pass.Apply(); device.DrawUserPrimitives(PrimitiveType.LineList, _originalVertecies.ToArray(), 0, _originalVertecies.Count() / 2); } }
public void Draw(GraphicsDevice device, CommonShaderParameters parameters) { Render(device, parameters, Matrix.Identity); }
public void Draw(GraphicsDevice device, CommonShaderParameters parameters) { VertexRenderer.Update(Node.Geometry, Node.ModelMatrix, Node.Orientation, parameters.CameraPosition, SelectedVertices); VertexRenderer.Draw(parameters.View, parameters.Projection, device, new Vector3(0, 1, 0)); }
public void Draw(GraphicsDevice device, CommonShaderParameters parameters) { LineMesh.Render(device, parameters, World); }