- 博客(5)
- 收藏
- 关注
原创 NetCode报错
问题的原因是在预制体上有嵌套的NetworkObject组件。建议的做法是在文件夹中找到可能出问题的预制体然后直接将整个预制体的NetworkObject组件移除,再重新添加。子 NetworkObject 不会通过网络生成!Bug出现的原因是由于ServerRpc方法名称起错了 它的后缀一定是ServerRpc(或ClientRpc)如果你的方法名称后缀错误,在VS中不会显示报错,但Unity中会显示报错。另一个问题是关于ServerRpc的,忘记进行Bug内容截图了。
2025-03-12 18:40:10
336
原创 Unity使用NetCode制作多人游戏时找不到Netcode预制体
如果预制体中没有Network Object组件 而放置在场景内的物体有,那就删除掉场景物体上的Network Object组件或者是为预制体添加,并将预制体添加到NetCodeManager。本人是由于在game场景中为场景物体添加了Network Object组件 但没有为其预制体添加后导致的。如果依旧无法解决,可以查看下面的Unity社区讨论贴。个人是在学习猿神的胡闹厨房项目时出现的该bug。
2025-03-04 17:26:59
265
原创 Unity入门项目John Lemon‘s Haunted Jaunt中的Obsever脚本
Physics.Raycast是Unity中用于检测射线是否与场景中的物体发生碰撞的方法,定义在UnityEngine.Physics类中,其第一个参数为射线、第二个参数是用于存储碰撞信息的RaycastHit结构体。Tramsform是Unity的一个组件,是每个游戏对象的跟节点,包含了对象在3D空间的位置、旋转等在C#中使用Unity.Engine即可使用其方法。RaycastHit 是Unity中的结构体,用于存储射线(Ray)的碰撞信息。Ray是Unity.Engine中的一个类 用于表示射线。
2024-06-26 13:26:50
450
原创 Unity入门项目John Lemon‘s Haunted Jaunt中的GameEnding脚本
是调节Canvas中的alpha数值的方法以此调节动画的透明度。可以实现动画逐渐淡出或淡入的效果。传入的参数分别是 Unity中的Canvas组件、一个用于判断是否重开的BOOL 以及AudioSource组件。OnTriggerEnter用于检测游戏对象触发一个碰撞器的事件 传入的参数Collider是触发事件的目标。是Unity提供的一个退出游戏的方法,是一个不可逆的操。Time.deltaTime是一个表示上一帧到当前帧所用时间的变量,表示每一帧的间隔。CaughtPlayer为受伤判定。
2024-06-26 10:28:25
576
原创 Unity入门项目John Lemon‘s Haunted Jaunt中的PlayerMovement脚本
Input.GetAxis("Mouse X")和 Input.GetAxis("Mouse Y")则获取鼠标的滚轮轴的输入,分别对应鼠标的水平和垂直滚轮移动。m_Movement.Normalize()进行向量的归一化,将Vector3中的向量长度缩放为1,并保持方向不变,确保移动速度不收输入值大小影响。Unity自动绑定了键盘的WASD以及上下左右。Rigibody是Unity中提供控制游戏对象物理状态的组件 ,用户可以通过Rigibody组件来控制游戏对象的速度、旋转和其他物理属性。
2024-06-26 09:24:22
1159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅