コード例 #1
0
ファイル: Nite.cs プロジェクト: masohail/cve-kinect
    void Start()
    {
        uint rc = NiteWrapper.Init(new StringBuilder(".\\OpenNI.xml"));

        if (rc != 0)
        {
            Debug.Log(String.Format("Error initing OpenNI: {0}", Marshal.PtrToStringAnsi(NiteWrapper.GetStatusString(rc))));
        }

        // Init depth & label map related stuff
        usersMapSize      = NiteWrapper.GetDepthWidth() * NiteWrapper.GetDepthHeight();
        usersLblTex       = new Texture2D(NiteWrapper.GetDepthWidth(), NiteWrapper.GetDepthHeight());
        usersMapColors    = new Color[usersMapSize];
        usersMapRect      = new Rect(Screen.width - usersLblTex.width / 2, Screen.height - usersLblTex.height / 2, usersLblTex.width / 2, usersLblTex.height / 2);
        usersLabelMap     = new short[usersMapSize];
        usersDepthMap     = new short[usersMapSize];
        usersHistogramMap = new float[5000];

        // text
        caption = GameObject.Find("GUI Text").guiText;

        // init our avatar controllers
        soldiers    = new SoldierAvatar[2];
        soldiers[0] = new SoldierAvatar(GameObject.Find("Soldier1"));
        //soldiers[1] = new SoldierAvatar(GameObject.Find("Soldier2")); // This line was removed so we can have 1 soldier without errors

        // init user lists - one will contain all users, the second will contain only calibrated & mapped users
        allUsers        = new List <uint>();
        calibratedUsers = new Dictionary <uint, SoldierAvatar>();

        // init user callbacks
        NewUser            = new NiteWrapper.UserDelegate(OnNewUser);
        CalibrationStarted = new NiteWrapper.UserDelegate(OnCalibrationStarted);
        CalibrationFailed  = new NiteWrapper.UserDelegate(OnCalibrationFailed);
        CalibrationSuccess = new NiteWrapper.UserDelegate(OnCalibrationSuccess);
        UserLost           = new NiteWrapper.UserDelegate(OnUserLost);

        // Start looking
        NiteWrapper.StartLookingForUsers(NewUser, CalibrationStarted, CalibrationFailed, CalibrationSuccess, UserLost);
        Debug.Log("Waiting for users to calibrate");

        // set default smoothing
        NiteWrapper.SetSkeletonSmoothing(0.6);
    }
コード例 #2
0
    public NiteController(NewUserCallback onNewUser)
    {
        // initialize the Kinect
        uint rc = NiteWrapper.Init(new StringBuilder(".\\OpenNI.xml"));

        if (rc != 0)
        {
            Debug.Log(String.Format("Error initializing OpenNI: {0}", Marshal.PtrToStringAnsi(NiteWrapper.GetStatusString(rc))));
            return;
        }
        else
        {
            kinectConnect = true;
        }

        // init user callbacks
        NewUser            = new NiteWrapper.UserDelegate(OnNewUser);
        CalibrationStarted = new NiteWrapper.UserDelegate(OnCalibrationStarted);
        CalibrationFailed  = new NiteWrapper.UserDelegate(OnCalibrationFailed);
        CalibrationSuccess = new NiteWrapper.UserDelegate(OnCalibrationSuccess);
        UserLost           = new NiteWrapper.UserDelegate(OnUserLost);

        // Start looking
        NiteWrapper.StartLookingForUsers(NewUser, CalibrationStarted, CalibrationFailed, CalibrationSuccess, UserLost);
        Debug.Log("Waiting for users to calibrate");

        // set default smoothing
        NiteWrapper.SetSkeletonSmoothing(0.0);

        // set new user callback
        this.onNewUser = onNewUser;

        // initialize gui
        gui = new NiteGUI(this);

        // initialize list of rigs to animate
        registeredRigs = new List <Rig>();
    }
コード例 #3
0
    void Start() {
		Debug.Log("Starting Nite");
		uint rc = NiteWrapper.Init(new StringBuilder(".\\OpenNI.xml"));
        if (rc != 0)
            Debug.Log(String.Format("Error initing OpenNI: {0}", Marshal.PtrToStringAnsi(NiteWrapper.GetStatusString(rc))));

        // Init depth & label map related stuff.
        usersMapSize = NiteWrapper.GetDepthWidth() * NiteWrapper.GetDepthHeight();
        usersLblTex = new Texture2D(NiteWrapper.GetDepthWidth(), NiteWrapper.GetDepthHeight());
        usersMapColors = new Color[usersMapSize];
        usersMapRect = new Rect(Screen.width - usersLblTex.width / 2, Screen.height - usersLblTex.height / 2, usersLblTex.width / 2, usersLblTex.height / 2);
        usersLabelMap = new short[usersMapSize];
        usersDepthMap = new short[usersMapSize];
        usersHistogramMap = new float[5000];

        // GUI text.
        caption = GameObject.Find("GUI Text").guiText;

        // Init our avatar controllers. In our case we have only 1 character.
        characters = new Avatar[1];
		characters[0] = new Avatar(GameObject.Find("Superman"));
		
        // Init user lists - one will contain all users, the second will contain only calibrated & mapped users.
        allUsers = new List<uint>();
        calibratedUsers = new Dictionary<uint, Avatar>();
        
        // Init user callbacks.
        NewUser = new NiteWrapper.UserDelegate(OnNewUser);
        CalibrationStarted = new NiteWrapper.UserDelegate(OnCalibrationStarted);
        CalibrationFailed = new NiteWrapper.UserDelegate(OnCalibrationFailed);
        CalibrationSuccess = new NiteWrapper.UserDelegate(OnCalibrationSuccess);
        UserLost = new NiteWrapper.UserDelegate(OnUserLost);

        // Start looking.
        NiteWrapper.StartLookingForUsers(NewUser, CalibrationStarted, CalibrationFailed, CalibrationSuccess, UserLost);
		Debug.Log("Waiting for users to calibrate");
		
		// Set default smoothing.
		NiteWrapper.SetSkeletonSmoothing(0.6);	
	}
コード例 #4
0
ファイル: Nite.cs プロジェクト: guozanhua/KinectDressingRoom
	public NiteController(NewUserCallback onNewUser) {
		// initialize the Kinect	
		uint rc = NiteWrapper.Init(new StringBuilder(".\\OpenNI.xml"));
        if (rc != 0)
        {
            Debug.Log(String.Format("Error initializing OpenNI: {0}", Marshal.PtrToStringAnsi(NiteWrapper.GetStatusString(rc))));
			return;
        }
		else kinectConnect = true;
		
		// init user callbacks
        NewUser = new NiteWrapper.UserDelegate(OnNewUser);
        CalibrationStarted = new NiteWrapper.UserDelegate(OnCalibrationStarted);
        CalibrationFailed = new NiteWrapper.UserDelegate(OnCalibrationFailed);
        CalibrationSuccess = new NiteWrapper.UserDelegate(OnCalibrationSuccess);
        UserLost = new NiteWrapper.UserDelegate(OnUserLost);

        // Start looking	
		NiteWrapper.StartLookingForUsers(NewUser, CalibrationStarted, CalibrationFailed, CalibrationSuccess, UserLost);
		Debug.Log("Waiting for users to calibrate");
		
		// set default smoothing
		NiteWrapper.SetSkeletonSmoothing(0.0);
		
		// set new user callback
		this.onNewUser = onNewUser;
		
		// initialize gui
		gui = new NiteGUI(this);
		
		// initialize list of rigs to animate
		registeredRigs = new List<Rig>();
	}