99国产欧美另娄久久久精品_国内自拍农村少妇在线观看_久久亚洲道色宗和久久_日本aⅴ大伊香蕉精品视频_亚洲国产欧美日韩欧美特级_日本视频免费在线观看

  • 您的位置:首頁 > 新聞動態 > Unity3D

    UNITY3D 與 HTC VIVE 數據手套VR應用開發

    2017/11/22??????點擊:

    目前很多VR客使用UNIYT3D做VR應用開發時,*新的SteamVR1.2.1在Unity5.4.4下狂報錯,這是因為vive的sdk SteamVR在升級,會有些改動。

    下面的內容是在以下環境完成的 unity5.6.2f1

    1、導入SDK:SteamVR Plugin和Vive Input Utility

    2、將CamerRag拖入場景

    3、添加拾取對象

    添加一個3d對象,并添加腳本BasicGrabbables即可,則物體可以被拾取。物體要被拾取,還需要添加剛體組件

    4、添加觸碰對象

    添加一個3d對象,默認即可觸碰

    5、添加接觸效果

    在3d物體上添加腳本MaterialChanger,設置其參數

    Normal:默認貼圖

    Heightlight:觸碰后的貼圖

    Pressed:按下按鈕時的貼圖

    Heighlight Button:指定按鈕,默認是Trigger

    6、運行

    觸碰拾取對象時,顯示綠,

    按下按鍵后,變紅,可以移動旋轉物體

    觸碰對象可以觸碰,按下按鍵變紅,但無法移動和轉動

    7、事件響應

    vive支持以下事件

    • IColliderEventHoverEnterHandler
    • IColliderEventHoverExitHandler
    • IColliderEventPressDownHandler
    • IColliderEventPressUpHandler
    • IColliderEventPressEnterHandler
    • IColliderEventPressExitHandler
    • IColliderEventClickHandler
    • IColliderEventDragStartHandler
    • IColliderEventDragUpdateHandler
    • IColliderEventDragEndHandler
    • IColliderEventDropHandler
    • IColliderEventAxisChangedHandler
    使用方法,新建腳本如下,并把腳本添加到游戲對象,即可。
    1. using System.Collections;  
    2. using System.Collections.Generic;  
    3. using UnityEngine;  
    4. using HTC.UnityPlugin.ColliderEvent; 
    5. public class viveLearn : MonoBehaviour,IColliderEventHoverEnterHandler {  
    6.  public void OnColliderEventHoverEnter(ColliderHoverEventData eventData){  
    7.  Debug.Log ("hover");  
    8.  }  
    9. }  

    如何把數據手套集成到VIVE開發應用里?

    1.首先建立一個UNITY3D工程, 導入HTC VIVE開發包

    2.導入WONGLOVE數據手套的U3D開發包

    在U3D的資源列表里可以看到項目里有WONGLOVE_RIGHTARM.CS腳本和WONGLOVE數據手套的調用插件程序。

    3. 把WONGLOVE的調用腳本拖到場景內的主相機/ 或者其他物體上,并選擇好數據手套端口號(可以在控制面板->設備管理器)。

    4. OK, 現在已經建立好了UNITY3D+VIVE環境下數據手套的功能配置。

    6. 數據手套的主要源碼片段

    //初始化數據手套

    void Start () {
    ret_angle=new float[19];

    armsensor = new float[12];   //帶有手臂跟蹤功能擴展的數據手套專用
    feedback = new byte[5];      //帶有力反饋功能能擴展的數據手套專用
    openstate = wgInitManu(port);  //打開數據手套端口,并對手套標定變量初始化
    Debug.Log("open state:"+ openstate.ToString());

    }

    //這里是刷新程序片段
    void Update () {

    if (openstate == 1) {
        wgGetAngle (ret_angle); //讀取數據手套的角度值
        wgGetQuat (armsensor); //讀取數據手套的手臂跟蹤傳感器值
    }

    //模型手臂旋轉
    model_uparm_right.rotation   = &armsensor[0];
    model_forearm_right.rotation =  &armsensor[4];
    model_hand_right.rotation     =  &armsensor[8];
    //模型手關節旋轉,以大拇指關節為例
    Thumb_R.rotation = Quaternion.Euler (0,-ret_angle [0] ,0) ;
    Thumb_R1.rotation= Quaternion.Euler(0,-ret_angle [1] ,0) ;
    Thumb_R2.rotation= Quaternion.Euler(0,-ret_angle [2] ,0) ;
    ....此處省略其他手指的設置

    //數據手套的力反饋測試設置
    if (Input.GetKey (KeyCode.Alpha1)) {
    feedback [0] = 16; feedback [1] = 0;feedback [2] = 0;feedback [3] = 0;feedback [4] = 0;
    wgSetFeedBack(feedback);
    }
    if (Input.GetKey (KeyCode.P)) {
    feedback [0] = 0; feedback [1] = 0;feedback [2] = 0;feedback [3] = 0;feedback [4] = 0;
    wgSetFeedBack (feedback);
    }

    //按下R鍵,開始標定
    if (Input.GetKey (KeyCode.R)) {
        wgResetHand();  //標定數據手套的手指傳感器
        wgResetArm();  //標定數據手套的手臂跟蹤傳感器
    }
    if (Input.GetKey (KeyCode.Q)) {
    Application.Quit(); //禁止自動標定    //0 - 自動標定
    }
    }
    void OnDestroy () {
    if (openstate == 1) {
    wgClose ();//程序退出時,關閉數據手套調用資源,并釋放所有申請的內存資源
    openstate =0;
    Debug.Log ("Glove is closed!");
    }
    else 
    Debug.Log ("Glove is NOT closed!");
    }
    //數據手套的手勢定義實現過程
    //獲取WONGLOVE數據手套當前的手勢,例如:0x1f-石頭 0x17-剪子, 0x00-布, 0x1c-OK
    int CheckGloveStatus()
    {
    int gesture = 0; //0x1f;  // b1 1111
    //大拇指第0位,...小指第4位
    if (ret_angle [0] > 150 / 2)
    gesture += 0x01;  // 
    if (ret_angle [1] > 270 / 2)
    gesture += 0x02;  // 
    if (ret_angle [2] > 270 / 2)
    gesture += 0x04;  // 
    if (ret_angle [3] > 270 / 2)
    gesture += 0x08;  // 
    if (ret_angle [4] > 270 / 2)
    gesture += 0x10;  // 
    return gesture;
    }

    }

    7. 本U3D工程源

    如需要本U3D工程源碼,請聯系我們。




    主站蜘蛛池模板: 国产SM调教视频在线观看_91精品国产91久久久_久操网在线视频_麻豆我和小性熟乱_暴力强奷在线播放无码_韩国三级爽野战_av一本一道_成年人免费观看网站 | 老司机免费在线视频_成人做爽爽爽爽免费国产软件_四虎在线免费观看_懂色av中文一区二区在_亚洲AV无码乱码日韩欧美_亚洲二三区_玖玖玖在线观看_婷婷成人基地 | 亚洲视频久久_成年人a视频_91天堂_4438╳全国最大色倩网址_www.亚洲成人_youjizz日韩_色婷婷91_久久婷婷五月综合色丁香 | 色欲AV无码一区二区三区_国产亚洲欧美一区二区三区四区_日本免费一区二区三区最新_日本一区二区三区在线不卡_天堂在线中文_四虎国产精品亚洲永久免费_国产a级久久久_成年美女黄网 | 黄色在线视频网_91蜜桃臀久久一区二区_亚洲永久精品ww.7491进入_又黄又爽又色视频免费_CHINESEMATURE老女熟_国产视频一区二区91_秋霞a级毛片在线看_欧美日韩另类一区二区 | chinese猛男自慰gv网站_一级色毛片_国产成人久久精品激情_农村少妇好紧水多视频_亚洲美腿丝袜无码专区_免费看国产黄线在线观看_日韩精品一区二区三区九九_国产亚洲精品一区二555 | 国产激情视频网站_国产A级毛片色咪味_成人在线观看一区二区三区_极品粉嫩嫩模大尺度无码_亚洲国产精品一区二区久久亚洲午夜_亚洲男人的天堂在线_国产精品推荐天天看天天爽_麻豆视传媒 | 欧美特黄一级_99久久精品网_国产一区二区三区网站_久久久久久久国产精品影院_亚洲国产97色在线张津瑜_免费人成视网站在线_91成人精品一区在线播放69_国产黑色丝袜在线观看下 人妻AV无码一区二区三区_99激情网_亚洲第一无码xxxxxx_131美女MM爱做爽爽爽视频_a级毛片高清免费视频在线_久草com_久久久亚洲精品中文字幕_一区二区三区在线不卡 | 狼群社区WWW在线中文_精品国偷自产在线视频_人妻被中出不敢呻吟A片视频_99久久精品国产网站_九九在线视频_国产h片在线观看_国产美女被遭强高潮免费_欧洲vodafone精品性 | 日日色av_欧美成年_voyeur精品偷窥_丝袜美腿一区二区三区_兔子先生高清在线观看_精品国产伦一区二区三区_无码精品AV久久久免费_精品久久人妻AV中文字幕 | 中文字幕一区二区三区视频_国产鲁鲁视频在线观看_亚洲精品亚洲人成在线观看麻豆_69久久久久_7m精品福利视频导航_色婷婷精品久久二区二区我来_大香伊人久久精品一区二区_大学生一级片 | 91精品午夜视频_狂野欧美性猛交XXXX_日本不卡免费一区二区三区综合久久_亚洲一区二区三区不卡视频_99福利资源久久福利资源_性色av蜜臀av浪潮av老女人_国产成AV人片在线观看天堂无码_成网站在线观看 | 精品国产日韩专区欧美第一页_亚洲丰满少妇xxxxx高潮对白_国产xxxx搡xxxxx搡麻豆_另类视频一区二区三区_伦理片一区二区三区_国产中文区4幕区2023_精品福利视频一区二区三区_美国十次狠狠色综合AV | 日日操日日爽_一级毛片免费网站_久久久国产一区二区_日韩av免费在线播放_欧美国产日韩久久MV_国产精品∧V在线观看_国产动作大片中文字幕_国产美女自卫慰视频福利 | 91手机在线播放_xxxxhd中国_少妇激情AV一区二区三区_日本a人精品_高大丰满40岁东北少妇_熟女熟妇人妻在线视频_99在线在线视频免费视频观看_日韩国产成人在线 | 日本成片区免费久久_伦理久久_香蕉av久久一区二区三区_九九九九九九伊人_午夜精品成人一区二区_公和我做好爽添在厨房_日本色片视频_AV无码精品一区二区三区四区 | 国产精品久久久久秋霞鲁丝_无码人妻国产一区二区三区_欧美做视频_无码专区无码专区视频网址_国产女优在线观看_欧美在线视频一区二区_热播久久_色综合视频一区二区三区高清 | 成人性做爰aaa片免费看_日本激情视频中文字幕_变形金刚之超能勇士免费观看_国产精品亚洲а∨无码播放不卡_91红桃视频_良家小少妇潮喷内射_久久99精品久久久久久园产越南_国产又色又爽又刺激视频 | 国产一区二区影视_爱999精品视频_少妇xxxxx性开放_伊人精品网_福利片中文字幕_伊人九九九有限公司_免费观看一级大片_国产精品狼人色视频一区 麻豆视频污_欧美黑人巨大精品VIDEOS_久久久精品一区二区毛片免费看_日本黄色高清片_亚洲有吗在线观看_A级日本乱理伦片免费入口_蜜桃av资源_国产ts一区 | 中文字幕在线国产_亚洲一本大道av久在线播放_男人进去女人爽免费视频_中文字幕无码日韩中文字幕_日日夜夜天天射_国内久久久_狠狠做深爱婷婷久久综合一区_国产高清福利无码视频 | 人人射人人爽_国产中老年妇女精品_国产精品久久久久久男贼秘图_日本xx高清_亚洲欧洲一区二区三区_国产二级一片内射视频播放_亚洲精品热_法国性经典xxxxx | 国产一级毛片国语版_欧美网站大全在线观看_91精品亚洲影视在线观看_日本人妻人人人澡人人爽_国产原创AV在线播放不卡_在线观看爽视频_18禁强伦姧人妻又大又_亚洲综合久久av一区二区三区 | 日韩激情综合网_久久精品一日日躁夜夜躁_女十八毛片aaaaaaa片_成人无码黄动漫在线播放_国产午夜福利内射青草_xxxxxx亚洲_不卡视频一区二区三区_亚洲精品v欧洲精品v日韩精品 | 真人啪啪姿势88种_精品在线不卡_又大又粗又硬又黄的免费视频_久久国产激情视频_高清av在线_久久久久久久福利_92精品视频_日本一线在线观看 | h无码精品动漫尤物_亚洲亚洲人成网站网址_又黄又爽又无遮挡免费的网站_另类免费视频_国产强奷女交警在线播放_国产清纯91天堂在线观看_日本福利视频一区二区三区_健身教练啪啪偷拍一区二区 | 爆乳喷奶水无码正在播放_超碰在线播放97_精品视频99_麻豆少妇厨房com_性高朝久久久久久久_我和同学人妻熟妇的激情_特黄毛片在线观看_AV无码精品1区2区3区 | 中文字幕在线精品中文字幕导入_四虎精品国产永久在线观看_久久久久国产成人免费精品免费_三区四区乱码不卡_伊人色私人影院蜜桃va_欧美18免费视频_久久精品国产99久久丝袜_日本伊人久久 | 东京热无码人妻一区二区av_欧洲色婷婷_天天撸日日夜夜_浓毛熟女看18p大黑p_99国产观看免费视频_毛片毛片毛片毛片毛片毛片小_一区二区三区产品乱码的解决方法_在线涩涩免费观看国产精品 | jj男色网_正在播放长泽梓免费观看_7777888色淫网站免费视频_亚洲午夜精品视频_国产日韩在线_午夜A片免费_亚洲字幕AV一区二区三区四区_不卡av中文字幕手机看 | 国产成年人在线_久久久www免费人成黑人精品_av免费在线不卡_天天做天天爱夜夜爽毛片_久久久亚洲一区二区三区_少妇毛片一区二区三区_99久久精品国产一区二区成人_99久久亚洲精品日本无码 | 色综合首页_亚洲综合一区无码精品_黄色A级国产免费大片_在线观看a视频_色视频综合_精品国产不卡一区二区_日韩免费成人_亚洲欧洲无码一区二区三区 | 麻豆第一区mv免费观看网站_久久视频亚洲_亚洲成人欧美_国产精品免费一区二区三区观看_日本边添边摸边做边爱边_伦理片一区_美国一级大黄一片免费中文_污污污污污污污网站污 | 国产99久久久国产_日日操天天_成人三级在线_午夜视频久久久_人妻无码一区二区三区AV_亚洲成人一区二区_国产农村妇女一二区_国产精品偷伦小说 | 高清无码中字在线一区二区_免费无码国产V片在线观看_久操免费在线观看_精品久久久久久久久久香蕉_欧美三级毛片_爱情不设限在线观看_想看一级毛片_国产黄色视 | 97caopron在线视频_久久精品国产免费观看_色欲AV蜜桃一区二区三_久久精品88_瑞典性xxxxxhd高清_69av网站_91大神新作在线观看_巨茎爆乳无码性色福利 国产福利一区二区三区在线播放_中文字幕久精品免费视频_毛片a在线_精品黄色视_免费观看韩国理论片_成人免费A级毛片无码_一级免费看_中文字幕永久免费 | 久久久久久久久影院_亚洲天堂2017无码中文_欧美日韩一区二区三区_性生大片免费观看网站蜜芽_在线亚洲播放_2017狠狠拍狠狠狠色_69视频在线播放_大地资源在线观看视频 | 久久丫忘忧草产品_在线成人一区_精品久久久久久久久久_亚洲精品午夜_91骚片_最近2019中文字幕第二页_91视频麻豆_国产精品女A片爽爽波多野结衣 | www啦啦啦视频在线观看免费_一级国产aa片免费观看_无码精品A∨在线观看中文_九九精品视频在线观看_99国产精品2018视频全部_中国一级黄色片子_麻豆嫩芽忘忧草一区二区三区_99精品网 | 日本一级a毛片免费观看_69av导航_久久夜色精品国产噜噜亚洲AV_精品成人A区在线观看_gogogo免费高清在线_免费午夜影片_综合激情久久综合激情_黄页在线观看免费 | 国产精品亚洲欧美卡通动漫_午夜影院一区二区_美女黄区_人人草人_自拍私拍网友真实视频_www嫩草_久久久久91_精品视频www | 免费观看在线A毛片_亚洲中文字幕无码久久2017_老司机伊人网_一本色道久久综合狠狠躁的推荐_99久热在线精品国产观看_成人公开视频在线观看_欧美younv交_无限看片的视频高清在线 |