• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Maxwin
V2EX  ›  程序员

做了个在浏览器里跑真 Manim 的站,不用装 Python

  •  
  •   Maxwin · 1h 10m ago · 59 views

    起因很简单:每次想用 Manim 做点数学动画,都得先折腾环境——Python 、LaTeX 、ffmpeg 、cairo 、pango 一整套装下来一下午没了,渲染还得敲命令行。太劝退,就想把这一步整个干掉,做成"打开浏览器就能写就能渲"。

    做出来的是极坐标 XYZ ( jizuobiao.xyz ),几个技术选择也顺便贴出来聊聊:

    • 跑真本体,不重写引擎:用 Pyodide 在浏览器里跑真 manim 0.20.1 ,把跑不了的原生依赖逐一替换掉( cairo→Canvas2D 、Pango→opentype.js 、LaTeX→MathJax 、ffmpeg→ffmpeg.wasm 、skia-pathops→纯 Python polybool )。好处是 API 全量、随官方升级,不用像重写引擎那样永远追着新 API 跑。2D / 3D / animation / updater / 中文 Text / MathTex / 布尔都跑通了。
    • 渲染落 Canvas2D ,不上 WebGPU:刻意选的——优先覆盖国内主流浏览器、老设备和微信,中文原生支持。
    • 编辑器带补全:CodeMirror 6 + 常驻 Pyodide 里的 jedi ,对真 manim 做内省,补全 / 签名 / 悬浮文档;报错直接给 traceback 。
    • 分享靠 URL:代码压缩后编码进链接,无需后端,打开即还原。
    • 纯前端、天然沙盒:用户代码跑在 Pyodide 里,不触达服务器;全资源自托管、零 CDN 。
    • 导出:ffmpeg.wasm 出 mp4 ( libx264 )/ gif ,分辨率到 1080p 。

    用法就三步:打开 Playground → 改内置示例的一两个数(或自己写 Scene)→ 点运行看动画。另外做了套 23 节的教程,边看视频边改可运行代码。目前免费、匿名即用,作品存本地 / 用链接分享,云端作品库还在路上。

    体验地址: https://jizuobiao.xyz/playground

    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   924 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 20:37 · PVG 04:37 · LAX 13:37 · JFK 16:37
    ♥ Do have faith in what you're doing.