首页 > 其他分享 >U3DFrameWorkDemo:零、工程说明

U3DFrameWorkDemo:零、工程说明

时间:2023-05-29 09:34:38浏览次数:60  
标签:U3D 登录 工程 Edit 说明 U3DFrameWorkDemo 服务器 资源

序言

前段时间拾起U3D时,重新看了一下之前的学习资料,整理成了一个demo。主要包含框架基本模块核心功能实现。

当然,这个小demo是我个人的学习和探索,如demo的中文解释,它是一个“原型”--既是它的优点,也是它的缺点。它并不是一个完整的框架,但包含其核心功能模块的实现思路,简单直接(应用当然要考虑更多情况)。这让我想起刚工作时前辈的指导,大概意思是“这些底层模块并不是魔法,看起来挺复杂是考虑了一些情况,其核心思想往往并不复杂,多想想要是让你设计你会怎么做”。

诚如“不懂Unix的人注定最终还要重复发明一个蹩脚的Unix”这句名言,新手朋友们若是要实际开发一个项目,建议使用ET等成熟的框架有需要稍微改改就好了,大部分成熟框架都会尽量追求通用、易用,如无必要不需要重复造轮子~

最后,欢迎讨论交流和批评,希望能帮到大家,共同进步!

目录

U3DFrameWorkDemo:一、生命周期管理

U3DFrameWorkDemo:二、资源管理

U3DFrameWorkDemo:三、脚本模块

U3DFrameWorkDemo:四、资源打包和热更

U3DFrameWorkDemo:五、UI模块

U3DFrameWorkDemo:六、网络

Multiserver游戏服务器Demo[C++&Lua]

|
|

工程下载和使用说明

下载

Github传送门
如果新手盆友不懂怎么用,可以搜下,很简单哒~
下载完成包含以下目录:
image

  • U3DFWDemoPacket U3D工程导出包
  • Server 服务器工程源码
  • ServerBin 服务器编译好的App
  • LuaEncoder Lua相关

配置

Client/U3D工程

创建一个U3D项目,我使用的是2021.3.11f1c1版本(如果有什么问题可以尝试和我使用一样的版本...)
image
把LuaDecoder拷贝到Test目录下
image
把U3DFWDemoPacket拖到U3D窗口,并导入
image
image
打开或者重加载SampleScene场景
image

Server

直接使用编译好的

运行ServerBin/Project/Run.exe
image

使用源码工程

要求VS版本最好在2019以上,并安装了至少3.0版本的CMake
进入目录
image
打开命令行,输入cmake .
image
完成大概如下,打开工程
image
把两个无用的项目卸载掉(否则可能报错)
image
找到cmake生成的这个文件也删掉
image
然后直接编译运行即可
image

测试

登录界面脚本见LoginView.lua

UI&Edit模式资源加载&登录服务器测试

首先,使用Edit编译分支,注释掉这行代码
image
然后,运行服务器
键入账号密码,登录
image
登录成功
image

如果不输入正确的账号密码会提示错误
image

当然后台也有相关打印(正常服务器程序不会如此打印,使用日志取而代之)
image

非Edit模式加载资源&资源打包热更

首先,取消Undef Edit分支的注释
image

使用分包编辑器,测试的内容什么也不需要改,大概长这样
image

选择构建,打开构建窗口,点击Publish等待构建完成(Clear是清理资源包相关的)
image

进行登录测试(确保服务器运行,服务器状态清理有点问题,有时候重新登录会闪退..,重新运行下)
image

记住这个头像,下面热更换掉这个头像
选择构建->更新包选项,点击MakeUpdateTestAsset选项生成替换资源,点击检查更新资源,最后点击UpdatePacket生成更新包
image

运行自动检查资源更新
image

点击确定下载资源并热更
image

可以看到头像已经热更掉了

标签:U3D,登录,工程,Edit,说明,U3DFrameWorkDemo,服务器,资源
From: https://www.cnblogs.com/hggzhang/p/17071995.html

相关文章

  • U3DFrameWorkDemo:一、生命周期管理
    代码参考见工程MgrBase、GameManager等代码文件,工程参考第零章工程说明概述在游戏的项目中,有一些APP中阶段的转换节点,如:进入App,登录,切地图等。通常有一些模块只在某个阶段被使用,比如:在玩家登录后启动玩家资产管理模块,玩家切地图清理(或刷新)地图资源管理模块等等。还要注意的是这......
  • 软件工程课程总结
    光阴似箭,日月如梭,不知不觉已经到了期末,在此简单做一下对软件工程这门课的课程总结。在学习软件工程课程的这一学期中,我通过王建民老师的讲解和实践操作,学习到了很多软件开发的基本理论知识和开发方法。感谢王建民老师对我们的耐心指导和教授。在软件开发中,团队合作是非常重要的。......
  • 软件工程期末总结
    软件工程期末总结作为一门涉及到实际应用的学科,软件工程在我的学习中给我带来了巨大的启示和认识。这门课程的学习,不仅丰富了我的知识面,还让我深刻地体会到了自主学习的重要性。在这篇期末总结中,我将分享我学习软件工程时的体会和思考。一、认识软件工程软件工程是研究如何高效......
  • 软件工程的问题
    我长期以来一直是这个应用程序的用户,它一直快速、响应迅速且易于使用。然而,在上周的一次更新之后,启动时间从不到一秒钟大幅增加到超过15秒。唯一明显的变化是添加了一个新的启动界面和更新了用户界面。我经常发现自己在质疑为什么工程师们会给应用程序添加某些功能,却无意中引发......
  • 软件工程课程本学期总结
    大二下学期过的很快,一转眼也快结束了;不能不让人感叹一句光阴似箭,时间从来不等人,这是我本学期的课程总结。在这个学期中,我学习了大量的软工相关的知识,从专业课程到项目实践,从个人开发到团队合作,这种全方位的学习方式让我感到收获很多。我在这个学期中遇到的一些问题,以及通......
  • 软件工程日报——《人间》读书笔记
    总结以下《人件》这本书中涉及到的几个概念和建议1、帕金森定律帕金森定律讲述了如下的定律:如果一个很平庸的人作了管理,那么摆在它面前的只有三条路:退位给有能力的人。使用比自己更优秀的属下。运用比自己还平庸的手下。第一条路和第二条路一般是个有欲望的人,都不会采取,......
  • 系统工程(十一) 信息化的概念
    信息化是在国家宏观信息政策的指导下,通过信息技术开发、信息产业的发展、信息人才的配置,最大程度利用信息资源满足全体社会的信息需求,加速社会各个领域共同发展以推进信息社会的过程信息化的主体是全社会成员(国家、企业、团体、个人),时域是一个长期过程,空域是经济和社会的一切领域......
  • 2023.5.28——软件工程站立会议(阶段二)
    站立会议内容:1.整个项目预期的任务量:目前已经花的时间:剩余的时间:2.任务看板照片: 3.团队照片: 4.产品状态:最新做好的功能:正在完成中5.燃尽图:......
  • 2023.5.28——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 机器视觉工程师,一个公司突然取消加班费意味着什么?
     家人们,跑路吧。建议结合实际自身情况,是否​跑路。某天。你的邮件里面突然收到公司的邮件,内容如下:由于经济不景气,本公司决定取消10点以后得加班费,同时取消夜宵补贴等等。如果没有加班费,恭喜你,义务劳动,但是注意“风吹草动”。看到以上内容,请大家注意,我们具体分析下:公司,订......