Awesome
<div align="center"> <h2 href="https://github.com/TastSong/CrazyCar"> <img src="./SamplePictures/CrazyCarIcon.png" width="80px" height="80px"> </h2> <h2 align="center"> 网络联机游戏解决方案 </h2> <img src="https://img.shields.io/github/stars/TastSong/CrazyCar?style=plastic" alt=""> <img src="https://img.shields.io/github/forks/TastSong/CrazyCar?color=09F709&label=forks&style=plastic" alt=""> <img src="https://img.shields.io/github/license/TastSong/CrazyCar?color=22DDB8&label=license&style=plastic" alt=""> <img src="https://img.shields.io/github/commit-activity/m/TastSong/CrazyCar?color=AA8855&label=commit-activity&style=plasticc"alt=""> <img src="https://img.shields.io/github/last-commit/TastSong/Crazycar?color=%231AE66B&label=last-commit&style=plastic" alt=""> </div>中文 | English
简介
Crazy Car是一款联机赛车游戏,她的整体架构为:QFramework & Addressable & HybridCLR(游戏端) + Spring Boot & Mybatis(服务端) + KCP / WebSocket (网络) + Vue & Element(后台),借助于此架构,开发者只要稍作修改就可完成一款定制化的网络联机游戏。
主要提供的演示功能有:登录注册、热更头像与装备、计时赛、双人比赛、版本控制(后台)、用户信息管理(后台)等功能。
<div> <img src="./SamplePictures/Preview.gif" > <img src="./SamplePictures/Match.gif"> <img src="./SamplePictures/Background.gif" > </div>下载:Android 、IOS (由于证书问题,如果想体验ios需要单独联系作者)
ID:(VIP账号 :Tast;密码:111111 )
:clap: 欢迎使用 Crazy Car !
:loudspeaker: Crazy Car处于开发阶段,线上的数据库会不定期重置;mater不是发布分支,建议使用最新releases进行本地测试
特性 :point_down:
Finish
:pushpin:支持版本强制更新
:satellite:网络同步采用物理同步方式
:telephone:支持KCP和WebSocket两种网络传输协议
:foggy:使用URP渲染管线
:blue_book:资源热更新方式为Addressable
♨️热修复使用:HybridCLR
:video_game:采用Unity新版本Input System,支持多款手柄
:alien:机器人,计时赛中机器人可与玩家共同竞技
:sunrise: 支持头像和装备的资源热更新
:rocket: 登录页面可以一键切换单机模式
:car: 可以进行头像和赛车的购买和穿戴
:iphone:你可以在 Windows 、Android和IOS 设备上使用此客户端
:earth_asia: 支持多语言,通过TranslateEditor.cs可以一键创建多国语言
:page_facing_up: 个人信息页面,记录个人成就
:gemini: 计时赛和多人比赛两种竞技模式
:baby:新手教程功能,提供可视化配置新手教程方案
:roller_coaster: 路线规划功能,自定义路线
:star2: 引入技能系统,让玩家能够学习和升级各种技能,增强游戏深度和策略性。
Future Support
:hammer_and_wrench: 创意工坊
- 玩家可以自定义赛道和车辆,例如添加贴花等。
:building_construction: 基于Actor的ECS架构重构游戏服务器
- 使用基于Actor的ECS架构重构当前的服务端游戏部分。这种架构能够提高游戏服务器的性能和可维护性,使系统更加灵活和高效,适应未来更多的扩展需求。
:repeat: 回放系统
- 实现游戏回放功能,允许玩家回放自己的比赛或观看其他玩家的比赛录像。
:film_strip: 增加Unity的后期处理特效
- 在游戏中引入Unity的后期处理特效,如泛光效果、景深、抗锯齿和颜色校正等。这些特效将大幅提升游戏画面的视觉质量,使游戏看起来更加生动和逼真,从而增强玩家的沉浸感和整体游戏体验。
:handshake: 好友系统
- 添加好友、私聊、组队功能,增强玩家社交互动。
:art: UI/UX优化
- 不断优化用户界面和用户体验,提升整体操作流畅度。
:robot: AI优化
- 不断优化AI的智能和行为,使其更具挑战性和趣味性。
:lock: 数据安全
- 加强用户数据的安全保护,防止数据泄露和作弊行为。
联系
:email: : TastSong@163.com
QQ群:577016553 <img src="./SamplePictures/qrcode_1719998390405.jpg" style="zoom:80%;" />
示例截图
<div align="center"> <a><img src="./SamplePictures/Login.JPG" width="316px" height="146px" title="Login"></a> <a><img src="./SamplePictures/Homepage.png" width="316px" height="146px" title="Homepage"></a> <a><img src="./SamplePictures/Avatar.png" width="316px" height="146px" title="Avatar"></a> <a><img src="./SamplePictures/Profile.png" width="316px" height="146px" title="Profile"></a> <a><img src="./SamplePictures/Equip.png" width="316px" height="146px" title="Equip"></a> <a><img src="./SamplePictures/Rank.png" width="316px" height="146px" title="Rank"></a> <a><img src="./SamplePictures/Setting.png" width="316px" height="146px" title="Setting"></a> <a><img src="./SamplePictures/TimeTrial.png" width="316px" height="146px" title="TimeTrial"></a> <a><img src="./SamplePictures/Match.png" width="316px" height="146px" title="Login"></a> <a><img src="./SamplePictures/Dashboard.png" width="316px" height="146px" title="Setting"></a> <a><img src="./SamplePictures/User.png" width="316px" height="146px" title="TimeTrial"></a> <a><img src="./SamplePictures/Version.png" width="316px" height="146px" title="Login"></a> </div>贡献者
欢迎任何形式的贡献,你可以用 pull requests 或 issues 的方式提交任何想法。
:seedling: 当然 Crazy Car 还很年轻,有很多不足,但请相信,它会不停向前 :running:
项目优化
优化方案总览
已完成的优化
引用
- UnityWebSocket: The Best Unity WebSocket Plugin for All Platforms.
- QFramework: Unity3D System Design Architecture
- java-Kcp: 基于java的netty实现的可靠udp网络库(kcp算法),包含fec实现,可用于游戏,视频,加速等业务
- kcp4sharp: kcp for c#.
- DOTween (HOTween v2) Unity Asset Store
- Unity实现简化版卡丁车漂移
- UIEffect: UIEffect is an effect component for uGUI element in Unity
- UnityNativeShare: A Unity plugin to natively share files
- Path-Creator: Path creation asset for Unity game development
- AudioKit:音频控制插件
- Same Material - Static Mesh Combiner :Mesh合并
- AutoLOD:自动生成降低Mesh并生成LOD
- UniTask: Provides an efficient allocation free async/await integration for Unity.
- 全部免费字体大全 (chaziti.cn)
- Transparent Culling System (URP) 遮挡剔除插件
- Simple Spin Blur
- LearnUnityShader: 记录学习Unity Shader过程中实现过的一些Demo)
- Simple Water Shader URP
- Metaverse Full-Body Online 3D Avatar Creator | Ready Player Me
- spring-boot: Spring Boot
- Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
- element: A Vue.js 2.0 UI Toolkit for Web
- vue-element-admin: A magical vue admin
- Midjourney
- Customizable skybox | 2D 天空 | Unity Asset Store
- Plugins for mobile platforms to enable file downloads in background (github.com)
- focus-creative-games/hybridclr: HybridCLR是一个特性完整、零成本、高性能、低内存的Unity全平台原生c#热更方案
- 在Unity中制作完整的技能系统(介绍篇) - 知乎 (zhihu.com)
Star History
赞助
<a href="https://hellogithub.com/repository/045fda14a27a44c8bb0c06395c93ad7b" target="_blank"><img src="https://abroad.hellogithub.com/v1/widgets/recommend.svg?rid=045fda14a27a44c8bb0c06395c93ad7b&claim_uid=zYZJtDj1XTcwveM" alt="Featured|HelloGitHub" style="width: 250px; height: 54px;" width="250" height="54" /></a>