Re: [程式] 如何建購雲端運算下的多人遊戲?
睡不著, 來回答你的問題
※ 引述《QgameQ (123)》之銘言:
: 小弟剛開始學習 會一點DIRECTX
: 現在想做一個多人遊戲的架構 就像onlive一樣
我想你應該是想說online
: 使用者只負責接收影像與簡單指令的工作來進行遊戲
: 伺服器負責運算所有玩家的命令以及把結果製成影像分別送給每個玩家
: 主程式放在伺服端
: 玩家客戶端程式只需要對應伺服端要求所產生的介面
: 還有播放影音的功能
: 目前想到的問題主要有兩個:
: 1.如何製成影像
: 用directX所繪製出來的畫面 如何壓縮成影像以進行傳輸
: 要再畫出後另外寫程式將之擷取下來
: 還是可以利用緩衝區的資料直接製成影像呢?
如果你這樣做, 就直接把影像 送給client端就好,
記得要壓縮, 頻寬的費用也要算進去,
: 2.多人玩家之下
: 每個玩家都有不同的位置與鏡頭位置方向
: 而一個主程式只有一個鏡頭
: 如何用一個主程式即可依照到每個玩家的位置方向製成各種角度的影像呢?
: 關於問題2
: 如果說每個新玩家進來就多開一個主程式給予使用 似乎可以解決問題2
: 但這樣似乎太吃伺服端資源 可能不到10個人伺服端記憶體就用光了
: 如果說是用thread的概念 爲每個新玩家產生一個thread
: 在thread裡重新設定一個camera但主要的繪圖資料還是不變呢?可以解決嗎?
: 我剛開始在學習所以很多不懂 望各位多包含
: 也希望能集思各種不同的想法來做這種架構的遊戲
首先, 不知道是我誤解了雲端運算, 還是你搞錯了
第一件事情是現在炒的正熱的雲端運算, 其實並不是一台電腦做server而已
而是很多很多台一起當server, 印象中是稱做cluster
cluster 本身也是有主從關係的, (master 以及 slave)
好處是透過平行運算的方式來處理很大宗的資料
如果你要這樣做, 我第一個考慮的會是要怎樣有效率的把工作分配到每一台上面
分散運算的情況可以把每一個運算的部分交給slave處理,
就是運算以及交回運算結果
就效能上的問題應該不是最大的問題, 錢砸下去就有了
其實3Dmax 就有類似的算圖的系統,
不過算是比較差的就是3Dmax 要把所有圖檔都載入才會開始工作,
這方面會比較花時間, 不過一台算的時間跟10台一起算當然是10台比較快.
運算方面, 其實電腦很多效能都花在螢幕的顯示上面
3D運算又是超級花資源的, 這樣做的server建置的費用以及頻寬使用費用都會提高
是否要把成本轉嫁到消費者身上, 而消費者是否能接受?
這就是另外要考慮到的
如果是實驗性質,
可以考慮做看看,
另外2D的門檻會比較低一點,
另外不論2D, 3D 影像送出去之前, 請把影像壓縮
最後忘了說,
cluster這東西是可以租用的,
也就是你可以不用花錢買機器還有花心思去打理機器的問題
如果真的很便宜的話, 頻寬+租用費用, 可能會有搞頭
--
來睏
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.146.139
※ 編輯: realmeat 來自: 123.204.146.139 (04/16 02:16)
討論串 (同標題文章)
GameDesign 近期熱門文章
PTT遊戲區 即時熱門文章