本系列博客主要是以對戰遊戲爲背景介紹3D對戰網絡遊戲經常使用的開發技術以及C++高級編程技巧,有了這些知識,就能夠開發出中小型遊戲項目或3D工業仿真項目。算法
筆者將分爲如下三個部分向你們介紹(每日更新):編程
一、實現基本通訊框架,包括對遊戲的需求分析、設計及開發環境和通訊框架的搭建;服務器
二、實現網絡底層操做,包括建立線程池、序列化網絡包等;網絡
三、實戰演練,實現相似於CS反恐精英的3D對戰網絡遊戲;架構
技術要點:C++面向對象思想、網絡編程、Qt界面開發、Qt控件知識、Boost智能指針、STL算法、STL、容器、Boost網絡庫、OpenGL座標變換、OpenGL加載3D模型、MD2模型加載、MDL模型加載框架
好了,下面就讓咱們來開始今天的學習之旅,軟件工程項目的第一步——需求分析。工具
1、服務器端需求分析學習
1.項目簡介spa
(1)背景簡介:線程
該項目是以多玩家扮演的不一樣角色間的對戰情形爲背景實現的一個基於C/S架構的3D對戰網絡遊戲的簡單框架;
(2)C/S結構簡介:
C/S 結構是軟件系統體系結構,經過它能夠充分利用兩端硬件環境的優點,將任務合理分配到Client端和Server端來實現,下降了系統的通信開銷;
(3)思考:
若是你是本遊戲的玩家,你但願遊戲有哪些最基本的功能呢?
2.服務器端功能需求
(1)UML圖:
(注:該UML圖使用astah建模軟件繪製,一個很是簡單實用的工具,你們能夠嘗試使用下。)
3.網絡底層接口需求
(1)思考:
若是你想使用該遊戲的網絡底層進行二次開發,你但願這樣的網絡底層具有怎樣的接口呢?
(2)UML圖:
二、客戶端需求分析
1.客戶端界面功能需求
(1)分析思路:
做爲網絡遊戲客戶端,咱們須要的最基本的界面顯示包括哪些內容?
(2)整體界面顯示需求UML圖:
(3)登陸界面顯示需求UML圖:
(4)註冊界面顯示需求UML圖:
(5)遊戲大廳界面顯示需求UML圖:
(6)3D場景界面顯示需求UML圖:
2.3D場景模塊接口需求
(1)分析思路:
根據3D場景界面的顯示需求,咱們在3D場景模塊須要提供哪些技術支持呢?
(2)UML圖:
歡迎你們學習交流,若有不足懇請批評指正,轉載請註明出處,感謝您的支持。若是您也喜歡個人博客能夠持續關注我,讓咱們一塊兒成長,共同進步。
生活很精彩 剔除雜質,留下對編程的窮極探索 純粹追求。