位置: 编程技术 - 正文

TNet Tasharen Networking

编辑:rootadmin

推荐整理分享TNet Tasharen Networking,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

TNet TasharenNetworking插件可用于轻量级多人网络游戏的网络功能的开发。

功能说明:

每启动一次程序,自动创建一个角色,通过鼠标点击可控制角色的移动,多个客户端可同时控制各自的角色移动,并能看到其他角色的移动。

实现过程:

1、创建项目TNetDemo,导入TNetTasharen Networking 2.0.3.unitypackage。

2、解压TNetDemoAssetsTNetTNetServer.zip中的TNServer.exe,并运行。

3、创建场景start,创建一个空物体GameManager,添加脚本TNManager、TNAutoJoin。

4、创建场景game,添加cube做Ground,添加capsule做Player,作为游戏场景。

5、创建场景disconnet,添加text,作为无法连接网络时的显示场景。

6、将start、game、disconnet添加到File - Build Settings - Scenes In Build中。

7、打开start场景,在GameManager的TNAutoJoin脚本中设置First Level和DisconnetLevel属性分别为game和disconnet。

当有网络连接时,运行start,将进入game场景;若无网络连接,将进入Disconnect场景。

TNet Tasharen Networking

8、打开game场景,实现游戏功能。

(1) 在MainCamera上添加TouchHandler脚本,用于获取鼠标点击在屏幕上的世界坐标,以控制Player的移动。

(2) 在Player上添加TNObject脚本。

(3) 为Player创建PlayerMove脚本,控制Player的移动。

[csharp] view plaincopyusing UnityEngine; using System.Collections; using TNet; public class PlayerMove : TNBehaviour { public static PlayerMove Instance; /// <summary> /// 目标位置 /// </summary> private Vector3 _target; public Vector3 Target { set { tno.Send("OnSetTarget", TNet.Target.AllSaved, value); } } /// <summary> /// 移动速度 /// </summary> public float Speed = 5f; void Awake() { //只能操作自己实例化的Player if (TNManager.isThisMyObject) { PlayerMove.Instance = this; } } void Update() { this.transform.position = Vector3.Lerp(this.transform.position, this._target, Time.deltaTime * Speed); } [RFC] void OnSetTarget(Vector3 v) { this._target = v; } /// <summary> /// 有新角色加入时,初始化已有角色的位置 /// </summary> /// <param name="p"></param> void OnNetworkPlayerJoin(Player p) { tno.Send("OnSetTargetImmediate", TNet.Target.AllSaved, transform.position); } [RFC] void OnSetTargetImmediate(Vector3 v) { this.transform.position = v; } }

这里需要注意的是,Player的父类是TNBehaviour。

(4) 为Ground创建Ground脚本,实现通过鼠标点击控制Player移动的功能。

[csharp] view plaincopyusing UnityEngine; using System.Collections; public class Ground : MonoBehaviour { void OnClick() { PlayerMove.Instance.Target = TouchHandler.worldPos; } } [csharp] view plaincopy

(5) 将Player做成Prefab,删除game中的Player。

(6) 创建一个空对象,添加TNAutoCreate脚本,设置Prefab为Player。

9、打开start场景,将Player的Prefab添加到GameManager的TNManager脚本中的Objects中。

到这就OK了,可以发布一个exe运行起来,同时在unity中运行游戏,就可以看到效果了。

TNet Tasharen Networking插件下载地址: ed)

TNetDemo源码地址: TasharenNetworking视频教程:

Unity学习笔记——Scroll View的创建 创建scrollview过程1.菜单栏NGUI——Create——ScrollView(Inspector中选择方向)2.NGUI——Create——Grid(Inspector中选择方向,HideInactive)3.Grid下随便拉几个图片4.

Unity学习笔记——优化ScrollView效果 增加回弹至顶部功能:本来想自己看源码改,发现基本没看几行就有一个没见过的函数,看起来太慢了。。看了一天大致摸清楚了ScrollView的结构。最后

Re: Latest Version: 3.7.9 (January th, ) Re:LatestVersion:3.7.9(Januaryth,)«Reply#on:February,,::AM»3.8.0-NEW:AddedawaytoaddTouchScriptsupporttoNGUI:

标签: TNet Tasharen Networking

本文链接地址:https://www.jiuchutong.com/biancheng/381527.html 转载请保留说明!

上一篇:【NGUI】适配总结(适配是什么)

下一篇:Unity学习笔记——Scroll View的创建(unity study)

  • 水资源费如何入账
  • 补缴的社保可以报销吗
  • 纳税人与负税人一致的是
  • 软件产品增值税超税负即征即退
  • 股份有限公司个人所得税缴纳比例
  • 应付账款暂估余额
  • 进项税额结转不结转
  • 临时设施摊销方案怎么写
  • 应付票据保证金的会计分录怎么写
  • 货款和发票金额不符
  • 溢价收购全资子公司股票
  • 职工伙食团食谱
  • 集体土地上的不动产能符合异议28条规定吗
  • 企业境外收入税率
  • 税收分类编码选错了怎么办
  • 在境外施工由国家承担吗
  • 季报的利润表是填本期金额还是本年
  • 企业分配利润的原则
  • 记账金额如何处理账户
  • 固定资产的专票可以抵扣吗
  • 取得土地所有权范围内的树如何处理
  • 退税需要怎么操作
  • 局域网网速太慢怎么办
  • win没有投影到此电脑怎么办
  • linux joe
  • 数字证书认证系统
  • 在linux系统中拥有
  • kcleaner.exe是什么
  • 保总保安服务有限公司
  • PHP:pg_field_prtlen()的用法_PostgreSQL函数
  • 年底有留抵税额怎么结转
  • 新购车辆检测费计入原值吗
  • 人力资源外包可以去吗
  • php处理数据
  • 投资收益属于营业外收入吗
  • 小程序从入门到精通
  • 大数据热点话题
  • js匿名函数和命名函数
  • 融资租赁车辆过户给个人
  • 业务出差餐费如何记账
  • php验证码源码
  • 发票未到已付款怎么入账
  • 破产审计需要几年的账
  • 利息收入计入借方
  • 会议费可以开餐费吗
  • 房产税从租和从价哪个税金高
  • 记帐时借方是什么意思
  • 一般纳税人附加税减半征收政策2023
  • 金税盘锁死341101
  • 转让不动产怎么计算增值税
  • 银行贷款需要哪些材料
  • 如何在科目余额表中查询给另一家公司付了多少钱
  • 实收资本印花税属于什么税目
  • 社保年度汇算清缴怎么做
  • 物料损失怎么入账
  • 购销合同印花税2023年新规定
  • Win10桌面图标怎么隐藏
  • linux系统输入法锁定了怎么解开
  • mm pp dpps进程
  • mac屏幕显示设置
  • qqpcrtp.exe是什么进程 如何删除qqpcrtp进程
  • Mac如何使用Excel
  • 用linux配置ftp服务器的过程
  • win7系统怎么禁止更新
  • cocos2dx4.0教程
  • 投影变换的使用方法
  • Bootstrap与KnockoutJs相结合实现分页效果实例详解
  • 安卓手机屏幕不好使了怎么办
  • linux查看多线程
  • UNITY开发数字孪生
  • 下列关于android的说法中,错误的是
  • Node.js中的全局变量有哪些
  • 数据库的基本操作语句有哪些
  • linux查看端口占用情况并杀掉进程
  • 如何做好设计师
  • js数组添加元素的方法
  • python切片菜鸟教程
  • 税务投诉回访电话号码
  • 我国现行税法体系中采用多次课征的税种是
  • 车辆检测费属于什么科目
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设