This series of blog mainly on the background of the game to introduce 3D PvP Network game Common Development technology and C + + advanced programming skills, with this knowledge, you can develop small and medium-sized game projects or 3D industrial simulation projects.
The author will be divided into the following three sections to introduce to you (daily update):
1, the realization of the basic communication framework, including the game needs analysis, design and development environment and the construction of communication framework;
2, the implementation of the network underlying operations, including the creation of thread pool, serialization network packets, etc.;
3, actual combat drills, to achieve similar to the CS counter-Strike 3D Battle Network game;
Technical points: C + + Object oriented thinking, network programming, QT interface Development, QT control knowledge, boost smart pointers, STL algorithm, STL, container, boost network library, OpenGL coordinate transformation, OpenGL load 3D model, MD2 model loading, MDL model loading
Well, let's start today's learning journey, the first step in software engineering--demand analysis.
One, server-side requirements analysis
1. Project Introduction
(1) Background introduction:
This project is a simple frame of 3D PvP network game based on C/s architecture, which is implemented in the background of the different roles played by multiple players.
(2) C/S structure Introduction:
The C/s structure is a software system architecture, which can make full use of the advantages of both ends of the hardware environment, the task is reasonably distributed to the client side and server side to achieve, reduce the communication overhead of the system;
(3) Thinking:
If you are a player in this game, what basic functions do you want the game to have?
2. Server-Side functional requirements
(1) UML diagram:
(Note: The UML diagram uses Astah modeling software to draw, a very simple and practical tool that everyone can try to use next.) )
3. Network underlying interface requirements
(1) Thinking:
If you want to use the game's network at the bottom of the two development, you want such a network at the bottom of what kind of interface?
(2) UML diagram:
Second , the client needs Analysis
1. Client Interface Functional Requirements
(1) Analysis ideas:
As a web game client, what is the most basic interface we need to display?
(2) Overall interface display requirements UML diagram:
(3) Login interface display requirements UML diagram:
(4) Registration interface display Requirements UML diagram:
(5) The Game Hall interface display requirements UML diagram:
(6) 3D scene interface display requirements UML diagram:
2.3D Scene Module Interface requirements
(1) Analysis ideas:
What technical support do we need to provide in the 3D scene module based on the display requirements of the 3D scene interface?
(2) UML diagram:
Welcome everyone to learn to communicate, if there is insufficient to criticize correct, reproduced please indicate the source, thank you for your support. If you also like my blog can continue to follow me, let us grow together and progress together.
Life is wonderful. Remove impurities, leaving the search for the poor pole of programming pure pursuit.
3D Battle Network game based on C/S architecture _01 server side and client requirements analysis for C + + framework