本日心得:
今天老師帶了整套HTC Vive到教室! 沒錯! 是整套... 完全驚訝! 因為之前有去畢業學長的公司體驗過HTC Vive,當時有一間空房間,天花板角落設置了Lighthous然後手裡拿著感測器,戴上去後完全進入了不一樣的世界,進入眼簾的是新的視野,當初還有玩射殭屍、射箭等遊戲,當時的體驗很有趣,而今天老師竟然帶了一整套... 著實讓我相當震驚,因為我記得Vive要吃很好的電腦資源,對我來說是高檔的體驗載具,沒想到今天竟然能夠在課堂中體驗...真的很酷! 老師開啟了一個 繪畫的程式,讓我們在虛擬世界裡隨處塗鴉,真的覺得很厲害,另外查了一下資料發現說Vive的一些元件的介紹,真的是長知識了R! 覺得未來應該可以有更多方面的結合,在教育上也肯定會有不錯的結合產出,對學生的學習肯定會有相當棒的幫助! 指日可待~~~
● HTC Vive 元件介紹:
Lighthouse系統是Valve公司開發出的空間定位技術,這兩個方形小盒子之所以會被稱為Lighthouse,是因為它們最主要的功能類似於燈塔發出光線指引船隻方向,Lighthouse會發出紅外線照射整個遊玩空間,使控制器和HMD可以得到一個座標,知道控制器和HMD在遊玩空間中的位置。
下面這張GIF圖是利用高速紅外線攝影機拍攝開發版Lighthouse的運作情形,Vive的Lighthouse結構不同但運作原理相同。圖中可以看到Lighthouse左邊和上面有兩排固定的紅外線LED,右邊和下面分別有垂直和水平轉動的紅外線雷射。另外Vive的控制器和HMD上有多個紅外線感應器,能夠偵測Lighthouse所發出的紅外線。
Lighthouse系統的運作方式是(可搭配下面的影片方便理解):
1. Lighthouse中固定的紅外線LED發出一陣閃光
2. 控制器和HMD上的紅外線感應器偵測到閃光開始計時
3. Lighthouse中垂直轉動的紅外線雷射掃射整個遊玩空間
4. 控制器和HMD上的紅外線感應器偵測到雷射結束計時,依據時間的長短便可以得知垂直角度
5.~8. 和1.~4.大致相同,不過將「垂直轉動的紅外線雷射」換成「水平轉動的紅外線雷射」,得知水平角度
9. 得知控制器或HMD上三個以上紅外線感應器相對於Lighthouse的垂直、水平角度後,由於每個紅外線感應器間的相對位置是固定的,便能夠推算出控制器或HMD在空間中的位置
10. 步驟1.~9.每一秒會重複執行數十次,因此即使快速揮舞Vive控制器,Lighthouse系統依舊能夠準確地追蹤控制器所在的位置
https://www.youtube.com/watch?v=J54dotTt7k0
在了解Lighthouse的運作原理後,便知道不論將Lighthouse放在哪裡都是可以使用的,只要讓Lighthouse發出的紅外線能夠照到控制器和HMD即可。Lighthouse垂直、水平都有120°相當大的照射範圍,最理想是將Lighthouse固定在天花板或牆上並向下傾斜,讓它能夠照射到最大的範圍。
Vive包含了兩個Lighthouse,建議將Lighthouse固定在房間對角,這樣一來整個房間基本上都在兩個Lighthouse的照射範圍內了。需要注意的是,兩個Lighthouse要能夠互相照射到對方才能進行無線同步,避免兩者運作不協調造成相互干擾。(在兩個Lighthouse無法照射到對方的情況下,Vive有附一條長15公尺的同步傳輸線)
另外,YouTube上也有人測試過,即使將兩個Lighthouse都放在地上也是可以使用的。(但在少數情況下,Lighthouse發出的紅外線可能較容易被使用者的身體擋住,而無法定位)
參考至: https://forum.gamer.com.tw/C.php?bsn=60599&snA=8760
1. Vive 介紹,設定,體驗
● HTC Vive介紹:
HTC Vive是即將到來的虛擬現實頭戴式顯示器,由宏達國際電子(HTC)和維爾福公司(Valve Corporation)共同開發,發布於2016年4月5日。 它也是維爾福公司的SteamVR項目的一部分。
這款頭戴式顯示器的設計利用「房間規模」的技術,通過傳感器把一個房間變成三維空間,在虛擬世界中允許用戶自然地導航,能四處走動,並使用運動跟蹤的手持控制器來生動地操縱物體的能力,有精密的互動,交流,和沉浸式環境的體驗。
如今,HTC和知名遊戲大廠Valve合作(代表作品有戰慄時空(Half-Life)系列、反恐精英(Counter-Strike)系列、傳送門(Portal)系列等,同時也營運著全球最大的電腦遊戲平台Steam),推出了具有空間定位和動作追蹤功能的虛擬實境設備-HTC Vive。多虧了Vive準確的定位系統,使用者的動作能夠1:1的反映到虛擬世界中,能夠在虛擬世界中自由走動並且利用肢體動作和虛擬世界進行「互動」,產生高度的「沉浸感」,讓人們忘記眼前所見並非真實的,帶來前所未有的體驗。
影片介紹: https://www.youtube.com/watch?v=qYfNzhLXYGc&feature=youtu.be
可結合不同形式載具結合遊戲 (槍械等...)
https://www.youtube.com/watch?v=qOE0aWWwdbo
本日實作 : for迴圈
程式:
import processing.sound.*;
SoundFile soundfile;
void setup(){
size(600,400);
soundfile = new SoundFile(this, "PPAP.mp3");
soundfile.play();
}

程式v2:
/********************************/
import processing.sound.*;
SoundFile soundfile;
void setup() {
size(600, 400);
soundfile = new SoundFile(this, "PPAP.mp3");
soundfile.play();
}
int score = 0;
int shooting=0;
float boxX=200, boxY=0;
int c=0;
char [] boxC = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',
'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
void draw() {
background(255);
boxY+=2;
if (boxY>400) {
c = int(random(26));
boxY=0;
}
fill(255);
rect(boxX, boxY, 50, 50);
fill(255, 0, 0);
textSize(80);
text(score,0,60);
text(boxC[c], boxX, boxY);
if (shooting>0) {
strokeWeight(40);
stroke(255, 0, 0);
line(300, 400, boxX, boxY);
strokeWeight(1);
shooting--;
if (shooting==0) {
c = int(random(26));
boxX=random(400)+100;
boxY=0;
}
}
}
void keyPressed() {
if (key==boxC[c]) {
shooting=10;
score = score+1;
}
else
{
score = score-1;
}
if (score == -2)
{
text("LOSER",170,280);
soundfile.stop();
stop();
}
}
沒有留言:
張貼留言