Newcar

Weekly Pick

Newcar是一个现代化的前端动画引擎,基于CanvasKit-WASM和Skia的WebAssembly版本,提供高性能和强大的绘图功能。它具有高度可自定义的API、链式语法和类似Vue的diff算法内核,支持浏览器和Node.js环境运行。

Check out Newcar on CurateClick

• Copy the embed code to showcase this product on your website

• Share on X to spread the word about this amazing tool

Newcar介绍Newcar是一个现代化的前端动画引擎,基于CanvasKit-WASM,在Skia的WebAssembly版本的加持下,既保证了它的性能,又带来了强大的绘图功能## 特点1. 高度可自定义化的API2. 链式语法,区别于传统动画引擎和游戏引擎需要将物体保存为变量的方式,链式语法会让开发效率更高3. 拥有类似于Vue的diff算法的内核,进一步保证了动画的效率和“按需更新”的进行4.可以在浏览器上运行,也可以配合ffmpeg在本地(nodejs)上运行## 未来计划1. 可以从项目根目录下的mods目录看,目前newcar已经发布了数学模块(包括数轴,平面直角坐标系,函数图像等),未发布的有:几何模块,markdown模块,动态图表模块,ui模块,物理模块,思维导图模块等等2. 未来将推出事件系统,让他变成动画游戏二合一引擎3. 一些小的东西比如动画树## 背景故事我初三的时候上数学课时,老师掏出了他清朝老幻灯片进行讲解,结果里面的flash课件打不开,因为电脑没有安装flash。于是我就在想,既然flash功能那么强大但没落了,我为什么不自己写一个类似于flash的库呢?说干就干,在2022年9月份开始思考,一直到12月份开始编写代码刚开始的newcar十分简陋,甚至是基于原生Canvas的,性能非常差,动画编写的步骤也很繁杂。后来的newcar除了模仿flash,也集合了Manim等动画引擎及svg动画的设计原理。目前的Newcar的最新版本是重写重设计后的版本,但是未来会有更强大的功能- 文档:newcar.js.org/zh- GitHub: github.com/dromara/newcar- b站:BugDuck开源团队- Twitter: @bugduckteam给个免费的star再走吧🥺