Simon Willison 引述 Paint.NET 作者 Rick Brewster 的话:Direct2D 一直是 Paint.NET 在 WINE 上运行的最大障碍。
Direct2D 一直是 WINE 上 Paint.NET 最大的障碍,显然它永远无法完善到 Paint.NET 的使用范围。我也不能简单地“禁用”Direct2D。所以,Paint.NET 现在有一个内部、从零开始、在洁净室逆向工程中重写的 Direct2D,它用在 WINE 上(触发于 /wine )。它活在PaintDotNet.Windows.Direct2D1.Managed.dll中。这篇文章是我们的好朋友 Claude:https://claude.ai/ 写的,没有他,这一切都不可能,也绝不会发生。[...]
这些代码大多是“氛围编码”,俗话说的。我的意思是它们没有被彻底审查,更像是“相信我兄弟”的风格。我根本无法审查18万行代码,实在太多了。供参考,剩下的大约70万行代码 Paint.NET 我已经做了20多年。[...]
有时,Claude 正与十个刚解束的爱因斯坦天才 10x 编程员一起工作。但有时......嗯,就没那么多了。我不得不对 Claude 做不少照看,确保它能正确管理资源(有一阵子它没能像 COM 版的 AddRef() 那样做引用计数对象,哎呀)。当我发现一些非常糟糕的设计或架构决策时,我不得不扇了它几次耳光。我也对它做的聪明且不知疲倦的逆向工程工作印象深刻,他们用来弄清实现 Direct2D 内置特效库所需的所有公式。
— Rick Brewster:https://forums.paint.net/topic/134563-🍷-极端实验性的 Wine/Linux 支持——入门指南,Paint.NET 作者
这是西蒙·威利森于2026年9月2日收集的引言:/2026/9月2日/。
Direct2D has always been the biggest hurdle for Paint.NET on WINE, and it's clear that it will never be completed enough for Paint.NET's use. And I can't just "disable" the use of Direct2D. So, instead, Paint.NET now has an internal, from-scratch, clean-room reverse-engineered rewrite of Direct2D that it uses on WINE (triggered by using /wine ). It lives in PaintDotNet.Windows.Direct2D1.Managed.dll . This was written by our good friend Claude:https://claude.ai/, without whom this would NOT have been possible and would NEVER have happened. [...]
Most of this code is, as they say, "vibe coded." By that I mean that it has not been thoroughly reviewed, it's more "trust me bro" style. I cannot possibly review 180,000 lines of code, it's just way way way too much. For reference, the rest of Paint.NET is about 700,000 lines of code and I've been working on it for over 20 years. [...]
At times, Claude was working with the fury of 10 freshly unshackled Einstein genius-level 10x coders. And other times ... well, not so much. I had to babysit Claude quite a bit to make sure it did resource management correctly (for awhile it just wasn't doing the COM equivalent of AddRef() for reference counted objects, oops). I had to slap it a few times when I found some really bad design or architecture decisions. And I was also impressed at some rather clever and tireless reverse engineering work it did to figure out all the formulas needed for implementing Direct2D's built-in effects library.
— Rick Brewster:https://forums.paint.net/topic/134563-🍷-extremely-experimental-winelinux-support-how-to-get-started/, author of Paint.NET
This is a quotation collected by Simon Willison, posted on 2nd September 2026:/2026/Sep/2/.