前言:
端午節(jié)放假恰好有時間研究下Unity3D 在Web端的實現(xiàn)。
基本上都比較順利,使用的是Unity如下版本:2018.1.4f1
也導出了WebGL 游戲版本魂挂,放在一個文件夾中甫题,如圖:
但這個時候,問題來了涂召,怎么跑起來這個WebGL版本的游戲呢? 直接嘗試拖拽index到瀏覽器坠非,但提示:
很崩潰,這時候果正,我搜了一堆如何解決瀏覽器支持webGL的方式炎码,但拖拽進去的都是這樣。
但由于個人還是希望看看手機上效果如何秋泳,沒準手機瀏覽器支持潦闲,于是還是想搭建個正規(guī)的服務器,讓這個web頁面跑起來迫皱。
驚喜來了歉闰,使用網(wǎng)址瀏覽后,瀏覽器就莫名其妙支持了卓起,無論是哪個游覽器和敬,很驚喜。(略會nodejs web前后端開發(fā)戏阅,這里是存在跨域訪問的問題昼弟,所以最好還是點擊 build and run,或者搭個web服務器 訪問)饲握。于是我一定要把這個過程記錄下來私杜,方便給一直從事客戶端游戲開發(fā)的小伙伴看下。其實不是webGL的游戲沒跑通救欧,也許就是web服務沒搭好衰粹。(當然網(wǎng)上也有不少這樣的提醒了)
下面就是簡單使用Nodejs及express搭建服務器的過程。(當然使用nginx或者tomcat 都行的 我是windows本機測試笆怠,先就這么搭吧)
NodeJs創(chuàng)建Web服務器
var http = require('http');
var server = http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'text/plain'
});
res.write('hello world!');
res.end();
}).listen(80);
這是一個原生式的創(chuàng)建一個web服務器的方式,但是有缺陷铝耻。如果我們想要將我們的靜態(tài)頁面至于與服務器同域下的時候很不方便。
Express創(chuàng)建Web服務器
var express = require('express');
var app = express();
var server = require('http').createServer(app);
//指定靜態(tài)文件的位置
app.use('/', express.static(__dirname + '/public'));
//監(jiān)聽端口號
server.listen(80);
這里我們借用Express封裝好的方法創(chuàng)建了一個監(jiān)聽80端口的方法蹬刷,不僅我們可以作為后端服務通過localhost:80訪問瓢捉,還可以訪問我們的前端頁面localhost:80/index.html。
這樣頁面與服務端交互也方便很多了办成。
總之跑起來的大概是醬紫泡态,不管咋說,蠻開心的迂卢。