另外根据一赖的访谈,怪物猎人rise换了re引擎,业务代码换成了C#使得开发效率大幅提升(C++编译太慢了)
C#比Java好的地方是操作底层数据更方便,所以游戏领域用C#的很多 性能热点区域开个unsafe就当写c了
—— 来自 S1Fun 再买自检星剁手 发表于 2022-3-6 16:16
这类领域对性能要求高啊,以前基本上只能选c++,没人想搞项目的时候重写一遍数据结构算法
另外根据一赖的 ...
游戏主机模拟器和游戏不是一回事的。
游戏主机模拟器要求的cpu性能比一般游戏高很多。性能开销主要都是翻译指令以及主机子系统的模拟。
—— 来自 OnePlus KB2000, Android 11上的 S1Next-鹅版 v2.5.2-play whzfjk 发表于 2022-3-6 16:41
高性能模拟器一般都会把 guest 指令块即时编译成 host 指令块跳过去假装是原生执行
不知道 C# 这种有托管运 ...
看它项目说明是先翻转成IR中间码…
—— 来自 OnePlus KB2000, Android 11上的 S1Next-鹅版 v2.5.2-play 这个是基于最新的.NET 6.0来构建的,不支持之前版本的.net core,至于.net框架自然更不必说了。
现在看来.net进入core时代后基本就等同于c#了,vb.net和f#的应用都没能及时跟上。 20年前微软搞C#的时候就是要打算拿来代替C++的,虽然后来扯到蛋了,但是讲真要论各种底层特性是一点都不少的 用C#的话跨平台应该会更好做了,看了下现在就支持win,linux和mac。支持mac的模拟器比win少好多 C#方便太多了,开源代码下载下来直接就能直接跑起来了(装一个对应版本的.NET SDK即可),从下载到运行起来10分钟之内就能搞定。如果是同等规模的C/C++项目,配置环境就得花很大功夫。 我记得这模拟器的兼容列表正好和另一个互补 c029384756 发表于 2022-3-7 01:40
并不支持mac,官网那个mac图标就只是挂着而已
mac现在问题太多了,比如不支持vulkan,opengl也基本废弃了 ...
至少还有support planned,而且能build,已经不错了
看了下issue,这个用的opengl 4.3, 而mac只支持到4.1...辣鸡苹果
车欠 发表于 2022-3-6 18:48
看它项目说明是先翻转成IR中间码…
—— 来自 OnePlus KB2000, Android 11上的 S1Next-鹅版 v2.5.2-play ...
The CPU emulator, ARMeilleure, emulates an ARMv8 CPU and currently has support for most 64-bit ARMv8 and some of the ARMv7 (and older) instructions, including partial 32-bit support. It translates the ARM code to a custom IR, performs a few optimizations, and turns that into x86 code.
这个ARMeilleure 是 c#写的,
包括IR 生成和 x86 codegen
最后生成native 函数,unsafe调用一下齐活
页:
[1]