能不能用纯 canvas 实现一个组件框架

2021-03-03 13:56:35 +08:00
 wheelg

即整个页面只有一个 canvas 元素,然后用 canvas 实现组件绘制,似乎 flutter web 是这样的实现,但是需要 dart 编译成 js,那有没有类似的 js 框架呢?性能相比原生 HTML 元素会不会好一点

1162 次点击
所在节点    问与答
7 条回复
Biwood
2021-03-03 14:16:56 +08:00
ruguo
2021-03-03 14:50:26 +08:00
那不是在浏览器里做浏览器?我想起了在 MC 里做电脑。。。
sujin190
2021-03-03 14:56:12 +08:00
flutter web 的 canvas 渲染是编译成接近原生的 wasm 的,如果用 js 在 canvas 上绘制,想做出比现有浏览器渲染效率更高还是比较有难度的
cck123
2021-03-03 14:58:38 +08:00
figma 几乎是抛弃了 dom,自己用 webgl 实现的渲染引擎,差不多就是在浏览器里面做了个浏览器,还是很厉害的
KiseXu
2021-03-03 15:00:08 +08:00
梦幻西游 网页版就是用 canvas 整个画出来的。
zuiluo
2021-03-03 15:03:55 +08:00
当然可以,现在绝大部分 H5 游戏都是基于 canvas webgl 做的,游戏内也包含了各种复杂布局和元素,比绝大部分网页复杂多了。

所以 H5 游戏引擎了解一下?

当然如果你想从 0 开始写的话,开发成本估计要翻几十倍不止了
shoaly
2021-03-03 15:06:01 +08:00
性能比 原生 html 好是不是 想多了, 所有浏览器最重要的事情就是 怎么把 dom 渲染的又快又好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/757999

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX