• WiseGlove數(shù)據(jù)手套 for Unity3D插件免費(fèi)為用戶提供

    2015/11/10??????點(diǎn)擊:

    為方便Unity平臺(tái)的客戶使用我公司的WiseGlove數(shù)據(jù)手套,公司針為Wiseglove數(shù)據(jù)手套編寫(xiě)了適合Unity3D虛擬現(xiàn)實(shí)開(kāi)發(fā)平臺(tái)設(shè)備Get WiseGlove插件。使用該插件,用戶可以很方便地在Unity平臺(tái)里使用WiseGlove和WiseXMA位置跟蹤器,不會(huì)再為數(shù)據(jù)手套不能在Unity環(huán)境使用感到困惑。


    wiseglove, wisexma unity3d動(dòng)作捕捉綁定


    在Unity3D環(huán)境下同時(shí)使用WiseGlove數(shù)據(jù)手套和WiseXMA跟蹤器



    WISEGLOVE數(shù)據(jù)手套的調(diào)用方法:

    1.設(shè)置系統(tǒng)環(huán)境變量,添加warpwiseglove.dll和Wiseglove.dll所在目錄的路徑,重新啟動(dòng)Unity3D

    2.在Unity的腳本中,添加using WiseGlove;

    [DllImport("WiseGloveU3D",EntryPoint = "wgInit")]

    private static extern int wgInit();

    [DllImport("WiseGloveU3D",EntryPoint = "wgClose")]

    private static extern int wgClose();

    [DllImport("WiseGloveU3D",EntryPoint = "wgGetData")]

    extern static void wgGetData([MarshalAs(UnmanagedType.LPArray,SizeParamIndex=1)]int[] retData);

    [DllImport("WiseGloveU3D",EntryPoint = "wgGetAngle")]

    extern static void wgGetAngle([MarshalAs(UnmanagedType.LPArray,SizeParamIndex=1)]float[] retAngle);

    3.以下為數(shù)據(jù)手套初始化
    void Start () {

    int num;

    num=wgInit();

    Debug.Log(num.ToString());

    }

    4.以下調(diào)用讀取手套傳感器值或者角度

    void Update () {

    //此處是讀取傳感器角度的過(guò)程

    float[] ret_angle;
    ret_angle=new float[5];//為WiseGlove5傳感器手套申請(qǐng)數(shù)組,長(zhǎng)度5
    wgGetAngle(ret_angle);
    Debug.Log("Angle:"+ret_angle[0].ToString()+"==="+ret_angle[1].ToString()+"==="+ret_angle[2].ToString()+"==="+ret_angle[3].ToString()+"==="+ret_angle[4].ToString());

    //界面顯示角度值
    guiText.text=("Angle:"+ret_angle[0].ToString()+"==="+ret_angle[1].ToString()+"==="+ret_angle[2].ToString()+"==="+ret_angle[3].ToString()+"==="+ret_angle[4].ToString());

    /* //此處是讀取傳感器值的過(guò)程
    GetComponent().text="WiseGlove SDK example for Unity3D";
    int[] ret_data;
    ret_data=new int[5]; //為WiseGlove5傳感器手套申請(qǐng)數(shù)組,長(zhǎng)度5
    wgGetData(ret_data);

    //調(diào)試窗口輸出傳感器值
    Debug.Log("Data:"+ret_data[0].ToString()+"==="+ret_data[1].ToString()+"==="+ret_data[2].ToString()+"==="+ret_data[3].ToString()+"==="+ret_data[4].ToString());
    */
    }

    5.以下關(guān)閉數(shù)據(jù)手套調(diào)用

    void OnDestroy () {

    wgClose();
    Debug.Log("Script was destroyed");
    }


    自此,Unity3D調(diào)用WiseGlove手套的過(guò)程結(jié)束。Have fun and enjoy!


    即日起,WiseGlove數(shù)據(jù)手套的Unity3D的插件免費(fèi)提供給用戶使用!

    公司也為WiseGlove編寫(xiě)了virtools bb插件,同樣免費(fèi)提供給用戶使用!

    再次感謝您使用我公司的產(chǎn)品,祝您在使用數(shù)據(jù)手套的工作中順心、順手!