webgl - 检查 Dart 中的 WebGL 支持

标签 webgl dart

我正在使用 WebGLDart,但我不知道如何检查某个对象是否具有某种方法。例如,在 JavaScript 中,我会检查 WebGL 是否可以通过 window.WebGLRenderingContext 使用,但在 Dart 中是否有同样的方法?

最佳答案

IIRC Dart 的目标之一是规范浏览器定义内容的不一致。因此,WebGL 将始终“可用”,因为它的接口(interface)将始终存在于 Dart 中,无论您运行的浏览器是否已在 native 定义它们。

最好以与 Javascript 中相同的方式检查是否支持 WebGL:

WebGLRenderingContext gl = canvas.getContext("experimental-webgl");

如果 gl 为 null,则不支持 WebGL。否则就是!

(顺便说一句:仅仅因为 Javascript 中存在 window.WebGLRenderingContext 并不意味着支持 WebGL!这只告诉您浏览器能够调度 WebGL 命令。您正在运行的系统可能不接受它们。最好还是尝试创建一个上下文并检测它何时失败。)

关于webgl - 检查 Dart 中的 WebGL 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10918830/

相关文章:

listview - Flutter - 如何在删除元素后保持 ExpansionTiles 列表的 _isExpanded 状态?

javascript - Webgl - 纹理坐标偏移

webgl - 如何导出 SolidWorks 文件以在 WebGL 中使用?

python - Pywebkitgtk Three.js 无法检测到 WebGL

javascript - 盒子的简单正投影

dart - 将其他tran转换为JS,Google dart可以编译为目标代码吗?

javascript - VivaGraphJS 删除链接

flutter - Flutter-如何添加搜索栏以在列表中搜索

android - 平台异常(错误,java.lang.IllegalStateException : A required meta-data tag in your app's AndroidManifest. xml google_maps_flutter 不工作

dart - 如何将 Dart Html 客户端 Web 套接字响应从 Blob 转换为 Uint8List?