| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "vulkan_fixed_functions.h" |
| |
| VulkanFixedFunctions::VulkanFixedFunctions(const vk::Extent2D &extent) : extent_(extent) { |
| color_blend_attachment_info_.setColorWriteMask( |
| vk::ColorComponentFlagBits::eR | vk::ColorComponentFlagBits::eG | |
| vk::ColorComponentFlagBits::eB | vk::ColorComponentFlagBits::eA); |
| |
| color_blending_info_.attachmentCount = 1; |
| color_blending_info_.pAttachments = &color_blend_attachment_info_; |
| color_blending_info_.logicOp = vk::LogicOp::eCopy; |
| |
| input_assembly_info_.topology = vk::PrimitiveTopology::eTriangleList; |
| |
| multisample_info_.rasterizationSamples = vk::SampleCountFlagBits::e1; |
| |
| rasterizer_info_.cullMode = vk::CullModeFlagBits::eBack; |
| rasterizer_info_.frontFace = vk::FrontFace::eClockwise; |
| rasterizer_info_.lineWidth = 1.0f; |
| rasterizer_info_.polygonMode = vk::PolygonMode::eFill; |
| |
| scissor_.extent = extent_; |
| |
| viewport_.maxDepth = 1.0f; |
| viewport_.setHeight(static_cast<float>(extent_.height)); |
| viewport_.setWidth(static_cast<float>(extent_.width)); |
| |
| viewport_info_.scissorCount = 1; |
| viewport_info_.pScissors = &scissor_; |
| viewport_info_.viewportCount = 1; |
| viewport_info_.pViewports = &viewport_; |
| }; |