unity ui解决方案新玩法-Blazor 3.点击UI中的相机方向按钮或者场景模型列表,要能控制相机移动

上一篇链接
这篇随笔是当前系列第三篇,详细说明点击UI中的相机方向按钮或者场景模型列表,要能控制相机移动的实现步骤。

1. 需求流程图

2. 具体实现步骤

2.1. 实现第一步:场景访问UI界面

  • 详细实现查看上一篇链接

2.2. 实现第二步:UI界面获取对应数据

  • 定义相机方向按钮数据和场景内模型数据
  • 创建相机方向按钮组件,并在Index组件中应用,
  • 创建模型列表按钮组件,并在Index组件中应用,

2.3. 实现第三步:返回页面

  • 启动客户端,访问页面

2.4. 实现第四步:用户点击相机方向按钮,对应按钮组件样式变化,触发事件

  • 完善相机方向按钮组件相关代码

2.5. 实现第五步:将相机移动事件发送给场景

  • 创建CameraHub并完善相关方法,相机按钮状态切换时发送事件

2.6. 实现第六步:场景相机进行移动

  • 将页面的body调至透明,以露出被遮挡的场景
  • 创建相机相关的HubService并完善连接代码,接收服务端消息并将状态同步到相机脚本中,相机脚本根据布尔量判断方向
  • 运行客户端,测试相机方向按钮的功能
    运行视频

2.7. 实现第七步:将模型数据推送给场景

  • 新建一个场景数据相关的Hub,然后利用定时器向所有连接发送场景数据
  • 客户端新建一个HubService,根据收到的信息生成对应模型

2.8. 实现第八步:点击模型按钮,按钮样式变化,触发事件

  • 完善模型按钮逻辑

2.9. 实现第九步:将点击模型按钮事件发送给场景

  • 定义一个新方法,在触发按钮状态改变时调用,将模型名称传给场景

2.10. 实现第十步:场景相机定位到模型附近

  • HubService中添加对应的事件处理配置,实现相机根据模型位置移动自身位置的方法
  • 运行客户端,测试场景模型按钮对应功能
    运行视频

3. 结尾的话

通宵写到最后急着写完这篇去睡觉,代码有坏味道了,接下来几篇里找个机会重构一下。还有就是发现嵌入视频时好时坏,干脆直接做成链接了。
下一篇链接