Architecture Chapter "One": What will I do? What kind of structure can be completed

opening:

        I have always felt that domestic games need to rise to a new height. It's no longer those, 648 krypton gold all day long, money and time. The building of Xunxun has been built to the height of more than 40 floors. But they are still doing 648 krypton gold, defrauding children of their money. From a technical point of view and human resources, it is more than enough.

        Domestic online games started around 2003. 03xxun acted as an agent for a certain game, and put it on the shelves in the country. At that time, online games were initially 2D, Westward Journey, and legends, which were similar to violence. In that dark age, money was burned like paper, and the family went bankrupt to buy equipment. In our age, these things have quietly exited the scene. I'm afraid that for the current post-00s, they won't take a second look at all. However, even so, the monthly turnover can still be 200 million.

        So, what kind of architecture was it at that time. In ancient times, there may not have been so many knives, and the direct link of the spoon is ClientN, Server.

Then, in the corresponding later period, the number of people is increasing, and the performance of the server has reached the limit, which cannot meet the current demand. The developer's wallet is getting thicker and thicker. To start, think about it, split the server. Assign the corresponding services to the corresponding server, and then there will be some so-called GateWay, Login, Account, Logic, GamServer, CenterServer, DB and so on. Separate the corresponding services. What will the server look like at this time? It is roughly like this.

The client side is still the same, and the server side has been split out, with many functions. The client only interacts with the gateway, and the gateway requests the corresponding service. This is an MMO type of game architecture. There are various ways of architecture, and the types of corresponding games selected are different, and the ways of architecture are also different. For example, card games, MOBA games, and web pages, these are three types. I won't list them all. After all, if you can have a set, it is enough for you to play well. Most of this is a long-term connection architecture (TCP), and the web page is not counted (HTTP).

        So what will the next belt, today's current structure look like. Someone may have heard of the architecture of ECS. The ECS architecture, this architecture is called ECS, was discussed at the GDC summit in 2017, and mentioned the use of an EntityComponentSystem architecture, although things have long since changed. ow2 is also far out of reach. The translation is entity (Entity), component (ComponentS), system (System) collectively referred to as ECS. This architecture feels like a new way of thinking to solve problems. Not according to the traditional split, combination.

           Let's briefly talk about the structure: take the official picture to make it more vivid. It's like this, if I have a world, in my world, there are only two things, System and Entity. Only the Component (component) component in Entity contains various components A, B, C, and D. The System only contains behavior. In other words, it is. There are only functions in this System, and only member variables in Component. System uses these member variables to express behavior. world world, and EntityAdmin. So that's basically the structure. It took about four years for this project from the start of project development to its release. The predecessor of this lecture was one of the main programs of Titanfall. The Titan project has undergone many changes before and after, and we have to give up. The overwatch that came out later can be regarded as the predecessor of Titan. have an inseparable relationship with each other. After 18 years, there are some ECS architectures on Unity one after another, you can search for details. I don't write anymore. Lua's ECS is also available, and I have used it by coincidence. You ask me how much I understand? That is no.  

        Many people say that this is a combination of two types of games, moba+fps. In fact, there are four kinds. The profound experience can only be felt by playing. Well, as a veteran game player for 20 years, I have played this game for four or five years. I can tell you clearly that this is a frame synchronization, and the protocol is also UDP. Otherwise, it would be impossible to have the current ending. What is the ending now? Anyone who has played knows it. I won't go into details.

        So, we are ready to write our own framework. The previous things will probably not be used at all. Throw away, all old concepts. Use something brand new. I am going to use UDP and do retransmission based on UDP. It is to rewrite a set of its own network layer.

Why not use TCP?

No reason, no effect.

If you use UDP, what is your game?

If UDP is used, it is frame synchronization, real-time strategy games!

What will your frame look like? Will the ending be the same as ow?

The answer is: probably. The server only does relative forwarding. As for what it looks like, there will probably be a new look.

UDP is unreliable, how do you fix it?

There are already better solutions.

What engine are you going to use?

Unity or Unreal (UE5 was just released in May of 2020). The underlying rendering may be on DX12, I will choose FSR. At present, the underlying rendering of FSR has been taken by me. You can look at the real column of running.

Guess you like

Origin blog.csdn.net/qq_36912885/article/details/121666065