42
電腦與通訊系 四技部 3D 貪食蛇遊戲設計 學生: 煌(4970D002指導老師: 0

崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

崑 山 科 技 大 學

電腦與通訊系 四技部

專 題 製 作 報 告

3D 貪食蛇遊戲設計

學生: 陳 坤 煌(4970D002)

指導老師: 劉 崇 汎

中 華 民 國 一 0 一 年 一 月

Page 2: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設
Page 3: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設
Page 4: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

i

摘 要

本專題使用 XNA設計一款 3D貪食蛇的遊戲,顛覆傳統二維空間的

玩法,以一個全新的立體效果來呈現。搭配 3D眼鏡以及符合的硬體配

備後,即可切換成 3D模式。將會彷彿身歷其境,讓玩家體驗不同於一

般的貪食蛇遊戲。

Page 5: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

ii

誌 謝

完成這個專題,我非常感謝我的指導教授劉崇汎老師,當初因為

某些原因而使得我只有一個人做專題,不知道該找誰當我的指導教授

時,劉崇汎老師收了我當他的專題學生。製作專題有發生任何困難或

一籌莫展時,都會不厭其煩地提供很好的意見,每個禮拜也都會關心

我們的專題進度有沒有落後,我才得以完成這個專題。

Page 6: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

iii

目 錄

頁次

摘要

誌謝

目錄 i

圖目錄 ii

第一章 緒論

1.1 前言

1.2 動機與目的

第二章 相關資料

2.1 貪食蛇介紹

2.1.1 簡介

2.1.2 遊戲技巧與心理

2.1.3 Snake '97

2.2 XNA介紹

2.2.1 概述

2.2.2 程式執行流程

2.2.3 使用XNA設計遊戲的優勢

Page 7: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

iv

2.3 3D呈現

2.3.1 3D成像原理

2.3.2 3D眼鏡

2.3.3 裸視3D

第三章 遊戲系統

3.1 遊戲基本操作

3.2 遊戲進行

3.3 開啟與關閉3D模式

參考文獻

Page 8: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

v

圖 目 錄

頁次

圖1(a) Nokia 3210

圖1(b) Nokia上的貪食蛇遊戲

圖2 Snake '97的遊戲畫面

圖3 智慧型手機遊玩Snake '97

圖4 XNA LOGO

圖5 XNA 程式執行流程

圖6 電影3D阿凡達(紅藍版)

圖7 3D攝影機

圖8 3D照相機

圖9 10.紅藍濾色片式3D眼鏡

圖10 偏光式3D眼鏡

圖11 液晶式3D眼鏡

圖12 柱狀透視鏡式

圖13 屏柵式光罩技術

圖14 戲起始畫面

Page 9: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

vi

圖15 按下UP鍵,使蛇身往上面移動

圖16 按下DOWN鍵,使蛇身往下面移動

圖17 按下LEFT鍵,使蛇身往左邊移動

圖18 按下RIGHT鍵,使蛇身往右邊移動

圖19 按下W鍵,使蛇身往螢幕裡面前進

圖20 按下S鍵,使蛇身朝螢幕外面出來

圖21 產生食物

圖22 吃掉食物後,產生新的食物

圖23 吃了很多食物的蛇

圖24 差一行而沒有吃到的情形

圖25 分數0分

圖26 分數5分

圖27 最高分

圖28 ASUS ET2400XVT

圖29 開啟3D模式後的遊戲畫面

圖30 戴上3D眼鏡玩3D貪食蛇

Page 10: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

1

第 一 章

緒 論

1.1 前言

現在市面上玩的到的貪食蛇,不管是個人電腦、手機,或者是遊

戲主機,絕大部分都是 2D 的。而 3D 的遊戲越來越多,卻少了貪食蛇

這麼好玩的遊戲。剛好指導老師購置了一台能夠切換成 3D 模式的 All

in One電腦,只要使用 XNA撰寫的程式,然後配戴 3D眼鏡,就能開啟

3D模式玩樂。所以我就想嘗試自己做一個 3D的貪食蛇來玩玩看。設計

出來還能分享給朋友、老師一起參與這遊戲。貪食蛇因為操作簡單,

又富有趣味性,遊玩時也不用思考,更不用花到多少時間,是一款老

少咸宜的遊戲。

Page 11: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

2

1.2 動機與目的

從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

計出來的,所以一直很希望有一天能夠自己設計出一款遊戲。要上大

學時,就填了幾個跟電腦有相關的科系,放榜時也如願上了崑山科技

大學-電腦與通訊系。因為我是普通高中考上來的,所以對寫程式、電

腦的軟體硬體一竅不通。所以在剛學程式時,下了很多苦心,才慢慢

懂得如何去寫程式。但畢竟課堂上所學有限,而且也只有教基本的程

式語法,所以一直找不到時機來設計屬於我自己的遊戲。而專題製作

就給了我這個機會,讓我得以完成自己小小的夢想,也能提升自己對

程式語言的功力。

Page 12: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

3

第 二 章

相關資料

2.1 貪食蛇介紹

2.1.1 簡介

貪食蛇是一個產生於1970年代中後期的計算機遊戲。此類遊戲在

1990年代由小螢幕設備引入而再度流行起來,在現代的手機基本上都

能安裝這類小遊戲。

在遊戲中,玩家操控一條細長的直線,或俗稱蛇。它會不停地前

進,玩家只能操控蛇的頭部朝向上下或左右,一路拾起觸碰到的物品,

並且要避免接觸到自身或者其他障礙物。每次貪食蛇吃掉一件物品

時,它的身體便會增長一些,速度也會逐漸加快,讓遊戲的難度漸漸

變大。有些遊戲設計成四周牆壁皆可穿透,這有時比不能穿透牆壁難

度還來得更高。貪食蛇可以考驗個人的敏捷與反應。

Page 13: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

4

圖1(a). Nokia 3210 圖1(b). Nokia上的貪食蛇遊戲

如果要說起 Nokia 令人印象最深刻的廣告台詞,恐怕就非「科技

始終來自於人性」這句話莫屬了。而當初 Nokia 似乎也了解到,玩樂

也是人性最重要的一環 。

有一種說法是,當年 Nokia 能夠贏過 Motorola ,成為手機業界

的龍頭,其中內建的貪食蛇可說是很重要的因素,相信當年有用過

Nokia 系列的使用者,應該都能同意這樣的說法。

Page 14: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

5

2.1.2 遊戲技巧與心理

玩貪食蛇遊戲,難度最大的可能不是身體最長的時候,而是開始。

那時候蛇身很短,看上去難度不大,卻最容易死掉,因為把玩一條小

短蛇最容易讓人分心,失去耐心。由於難度小,你會在不知不覺中加

快調整方向的速度,其實在遊走自如的時候蛇身加長了,而玩家卻沒

有意識到危險,在最洋洋得意的一刻突然死亡。

和別的遊戲不同,貪食蛇是一款很悲劇性的遊戲。許多遊戲都是

過關打到底,遊戲玩家以勝利而告終,而貪食蛇的結局卻是死亡。不

管你玩得多麼純熟,手藝多麼高超,你最終聽到的都是貪食蛇那一聲

慘叫。當手機上的蛇越長越長,積分越來越高的時候,死亡也就越來

越靠近。那時候忙的不是吃蛋長身體,而是為了避免撞墻死亡。

“貪食蛇”,最要命的就在一個“貪”字上。所以,有時候真的

要及時收手,不要太貪心。如果沒有逃生出口,就算手再快,面臨的

結局也是--崩盤。

Page 15: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

6

2.1.3 Snake '97

圖 3. Snake '97的遊戲畫面

回想起剛拿人生第一支手機時,當時叱吒手機界的是 Nokia 的各

款單色螢幕手機,如:3210,8210等等,相比起現在的 iPhone 及各

種智慧型手機而言,遊戲和娛樂性都是天和地的差別。

不過簡單也有簡單的好。就像這個「Snake '97」的開發者就把這

Page 16: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

7

超級懷舊的經典遊戲帶到 智慧型手機上。在 App Store 上貪食蛇這

類的遊戲非常多。而這款「Snake '97」完美地模擬了當時在各 Nokia

手機上玩這款遊戲的感覺,因為開發者在遊戲設計上還應用了當時幾

乎比現時 iPhone 還流行的多種 Nokia 手機型號,例:3210,8210

等等。讓大家可以回味一下。

圖 4.智慧型手機遊玩 Snake '97

Page 17: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

8

2.2 XNA介紹

2.2.1 概述

XNA是微軟推出的整合式遊戲開發平台,是基於 DirectX的遊戲開

發環境,也是微軟對於 Managed DirectX的修正及擴充版本。能夠支

援程式設計師使用 C# 程式語言,搭配其提供的工具和類別庫設計遊

戲程式,目的是讓遊戲開發過程變得更加輕鬆與簡單。

XNA中,X代表微軟掌握的技術資源,DirectX和 Xbox ; N代表次

世代(Next Generation) ; A代表架構(Architecture)。以 DirectX

為原型,微軟希望把 XNA發展成為所有遊戲開發平台的通用標準。

圖 5.XNA LOGO

Page 18: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

9

2.2.2 程式執行流程

圖 6.XNA 程式執行流程

XNA Framework會先呼叫 Initialize函數來初始化遊戲,包括玩

家的硬體設備,切換成全螢幕等等,往後也可以呼叫此函數來做初始

化的動作,例如遊戲重新開始這項功能就可以使用到。

再來會呼叫 LoadContent函數來載入遊戲中所會用到的資源,包

含 3D模型、2D圖片檔案,音效等等遊戲所會用到的資源。

Page 19: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

10

當所有資源都載入後,會進入到一直重複執行遊戲的過程,在重

複執行的過程中,會一直呼叫 Update函數來更新遊戲目前的狀態,這

樣就可以使用來判斷玩家對遊戲所下的動作,或是一些遊戲狀態的判

斷,接著再呼叫 Draw函數實際把畫面畫到螢幕上,程式會一直重複執

行這兩個過程,直到玩家想要結束遊戲。

至於 UnloadContent函數裡面是控制不繼續讀取用不到的資源,

但是當你需要用到那些資源時它就會去 LoadContent函數讀取資源,

最主要的目的是減輕程式執行的負擔。

Page 20: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

11

2.2.3使用 XNA設計遊戲的優勢

使用 XNA設計遊戲具有眾多的優點,除了可以支援 C#程式語言以

外,還具有可跨越平台和效能優良等優點。目前最新版能能跨越 PC個

人電腦、Xbox 360遊戲機、以及 Windows Phone 7智慧型手機平台來

做遊戲開發。

XNA支援程式設計師使用相同的程式寫法設計遊戲,不需要為不同

的平台學習不同的設計方法,只要注意遊戲執行的螢幕大小及方向差

異即可,應用程式方面幾乎完全相同。

開發不同平台的遊戲程式時,只要先建立好遊戲專案且設計好遊

戲的功能,然後使用滑鼠的右鍵點選 [方案總管] 視窗中的專案名

稱,再從出現的功能表選擇 [Create Copy of Project for XXX],就

可以依據目前專案的內容建立出指定平台上的遊戲程式專案。

Page 21: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

12

2.3 3D呈現

2.3.1 3D成像原理

根據研究,我們人類的眼睛在觀察一個三維物體時,由於兩眼水

平分開在不同的位置上,所觀察到的物體圖像是不同的,它們之間存

在著一個像差,由於這個像差的存在,通過人類的大腦,我們可以感

覺到空間的深度立體變化,這就是所謂的立體視覺原理。

據立體視覺原理,如果我們能夠樣讓左右眼分別看到兩幅在不同

位置拍攝的圖像,那就可以從這兩幅圖像感受到一個立體的三維空間。

圖 7.電影 3D阿凡達(紅藍版)

Page 22: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

13

現在所謂的 3D電影,都是透過兩台投影機各自放出左右眼的影像

到同一個螢幕上,因此當不戴眼鏡的時候,可以發現螢幕上會有兩個

不完全相同的影像;然後再透過特殊偏光眼鏡,針對一隻眼睛,濾掉

其中一個影像,讓左眼只看到左眼的影像、右眼只看到右眼的影像。

藉此,就可以透過讓兩眼看到不同的影像,來欺騙大腦,兩眼影

像會融合成一個影像,讓大腦以為我們看到的是真的立體的東西。由

於人類的雙眼集中於一面,相較其他大多數的動物來說,犧牲了視覺

範圍,卻增加了判斷深度和距離的能力。

圖 8.3D攝影機

Page 23: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

14

3D立體顯示的歷史相當悠久,早在 19世紀攝影技術剛起步時就已

經出現。做法是將 2 台相機並列模擬雙眼,同時拍下 2 張有著些微

差異的相片,之後再透過下列兩種方法觀看。

˙平行視線法:讓雙眼視線平行,左右眼分別觀看左右相片

˙交叉視線法:將雙眼視點移至近處讓視線交叉,左右眼分別觀看右

左相片

以上兩種方式不需要特殊的設備就能在一般的平面媒介上觀看到

立體影像,不過因為是以不自然的視線觀看,並不是每個人都能適應,

對眼睛的負擔也大,實用性不高。

圖 9.3D照相機

Page 24: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

15

2.3.1 3D眼鏡

之後為了滿足多人觀看的需求,因此後續也出現了以特製眼鏡來

同時提供多人觀看的各種 3D立體顯示方式,並根據運作模式分為被動

式與主動式兩大類。

【被動式 3D立體眼鏡】

被動式 3D立體眼鏡指的是眼鏡本身是單純的鏡片加鏡架所構成,

不牽涉到任何機械式或電子式的運作。雖然此類眼鏡所採用的技術有

很多種,不過基本原理都是透過光學方式讓兩組畫面分別只能穿過左

右其中一眼的鏡片,讓左右眼觀看到具備視差的影像。

【主動式 3D立體眼鏡】

主動式 3D立體眼鏡是採用液晶鏡片所構成的 3D立體眼鏡,運用

液晶可藉由電場來改變透光狀態的原理,以每秒數十次的頻率交替遮

蔽左右眼視線。播放時只要交替顯示左右眼畫面,再透過同步訊號讓

液晶式 3D 立體眼鏡與畫面同步運作,播出左眼畫面時讓右眼鏡片變

黑、播出右眼畫面時讓左眼鏡片變黑,就可以達成立體顯示的效果。

Page 25: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

16

【被動式 3D立體眼鏡】

最早問世的是採用紅色與藍色(或紅色與綠色)濾色片構成的 3D

立體眼鏡,眼鏡本身的成本很低(可使用紅藍玻璃紙與紙板製作),早

期的 3D 立體電影多採用此方式,分別投射出經紅色濾光與藍色濾光

的畫面,再讓觀看者配戴紅藍 3D 立體眼鏡來觀看。

紅藍濾色片方式可適用於平面印刷媒體或是一般顯示設備。由於

紅藍濾色片式 3D 立體眼鏡有著無法正確重現原本畫面色彩的缺點,

因此有廠商推出了改良式的「ColorCode 3D」,透過琥珀色與藍色濾色

片分別呈現彩色與單色兩組畫面,由於大腦會自動結合雙眼觀看到的

影像,因此可以獲得彩色的立體畫面。

圖 10.紅藍濾色片式 3D眼鏡

Page 26: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

17

後續在偏光技術普及後,開始有廠商採用偏光式的被動式 3D 立

體眼鏡。偏光片是透過如百葉窗般排列的矽晶體塗料薄膜(偏光膜)

來過濾原本朝不同方向震動的光線,會擋住與偏光膜方向垂直的光

線,只讓與偏光膜方向相同的光線通過。由於偏光片只會過濾光線的

方向,而不會像濾色片那樣過濾光線的顏色,因此可以完整保留畫面

的色彩。

播放時只要使用兩組設備分別透過偏光片投射出垂直偏光與水平

偏光畫面,或是使用一組設備搭配可切換偏光方向的主動式偏光片交

替投射出垂直偏光與水平畫面,再讓觀看者配戴垂直偏光片與水平偏

光片組合的偏光式 3D 立體眼鏡,就可以觀看到立體畫面。

圖 11. 偏光式 3D眼鏡

Page 27: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

18

【主動式 3D立體眼鏡】

由於液晶式 3D立體眼鏡不需要濾色或偏光等特殊構造的播放設備

就能呈現,只需要提升播放設備畫面更新頻率及添加同步訊號發送裝

置即可,是目前最廣泛應用於民生娛樂領域的方式。包括由 NVIDIA推

出的「3D Vision」以及各家電大廠最近狂推猛打的 3D 立體電視產品,

都是採用此方式。

由於畫面是採左右交替方式播放,同一時間內只有一隻眼睛能看

到畫面,因此當開啟 3D立體顯示模式時,畫面更新頻率會變為原本的

一半。如果只搭配現有的每秒 60次更新標準規格時,畫面更新頻率會

降到每秒 30次,讓觀看者感受到明顯的閃爍。因此目前各廠商所推出

的方案都是將螢幕更新頻率加倍到每秒 120次,來避免閃爍的問題。

圖 12. 液晶式 3D眼鏡

Page 28: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

19

若本身已有戴上眼鏡的話,再戴上立體眼鏡會比較辛苦,還有長

時間戴上立體眼鏡,眼睛會比較疲累。

配戴上述三種眼鏡的缺點

1. 紅藍濾色片式3D眼鏡

‧戴上後便不能看正常圖像的色彩。

2. 偏光式3D眼鏡

‧看到的影像光度會減少約一半。

3. 液晶式 3D眼鏡

‧比較昂貴。

‧較偏光眼鏡重(內置電池)

‧需要充電

Page 29: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

20

2.3.3 裸視 3D

「裸眼可視立體顯示」是基於光柵(一種由條形透鏡組成的薄片)

主要起分光作用,通過光柵控制光路,達到只讓右眼或左眼看到的目

的,基本上是雙眼視差的原理。目前為了獲得更好的立體效果,採用

光柵的平板立體顯示器一般都採用多幅圖像構成,以求物體空間位置

及深度的感覺更接近真實,同時在亮度等方面都有改善。

目前各大廠商均推出 3D顯示技術,又以裸眼 3D技術為主要重點,

在一般 TFT LCD面板上貼上一層 Lenticular Lens,讓一顯示區塊分別

對左右眼送出不同視角的兩個影像,再透過人腦處理後產生立體感。

Page 30: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

21

目前全球裸眼的 3D顯示技術主要有二大基礎,一是柱狀透鏡式,

二是屏柵式光罩,而積極開發裸眼 3D的各家廠商,均採取柱狀透鏡式

技術,優點是亮度較高,缺點則是成本偏高;工研院研發出的 3D專利

技術微位相差膜,是以屏柵式光罩技術為基礎,成本較柱狀透鏡式更

低,不過透光性則不及柱狀透鏡式,必需在一定的距離以及範圍內,

眼睛才能看到 3D立體影像,超過此一範圍,則感受不到。

圖 13. 柱狀透視鏡式

Page 31: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

22

圖 14. 屏柵式光罩技術

裸眼雖然突破戴眼鏡的限制,但在產業鏈上仍然存在很多難題,

尤其是作為電視接收終端,因為要涉及到電視信號傳輸,這並不是簡

單過程。從電視台傳輸信號到解碼然後終端接收,至少也有五、六個

環節。要實現 3D的影像要從拍攝畫面的錄影機就要支援 3D,有了 3D

的內容之後,還要用 3D電視、3D播放機、藍光才能看。而「藍光光碟

聯盟」也已經製造出可播放 3D影像的藍光光碟,3D藍光的數量也會隨

著 3D電影跟著增加,不會有買了 3D電視但沒有影片可以播的窘境。

Page 32: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

23

第 三 章

遊戲系統

3.1 遊戲基本操作

上 : Up 前 : W

下 : Down 後 : S

左 : Left 結束 : Esc

右 : Right

圖 15戲起始畫面

Page 33: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

24

圖 16.按下 UP鍵,使蛇身往上面移動

圖 17.按下 DOWN鍵,使蛇身往下面移動

圖 18.按下 LEFT鍵,使蛇身往左邊移動

Page 34: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

25

圖 19.按下 RIGHT鍵,使蛇身往右邊移動

圖 20.按下 W鍵,使蛇身往螢幕裡面前進

圖 21.按下 S鍵,使蛇身朝螢幕外面出來

Page 35: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

26

圖 22.產生食物

當開始遊戲後,場景會隨機產生一顆食物,而玩家要去拾取

圖 23.吃掉食物後,產生新的食物

前往吃掉之後,蛇的身體會加長一格,然後場景會再產生一顆食物

Page 36: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

27

3.2 遊戲進行

圖 24.吃了很多食物的蛇

當吃的食物越來越多,身體漸漸變長的時候,蛇移動的速度也會逐漸

加快。

遊戲開始後蛇會一直前進,遊戲也會一直持續進行,不會中途停止,

除非撞到牆壁或吃到自己。

Page 37: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

28

圖 25.差一行而沒有吃到的情形

為了讓玩家能夠更加輕鬆地遊玩 3D貪食蛇,所以我加入了陰影這項元

素,陰影就是蛇頭跟食物投射在四周圍顯示出的位子,如圖 25。如果

沒有陰影的話,很容易會對錯行而沒有吃到食物,有陰影後會很清楚

的知道自己在 3D空間中的位置,也能知道距離牆壁跟食物還有多少位

置。

Page 38: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

29

圖 26.分數 0分

為了讓玩家玩得更起勁,所以我在畫面的左上角加入了分數。

剛開始玩是 0分,吃一顆加 5分,遊戲的速度越快,加的分數會越多。

圖 27.分數 5分

Page 39: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

30

圖 28.最高分

有了分數之後,我又加了最高分上去,這樣就會為了破自己的紀錄,

而有更想玩遊戲的念頭。

在遊戲進行時,會將分數寫到設定好的.txt檔裡,每次遊戲開始時,

就會去讀取該檔,所以就算關掉整個遊戲,最高分也會是保留。

Page 40: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

31

3.3 開啟與關閉 3D 模式

圖 29. ASUS ET2400XVT

只要使用 XNA撰寫的程式,電腦硬體設備都有符合規格後,開啟

全螢幕後,就會自動切換成 3D模式,戴上 3D眼鏡就會有立體的效果,

不用在額外編寫程式。

Page 41: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

32

圖 30.開啟 3D模式後的遊戲畫面

圖 31.戴上 3D眼鏡玩 3D貪食蛇

Page 42: 崑 山 科 技 大 學 電腦與通訊系 四技部 專 題 製 作 報 告ir.lib.ksu.edu.tw/bitstream/987654321/16355/2/專題... · 2 . 1.2 動機與目的. 從小到大,我玩的遊戲都是別人寫好的,使用的程式都是別人設

33

參 考 文 獻

[1] Aaron Reed﹐Learning XNA 3.0 實戰手冊﹐悅知文化﹐2009年

7月