需求:开发影院系统,希望对视频播放添加一些控制——缩放、快进快退、静音
环境:Unity2021.3、PicoNeo3ProEye
描述:已有对应的“进度条”、“静音”等UI按钮和对饮脚本,但Play后点击这些按钮无法实现对应功能
问题:Canvas为Overplay时视频面板时刻保持在面前且放大(此时按钮可以正常反应,但我不希望视频面板时刻保持在面前),修改为WorldSpace后点击按钮无反应
原因:Canvas的RenderMode是Overlay就可以,是Camera / WorldSpace就不行
1、Overlay:时刻保持在面前且放大
2、Camera:保持在相机前一定位置
3、WorldSpace:当作普通物体
临时解决的思路:跳过按钮点击的操作,用键盘按键控制
//键盘控制
void Control() {
//静音
if(Input.GetKeyDown(KeyCode.M)) {
OnClickMuteBtn();
}
//暂停
if(Input.GetKeyUp(KeyCode.Space)) {
SetPauseImg();
}
//快退
if(Input.GetKey(KeyCode.A)) {
video_Slider.value -= 0.05f;
videoPlayer.frame = long.Parse((video_Slider.value * videoPlayer.frameCount).ToString("0."));
}
//快进
if(Input.GetKey(KeyCode.D)) {
video_Slider.value += 0.05f;
videoPlayer.frame = long.Parse((video_Slider.value * videoPlayer.frameCount).ToString("0."));
}
}
如有帮助,麻烦动动手指点一下赞,感谢!