当前位置: 首页 > wzjs >正文

360做企业网站多少钱做视频解析网站要什么服务器

360做企业网站多少钱,做视频解析网站要什么服务器,h5手机端页面开发,如何创建一个公众号记录一下控制相机围绕物体旋转与移动的脚本,相机操作思路分为两块,一部分为旋转,一部分为移动,旋转是根据当前center中心点的坐标,根据距离设置与默认的旋转进行位置移动,移动是根据相机的左右和前后进行计…

记录一下控制相机围绕物体旋转与移动的脚本,相机操作思路分为两块,一部分为旋转,一部分为移动,旋转是根据当前center中心点的坐标,根据距离设置与默认的旋转进行位置移动,移动是根据相机的左右和前后进行计算,当获取到移动的值时把中心点进行移动,而不是移动相机,相机是根据中心点的坐标进行计算自己的坐标
这个中心点是一个空物体放在模型下方,不要把模型放进去
默认的角度设置需要提前说一下,例如当前我相机在场景的旋转为(39,135,0),
如果我想在运行的时候也是这个角度 就需要吧相机x轴填入到脚本的y轴上,需要取反为负数
相机的y轴放到脚本的x上,但是脚本的y需要自身的旋转减去180 设置就为(-45,-39,0)
这样做的理由就是把360的角度映射为正负1800
剩下的就是是否开启自旋转与是否可以低于地面
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

using QFramework;
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;public class Camera_模型相机 : MonoBehaviour
{// public Transform target; // 目标物体public GameObject center;//围绕点public float rotateSpeed = 5.0f; // 旋转速度public float scrollSpeed = 5.0f; // 滚轮速度public float minDistance = 20f; // 最小距离public float maxDistance = 150; // 最大距离public float initialDistance = 20.0f; // 初始距离public Vector2 initialAngles = new Vector2(0f, 30f); // 初始角度(水平,垂直)public float moveSpeed;//移动速度float move_X,move_Y;private float currentDistance;private float horizontalAngle;private float verticalAngle;public bool enableAutoRotate = false; // 是否启用自动旋转public float autoRotateSpeed = 10f; // 自动旋转速度bool bl_旋转控制;Vector3 initialPos;float time_自选择控制=5;public bool allowBelowGround = true; //是否允许低于地面public float groundHeight = 0f; // 地面高度(可自定义)void Start(){currentDistance = initialDistance;horizontalAngle = initialAngles.x;verticalAngle = initialAngles.y;initialPos = center.transform.position;UpdateCameraPosition();}void Update(){HandleMouseInput();HandleScrollInput();if (enableAutoRotate){if (!bl_旋转控制){time_自选择控制 += Time.deltaTime;if (time_自选择控制 >= 5) { bl_旋转控制 = true; time_自选择控制 = 0; }}AutoRotateCenter();}UpdateCameraPosition();}void AutoRotateCenter(){if (bl_旋转控制) horizontalAngle -= autoRotateSpeed * Time.deltaTime;}void HandleMouseInput(){if (Input.GetMouseButton(1)){bl_旋转控制 = false;time_自选择控制 = 0;// 获取鼠标移动量horizontalAngle += Input.GetAxis("Mouse X") * rotateSpeed;verticalAngle += Input.GetAxis("Mouse Y") * rotateSpeed;verticalAngle = Mathf.Clamp(verticalAngle, -89f, 89f); // 限制垂直角度}   // 新增右键平移逻辑// 鼠标左键移动if (Input.GetMouseButton(0)){bl_旋转控制 = false;time_自选择控制 = 0;move_X = moveSpeed * Input.GetAxis("Mouse X");move_Y= moveSpeed* Input.GetAxis("Mouse Y");Vector3 right = transform.right * move_X;Vector3 forward = transform.forward * move_Y;forward.y = 0; // 保持水平移动// print((right + forward));center.transform.Translate(-(right + forward), Space.World);}}void HandleScrollInput(){float scroll = Input.GetAxis("Mouse ScrollWheel");currentDistance -= scroll * scrollSpeed;currentDistance = Mathf.Clamp(currentDistance, minDistance, maxDistance);}public void ResetCamera(){// 重置到初始状态currentDistance = initialDistance;horizontalAngle = initialAngles.x;verticalAngle = initialAngles.y;center.Position(initialPos); bl_旋转控制 = false;}void UpdateCameraPosition(){// 计算旋转Quaternion yaw = Quaternion.AngleAxis(horizontalAngle, Vector3.up);Quaternion pitch = Quaternion.AngleAxis(verticalAngle, Vector3.right);Quaternion combinedRotation = yaw * pitch;// 计算相机位置Vector3 offset = combinedRotation * Vector3.forward * currentDistance;Vector3 targetPos = center.transform.position + offset;// 新增地面高度限制if (!allowBelowGround && targetPos.y < groundHeight){targetPos.y = groundHeight+0.2f; 重新计算距离保持原有水平距离//float horizontalDist = Mathf.Sqrt(//    Mathf.Pow(targetPos.x - center.transform.position.x, 2) +//    Mathf.Pow(targetPos.z - center.transform.position.z, 2)//);//currentDistance = horizontalDist / Mathf.Cos(Mathf.Asin(//    (groundHeight - center.transform.position.y) / currentDistance//));}transform.position = targetPos;// 确保相机看向目标transform.LookAt(center.transform.position);}
}
http://www.dtcms.com/wzjs/571297.html

相关文章:

  • 网站开发配置状态统计样本头条号权重查询
  • 制作网站的步骤网页设计书籍推荐
  • 商城类网站如何做seo网页游戏平台官网
  • 医疗网站跳出率摄影设计网站
  • 如何选择一家好的网站建设公司全球网
  • 网站优化排名的方法东莞网站竞价推广
  • 白云品牌型网站建设wordpress如何使用
  • 视频网站开发价格北京上海网站建设公司哪家好
  • 蛋糕店网站建设微商货源网下载
  • 济源网站开发wordpress自动回复插件
  • 织梦网站地图自动更新网站开发公司福建
  • 网站建设 招聘需求郑州网站seo外包
  • 娱乐公司网站建设价格推广网站利润
  • 网站建设综合安阳网站公司
  • 企业网站管理系统aspwordpress搭建镜像
  • 公司网站建设论文广告传媒公司介绍
  • 学校网站建设方案图片企业网站的作用
  • 高端网站设计有哪些模板网站如何建站
  • 化妆品网站优化昆明官网seo公司
  • 惠州市建网站公司昆明seo和网络推广
  • 做网站有什么书wordpress搜索按钮
  • 网站框架怎么设计河源网站建设
  • 旅游网站建设项目策划书怎么查网站关键词排名
  • 自己怎样开网站常熟网页设计报价
  • 建湖网站设计现在黄金多少钱一克
  • 网站开发建设招聘要求square wordpress
  • 做的网站怎么打开是白板上海频道网站建设公司
  • 商城网站实例企业信用公示信息网官网网址
  • 电力建设规范下载网站企业型商务网站制作做法
  • 网站开发培训北京seo搜外