| 225 | } |
| 226 | |
| 227 | void MyRenderer::Render(const Gs::Matrix4f& wvpMatrix) |
| 228 | { |
| 229 | // Update constant buffer |
| 230 | cmdBuffer->Begin(); |
| 231 | { |
| 232 | cmdBuffer->UpdateBuffer(*constantBuffer, 0, &wvpMatrix, sizeof(wvpMatrix)); |
| 233 | |
| 234 | cmdBuffer->SetVertexBuffer(*vertexBuffer); |
| 235 | cmdBuffer->SetIndexBuffer(*indexBuffer); |
| 236 | |
| 237 | cmdBuffer->BeginRenderPass(*context); |
| 238 | { |
| 239 | // Clear color buffer |
| 240 | cmdBuffer->SetClearColor({ 0.1f, 0.1f, 0.4f }); |
| 241 | cmdBuffer->Clear(LLGL::ClearFlags::ColorDepth); |
| 242 | |
| 243 | // Set viewport |
| 244 | cmdBuffer->SetViewport(viewport); |
| 245 | |
| 246 | // Set graphics pipeline and vertex buffer |
| 247 | cmdBuffer->SetPipelineState(*pipeline); |
| 248 | cmdBuffer->SetResourceHeap(*resourceHeap); |
| 249 | |
| 250 | // Draw triangulated cube |
| 251 | cmdBuffer->DrawIndexed(36, 0); |
| 252 | } |
| 253 | cmdBuffer->EndRenderPass(); |
| 254 | } |
| 255 | cmdBuffer->End(); |
| 256 | cmdQueue->Submit(*cmdBuffer); |
| 257 | |
| 258 | // Present the result on the screen |
| 259 | context->Present(); |
| 260 | } |
| 261 | |
| 262 | Gs::Matrix4f MyRenderer::BuildPerspectiveProjection(float aspectRatio, float nearPlane, float farPlane, float fieldOfView) const |
| 263 | { |
no test coverage detected