C#语言编写的仅有8KB大小的简易贪吃蛇开源游戏

前言

今天大姚给大家分享一款由C#语言编写的仅有8KB大小的简易贪吃蛇开源游戏:SeeSharpSnake。

项目特点

该仓库中的项目文件和脚本可以用多种不同的配置构建相同的游戏,每个配置生成的输出大小也不同。

项目源码运行

F5 运行 SeeSharpSnake项目,查看优秀效果:

构建不同大小版本的游戏

接下来我们使用dotnet 命令构建不同大小版本的游戏!!!

构建 65 MB 版本的游戏

复制代码
`dotnet publish -r win-x64 -c Release`

构建 12 MB 版本的游戏

复制代码
`dotnet publish -r win-x64 -c Release /p:PublishTrimmed=true`

注意以下构建需要配置其他组件

确保已安装 Visual Studio 2019/2022,并在 Windows SDK 中包含 C/C++ 开发工具(我们需要其中的一小部分 - 平台链接器和 Win32 导入库)。

构建 4.7 MB 版本的游戏

复制代码
`dotnet publish -r win-x64 -c Release /p:Mode=CoreRT`

构建 1.2 MB 版本的游戏

复制代码
`dotnet publish -r win-x64 -c Release /p:Mode=CoreRT-ReflectionFree`

构建 10 kB 版本的游戏

复制代码
`dotnet publish -r win-x64 -c Release /p:Mode=CoreRT-NoRuntime`

构建 8 kB 版本的游戏

  1. 打开"适用于 VS 2019或者VS 2022 的 x64 本机工具命令提示符"(位于"开始"菜单中)。
  2. CD 进入存储库根目录

在你的计算机上查找 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

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目框架推荐、求职和招聘资讯、以及解决问题的平台。
  • 在DotNetGuide技术社区中,开发者们可以分享自己的技术文章、项目经验、学习心得、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台。无论您是初学者还是有丰富经验的开发者,我们都希望能为您提供更多的价值和成长机会。

欢迎加入DotNetGuide技术社区微信交流群👪

相关推荐
追逐时光者1 天前
.NET使用Umbraco CMS快速构建一个属于自己的内容管理系统
【.net】·【c#】·【开源项目】·【.net core】
追逐时光者3 天前
一个.NET开源、快速、功能丰富的跨平台阅读服务器
【.net】·【c#】·【开源项目】·【.net core】
追逐时光者4 天前
一个基于 .NET 8.0 构建的简单、跨平台、模块化商城系统
【.net】·【c#】·【开源项目】·【.net core】
追逐时光者5 天前
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
【.net】·【c#】·【.net core】·【技术前沿周刊】
追逐时光者6 天前
使用Microsoft.Extensions.AI简化.NET中的AI集成
【.net】·【c#】·【开源项目】·【.net core】·【aigc】
追逐时光者7 天前
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
【.net】·【c#】·【开源项目】·【.net core】
追逐时光者8 天前
利用腾讯元器,将公众号变身为强大的.NET AI智能体
【.net】·【c#】·【ai编程】·【.net core】·【aigc】
追逐时光者10 天前
.NET现在可以做什么,有哪些公司在用的?
【.net】·【c#】·【.net core】
追逐时光者11 天前
推荐7款程序员常用的API管理工具
【开源项目】·【实用工具】
追逐时光者12 天前
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
【.net】·【c#】·【.net core】·【技术前沿周刊】