今天大姚给大家分享一款由C#语言编写的仅有8KB大小的简易贪吃蛇开源游戏:SeeSharpSnake。
该仓库中的项目文件和脚本可以用多种不同的配置构建相同的游戏,每个配置生成的输出大小也不同。
F5 运行 SeeSharpSnake
项目,查看优秀效果:
接下来我们使用
dotnet 命令
构建不同大小版本的游戏!!!
dotnet publish -r win-x64 -c Release
dotnet publish -r win-x64 -c Release /p:PublishTrimmed=true
确保已安装 Visual Studio 2019/2022,并在 Windows SDK 中包含 C/C++ 开发工具(我们需要其中的一小部分 - 平台链接器和 Win32 导入库)。
dotnet publish -r win-x64 -c Release /p:Mode=CoreRT
dotnet publish -r win-x64 -c Release /p:Mode=CoreRT-ReflectionFree
dotnet publish -r win-x64 -c Release /p:Mode=CoreRT-NoRuntime
在你的计算机上查找 ilc.exe
(CoreRT 提前编译器)。如果已完成上述任何生成输出的步骤 <= 4.7 MB,则ilc.exe将位于 NuGet 包缓存中(类似于 %USERPROFILE%\.nuget\packages\runtime.win-x64.microsoft.dotnet.ilcompiler\1.0.0-alpha-27402–01\tools
)。
[PATH_TO_ILC_EXE]\ilc.exe zerosnake.ilexe -o zerosnake.obj --systemmodule:zerosnake --Os -g
link.exe /debug:full /subsystem:console zerosnake.obj /entry:__managed__Main kernel32.lib ucrt.lib /merge:.modules=.rdata /merge:.pdata=.rdata /incremental:no /DYNAMICBASE:NO /filealign:16 /align:16
更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。
该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md