3dsMax 2026 .NET Core 8 转型下的Maxscript脚本开发:动态编译模块的重构策略与兼容性升级路径
3ds Max 长期以来一直提供出色的 .NET 集成,使 Maxscript 能够无缝利用任何 .NET 库的强大功能。部分开发者在工具中广泛使用了 .NET 功能。
之前,3ds Max 依赖于 .NET Framework 4.8 并且最近更新到了 4.8.1,用于 2025 版本的发布。然而,随着 3ds Max 2026 的推出,Autodesk 已经转向 .NET Core 8。这一转变带来了一个更现代的基础,但也移除了对某些旧框架功能的支持。
一个显著的例子是CSharp.CSharpCodeProvider.CompileAssemblyFromSource方法,许多脚本作者曾经使用它来动态编译C#代码——消除了分发单独的DLL文件的需要。不幸的是,这个方法在.NET Core 8中不再支持。
因此,任何依赖此方法的脚本在3ds Max 2026中都会像这样崩溃。
-- 在匿名代码块中发生错误;文件名:C:\myscript\awesomescript.mcr;位置:231;行:18
-- MAXScript 宏脚本错误异常:
-- 运行时错误:无法解析类型:Microsoft.CSharp.CSharpCodeProvider
-- MAXScript 调用堆栈:
-- 线程数据:线程ID:1254
针对这一技术断层,3ds Max 现在提供了一个替代方案: