点击解锁VIP可享全站免费下载 零基础搭建绿幕直播间卖货赚钱 闪豚AI训练★批量生成原创好文章 本广告位待租本广告位待租待租
点击解锁VIP可享全站免费下载 零基础搭建绿幕直播间卖货赚钱 高质量SEO原创文章生成☆过AI检测 本广告位待租本广告位待租待租
点击解锁VIP可享全站免费下载 零基础搭建绿幕直播间卖货赚钱 NLP原创SEO文章AI自动生成教学 本广告位待租本广告位待租待租

温馨提示:需广告位请联系广告商务经理

.NET和Unity的未来,让用户编写高性能代码,并带来长期的稳定性与兼容性

.NET生态正在多方面上积极动态地演变,Unity希望尽快将这些改进带给广大用户。

的。NET生态系统在许多方面都在积极动态地发展,Unity希望尽快将这些改进带给用户。Unity的内部。NET技术团队正在努力不断改进。NET集成并更新最新的C#特性和。网络标准2.1。不过根据你的反馈,Unity最近在全面提升开发者体验方面投入了更多的努力。

.NET和Unity的演变

团结的故事。NET始于17年前,当时CTO决定采用Mono.NET运行时和C#。Unity更喜欢C#不仅因为它简单,还因为JIT(just-in-time)编译器可以将C#代码翻译成高效的原生代码。为了达到平衡可控的性能,剩下的Unity引擎大部分都是用c开发的。

多年来,Unity一直依赖Mono.NET运行时和C#语言的一个特定分支(2.0)来运行。在此期间,该引unity引擎擎对其他平台的支持也在不断扩展。我unity3d们还开发了自己的编译器和运行时:IL2CPP,可以让你针对iOS和一些主机平台进行开发。

unity是什么软件时,unity整个微软。NET生态系统在不断发展,新的Unity许可证和对非Windows平台的支持也在不断引入。借着这股东风,我们于2018年在Unityunity下载.NET升级到了Mono Runity3d引擎untime,并推出了更现代的C#版本(7.0以上)。同年,我们还发布了第一版Burst编译器,开创了C#分支快速生成原unity游戏生代码的先河。在取得这Unity一突破后,Unity提出了新的思路:将C#扩展到引擎剩余的关键部分,不使用C进行开发,为DOUnityTS运行时的开发做铺垫。

Unity 2020 LTS和Unitunity3dy 2021 LTS使用新版本的C#语言和。NET API(比如Span)。同时,我们也看到了。NET生态系统有了很大的改善。它引入的csproj SDK风格和蓬unity怎么调中文勃发展的NuGet生态系统正在让开发环境变得更加友好。

我们将要做的事

经过长期的发展,Uunity是什么意思nity已经包含了一个巨大的C代码库,它继承了Mono.NET运行时的功能,可以直接进行交互。NET对象。这些代码不再符合或有效。NET(核心)运行时。

此外,Unity编辑器绑定了复杂的自定义编译管道,不依赖于MSBuild运行,因此无法轻松受益于引擎功能。

在过去的几年里,我们一直在与广大用户积极沟通,以期找出真正能让用户成功的改进。我们听说你渴望使用最新的C#语言。NET运行时技术和NuGet的第三方C#代码。在谈到Unity平unity编辑器手机版台的使用时,大家都表示希望借助高质量的C#测试、调试和评测工具,以及标unity是什么软件准的优秀集成,最大限度地发挥硬件的性能。NET API和Unity API。作为一名unity是什么意思Unity C#程序员,我一定希望Unity tools能够与工具箱中的其他工具无缝连接,能够实现快速迭unity怎么调中文代,从而达到一流的运行时性能。

实现这个目标需要几年时间。

我们的做unity怎么调中文

这个计划的第一步是聚集所有热衷于C#和。NET内的Unity,并设置了C#/。NET技术团队来工作。

我们unity怎么调中文的工作将基于。NET生态系统,而不是开发自定义解决方案。为了让用户享受新版带来的性能和生产力提升。NET SDK/Runtime和unity3d引擎MSBuild,我们将从Mono.NET运行时转移到CoreCLR,unity下载即现代的。NET(核心)运行时Unity

这一unity引擎行动也将带来当前unity怎么调中文之外的创新。NET字段,以便UnityC#脚本可以完成。NET迭代速度更快。我们将努力结合两个JIT和AOT(提前)解决方案,IL2CPP和Burst,以实现编译效率和CodeGen(代码生成)质量之间的最佳平衡。

对外,我们将与微unity是什么意思软、JeunitytBrunity游戏ains和其他行业unity编辑器手机版合作伙伴合作,确保Unity创作者可以使用最新的。NET技术。我们还深入参与了开源社unity下载区。这项工作将分几个步骤进行。让我们看看我们未来的计划。

2022年的工作内容

今年,我们团队计划在以下几个方面开展工作。

C#开发流程

迭代unity怎么调中文时间仍然是我们unity的主要关注点,我们知道每个用户都想充分利用他的时间。这里有几个我们如何改进工作的例子。

我们正在改进编译管道的IL后unity3d处理所用的时间,它负责修改编译的。编译C#后的. NET程序集。现在,unity游戏IL后处理将在编译阶段后连unity是什么软件续运行,以减少数百毫秒的时间消耗。

跟随

着Burst编译器的使用愈加频繁,我们将采用一种可传递哈希算法来改进代码改动检测的精细度。如此一来,我们就能够找出那些需要快速编译的可爆发(Burstable)代码。我们正在将Burst编译器unity怎么调中文移出进程,使其能在单独的.NET 6.0可执行程序中运行,更快地完成代码编译。

我们还将改进引擎每次调用TypeCache、在后台建立镜像数据(reflection data)的过程,借此改进域的重新加载。

我们还将添加测试和验证流程来更好地跟踪软件包和项目模板的迭代时间倒退unity是什么意思

至于转移到MSBuild,我们第一步须将编译管线与Unity编辑器分割开来,并将其转移到一个单独的进程unity下载中。这个过程涉及多年以来unity下载遗留下来的成千上万行C++和C#代码,我们要实现这一目标就必须解开这些代unity码——同时还要保持向下兼容。这项工作并不会在用户的角度带来多大变化,但它将铺好通往MSBunity是什么意思uild的道路并简化引擎的维护。

我们还将改进Burst的C#IDE调试体验,推出一种新的调试模式,当用户在Burst代码路径上设置断点时,自动将调试器切换到托管调试。这意味着你不必再手动删去调试路径上的[BurstCompile]属性。

现代化.NET运行时

转移至.NET CoreCLRunity编辑器手机版运行时的unity引擎工作已经开始,这是一个非常具有挑战性的旅程。为了使整个过程能够顺利完Unity成,我们将分步骤unity游戏解决各个问题,并在保证现有Unity项目稳定的前提下碎片化发布更新。

因此,整个迁移过程将分多个阶段完成:

首先,我们将为桌面平台上的独立运行版unity编辑器手机版提供.NET CoreCLR的支持。该运行时将和现有的Mono与IL2CPP后端一起在运行版设置中列出。unity引擎第一阶段我们将完成Unity引擎核心部分(比编辑器部分小得多)的迁移,并尽量解决迁移过程unity怎么调中文所涉及的绝大部分技术挑战。我们的目标是在2023年期间发布这个新运行时,unity目前你仍需用.NET Standard 2.1 API访问.NET运行时。

然后,我们会把Unity编辑器移植到.NET CoreCLR,同时移除对.NEunity下载T Mono运行时的支持。第二阶段我们将挑战不使用AppDomains在unity编辑器内重新加载脚本,并完成向.NET CoreCLR转移。这unity下载一阶段也将涉及到升级IL2CPP、支持dotnet/runtime仓库的基础类库。你将能使用完整的.NET 7.x或8.0 API。我们希望能在2024年里发布这个新的编辑器。

现代化Unity运行时

Unity 2021 LTS新支持的.NET Standard 2.1使我们能够从多个方面着手现代化Unity运行Unity时。我们目前正在推进unity是什么软件两项改进工作。

改进async/await编程模型。基础性的async/await编程方法主要用于编写必须异步完成、不阻塞引擎主循环的游戏代码。

2011unity是什么软件年,在async/await成为.NET的主流之前,Unity引入了基于迭代器的异步运算协程(coroutines),但这种方法并不兼容async/await,并且效率也更低。同时,.NunityET Standard 2.unity是什么意思1一直在改进C#和.NET对asunity怎么调中文ync/await的支持,推出了Valueunity编辑器手机版Task来更高效地完成async/awaunity引擎it的运算,并允许用户自行用AsyncMethodBuilder编写的类任务系unity是什么意思统。

在有了这些改进之后,我们将努力结合async/await与Unity中现有的异步操作(如等待下一帧或unity是什么意思等待UnityWebRequest的完Unity成)。第一步,我们unity怎么调中文将引入取消令牌(cancellation token),unity编辑器手机版改进MonoBehavior被销毁时或退出运行模式时被unity挂起异步任务的取消操作。我们也一直在与UniTask作者等社区贡献者密切合作,保证unity游戏他们能够用上unity3d引擎这些新功能。

利用Span减少内存分配和拷贝。Unity本身是一个带有C#编程外壳的C++引擎,两种语言之间存在着大量的数据交换。这就造成引擎经常性地来回复制数据、分配托管对象,造成工作效率低下。

C#7.2引入的Span可unity编辑器手机版以有效改善这个问题,且.NET Standardunity 2.1默认可使用Span值类型。近年来,你可能听说过或unity游戏读到过许多归功于UnitySpan的.NET运行时重大性能改进。我们同样希望在Unity中利用起它,并有效地unity3d引擎减少分配,从而减少unity3dGarbage Collection卡顿、提高大量API的整体性能。

免责说明

本站资源大多来自网络,如有侵犯你的权益请提交工单反馈(点击进入提交工单) 或给邮箱发送邮件laakan@126.com 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请在下载24小时内删除!

给TA打赏
共{{data.count}}人
人已打赏
!
也想出现在这里? 联系我们
广告信息
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索