久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx

微信小程序開發一款小游戲的示例分析-創新互聯

這篇文章將為大家詳細講解有關微信小程序開發一款小游戲的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創新互聯公司2013年成立,是專業互聯網技術服務公司,擁有項目成都網站建設、成都網站設計網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元中原做網站,已為上家服務,為中原各地企業和個人服務,聯系電話:18982081108

如何快速開發一款火爆的小游戲?“火爆”是一個偏運營的詞,今天介紹的內容可能更傾向于技術方面,即如何利用微信的開放能力開發一款小游戲。小游戲上線120天時發布了幾個重要的消息,其中有幾個數字可以用來描述“火爆”這個詞。微信小游戲正式允許第三方開發者發布的時間是在3月3日,而現在幾款小游戲的用戶已經過億,安卓月流水過千萬的也有數款小游戲,大家應該已經體會到了微信小游戲的火爆程度。


與火爆相關的兩個知識,一個就是如何開發?首先要利用好微信的社交相關性,微信去中心化的情景下社交分享互動是非常重要的,因為沒有傳統流量分發的總入口。第二個是操作的簡便性,我們根據游戲成為爆款游戲后的數據才能推出這兩個結論,并不是說具備這兩個特性就一定能開發出一款火爆的游戲。

什么是小游戲?

首先為大家介紹一下什么是小游戲:小游戲特指微信小游戲,是小程序的一個子類目,可在微信內被便捷地獲取和傳播,即點即玩,具備出色的用戶體驗。在開發的視角來看,小游戲是一個基于Canvas/WebGL + 微信社交開放能力的新平臺。在框架上看分為三層,是一個典型的分層架構。微信中有一個小游戲的Runtime去運行小游戲,而OS本身可能會涉及到不同類的設備。

微信小程序開發一款小游戲的示例分析

如果放大小游戲的Runtime可以看到很多的細節,第一就是游戲邏輯,也就是與平臺無關的游戲邏輯的開發。第二部分是游戲引擎,大部分會用到一些引擎的工作流、一些各種系統封裝好的高層的API。第三部分是weapp,小游戲的框架是參考了webview的框架,但其實它的底層不是webview,而是webview精簡優化過的平臺,小游戲有的只是與核心相關的一些渲染的API。這里的weapp-adaper是把小游戲的能力適配到與webview更接近的環境,讓更上層的游戲或引擎本身能夠更快速地集入到平臺中。

微信小程序開發一款小游戲的示例分析

微信的Runtime對外暴露的都是微信的API,所有的能力都是通過微信API發布出去的。底層最基本的能力是渲染相關的,即Canvas 2d和WebGL。其他一些微信相關的能力是另外一部,所以小游戲在架構上和小程序是有差別的,但用戶體驗起來沒有太大的區別。小游戲是沒有頁面概念的,在實現上也不完全是webview,其中不必要的部分已經被去掉了。

總的來說小游戲的入口為game.js,游戲可以利用底層的一些能力將游戲的整個界面繪制出來。配置文件為game.json主要用來配置小游戲是橫屏還是豎屏,小游戲的全局對象game Gobal類似于webview中的window對象,同時支持javascript語言。但是小游戲有一個重要的一個限制是禁止動態執行代碼,開發者必須先提交審核,在審核通過后才可以上架給普通用戶。另外,小游戲包括引擎的代碼量比較大,所以限制大小比小程序要大,首包限制大小為4M。

下面來說一下Webview Adapter,它的初衷是為了讓游戲開發者更好地熟悉我們的平臺,所以我們的平臺在能力上會盡可能地與webview做一些適配,其實這個適配也是很簡單的一層。比如說我們在瀏覽器里面使用image對象創建一個圖片,而在小游戲里是通過wx.createimage來創建的,在代碼中需要做一個簡單的適配。比如說Canvas、Document都是在Adapter中實現的,大家可以研究鏈接中的代碼。其中有一些優化的版本,之后官方不會繼續維系這個Adapter,因為我們會更專注于底層能力的建設。如果大家已經比較熟悉這個平臺的話,就會比較容易地開發游戲。比如Document這個對象在小游戲框架本身中跟普通對象是沒有區別的,它是Adapter做的一個簡單的適配。

微信小程序開發一款小游戲的示例分析

下圖是小游戲能力的概覽,最近小游戲能力的迭代比較快,部分能力還沒有羅列出來。比如最近剛發布的游戲圈、健康系統相關的一些接口,都還沒有列進去。我們先看一下基礎能力,在渲染這部分WebGL1.0和Canvas 2D都是支持的,這里的Canvas更接近于瀏覽器里面的標準。同時,這里提到的可控幀率的概念,如果小游戲在后臺運行的話,可以盡量將幀率降低。在多媒體部分,小游戲還不能像小程序一樣實現實時的音頻視頻流,這是我們在后續要進一步支持的。網絡IO的部分與小程序也是類似的,我們也提供了一些UI的組件,比如說拉起鍵盤,模態對話框等。

微信小程序開發一款小游戲的示例分析

小游戲的社交開放能力現在已經對外開放了。其中最重要的一個能力是開放域,將微信的好友關系列開放出去,給開發者一起使用,但也存在著一些限制。因為小游戲去中心化的特點,分享這一部分也是非常重要的,開發者要考慮如何將這個能力利用起來。在代碼方面,因為首包限制是4兆,但部分小游戲的代碼量可能比較大。我們最近也在規劃一個分包的能力,異步加載代碼,但這個代碼是一定要經過我們審核的。

如何開發一款小游戲?

那么如何開發一款小游戲?因為我本人也只是開發過一些簡單的游戲,并不是專業進行游戲開發,所以接下來我會更多地介紹一下如何利用微信的能力來開發小游戲。

選擇小游戲引擎

首先在開發游戲時要選擇引擎,我們與引擎商也有著比較密切的合作,開發小游戲的引擎一定要是適配的。比如在底層,一開始引擎可能只支持原生的游戲,在微信小游戲上就要做一些適配,依賴瀏覽器特有的能力。Cocos Creator、Egret Engine、LayaAir Engine這三個引擎已經支持了小游戲的開發,網上也有相應的文章介紹如何發布到微信小游戲的平臺。

設備/環境適配

有關設備管理的適配,小游戲會有API提供獲取屏幕的寬高、設備像素比等能力。在小游戲開發完成后,在開發者工具也可以發起真機測試的請求,微信提供了不同設備的測試集群,幫助開發者提前去發現問題。基礎庫提供的wx API本身是一個不斷迭代更新的過程,對于使用了新能力的小游戲,需要做低版本兼容。比如在檢測到不支持新 API的低版本允許有損服務用戶。同時,如果某個低版本的用戶占比較少,可以考慮在管理后臺直接配置小游戲要求的基礎庫最低版本,當然也意味著這一部分用戶在接觸到這個小游戲時,微信客戶端會彈出一個要求用戶更新到微信新版本才可使用該小游戲的提示,如果不更新可能就會失去這個用戶。

微信小程序開發一款小游戲的示例分析

微信登錄

小游戲的登陸過程與小程序類似,需要用戶自定義登錄狀態。appsecret/session_key代表的是小游戲開發者和微信平臺之間的一種信任約定,比如支付、上報托管數據,平臺方需要驗證 access_token,和用戶相關的還要驗證session_key的簽名,才能保證請求來自于小游戲開發者或用戶。access_token是一種應用態的 access_token,與用戶無關,需要保證全局維護一份,應該有一個中控的模塊去保證 access_token有效,同時在有效期內直接使用本地 cache的 access_token,而不是每次使用都去生成新的 access_token,否則可能遇到調用頻率限制的錯誤而影響服務。切記 appsecret/session_key不要放到前端代碼中去,否則可能會被惡意利用從而損壞小游戲開發者或用戶的權益。

微信小程序開發一款小游戲的示例分析

緩存

緩存類型包括數據緩存和文件緩存兩種。數據緩存即key-value存儲,適合結構化類型的小數據存儲,上限為 10MB。文件緩存提供了一個完整的文件系統 API,包括目錄 /文件的增刪改讀,適合針對經常使用的網絡資源做本地緩存,上限是50MB。

和瀏覽器不同的是,微信只提供了基本的存儲管理能力,并不對存儲什么以及存儲滿時刪除什么做一些操作。開發者自行靈活定義緩存及淘汰策略,比如對經常訪問的資源存儲到文件系統以及在文件存儲滿時,清理一些最近不常訪問的文件。

微信小程序開發一款小游戲的示例分析

開放數據域

我們來說一下開發數據域,也就是在保護用戶隱私的前提下把用戶的數據開放給小游戲。這是一個封閉、獨立的javascript作用域,開放數據域是一個獨立的目錄,其入口文件是index.js。目前的限制在于僅支持2d渲染模式,數據只進不出。比如說一個排行榜,它的目的肯定是用來給用戶看的。

我們簡單看一下它的實現方案,左邊是主域。用戶拿到這些數據后實現排行榜其實也是一個Canvas。它的區別在于Canvas不能把數據取出來,無法分析其中的數據是什么。主域里面有一個Canvas,在微信里上屏Canvas跟屏幕關聯,后面都是離線的Canvas,離線的Canvas可以自己根據需求使用的。一旦開放數據以后,上屏Canvas不能把里面的數據取出來,下一個Canvas也不能取出來,保證了數據的安全性。

微信小程序開發一款小游戲的示例分析

因為我們的數據在開發數據域中,用戶沒有辦法進行開發。所以要求開發者在開發時將需要的數據托管到我們這里,與用戶關聯起來。這樣就可以在開發數據域里面取到相關數據,其應用場景有好友排行、群排行榜、超越好友提示等。用戶在輸入的時候,重復用戶的所有操作,在上屏的Canvas和離屏的Canvas上就得到了用戶的所有輸入,不會有開放數據滲透進去。

微信小程序開發一款小游戲的示例分析

分享

如果用戶在游戲中達到了很高的分數,可以與好友PK一下。在自定義轉發的窗口,標題和圖片都可以自定義。但是現在有很多小游戲非常騷擾用戶,他們做了很多一定需要分享,才能允許玩游戲的設定。這是大家需要思考的部分,如何既不影響用戶的體驗,又能夠促進小游戲的互動,在這里需要找到一個合適的平衡點。同時,在分享數據后將小游戲與這個群聊關聯起來,我們就可以看到一個小游戲平臺。

微信小程序開發一款小游戲的示例分析

支付

小游戲是支持虛擬支付的,但目前僅適用于安卓系統中。且它的方式目前只有一種,即貨幣托管的方式。主要分為兩個流程,一是用戶花錢購買游戲幣,這與游戲的服務端是沒有關系的。發起支付時微信客戶端會生成一個訂單,讓用戶確認支付,這是異步的。平臺負責把用戶RMB兌換成對應的游戲幣,存儲到用戶對應的游戲帳號上。二是使用游戲幣購買道具,開發者可以扣除對應的游戲幣,給用戶發放游戲內道具,扣除游戲幣的過程需要有一定的事務機制,保證在網絡異常的情況下交易正常??鄢螒驇诺慕涌谥С指鶕唵蜪D去重,意味著在網絡超時等情況下,開發者可用同樣的訂單ID去重試扣除,直至返回明確的響應。

微信小程序開發一款小游戲的示例分析

性能

小游戲常見的性能問題,一般是內存造成的。如果內存占用太多會被微信客戶端主動關閉,因此開發者在用戶游戲過程中要及時釋放不再使用的內存,特別是Canvas和Image類的大型對象,同時可以主動調用wx.triggerGC觸發底層回收對應資源。對于和游戲邏輯相對獨立的工作,可以考慮在worker中去實現,小游戲提供了獨立的worker線程執行js邏輯的能力。

微信小程序開發一款小游戲的示例分析

版本更新機制

小游戲有熱啟動和冷啟動之分,冷啟動是指內存中無該小游戲的運行實例的情況下,啟動小游戲的過程;熱啟動是指小游戲的運行實例在內存中還存在,只是暫時切換到了后臺,這時用戶再次觸發小游戲回到前臺的過程。在如果用戶點擊啟動之后,游戲運行時會加載出來這款游戲。在點擊右上角的菜單時,按紐只是掛后臺,在一定的時間內再啟動時,它會立即恢復,這時內存將會釋放。

小游戲會在冷啟動時檢查小游戲的版本,如有新版本,在下載回本地后,下一次冷啟動即可使用新版。當然,我們也提供了 API可以供開發者決策在有版本可用時,是否需要強制更新,應用新的版本。

微信小程序開發一款小游戲的示例分析

運維

管理端提供了發布、回滾、停服等能力,開發者可以充分利用平臺的能力。比如在后臺操作中,js可能會報錯。腳本錯誤主要由運行過程中未捕獲的異常觸發,該類異常可能會導致用戶小游戲前端的js邏輯暫停執行。同時,平臺也提供了完善的數據分析服務,可以通過小游戲使用助手進行數據分析。

微信小程序開發一款小游戲的示例分析

關于微信小程序開發一款小游戲的示例分析就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

新聞名稱:微信小程序開發一款小游戲的示例分析-創新互聯
文章鏈接:http://www.js-pz168.com/article34/hsope.html

成都網站建設公司_創新互聯,為您提供網站建設網站策劃、企業建站、軟件開發、定制網站做網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx
日韩福利电影在线观看| 波多野结衣在线一区| 99久久精品久久久久久清纯| 精品1区2区| 日本高清不卡一区| 久久久久久久久久久电影| 亚洲一区二区视频在线| 国产精品亚洲午夜一区二区三区 | 精品久久久久久久久久久久久久久久久 | 国产另类第一区| 一区二区三区我不卡| 日韩一区二区在线观看视频播放| 1024精品合集| 韩国一区二区视频| 狠狠色综合一区二区| 欧美日韩亚洲综合一区二区三区| 国产清纯美女被跳蛋高潮一区二区久久w| 午夜电影一区二区| 91美女片黄在线观看91美女| 中文字幕一区二区三区四区五区| 久久久噜噜噜久久人人看 | 中文字幕乱码一区二区免费| 日本强好片久久久久久aaa| 99视频在线播放| 欧美在线播放高清精品| 国产精品嫩草影院av蜜臀| 激情文学综合丁香| 久久视频在线观看中文字幕| 欧美一级一区二区| 亚洲福利视频一区二区| 91在线你懂得| 欧美探花视频资源| 亚洲欧美一区二区三区极速播放| 国产超碰在线一区| 亚洲一卡二卡三卡四卡无卡网站在线看| 精品剧情v国产在线观看在线| 午夜电影一区二区| 国产亚洲二区| 91精品国产手机| 亚洲一二三四久久| 97国产超碰| 欧美剧情片在线观看| 亚洲一区二区三区美女| 成人黄色片视频网站| 欧美裸体一区二区三区| 亚洲一级片在线观看| 91精品国产高清久久久久久91裸体 | 国产一区二区精品在线| 欧美电影在线免费观看| 亚洲成人免费在线观看| 国产亚洲自拍偷拍| 欧美mv日韩mv国产网站app| 秋霞av亚洲一区二区三| 蜜桃91精品入口| 久久久精品国产免费观看同学| 美女视频黄 久久| 日本一区精品| 国产精品全国免费观看高清| 成人v精品蜜桃久久一区| 在线看不卡av| 亚洲国产精品久久久久婷婷884| av日韩免费电影| 日韩精品在线一区二区| 极品少妇一区二区三区精品视频| 亚洲不卡1区| 亚洲视频小说图片| 99精品国产一区二区| 欧美成人伊人久久综合网| 精品一区二区三区久久| 一本色道久久综合亚洲精品婷婷 | 久久久com| 国产欧美日韩三级| 不卡视频免费播放| 91精品欧美久久久久久动漫| 欧美aaa在线| 亚洲永久激情精品| 一区二区三区国产豹纹内裤在线| 极品日韩久久| 国产精品青草久久| 91影视在线播放| 欧美va日韩va| 国产黄色成人av| 欧美日韩激情在线| 美国欧美日韩国产在线播放| 综合视频在线观看| 亚洲成a人v欧美综合天堂下载 | 99re资源| 国产色产综合色产在线视频| 99久久99久久精品免费观看 | 99热国产精品| 精品少妇一区二区三区视频免付费 | 成人一区二区三区视频| 欧美精品少妇一区二区三区| 捆绑调教美女网站视频一区| 亚洲欧洲一区二区在线观看| 亚洲国产精品麻豆| 日韩欧美精品一区二区| 亚洲综合免费观看高清完整版| 欧美日韩一区二区视频在线观看| 亚洲男人的天堂在线观看| 久久精品二区| 亚洲精品亚洲人成人网在线播放| 久久久久久99| 夜夜精品视频一区二区| 日本午夜精品一区二区| 亚洲国产一区二区三区| 亚洲精品中文综合第一页| 天天综合色天天综合色h| 一本一本a久久| 日韩不卡一区二区三区| 欧美性猛片xxxx免费看久爱| 精品一区二区三区在线播放| 欧美猛男gaygay网站| 国产毛片精品国产一区二区三区| 91精品欧美一区二区三区综合在 | 久久精品免费观看| 欧美日韩在线不卡| 国产成人午夜99999| 欧美变态tickling挠脚心| 91亚洲精品一区二区乱码| 国产色一区二区| 精品一区二区三区免费毛片| 亚洲乱码精品一二三四区日韩在线| 日本一区二区三区精品视频| 天堂久久久久va久久久久| 欧美在线观看一区| 国产精品一二三四| 久久久综合视频| 国产乱人伦精品一区二区| 亚洲精品一二三| 中文字幕在线亚洲三区| 精品亚洲国产成人av制服丝袜 | 成人美女视频在线观看18| 久久久精品一品道一区| 国产一区在线免费| 亚洲观看高清完整版在线观看| 91久久线看在观草草青青 | 午夜精品爽啪视频| 欧美天天综合网| www.欧美精品一二区| 国产精品美女久久久久久| 日本视频一区二区不卡| 美国十次综合导航| 欧美电影免费观看高清完整版在线 | 成人免费电影视频| 中文字幕第一区| 日韩欧美99| 狠狠色丁香婷婷综合| 日韩精品一区在线| 国产有色视频色综合| 五月婷婷久久综合| 欧美一卡二卡在线观看| 国产精品欧美久久| 午夜视频在线观看一区| 在线成人免费视频| 99在线国产| 性做久久久久久| 欧美男生操女生| 99久久精品久久久久久ai换脸| 亚洲一级在线观看| 91精品婷婷国产综合久久竹菊| 动漫一区二区在线| 天堂成人免费av电影一区| 欧美一区二区三区视频免费| 国产精品区一区二区三在线播放| 午夜精品久久一牛影视| 91麻豆精品国产91久久久 | 亚洲三级免费观看| 欧美在线你懂的| 91超碰rencao97精品| 亚洲国产cao| 欧美电影免费观看高清完整版| 鲁鲁视频www一区二区| 玖玖九九国产精品| 国产农村妇女精品| 色老头久久综合| 91小视频在线观看| 午夜精品福利一区二区三区av| 日韩欧美一二三四区| 欧美成人在线免费观看| 国产美女久久久久| 亚洲欧美一区二区三区孕妇| 欧美日韩成人高清| 精品日韩电影| 国产一区二区精品在线观看| 中文字幕一区二区三区乱码在线| 欧美伊人精品成人久久综合97 | 在线观看一区日韩| 成人资源视频网站免费| 日韩av在线发布| 国产欧美日韩视频一区二区| 在线中文字幕不卡| 国产精品精品软件视频| 理论电影国产精品| 《视频一区视频二区| 在线不卡a资源高清| 欧美日韩亚洲免费| 成人免费高清在线观看| 午夜视频在线观看一区| 久久久精品国产免费观看同学|