代码拉取完成,页面将自动刷新
wasd
键控制人物移动漫游,space
键跳跃,鼠标右键转动视角观察,鼠标左键进行操作。
图片展示区域:单击图片可以弹出图文介绍
视频展示区域:单击可播放视频
图片轮播区域:单击切换图片显示,上一张、下一张
答题区:可以进行答题互动
游戏体验区:玩互动小游戏
模型展示区:点击模型可以自由观察3D模型
导航图:点击相关地点进行跳转。
音乐播放器:听歌切歌
小地图:展示缩略图
小导游:可以进行导览提示
.......
资源 ——> 导出包
可以把项目里面的所有东西打包成一个 .unitypackage
为后缀名的文件。
给空物体添加角色控制器,充当玩家。将摄像机添加成玩家的子物体,充当眼睛。
找到方向,然后调用CharacterController
组件的Move
方法就能进行移动。
编辑 ——> 项目设置
轴向Axis
水平Horizontal:a为负值,d为正值、小箭头left、right...
垂直Vertical:w、s
得到水平和垂直轴向上按键后的返回的值。
得到方向
// Input.GetAxis("Horizontal")返回括号内轴向的值
myDirection = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
// transform.TransformDirection()从自身坐标转化为世界坐标
myDirection = transform.TransformDirection(myDirection);
将ScrollBar
组件添加成(拖动到) Scroll Rect
的 垂直滚动条,作为滚动状态控制器。
可用于播视频
给他添加播放视频组件:video player
using UnityEngine.Video; // 播放视频要引入头文件
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
using UnityEngine.UI;
public class VideoDisplay : MonoBehaviour
{
private RawImage raw; // RawImage组件
private VideoPlayer video; // VideoPlayer组件
// Start is called before the first frame update
void Start()
{
raw = GetComponent<RawImage>();
video = GetComponent<VideoPlayer>();
}
// Update is called once per frame
void Update()
{
raw.texture = video.texture; // 让video的材质给image的材质,就能显示图像了
}
}
渲染模式摄像机近平面即为全屏,记得给摄像机
if (Input.GetKey(KeyCode.F)) // 按F键视频全屏
{
video.renderMode = VideoRenderMode.CameraNearPlane; // 渲染模式为摄像机近平面
}
if (Input.GetKey(KeyCode.Escape)) // ESC 退出全屏模式
{
video.renderMode = VideoRenderMode.RenderTexture; // 渲染器纹理
}
// 视频静音
video.SetDirectAudioMute(0, true);
为 false
即按钮不可点击,按钮置灰,为 true
恢复状态
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[System.Serializable] // 序列化
public class dataModel
{
public int[] number; // 题号字段
public string[] title; // 题目
public string[] A; // A选项
public string[] B;
public string[] C;
public string[] D;
public string[] answer; //答案
}
{
"number": [1, 2, 3, 4, 5],
"title": ["2+5=?", "中国的首都在哪里?", "How old are you?", "国庆节是哪一天?", "2*3=?"],
"A": ["7", "上海", "18", "10月1日", "9"],
"B": ["2", "广州", "20", "7月1日", "6"],
"C": ["10", "北京", "21", "6月1日", "5"],
"D": ["3", "杭州", "22", "1月1日", "1"],
"answer": ["A", "C", "D", "A", "B"]
}
dataModel obj; // 数据模型对象
// Start is called before the first frame update
void Start()
{
// JsonUtility.FromJson<数据模型>(json字符串)
// 将从JSON中读取的字符串转换为对应模型对象
obj = JsonUtility.FromJson<dataModel>(LoadFromJson());
}
private string LoadFromJson() // 从JSON文件中读取数据
{
StreamReader reader;
string json; //读取到的字符串
if (!File.Exists(Application.dataPath +"/data/question.json"))
{
print(Application.dataPath + "/data/question.json" + " 文件不存在");
// 没有找到文件
return null;
}
reader = new StreamReader(Application.dataPath + "/data/question.json"); // 分配读取文件的路径
json = reader.ReadToEnd(); // 重头读到尾,返回字符串类型
return json;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。