位置: 编程技术 - 正文

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)

  • 增值税税率是怎么规定的
  • 扶贫入股分红能领多久
  • 个体户年报纳税额怎么填
  • 预缴所得税的计税依据
  • 车船税在备注栏怎么报表
  • 餐饮发票个人抬头怎么写
  • 境外签署合同的效力
  • 资产负债表的日期可以是1月1日吗
  • 小规模纳税人季报还是月报?
  • 净资产利润率等于净资产收益率吗
  • 往来核算在会计哪个科目
  • 押金放到哪个会计科目
  • 医院其他应付款过高的原因
  • 同一控制下企业合并会产生商誉吗
  • 建安发票税率是多少2011年
  • 合理工资薪金的确认原则
  • 汽修厂的财务怎样做账
  • 金税盘点了没反应
  • 补交社保如何证明劳动关系
  • 进项票也要缴纳印花税吗
  • 小规模纳税人含500万吗
  • 公司名下的车怎么上牌
  • win11如何多窗口
  • 视频监控维护
  • 外观设计专利费减
  • win8电脑系统还原
  • php查找文件目录下文件
  • codeinteger
  • ubuntu 20.04.1
  • 土地出让金土地使用税
  • PHP:iterator_to_array()的用法_spl函数
  • 可以转增资本的有哪些科目
  • 存放同业属于什么业务
  • 【安装 】
  • 布拉索夫地图
  • 土地增值税的具体规定
  • 出口退税进项发票稽核
  • 个体户对公账户怎么办理
  • elementui rule
  • 应收账款需要计提损失准备吗
  • php三级分销思路
  • 基于springboot的oa
  • 能用javascript 最终
  • deepsort 跟踪
  • 融资租入固定资产的改建支出
  • 个税系统为什么没有累计数据
  • 开发商需要缴纳保证金
  • 标签显示内容怎么设置
  • 品种法成本核算的程序有哪几步?
  • sqlserver2005没有实例
  • c#获取局域网ip
  • 暂估入账后续处理
  • 个税里的年金是指
  • 其他应收款收不回来怎么写情况说明
  • 印花税怎么进行税种认定
  • mysql从一个表导入记录到另一个表
  • 让Vista响应更快
  • 两台电脑如何共享网络
  • 硬盘安装windows11
  • linux ubuntu安装教程
  • u盘启动pe装机工具怎么用
  • linux和windows关系
  • 未能打开这台计算机上的组策略对象
  • win7系统自带刻录启用
  • jquery文本框内容改变事件
  • dos命令语法
  • google gsoc
  • python面向什么编程
  • node怎么实现多线程
  • 深入理解中国式现代化
  • Python 使用requests模块发送GET和POST请求的实现代码
  • javascript中checkbox使用方法简单实例演示
  • javascript引用值
  • JQuery点击行tr实现checkBox选中的简单实例
  • python设计内容
  • 容积率大于0.5 房产原值怎样算
  • 个人所得税选择那种方式更好
  • 税务核查系统
  • 2022年国家标准公文格式
  • 青岛工商全程电子化
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设