2017年3月29日 星期三

2017虛擬實境 賴緯漢_Week6

今天一早就去到了VR教室
今日做了兩個範例

1. VR Object Create
(使用trigger press down使用的應用)

2. VR Object Grab
(把物件拿起)

場景配置



















---------------------------------------------------------------------------------------------------------------------

Catch程式碼














蕭立人老師今日講解了準心、射擊與碰撞偵測
https://drive.google.com/drive/folders/0B3U4TWW5it5nQkRUaWV1dTdXenM

Week06 林盈君

VR實作(1)-create



//trigger
//GetPressDown GetPress GetPressUp




上課教材- Hit Bottle

Google Drive雲端網址
https://drive.google.com/drive/folders/0B3U4TWW5it5nQkRUaWV1dTdXenM

【03160135 吳亞芳】Week06

實作範例

按下控制器Trigger製造出藍Cube
按控制器Trigger製造出紅Cube


截圖待補

套用在empty object"Box"的程式碼Create:

using UnityEngine;
using System.Collections;
using Valve.VR;

public class Create : MonoBehaviour {
public SteamVR_TrackedObject rightController;
public GameObject redCube;
public GameObject blueCube;
public GameObject box;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
var device = SteamVR_Controller.Input ((int)rightController.index);
if (device.GetPressDown (SteamVR_Controller.ButtonMask.Trigger)) {
Instantiate (redCube, rightController.transform.position, rightController.transform.rotation, box.transform);


}
if (device.GetPress (SteamVR_Controller.ButtonMask.Trigger)) {
Instantiate (blueCube, rightController.transform.position, rightController.transform.rotation, box.transform);

}
if (device.GetPressUp (SteamVR_Controller.ButtonMask.Trigger)) {
foreach (Transform child in box.transform) {
GameObject.Destroy (child.gameObject);
}
}
}
}





-----------

撿東西的程式


截圖待補

控制器程式碼:


using UnityEngine;
using System.Collections;
using Valve.VR;
public class Touch : MonoBehaviour {
public SteamVR_TrackedObject leftController;
bool isTouch=false;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
var device = SteamVR_Controller.Input ((int)leftController.index);
if (device.GetPressDown (SteamVR_Controller.ButtonMask.Trigger)) {
isTouch = true;
}
if (device.GetPressUp (SteamVR_Controller.ButtonMask.Trigger)) {
isTouch = false;
}
}


void OnTriggerStay (Collider other){
if(other.tag=="catch" && isTouch){
other.transform.position = this.transform.position;
}
}
}


WEEK06楊清如

1.去205實作
    *用把手畫出方塊
   *用把手抓取方塊











2.看影片
足球踢倒瓶子

weeeeeek06_黃慧緣

1. 第一節課到VR教室實作

作業一:手把按下trigger可出現cube,按著移動有畫畫的感覺





作業二:用trigger鈕把物件拿起來放下 (時間不夠尚未完成)

Week06_02090186_雷淳閔


今日上課分兩部分:
(1)研究所學長們帶的練習生成物件與抓取與光劍
(2)蕭立人老師帶的拿球丟瓶子遊戲


(1)



1.產生新方塊
製作兩個不同顏色方塊的預置物,使手把按下Trigger時顯示一種顏色的方塊,按住Trigger拖曳時產生另一種顏色的方塊,再放開前會無限生成方塊並產生移動的路徑。


在場警中製作紅、藍色的方塊並製作成Prefab,再將場景中的方塊刪除



將紅藍方塊的Prefab拉進程式中宣告的物件





2.抓取方塊
寫程式抓取場景中的物件,能維持抓住物件的動作。






3.光劍-課後練習










(2)

在場景中架設桌子與設置瓶子,建立瓶子與要丟的球的預置物,並設置投中瓶子的積分UI



課後練習遇到的問題:
如果將Table改成非基本模型,,則瓶子都不會出現,目前還未解決





Week 06 劉正威

今天又到了實驗室去做3個實作。
第一個是按下右手板機(trigger)會產生方塊。
第二個是利用手把去抓取方塊。
第三個是利用第一個所寫的程式碼套用在光劍的效果,
也就是把控制器套上模組的意思,這樣就可以把手把改變成任何東西了。