给公交车编号
大概要求:
1、创建UI,在UI上显示0~9共10个数字,同时显示“确定”和“重置”两个按键;
2、点击UI上的1个数字,在公交车的前面板和侧面板上同步显示所按的数字,并播放相应的声音;
3、点击3个数字后,公交车的面板上不再显示后面再按数字。此时点出“确定”则依次播放所公交车面板上显示的3个数字的声音;
4、任何时候点击“重置”,则公交车面板上的数字归0,之后可以重新给公交车编号;
5、添加相机控制功能,可以方便地观看公交车各角度,包括拉远拉近。
同样的需求实现的方法有很多,代码很简单,就不注释了。
/*----------------------------------------------------------------
Created by 王银
文件名: CameraCtrl
创建时间:
文件功能描述:
Copyright © 2022年 王银 All rights reserved.
----------------------------------------------------------------*/
using UnityEngine;
namespace TestDemo
{
public class CameraCtrl : MonoBehaviour
{
public float roate_Speed = 10.0f;
void LateUpdate()
{
Transform target_transform = null;
if (Input.GetMouseButton(0))
{
//在屏幕上转换坐标:将鼠标点转换成射线
Ray rayObj = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hitObj;
if (Physics.Raycast(rayObj, out hitObj))
{
target_transform = hitObj.transform;
}
if (target_transform != null)
{
float mousX = Input.GetAxis("Mouse X") * roate_Speed;
float mousY = Input.GetAxis("Mouse Y") * roate_Speed;
target_transform.Rotate(new Vector3(0, -mousX, mousY));
Debug.Log($"MouseAxis X...Y : {mousX} .... {mousY}");
}
}
//鼠标缩放
if (Camera.main.orthographic == true)
{
Camera.main.orthographicSize += Input.GetAxis("Mouse ScrollWheel") * 10;
}
else
{
Camera.main.fieldOfView += Input.GetAxis("Mouse ScrollWheel") * 10;
}
}
}
}
/*----------------------------------------------------------------
Created by 王银
文件名:
创建时间:
文件功能描述:
Copyright © 2022年 王银 All rights reserved.
----------------------------------------------------------------*/
using System;
using System.Collections;
using System.Collections.Generic;
using TestDemo;
using Unity.VisualScripting;
using UnityEngine;
using UnityEngine.UI;
namespace TestDemo
{
public class UIToPanel : MonoBehaviour
{
public List<Button> BtnList = new List<Button>(12);
private int num;
p

该博客介绍了一个公交车编号的交互系统实现,包括UI设计、数字点击与声音播放、重置功能以及相机控制。用户可以通过点击UI上的数字按钮为公交车编号,点击3个数字后播放对应的语音,点击'确定'播放全部数字,'重置'按钮可清除当前编号。此外,系统还具备相机控制功能,允许用户自由观察公交车的各个角度并进行缩放操作。
最低0.47元/天 解锁文章
16万+

被折叠的 条评论
为什么被折叠?



