Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit ae979a8

Browse files
authored
[Impeller] More sundry fixes to the Vulkan backend. (#40244)
[Impeller] More sundry fixes to the Vulkan backend.
1 parent 57f7120 commit ae979a8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2539
-1423
lines changed

ci/licenses_golden/licenses_flutter

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1409,10 +1409,18 @@ ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_buffer_vk.cc +
14091409
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_buffer_vk.h + ../../../flutter/LICENSE
14101410
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_encoder_vk.cc + ../../../flutter/LICENSE
14111411
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_encoder_vk.h + ../../../flutter/LICENSE
1412+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_pool_vk.cc + ../../../flutter/LICENSE
1413+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/command_pool_vk.h + ../../../flutter/LICENSE
14121414
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/context_vk.cc + ../../../flutter/LICENSE
14131415
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/context_vk.h + ../../../flutter/LICENSE
1416+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/debug_report_vk.cc + ../../../flutter/LICENSE
1417+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/debug_report_vk.h + ../../../flutter/LICENSE
1418+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/descriptor_pool_vk.cc + ../../../flutter/LICENSE
1419+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/descriptor_pool_vk.h + ../../../flutter/LICENSE
14141420
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/device_buffer_vk.cc + ../../../flutter/LICENSE
14151421
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/device_buffer_vk.h + ../../../flutter/LICENSE
1422+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/fence_waiter_vk.cc + ../../../flutter/LICENSE
1423+
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/fence_waiter_vk.h + ../../../flutter/LICENSE
14161424
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/formats_vk.cc + ../../../flutter/LICENSE
14171425
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/formats_vk.h + ../../../flutter/LICENSE
14181426
ORIGIN: ../../../flutter/impeller/renderer/backend/vulkan/pipeline_library_vk.cc + ../../../flutter/LICENSE
@@ -1454,6 +1462,8 @@ ORIGIN: ../../../flutter/impeller/renderer/buffer.cc + ../../../flutter/LICENSE
14541462
ORIGIN: ../../../flutter/impeller/renderer/buffer.h + ../../../flutter/LICENSE
14551463
ORIGIN: ../../../flutter/impeller/renderer/buffer_view.cc + ../../../flutter/LICENSE
14561464
ORIGIN: ../../../flutter/impeller/renderer/buffer_view.h + ../../../flutter/LICENSE
1465+
ORIGIN: ../../../flutter/impeller/renderer/capabilities.cc + ../../../flutter/LICENSE
1466+
ORIGIN: ../../../flutter/impeller/renderer/capabilities.h + ../../../flutter/LICENSE
14571467
ORIGIN: ../../../flutter/impeller/renderer/command.cc + ../../../flutter/LICENSE
14581468
ORIGIN: ../../../flutter/impeller/renderer/command.h + ../../../flutter/LICENSE
14591469
ORIGIN: ../../../flutter/impeller/renderer/command_buffer.cc + ../../../flutter/LICENSE
@@ -1468,13 +1478,10 @@ ORIGIN: ../../../flutter/impeller/renderer/compute_pipeline_descriptor.cc + ../.
14681478
ORIGIN: ../../../flutter/impeller/renderer/compute_pipeline_descriptor.h + ../../../flutter/LICENSE
14691479
ORIGIN: ../../../flutter/impeller/renderer/context.cc + ../../../flutter/LICENSE
14701480
ORIGIN: ../../../flutter/impeller/renderer/context.h + ../../../flutter/LICENSE
1471-
ORIGIN: ../../../flutter/impeller/renderer/descriptor_set_layout.h + ../../../flutter/LICENSE
14721481
ORIGIN: ../../../flutter/impeller/renderer/device_buffer.cc + ../../../flutter/LICENSE
14731482
ORIGIN: ../../../flutter/impeller/renderer/device_buffer.h + ../../../flutter/LICENSE
14741483
ORIGIN: ../../../flutter/impeller/renderer/device_buffer_descriptor.cc + ../../../flutter/LICENSE
14751484
ORIGIN: ../../../flutter/impeller/renderer/device_buffer_descriptor.h + ../../../flutter/LICENSE
1476-
ORIGIN: ../../../flutter/impeller/renderer/device_capabilities.cc + ../../../flutter/LICENSE
1477-
ORIGIN: ../../../flutter/impeller/renderer/device_capabilities.h + ../../../flutter/LICENSE
14781485
ORIGIN: ../../../flutter/impeller/renderer/formats.cc + ../../../flutter/LICENSE
14791486
ORIGIN: ../../../flutter/impeller/renderer/formats.h + ../../../flutter/LICENSE
14801487
ORIGIN: ../../../flutter/impeller/renderer/gpu_tracer.cc + ../../../flutter/LICENSE
@@ -3936,10 +3943,18 @@ FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_buffer_vk.cc
39363943
FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_buffer_vk.h
39373944
FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_encoder_vk.cc
39383945
FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_encoder_vk.h
3946+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_pool_vk.cc
3947+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/command_pool_vk.h
39393948
FILE: ../../../flutter/impeller/renderer/backend/vulkan/context_vk.cc
39403949
FILE: ../../../flutter/impeller/renderer/backend/vulkan/context_vk.h
3950+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/debug_report_vk.cc
3951+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/debug_report_vk.h
3952+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/descriptor_pool_vk.cc
3953+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/descriptor_pool_vk.h
39413954
FILE: ../../../flutter/impeller/renderer/backend/vulkan/device_buffer_vk.cc
39423955
FILE: ../../../flutter/impeller/renderer/backend/vulkan/device_buffer_vk.h
3956+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/fence_waiter_vk.cc
3957+
FILE: ../../../flutter/impeller/renderer/backend/vulkan/fence_waiter_vk.h
39433958
FILE: ../../../flutter/impeller/renderer/backend/vulkan/formats_vk.cc
39443959
FILE: ../../../flutter/impeller/renderer/backend/vulkan/formats_vk.h
39453960
FILE: ../../../flutter/impeller/renderer/backend/vulkan/pipeline_library_vk.cc
@@ -3981,6 +3996,8 @@ FILE: ../../../flutter/impeller/renderer/buffer.cc
39813996
FILE: ../../../flutter/impeller/renderer/buffer.h
39823997
FILE: ../../../flutter/impeller/renderer/buffer_view.cc
39833998
FILE: ../../../flutter/impeller/renderer/buffer_view.h
3999+
FILE: ../../../flutter/impeller/renderer/capabilities.cc
4000+
FILE: ../../../flutter/impeller/renderer/capabilities.h
39844001
FILE: ../../../flutter/impeller/renderer/command.cc
39854002
FILE: ../../../flutter/impeller/renderer/command.h
39864003
FILE: ../../../flutter/impeller/renderer/command_buffer.cc
@@ -3995,13 +4012,10 @@ FILE: ../../../flutter/impeller/renderer/compute_pipeline_descriptor.cc
39954012
FILE: ../../../flutter/impeller/renderer/compute_pipeline_descriptor.h
39964013
FILE: ../../../flutter/impeller/renderer/context.cc
39974014
FILE: ../../../flutter/impeller/renderer/context.h
3998-
FILE: ../../../flutter/impeller/renderer/descriptor_set_layout.h
39994015
FILE: ../../../flutter/impeller/renderer/device_buffer.cc
40004016
FILE: ../../../flutter/impeller/renderer/device_buffer.h
40014017
FILE: ../../../flutter/impeller/renderer/device_buffer_descriptor.cc
40024018
FILE: ../../../flutter/impeller/renderer/device_buffer_descriptor.h
4003-
FILE: ../../../flutter/impeller/renderer/device_capabilities.cc
4004-
FILE: ../../../flutter/impeller/renderer/device_capabilities.h
40054019
FILE: ../../../flutter/impeller/renderer/formats.cc
40064020
FILE: ../../../flutter/impeller/renderer/formats.h
40074021
FILE: ../../../flutter/impeller/renderer/gpu_tracer.cc

impeller/aiks/aiks_unittests.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ bool GenerateMipmap(const std::shared_ptr<Context>& context,
108108
}
109109
pass->GenerateMipmap(std::move(texture), std::move(label));
110110
pass->EncodeCommands(context->GetResourceAllocator());
111-
return true;
111+
return buffer->SubmitCommands();
112112
}
113113

114114
TEST_P(AiksTest, CanRenderTiledTexture) {

impeller/aiks/picture.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ std::shared_ptr<Texture> Picture::RenderToTexture(
5454
// features to Image someday.
5555
auto impeller_context = context.GetContext();
5656
RenderTarget target;
57-
if (impeller_context->GetDeviceCapabilities().SupportsOffscreenMSAA()) {
57+
if (impeller_context->GetCapabilities()->SupportsOffscreenMSAA()) {
5858
target = RenderTarget::CreateOffscreenMSAA(*impeller_context, size);
5959
} else {
6060
target = RenderTarget::CreateOffscreen(*impeller_context, size);

impeller/compiler/code_gen_template.h

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ constexpr std::string_view kReflectionHeaderTemplate =
2222
2323
#include "impeller/renderer/compute_command.h" {# // nogncheck #}
2424
25-
#include "impeller/renderer/descriptor_set_layout.h" {# // nogncheck #}
26-
2725
#include "impeller/renderer/sampler.h" {# // nogncheck #}
2826
2927
#include "impeller/renderer/shader_types.h" {# // nogncheck #}
@@ -166,17 +164,15 @@ std::move({{ arg.argument_name }}){% if not loop.is_last %}, {% endif %}
166164
{% for buffer in buffers %}
167165
DescriptorSetLayout{
168166
{{buffer.binding}}, // binding = {{buffer.binding}}
169-
DescriptorType::kUniformBuffer, // descriptorType = Uniform Buffer
170-
1, // descriptorCount = 1
171-
{{to_shader_stage(shader_stage)}}, // stageFlags = {{to_shader_stage(shader_stage)}}
167+
DescriptorType::kUniformBuffer, // descriptor_type = Uniform Buffer
168+
{{to_shader_stage(shader_stage)}}, // shader_stage = {{to_shader_stage(shader_stage)}}
172169
},
173170
{% endfor %}
174171
{% for sampled_image in sampled_images %}
175172
DescriptorSetLayout{
176173
{{sampled_image.binding}}, // binding = {{sampled_image.binding}}
177-
DescriptorType::kSampledImage, // descriptorType = Sampled Image
178-
1, // descriptorCount = 1
179-
{{to_shader_stage(shader_stage)}}, // stageFlags = {{to_shader_stage(shader_stage)}}
174+
DescriptorType::kSampledImage, // descriptor_type = Sampled Image
175+
{{to_shader_stage(shader_stage)}}, // shader_stage = {{to_shader_stage(shader_stage)}}
180176
},
181177
{% endfor %}
182178
};

impeller/entity/contents/content_context.cc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,8 @@ static std::unique_ptr<PipelineT> CreateDefaultPipeline(
154154
return nullptr;
155155
}
156156
// Apply default ContentContextOptions to the descriptor.
157-
const auto default_color_fmt = context.GetColorAttachmentPixelFormat();
157+
const auto default_color_fmt =
158+
context.GetCapabilities()->GetDefaultColorFormat();
158159
ContentContextOptions{.color_attachment_pixel_format = default_color_fmt}
159160
.ApplyToPipelineDescriptor(*desc);
160161
return std::make_unique<PipelineT>(context, desc);
@@ -175,15 +176,15 @@ ContentContext::ContentContext(std::shared_ptr<Context> context)
175176
CreateDefaultPipeline<LinearGradientFillPipeline>(*context_);
176177
radial_gradient_fill_pipelines_[{}] =
177178
CreateDefaultPipeline<RadialGradientFillPipeline>(*context_);
178-
if (context_->GetDeviceCapabilities().SupportsSSBO()) {
179+
if (context_->GetCapabilities()->SupportsSSBO()) {
179180
linear_gradient_ssbo_fill_pipelines_[{}] =
180181
CreateDefaultPipeline<LinearGradientSSBOFillPipeline>(*context_);
181182
radial_gradient_ssbo_fill_pipelines_[{}] =
182183
CreateDefaultPipeline<RadialGradientSSBOFillPipeline>(*context_);
183184
sweep_gradient_ssbo_fill_pipelines_[{}] =
184185
CreateDefaultPipeline<SweepGradientSSBOFillPipeline>(*context_);
185186
}
186-
if (context_->GetDeviceCapabilities().SupportsFramebufferFetch()) {
187+
if (context_->GetCapabilities()->SupportsFramebufferFetch()) {
187188
framebuffer_blend_color_pipelines_[{}] =
188189
CreateDefaultPipeline<FramebufferBlendColorPipeline>(*context_);
189190
framebuffer_blend_colorburn_pipelines_[{}] =
@@ -315,8 +316,7 @@ std::shared_ptr<Texture> ContentContext::MakeSubpass(
315316
auto context = GetContext();
316317

317318
RenderTarget subpass_target;
318-
if (context->GetDeviceCapabilities().SupportsOffscreenMSAA() &&
319-
msaa_enabled) {
319+
if (context->GetCapabilities()->SupportsOffscreenMSAA() && msaa_enabled) {
320320
subpass_target = RenderTarget::CreateOffscreenMSAA(
321321
*context, texture_size, SPrintF("%s Offscreen", label.c_str()),
322322
RenderTarget::kDefaultColorAttachmentConfigMSAA, std::nullopt);
@@ -374,8 +374,8 @@ std::shared_ptr<Context> ContentContext::GetContext() const {
374374
return context_;
375375
}
376376

377-
const IDeviceCapabilities& ContentContext::GetDeviceCapabilities() const {
378-
return context_->GetDeviceCapabilities();
377+
const Capabilities& ContentContext::GetDeviceCapabilities() const {
378+
return *context_->GetCapabilities();
379379
}
380380

381381
void ContentContext::SetWireframe(bool wireframe) {

impeller/entity/contents/content_context.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
#include "impeller/entity/vertices.frag.h"
4848
#include "impeller/entity/yuv_to_rgb_filter.frag.h"
4949
#include "impeller/entity/yuv_to_rgb_filter.vert.h"
50-
#include "impeller/renderer/device_capabilities.h"
50+
#include "impeller/renderer/capabilities.h"
5151
#include "impeller/renderer/formats.h"
5252
#include "impeller/renderer/pipeline.h"
5353
#include "impeller/scene/scene_context.h"
@@ -601,7 +601,7 @@ class ContentContext {
601601

602602
std::shared_ptr<GlyphAtlasContext> GetGlyphAtlasContext() const;
603603

604-
const IDeviceCapabilities& GetDeviceCapabilities() const;
604+
const Capabilities& GetDeviceCapabilities() const;
605605

606606
void SetWireframe(bool wireframe);
607607

impeller/entity/contents/runtime_effect_contents.cc

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,9 @@ bool RuntimeEffectContents::Render(const ContentContext& renderer,
102102
/// Get or create runtime stage pipeline.
103103
///
104104

105-
const auto& device_capabilities = context->GetDeviceCapabilities();
106-
const auto color_attachment_format = context->GetColorAttachmentPixelFormat();
107-
const auto stencil_attachment_format =
108-
device_capabilities.GetDefaultStencilFormat();
105+
const auto& caps = context->GetCapabilities();
106+
const auto color_attachment_format = caps->GetDefaultColorFormat();
107+
const auto stencil_attachment_format = caps->GetDefaultStencilFormat();
109108

110109
using VS = RuntimeEffectVertexShader;
111110
PipelineDescriptor desc;

impeller/entity/entity_pass.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ static RenderTarget CreateRenderTarget(ContentContext& renderer,
152152
/// What's important is the `StorageMode` of the textures, which cannot be
153153
/// changed for the lifetime of the textures.
154154

155-
if (context->GetDeviceCapabilities().SupportsOffscreenMSAA()) {
155+
if (context->GetCapabilities()->SupportsOffscreenMSAA()) {
156156
return RenderTarget::CreateOffscreenMSAA(
157157
*context, // context
158158
size, // size
@@ -210,8 +210,8 @@ bool EntityPass::Render(ContentContext& renderer,
210210
command_buffer->SetLabel("EntityPass Root Command Buffer");
211211

212212
if (renderer.GetContext()
213-
->GetDeviceCapabilities()
214-
.SupportsTextureToTextureBlits()) {
213+
->GetCapabilities()
214+
->SupportsTextureToTextureBlits()) {
215215
auto blit_pass = command_buffer->CreateBlitPass();
216216

217217
blit_pass->AddCopy(offscreen_target.GetRenderTargetTexture(),

impeller/playground/backend/metal/playground_impl_mtl.mm

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,8 @@
8282
}
8383
data_->metal_layer = [CAMetalLayer layer];
8484
data_->metal_layer.device = ContextMTL::Cast(*context).GetMTLDevice();
85-
// This pixel format is one of the documented supported formats.
86-
const auto color_fmt = context->GetColorAttachmentPixelFormat();
87-
data_->metal_layer.pixelFormat = ToMTLPixelFormat(color_fmt);
85+
data_->metal_layer.pixelFormat =
86+
ToMTLPixelFormat(context->GetCapabilities()->GetDefaultColorFormat());
8887
data_->metal_layer.framebufferOnly = NO;
8988
cocoa_window.contentView.layer = data_->metal_layer;
9089
cocoa_window.contentView.wantsLayer = YES;

impeller/playground/playground.cc

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,8 +402,13 @@ std::shared_ptr<Texture> Playground::CreateTextureForFixture(
402402
std::shared_ptr<Texture> Playground::CreateTextureForFixture(
403403
const char* fixture_name,
404404
bool enable_mipmapping) const {
405-
return CreateTextureForFixture(OpenAssetAsMapping(fixture_name),
406-
enable_mipmapping);
405+
auto texture = CreateTextureForFixture(OpenAssetAsMapping(fixture_name),
406+
enable_mipmapping);
407+
if (texture == nullptr) {
408+
return nullptr;
409+
}
410+
texture->SetLabel(fixture_name);
411+
return texture;
407412
}
408413

409414
std::shared_ptr<Texture> Playground::CreateTextureCubeForFixture(

impeller/renderer/BUILD.gn

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ impeller_component("renderer") {
1616
"buffer.h",
1717
"buffer_view.cc",
1818
"buffer_view.h",
19+
"capabilities.cc",
20+
"capabilities.h",
1921
"command.cc",
2022
"command.h",
2123
"command_buffer.cc",
@@ -30,13 +32,10 @@ impeller_component("renderer") {
3032
"compute_pipeline_descriptor.h",
3133
"context.cc",
3234
"context.h",
33-
"descriptor_set_layout.h",
3435
"device_buffer.cc",
3536
"device_buffer.h",
3637
"device_buffer_descriptor.cc",
3738
"device_buffer_descriptor.h",
38-
"device_capabilities.cc",
39-
"device_capabilities.h",
4039
"formats.cc",
4140
"formats.h",
4241
"gpu_tracer.cc",

impeller/renderer/backend/gles/context_gles.cc

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include "impeller/base/config.h"
88
#include "impeller/base/validation.h"
99
#include "impeller/base/work_queue_common.h"
10-
#include "impeller/renderer/device_capabilities.h"
10+
#include "impeller/renderer/capabilities.h"
1111

1212
namespace impeller {
1313

@@ -72,7 +72,7 @@ ContextGLES::ContextGLES(std::unique_ptr<ProcTableGLES> gl,
7272
// Create the device capabilities.
7373
{
7474
device_capabilities_ =
75-
DeviceCapabilitiesBuilder()
75+
CapabilitiesBuilder()
7676
.SetHasThreadingRestrictions(true)
7777
.SetSupportsOffscreenMSAA(false)
7878
.SetSupportsSSBO(false)
@@ -145,13 +145,9 @@ std::shared_ptr<WorkQueue> ContextGLES::GetWorkQueue() const {
145145
}
146146

147147
// |Context|
148-
const IDeviceCapabilities& ContextGLES::GetDeviceCapabilities() const {
149-
return *device_capabilities_;
150-
}
151-
152-
// |Context|
153-
PixelFormat ContextGLES::GetColorAttachmentPixelFormat() const {
154-
return PixelFormat::kR8G8B8A8UNormInt;
148+
const std::shared_ptr<const Capabilities>& ContextGLES::GetCapabilities()
149+
const {
150+
return device_capabilities_;
155151
}
156152

157153
} // namespace impeller

impeller/renderer/backend/gles/context_gles.h

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
#include "impeller/renderer/backend/gles/reactor_gles.h"
1313
#include "impeller/renderer/backend/gles/sampler_library_gles.h"
1414
#include "impeller/renderer/backend/gles/shader_library_gles.h"
15+
#include "impeller/renderer/capabilities.h"
1516
#include "impeller/renderer/context.h"
16-
#include "impeller/renderer/device_capabilities.h"
1717

1818
namespace impeller {
1919

@@ -41,7 +41,7 @@ class ContextGLES final : public Context,
4141
std::shared_ptr<SamplerLibraryGLES> sampler_library_;
4242
std::shared_ptr<WorkQueue> work_queue_;
4343
std::shared_ptr<AllocatorGLES> resource_allocator_;
44-
std::unique_ptr<IDeviceCapabilities> device_capabilities_;
44+
std::shared_ptr<const Capabilities> device_capabilities_;
4545
bool is_valid_ = false;
4646

4747
ContextGLES(
@@ -70,10 +70,7 @@ class ContextGLES final : public Context,
7070
std::shared_ptr<WorkQueue> GetWorkQueue() const override;
7171

7272
// |Context|
73-
const IDeviceCapabilities& GetDeviceCapabilities() const override;
74-
75-
// |Context|
76-
PixelFormat GetColorAttachmentPixelFormat() const override;
73+
const std::shared_ptr<const Capabilities>& GetCapabilities() const override;
7774

7875
FML_DISALLOW_COPY_AND_ASSIGN(ContextGLES);
7976
};

0 commit comments

Comments
 (0)