Unity3d面试题(每天五个)

本文涵盖了Unity3d面试中的关键知识点,包括TCP与UDP的区别,MeshRenderer组件的material与sharedMaterial特性,Socket通信的基本概念,对象池的应用场景,以及在FPS游戏中处理网络延迟导致的丢包、粘包和半包问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么是TCP什么是UDP?
 

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。
UDP (User Datagram Protocol 用户数据报协议)是OSI(Open System Interconnection开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。


两者的区别:
第一种:
TCP面向连接,在发送数据之前,需要客户端和服务器之间建立连接,而UDP不需要实时连接,在每次传输时根据IP和端口号将报文发送给指定的用户。
TCP中有数据安全校验,更为安全和复杂,能够保障数据正确的传输,且有重发机制,能提供可靠的传输。
UDP结构较为简单,开销小,传输速度快,但不保证传输数据的正确性,因此UDP的传输不可靠。
但随着网络的不断升级,数据在传输过程中差错率已大大降低,UDP可以一对多的传输,且其程序开销小,传输速度快,因此其应用也越来越广泛。

第二种:

1.TCP提供的是面向连接的、可靠的数据流传输;UDP提供的是非面向连接的、不可靠的数据流传输。
2.TCP提供可靠的服务,通过TCP连接传送的数据,无差错、不丢失,不重复,按序到达;UDP尽最大努力交付,即不保证可靠交付。
3.TCP面向字节流;UDP面向报文。
4.TCP连接只能是点到点的;UDP支持一对一、一对多、多对一和多对多的交互通信。
5.TCP首部开销20字节;UDP的首部开销小,只有8个字节。
6.TCP的逻辑通信信道是全双工的可靠信道;UDP的逻辑通信信道是不可靠信道。





2.MeshRender中material和sharedmaterial的区别?

修改material仅仅是改变当前游戏对象在缓存中拷贝的材质数据,因此仅对当前游戏对象造成影响。
如果修改shareMaterial则是修改引用Assets中的原材质信息,因此会对
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值