Some small optimizations and style issues for input state

Bug=dawn:107

Change-Id: I8ecfb39a2bff11b678bd8548ec0725ba061ef333
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/6081
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
This commit is contained in:
Yunchao He 2019-03-28 10:57:41 +00:00 committed by Commit Bot service account
parent d754fb2034
commit 494552b886
4 changed files with 5 additions and 18 deletions

View File

@ -396,13 +396,8 @@ namespace dawn_native { namespace d3d12 {
D3D12_INPUT_LAYOUT_DESC RenderPipeline::ComputeInputLayout(
std::array<D3D12_INPUT_ELEMENT_DESC, kMaxVertexAttributes>* inputElementDescriptors) {
const auto& attributesSetMask = GetAttributesSetMask();
unsigned int count = 0;
for (auto i : IterateBitSet(attributesSetMask)) {
if (!attributesSetMask[i]) {
continue;
}
for (auto i : IterateBitSet(GetAttributesSetMask())) {
D3D12_INPUT_ELEMENT_DESC& inputElementDescriptor = (*inputElementDescriptors)[count++];
const VertexAttributeDescriptor& attribute = GetAttribute(i);

View File

@ -365,11 +365,7 @@ namespace dawn_native { namespace metal {
MTLVertexDescriptor* RenderPipeline::MakeVertexDesc() {
MTLVertexDescriptor* mtlVertexDescriptor = [MTLVertexDescriptor new];
const auto& attributesSetMask = GetAttributesSetMask();
for (uint32_t i = 0; i < attributesSetMask.size(); ++i) {
if (!attributesSetMask[i]) {
continue;
}
for (uint32_t i : IterateBitSet(GetAttributesSetMask())) {
const VertexAttributeDescriptor& info = GetAttribute(i);
auto attribDesc = [MTLVertexAttributeDescriptor new];

View File

@ -197,12 +197,8 @@ namespace dawn_native { namespace opengl {
void RenderPipeline::CreateVAOForInputState(const InputStateDescriptor* inputState) {
glGenVertexArrays(1, &mVertexArrayObject);
glBindVertexArray(mVertexArrayObject);
auto& attributesSetMask = GetAttributesSetMask();
for (uint32_t location = 0; location < attributesSetMask.size(); ++location) {
if (!attributesSetMask[location]) {
continue;
}
auto attribute = GetAttribute(location);
for (uint32_t location : IterateBitSet(GetAttributesSetMask())) {
const auto& attribute = GetAttribute(location);
glEnableVertexAttribArray(location);
attributesUsingInput[attribute.inputSlot][location] = true;

View File

@ -66,7 +66,7 @@ class InputStateTest : public DawnTest {
};
dawn::RenderPipeline MakeTestPipeline(const dawn::InputStateDescriptor& inputState,
int multiplier,
std::vector<ShaderTestSpec> testSpec) {
const std::vector<ShaderTestSpec>& testSpec) {
std::ostringstream vs;
vs << "#version 450\n";