Physical Address

304 North Cardinal St.
Dorchester Center, MA 02124

ChairMovement2021 头盔单独应用的座椅播放器打包

一、工程下载

工程名:ChairMovement2021

仓库地址:ChairMovement2021@tj_onejay@cloud.cn

unity版本:2021.3.18

工程作用:打包单独的座椅播放器

功能:

  1. 打开apk后,播放指定路径下的加密视频,同时根据IP地址和动作文件驱动对应类型的座椅;
  2. 带上头盔开始从头播放视频,摘下停止
  3. 每个内容单独建立一个文件夹

二、工程结构

Assets文件夹主要包含以下内容:

_Scenes:unity场景,其中PlayVideoLoop为支持摘戴头盔实现循环播放的场景
_Scripts:

  1. Bsae:基础脚本
  2. PermissionScripts:获取权限相关的脚本
  3. Play:播放/发送座椅动作的脚本、
  4. PlayVideoLoop:读取配置文件、视频、动作文件和控制播放的脚本

Plugins->Android:支持Android 14版本下获取权限

  1. AndroidManifest.xml:安卓配置文件
  2. UnityToolsLibrary-release.aar:unity获取权限工具,仅支持unity2021版本

三、场景结构及代码

Unity场景:PlayVideoLoop

StandAlone->loadconfigs->LoadConfig.cs:读取配置文件,获取视频、动作文件路径等

    // Pico的Movies文件夹下的子文件夹,即配置文件、视频、动作文件放置的位置
    public string subpath;
    private void Awake()
    {
        // 获取权限
        PermissionManager.PermissionForAndroid();
#if UNITY_ANDROID && !UNITY_EDITOR
        RootPath = "/storage/emulated/0/Movies/"+subpath+"/";
#endif
        _Value.configsPath = RootPath + "config.txt";
        Load(_Value.configsPath);
    }

    private void Load(string configPath)
    {
        string[] temp = File.ReadAllLines(configPath);
        // 座椅IP地址:接收动作文件数据的Ip
        _Value.IP = temp[0]; 
        // 视频名
        _Value.videoPath = RootPath+temp[1];
        // 动作文件名
        _Value.actionPath = RootPath +temp[2];
        // 座椅类型
        _Value.platformType = int.Parse(temp[3]);
        // 放大/缩小系数
        _Value.Num = float.Parse(temp[4]);
}

StandAlone->controlVideo->MessageControl.cs:控制播放、停止逻辑

StandAlone->FrameSyncVideoPlay->FrameSyncVideoPlay.cs:控制视频播放、停止逻辑
StandAlone->FrameSyncActionPlay->FrameSyncActionPlay.cs:控制动作文件播放、停止逻辑

四、Build

Publish Setting->Build中选如图三项

五、打包生成APK的使用方式

  1. 在Pico的Movies文件夹下新键一个文件夹,名和LoadConfig.cs中的subpath一致

  2. 在该文件夹下放置加密的视频、动作文件(.txt)、配置文件(config.txt)

  3. config.txt中包含5行文本,分别为
    接受动作文件座椅的IP
    加密的视频文件名
    动作文件名
    座椅类型
    动作缩放系数(默认为1即可)

    其中座椅类型值如下
    2:三轴前一后二
    3:三轴前二后一
    4:双人影院
    5:皮划艇
    6:四轴赛车

留下评论

您的电子邮箱地址不会被公开。 必填项已用*标注