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

Conversation

@bdero
Copy link
Member

@bdero bdero commented Aug 9, 2023

Allows for sampling from external textures in the OpenGLES backend. DrawImageRect should Just Work if external textures are wrapped with the new kTextureExternalOES type.

@bdero bdero self-assigned this Aug 9, 2023
@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

Copy link
Contributor

@johnmccutchan johnmccutchan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

namespace impeller {
namespace compiler {

const std::string kExternalTexturePrefix = "SAMPLER_EXTERNAL_";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit:

  • This should be constexpr
  • We call it SAMPLER_EXTERNAL_ here but in TextureType it is ExternalOES -- would be nice if they shared the same name "SAMPLER_EXTERNAL_OES"
  • Does this constant belong in types.h It's not a type, maybe it should be format.h right near the definition of TextureType::kTextureExternalOES so folks reading the code know these two concepts are tightly coupled.

Copy link
Member Author

@bdero bdero Aug 9, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Switched to constexpr char*.
  • Done.
  • Moved it to a new constants.h; I don't think the compiler depends on impeller/core right now.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Although we could probably pull some of the format stuff from core into base at some point)

@bdero bdero force-pushed the bdero/impellerc-external-textures branch 4 times, most recently from 8cd9906 to 12d5ac0 Compare August 9, 2023 23:12
@bdero bdero added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 10, 2023
@auto-submit
Copy link
Contributor

auto-submit bot commented Aug 10, 2023

auto label is removed for flutter/engine/44559, due to - The status or check suite Linux Framework Smoke Tests has failed. Please fix the issues identified (or deflake) before re-applying this label.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Aug 10, 2023
@bdero bdero force-pushed the bdero/impellerc-external-textures branch from 59d33ec to 1e9d758 Compare August 10, 2023 01:42
@bdero bdero added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 10, 2023
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Aug 10, 2023
@auto-submit
Copy link
Contributor

auto-submit bot commented Aug 10, 2023

auto label is removed for flutter/engine/44559, due to - The status or check suite Linux Framework Smoke Tests has failed. Please fix the issues identified (or deflake) before re-applying this label.

@bdero bdero force-pushed the bdero/impellerc-external-textures branch from 1e9d758 to 9ab0a74 Compare August 10, 2023 17:25
@bdero bdero merged commit 3157a6e into flutter:main Aug 10, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 10, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 10, 2023
…132328)

flutter/engine@ea7730c...a9be77e

2023-08-10 [email protected] Flutter iOS Interactive Keyboard: Fixing Behavior Issue  (flutter/engine#44586)
2023-08-10 [email protected] [Impeller] Flutter GPU: Add context override. (flutter/engine#44566)
2023-08-10 [email protected] [Impeller] External OpenGLES texture sampling. (flutter/engine#44559)
2023-08-10 [email protected] Roll Fuchsia Linux SDK from 961_tJawsbLMdy5i0... to konJQZKk2qXc276iA... (flutter/engine#44593)
2023-08-10 [email protected] Roll Skia from 364900538771 to 92e6f52b0fa8 (1 revision) (flutter/engine#44592)
2023-08-10 [email protected] Roll Skia from f39fd2de8f10 to 364900538771 (1 revision) (flutter/engine#44590)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from 961_tJawsbLM to konJQZKk2qXc

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
gaaclarke pushed a commit to gaaclarke/engine that referenced this pull request Aug 30, 2023
Allows for sampling from external textures in the OpenGLES backend.
DrawImageRect should Just Work if external textures are wrapped with the
new `kTextureExternalOES` type.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants