- 博客(68)
- 资源 (4)
- 收藏
- 关注
原创 Unity-Linux部署WebGL项目MIME类型添加
在以往的文章中有提到过使用IIS部署WebGL添加MIME类型使WebGL项目在浏览器中能够正常加载,那么如果咱们做的是商业项目,往往是需要部署在学校或者云服务器上面的,大部分情况下如果项目有接口或者后台管理系统,后台基本都会使用Linux系统,那么对于Unity开发人员来说就很不友好了,其实不需要自己去部署,只需要进行相关配置,让后台开发人员直接把项目通过Linux直接部署到服务器即可,下面直接上干货。
2023-08-10 09:10:22
1864
原创 ViveInputUtility与SteamVR 2.x结合的神级UGUI交互系统(8)
单纯使用SteamVR 2.x的同学会发现,UGUI交互真是非常头疼的一件事,我在之前有出过SteamVR 2.x UGUI交互系统的文章,各位同学如果想使用纯SteamVR 2.x来开发可以参考下,若没有那么强迫症,可以使用SteamVR 2.x 与VIU结合的方式实现UGUI交互系统,直接上干货。我们可以直接使用之前03-UGUI场景中做好的UI,新建场景07-UGUI2,将UI直接拿过来用,别忘了场景中药有个EventSystem组件,不然射线没办法与UGUI交互。
2022-10-14 15:00:36
880
原创 ViveInputUtility-手柄拾取3D物体(7)
新建场景06-3DGrab,删除默认相机,新建原点空节点Player,将需要的模块拖入Player节点内,本章还是沿用第二章中的瞬移场景为基础进行讲解,使用阶梯和墙来测试手柄的拾取功能。(3)Primay Teleport Button:第一顺位拾取按钮,这里可以设置拾取的第一顺位按钮,会优先检测,一般情况下无需设置。(6)Grab On Last Entered:开启检测单手柄进入拾取,若两个手柄同时进入物体,该物体无法被拾取。本章主要介绍通过VIU,实现手柄拾取3d物体以及拾取事件触发。
2022-10-14 14:58:43
932
原创 ViveInputUtility-手柄触摸3D物体(6)
新建场景05-3DTouch,删除默认相机,新建原点空节点Player,将需要的模块拖入Player节点内,本章还是沿用第二章中的瞬移场景为基础进行讲解,使用阶梯和墙来测试手柄的触碰功能。在实际开发过程中,我们可以将监听单独使用一个脚本,保证所有3D物体通用,再自定义两个事件,用来在外部赋值事件实际逻辑。编写Demo5_VRTouch脚本,同时挂载在阶梯和墙上,触发前提条件:物体上已挂载Collider。手柄触摸3D物体的功能实现是非常简单的,VIU中有现成的相关接口,只需要继承接口并实现即可。
2022-10-14 14:53:35
339
原创 ViveInputUtility-手柄射线与3D物体交互(5)
想要实现3D物体射线拾取的功能很简单,直接在物体上挂载Draggable组件即可,拖拽前提条件:物体上已挂载Collider,运行后效果:射线对准阶梯/墙体,扣动扳机键不放可拾取物体,握持键按住不放可拾取物体并移动到距离玩家一定距离,通过触摸板可以控制拾取距离的长短。以上案例,我们除了可以在场景中放个梯子,拖拽设备瞬移到一定高度安装之外,还可以通过Draggable组件的After Grabbed、Befor Release、On Drop事件来通过直接在地面上通过射线拾取与调整距离就可以安装到指定位置。
2022-10-14 14:45:24
958
原创 ViveInputUtility-UGUI射线交互(4)
我们可以找到指定手柄下的Reticle身上的Reticle Poser组件,勾选Auto Scale Reticle参数,意思为自动缩放瞄准点,默认是不勾选状态,勾选以后,就会发现瞄准点变小了,当然,也可以通过Size In Pixels,设置瞄准点的像素,这里大家可以随意设置。ViveInputUtility对于UGUI的交互还是非常友好的,不像SteamVR,自带的没有射线UI交互系统,下面直接上干货,只需要挂载组件即可实现完整的UGUI交互系统。3、缩小手柄射线返回点。
2022-10-14 14:41:10
741
原创 ViveInputUtility-瞬移(3)
此时会发现,无论是左手曲线还是右手之前,按下触摸板,玩家都会瞬移,接下来就要关闭右手瞬移功能,如下图:找到EventRaycaster游戏对象,在ViveRaycaster组件中,将MouseButtonRight设为None,这里默认为Pad,也就是触摸板会触发瞬移,再次运行,左手触摸板按下瞬移,右手直线触摸板按下后没有瞬移功能了。这里将曲线和直线模块都拖入其中,为了方便讲解,在默认情况下,无论是曲线还是直线,都可以进行瞬移操作,但实际开发过程中,我们一般使用左手曲线瞬移,右手直线进行物体、UI的交互。
2022-10-14 14:37:30
695
原创 ViveInputUtility-按键映射与获取(2)
我们可以进入SteamVR Input界面查看htc_viu下的动作映射情况,如:viu_press_33,该动作映射扳机键,以上就是获取动作/按键的方式。新建场景01-ActionListener,删除默认相机,将ViveCameraRig预制件拖入场景内。
2022-10-14 14:32:29
893
原创 ViveInputUtility-导入包及初始化(1)
在SteamVR与ViveInputUtility导入之后,目录结构如下,可以运行内部Demo进行体验,从下章开始介绍交互功能。2、去Unity AssetStore将ViveInputUtility添加至 “我的资源”3、新建Unity项目,这里使用2020.3.26版本进行项目测试。4、导入ViveInputUtility包。
2022-10-14 14:24:36
751
原创 SteamVR 2.x Interactable组件参数解析(10)
本章开始学习手柄触摸3d游戏对象,在正式进入手柄和物体的接触式交互之前,先来讲解一个非常重要的交互组件-Interactable,该组件是物体触摸、拾取、使用的前提条件。Active Action Set On Attach:在拾取物体时激活的动作集Hide Hand On Attach:拾取物体时是否隐藏手Hide Skileton On Attach:拾取物体时是否隐藏骨骼Hide Controller On Attach:拾取物体时是否隐藏控制器Hand Animation On Pick
2022-05-11 21:12:33
920
原创 SteamVR 2.x 手柄射线与3D物体交互(9)
UI模块在前面已经讲完了,从本章开始,会着重介绍手柄与3d游戏物体之间的交互,我们平时项目开发,最常用的就是手柄射线点击物体、手柄触碰以及手柄拾取物体,先来聊聊射线点击物体。沿用的思想我们之前有说过,利用SteamVR_LaserPointer组件的PointerIn、PointerClick、PointerOut,来监听射线进入物体、点击物体、离开物体,这样就可以实现射线与3d物体的交互,直接上干货。一、前期准备新建场景,删除默认相机,将Player拖拽进入场景内新建Plane,修改为Floor
2022-05-11 21:08:50
2463
1
原创 SteamVR 2.x UGUI-凝视交互(8)
除了手部触碰以及射线交互UI以外,还有一个目前很多VR一体机使用的凝视交互,这种方式不需要使用手柄去和UI交互,直接使用凝视,几秒钟自动触发事件,不过这种方式,目前只支持Button,其他UI控件不支持,做项目UI交互的话,还是使用前两种UI交互方式。一、前期准备新建场景,删除默认相机,将Player拖拽进入场景内新建Plane,修改为Floor,上一个黑色材质球,Transform信息如下:二、添加UI及组件结构如下,添加画布、按钮1、Canvas/画布信息Render Mode要设
2022-05-11 21:05:34
1055
原创 SteamVR 2.x UGUI交互系统(7)
之前的文章有介绍使用SteamVR_LaserPointer来直接实现UGUI交互,相信各位同学也会发现这种方式比较难受,还是摆脱不了UI要挂载Collider,不是完整的UGUI交互系统。一、下载资源并导入Unity中UGUI交互系统二、前期准备新建场景,删除默认相机,将Player拖拽进入场景内新建Plane,修改为Floor,上一个黑色材质球,Transform信息如下:三、添加UI及组件结构如下,添加画布、面板、按钮、Slider、ScrollView
上章介绍了用手柄与UGUI交互,但在实际的项目开发过程中与UGUI交互,几乎都是使用手柄射线点击进行交互。本章主要介绍利用SteamVR_LaserPointer进行UGUI的射线交互,但这种方式也是需要挂载Collider,并且SteamVR_LaserPointer功能也不是很全,所以这种方式只能进行简单GUI的交互,如Button、Toggle、DropDown,像Slider、ScrollRect等需要拖动的GUI无法用这种方式来实现,后面的章节中会使用自定义UGUI机制来实现完整的UGUI交互系
2022-05-11 20:53:41
2969
3
原创 SteamVR 2.x UGUI-手柄交互(5)
本章介绍在UGUI上挂载组件后,可通过手柄与动作结合与UGUI交互。一、前期准备新建场景,删除默认相机,将Player拖拽进入场景内新建Plane,修改为Floor,上一个黑色材质球,Transform信息如下:二、添加UI及组件结构如下,添加画布、面板、按钮、选项框、下拉框1、Canvas/画布信息Render Mode要设置为World Space/世界模式2、Button信息3、Toggle信息4、DropDown信息5、DropDown元素信息让UGUI可以被
2022-05-11 20:48:02
797
原创 SteamVR 2.x 瞬移(4)
本章介绍通过组件,让用户在场景内瞬移。一、前期准备新建场景,删除默认相机,将Player和Teleporting拖拽进入场景内新建Plane,修改为Floor,上一个黑色材质球,Transform信息如下:再新建一个Plane,修改为TeleportArea,Transform信息如下:到此运行游戏,通过遥感/触摸板可以在TeleportArea区域内进行瞬移二、TeleportArea该组件一共只公开了两个参数1、Locked:勾选前后颜色不同,在勾选状态,该区域可见不可移动,在非
2022-05-11 20:40:54
1147
原创 SteamVR 2.x 动作绑定与获取(2)
通过上章内容,我们知道,default下默认定义了很多动作,当然,我们也可以自己自定义动作。在正式开始之前,先来了解动作,顾名思义,动作就是VR设备按下了按键去做某件事,SteamVR 2.x之后,动作可自定义和编辑,在项目中设置动作,动作对应的键在外部设置,这样应用程序打包出来之后,瞬移、UI交互、拾取物体等动作可以直接通过SteamVR修改,不需要像老版SteamVR一样,需要改动代码/重新打包,下面直接上干货。一、动作添加与绑定首先VR设备需要连接到电脑上,安装SteamVR驱动在SteamV
2022-05-11 20:31:02
1988
3
原创 SteamVR 2.x 导入SteamVR包及初始化设置(1)
本系列课程以LTS版本:Unity 2020.3.26f1进行学习和测试一、创建项目二、获取StreamVR包新版本Unity在编辑器内部舍弃了AssetStore,需要登录AssetSotre保存插件至个人资源内具体怎么登录就不演示了三、在项目中导入弹出如下界面,直接点Accept All四、SteamVR初始化这里默认设置点击保存即可五、戴上VR设备体验示例场景...
2022-05-11 20:23:24
2142
原创 UnityWebRequest-Post Xml请求
本章介绍Post请求传入Xml用法直接上代码:using System;using LitJson;using System.Text;using UnityEngine;using System.Collections;using UnityEngine.Networking;using System.IO;using System.Xml.Serialization;using System.Xml;public class Test : MonoBehaviour{
2022-04-26 23:05:57
467
原创 Unity语音合成-初识有道语音合成
相信各位同学在制作项目的过程中,或多或少都会有播放语音提示的功能,除了在线语音合成和和网上下载的语音合成软件进行语音合成以外,我们也可以自己选择接入sdk合成语音,为了方便大家入门和学习,推荐使用有道语音合成,简单并且方便上手,在注册后会送新人一定的体验金,学习语音识别或其他语音识别绰绰有余,这里直接进入主题。一、注册账号官网注册账号:https://ai.youdao.com/二、创建应用这里其实和咱们接入AR流程差不多,我们新建一个应用的目的就是使我们作为用户拥有接入sdk的权限,通过应用ID
2022-01-08 21:48:25
5534
原创 Unity接入Hololens-创建基本内容与打包调试(3)
一、创建场景二、MRTK配置保存场景三、创建Cube,并添加组件cube Transformin信息:cube 组件信息:四:运行效果运行后,按下空格进行手部模拟,鼠标左键可使用手拖拽Cube五、打包打包出来目录如下:为vs项目目录,需要使用vs二次编译构建后方可在Hololens设备中正常使用六、打开VS项目与Visual Studio配置(使用局域网配置法)这里需要注意的是:可使用USB调试、模拟器等方式进行调试,这里着重介绍局域网配置法,电脑与Hololens设
2021-12-27 21:17:25
2415
1
原创 Unity-SHA256加密
之前在接入语音识别中,发现有道用的SHA256加密算法,讯飞用的HmacSHA256加密算法,都算是对接口的一种访问加密保护,本章来介绍下两种加密算法的写法。1、SHA256加密 /// <summary> /// 加密-SHA256 /// </summary> /// <param name="str"></param> /// <returns></returns> public
2021-07-23 21:45:53
990
1
SteamVR 2.x UGUI交互系统
2022-05-19
Unity WebGL加载页面
2022-05-12
VRVideoRendering.unitypackage
2019-06-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人