Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[开源项目自荐]Newcar-为js生态开发的现代化的动画引擎(Skia+WebAssembly+WebGL) #4287

Open
sheepbox8646 opened this issue Apr 17, 2024 · 3 comments
Labels

Comments

@sheepbox8646
Copy link

sheepbox8646 commented Apr 17, 2024

Newcar介绍

Newcar是一个现代化的前端动画引擎,基于CanvasKit-WASM,在Skia的WebAssembly版本的加持下,既保证了它的性能,又带来了强大的绘图功能

特点

  1. 高度可自定义化的API
  2. 链式语法,区别于传统动画引擎和游戏引擎需要将物体保存为变量的方式,链式语法会让开发效率更高
  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的最新版本是重写重设计后的版本,但是未来会有更强大的功能

给个免费的star再走吧🥺

@sheepbox8646 sheepbox8646 changed the title Newcar-为js生态开发的现代化的动画引擎(Skia+WebAssembly+WebGL) [开源项目自荐]Newcar-为js生态开发的现代化的动画引擎(Skia+WebAssembly+WebGL) Apr 17, 2024
@sheepbox8646
Copy link
Author

对了,newcar现在已加入 @dromara 社区

@listensay
Copy link

image 这个文档 有点具象

@sheepbox8646
Copy link
Author

image 这个文档 有点具象

是你浏览器和网络的问题mmexport1713355958460.jpg

@ruanyf ruanyf added the weekly label Apr 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants