为了节省内存和提高性能,我想使用一种特殊的格式纹理来处理jpeg图片。格式由GL_TEXTURE_EXTERNAL_OES处理,但进程与GL_TEXTURE_2D相同(只是与glBindTexture和着色器程序纹理声明不同),我是在egl硬件模式下完成的(“栅格化器_类型”:“直接-gles”)。但是当我使用skia硬件模式('rasterizer_type':‘have’)时有问题,我发现skia硬件模式不支持它,并将调用render_image_fallback_function_ (HardwareRasterizer::Impl::RenderTextureEGL)来处理它喜欢的360视频。我发现显示的结果与它在egl硬件模式下显示的结果有很大的不同,似乎只能用来处理360视频。是否有可能让skia硬件模式直接支持特殊格式,或者我只添加了一种新的方式在TexturedMeshRenderer处理图片,以区分360视频。
发布于 2018-01-29 10:57:42
钴/右舷支持让平台在右舷/Image.h中定义自定义(可能是加速的)图像解码功能,您是使用它来设置GL_TEXTURE_EXTERNAL_OES,还是正在修改常见的Cobalt代码?
如果您正在修改Cobalt代码,您可能希望在image.cc中搜索对"GL_TEXTURE_2D“的引用,并确保它们在您的更改后仍然有意义。特别是,您可能需要调整HardwareFrontendImage::CanRenderInSkia()。
https://stackoverflow.com/questions/48493375
复制