Html5遊戲開發攻略(API篇)

2021-12-30 04:43:25 字數 2998 閱讀 6116

如果我們要做乙個完整的遊戲,一般都有哪些效果呢?

首先,我們肯定是需要全屏的,而且,3d遊戲還有滑鼠鎖定的功能。

這些功能有很大一部分都是html5內建的,但是某些功能,比如畫布同比縮放之類則需要我們手動去 實現了。

下面,我將乙個乙個詳細的寫給各位看官。

fullscreen api

api分為兩部分,進入全屏和退出全屏。

此api可用於全屏某個元素或整個頁面,進入全屏需要制定要全屏的元素,退出則不需要。

注意:這個api在不同瀏覽器下有不同字首和名稱。

瀏覽器支援情況:ie11、chrome、firefox、安卓內建瀏覽器。

function enterfullscreen(element)

function exitfullscreen()

效果預覽:

演示位址

mouselock api

此api分為兩個部分,獲取鎖和解開鎖。

可用於獲取某一元素的滑鼠鎖,使滑鼠無法離開元素區域且滑鼠指標變得不可見。

例:cs中,滑鼠一直在中心點,且滑鼠不可見。

注:此api在不同瀏覽器下有不同名稱及字首,且鎖定後獲取到的值為以中心點為原點的向量座標。

瀏覽器支援情況:chrome、firefox

function lockmouse(element)

function unlockmouse()

效果預覽:

演示位址

audiocontext api

若我們想做一款**遊戲或**軟體的話,怎麼才能操作音訊呢?

不要害怕,我們有audiocontext api啦!可以操作音訊哦!

這個api比較複雜,這裡只提一下怎麼獲取。具體應用請看webaudioapi。

注:使用前需要將要解析的**檔案通過ajax載入並將mimetype設定為arraybuffer。

另註:解析音訊格式必須是瀏覽器所支援的html5音訊api的格式。

瀏覽器支援情況:chrome、firefox

function getaudiocontext()

效果預覽:

演示:繪製頻譜繪製音波

webrtc相關api(獲取攝像頭與麥克風)

這個api十分有趣,可以實現實時通訊與人臉識別等。

注:如果客戶機沒有安裝相關裝置或被其他應用程式占用則會獲取失敗。

另註:此api在不同瀏覽器下有不同名稱與實現。

瀏覽器支援情況:chrome、firefox

function getmedia (isenablecamera,isenablemicrophone) , gostream, nostream);

function gostream (stream)

function nostream ()

}效果預覽:

演示位址

performance api

這個api是用於效能監控的。我們通過它可以獲得到當前網路狀況以及其他資訊。

注意:該api在不同瀏覽器下有不同支援以及實現。

瀏覽器支援情況:ie9及以上、chrome、firefox

其中,通過該api我們可以獲取到其中的屬性,下面使用乙個獲取網路連線詳情來做演示

function networkstatue()

}battery api

這個api可以讓我們獲取到計算機當前電池狀態,以便我們通過程式控制省電、高效能等,對於一款好遊戲來說,是必不可少的。

注意:不同瀏覽器對此有不同實現及字首。

瀏覽器支援情況:firefox、firefox os

function getbatterystatue());

}獲取到後裡面目前有8個東西可以用,分別如下:

charging ——布林值,系統當前是否正在充電(如果系統不存在電池,或無法確定電池是否正在充電返回true)

chargingtime ——數值,指示電池完全充滿電所需要的時間(單位:秒)。

若電池完全被充滿電或系統不存在電池,返回0。

若不在充電或無法確定所需時間,則返回infinity。

dischargingtime ——數值,電池放電直到系統休眠所需要的時間(單位:秒)。

若放電時間無法確定或系統沒有電池或系統正在充電,則返回infinity。

level ——數值,裝置當前電量等級。取值在0.0~1.0之間,代表剩餘電量百分比。

onchargingchange ——充電狀態更改時觸發事件

onchargingtimechange ——充電剩餘時間更改時觸發事件

ondischargingtimechange ——放電剩餘時間更改時觸發

onlevelchange ——剩餘電量百分比更改時觸發

html5遊戲開發

一 前言 本次教程將向大家講解如何用html5將小地圖塊拼成大地圖,以及如何用現有的高階html5遊戲開發庫件lufylegend.js開發遊戲。首先讓我們來了解了解如何用html5實現動畫,畢竟 動靜結合 是先有動再有靜。看了上一章的內容,或許你就有了對html5實現動畫有了初步了解 二 html...

Html5 移動遊戲開發

有很多遊戲採用h5技術開發,比如三國來了 巴哈姆特之怒 切繩子等。我們公司也有多款遊戲用h5開發,h5開發成本低,效率高,方便做自動更新,可移植性好。受益於h5技術,我們公司的很多產品都很方便跨平台。早在2012年,我就很榮幸負責技術攻關,把我們的遊戲移植到win8和wp8平台,當時在國內的win8...

《HTML5完美遊戲開發》 導讀

本書的作者都是real wold game開發者,他們將與我們一起分享專業的開發經驗與技巧。前言 第1章 open web game王國 1.1 open web game簡介 1.2 為什麼要關注open web game 第2章 化繁為簡 2.1 自我介紹 2.2 a到b遊戲 2.3 簡化原則 ...