重力感应(陀螺仪)开关


Warning: Undefined array key "pano2vr_player_version" in /www/wwwroot/www.pano2vr8.com/wp-content/plugins/garden-gnome-package/include/ggpackage.php on line 43

Warning: Undefined array key "object2vr_player_version" in /www/wwwroot/www.pano2vr8.com/wp-content/plugins/garden-gnome-package/include/ggpackage.php on line 44

我们在之前基础教程中已经介绍了如何开启重力感应(参考:HTML网页设置(开启重力感应))

开启之后在移动端浏览全景漫游时,会一直保持重力感应状态,在一定意义上并不方便。我们在这里制作一个开关按钮,控制这一功能。

添加按钮。

给按钮添加动作。

URL处填写的是  javascript:gyro.toggle();  (复制使用时,不要多复制了空格)

输出预览。

 

另外这里补充一点,当我们开启了重力感应,并且设置了小行星开场,在移动端时两者会有冲突,会出现小行星开不了场,卡在立体投影的视角。解决办法就是,让重力感应在开场的时候就关掉,或者延时启用,避开小行星开场。

如果是让重力感应在开场的时候就关掉,通过按钮来开启或关闭。

只需要给任何一个皮肤元素添加上如下动作。为了不混乱,我们可以将这个动作添加给重力感应的开关按钮。

URL填写是  javascript:gyro.disable();

如果是让重力感应延时开启,避开小行星开场,当然还可以通过上面的开关按钮来开启或关闭。

在皮肤中添加一个定时器。

设定时长为3或4秒。这是依据默认小行星速度为2时的加载时间,速度不一样,时间不一样,这里设置的时间也不一样,要保证这里的时间大于小行星的开场时间。类型一定要注意是初始值,“初始值”是指定时器这个元素加载就激活,“读取完毕”是指是指六面片即场景加载完毕即激活,这两种类型“初始值”加载的更早。

然后,给定时器元素添加上动作。

URL填写的是   javascript:gyro.enable();

当然为了集中管理,我们可以将上面的关闭统一添加给计时器。

这样做就会在项目加载时关闭陀螺仪,3秒后计时器停用,开启陀螺仪。

另外注意,这里的 javascript 语句不要随便用,放到其他元素的激活或停用动作里,会出现黑屏错误。

注:之前的内容有误,导致小行星开场和重力感应依旧是冲突的,在会员353****858@qq.com的提醒下,已做修正,非常感谢。

“重力感应(陀螺仪)开关”的5个回复

  1. javascript:gyro.disable(); 是关闭陀螺仪,javascript:gyro.enable();才是开启陀螺仪。

    1. 最主要是ssl,没证书就没效果,我也这样,你去阿里、腾讯云注册个账号有赠送的,几块十几块就搞定一个测试服务器。

发表回复

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