Root question! What is the surface subdivision technology?

Source: Internet
Author: User
The bubble net video card channel will always have a quarrel in a competitive place in August 13. Although it occasionally feels noisy, it is always better than the sound. After all, it indicates that there is smoke and attention in this place.

All said that the DIY market was hit by the whole machine, especially the notebook, but the release of a dx11 still attracted both nvidia and AMD to scream, obviously, this market is still booming. At least everyone still attaches great importance to it and does not want to lose it easily. We also like to see such a quarrel between the two sides. After all, this means that they are not tired, and they are still undergoing a fate-like great competition through upgrades of product technologies.

But like a fairy fight, we mortals just watched the sky fly in the clouds, Thunder, electricity, and traffic, busy enough to see but somehow. If you are not careful about the fall of any god's tianbing, you may have to hurt the innocent. It's like the dx11 war between the two sides, whether it's the first hard-to-solve AMD or NVIDIA, all focused on a very long name-tessellation! There have been a lot of battles. In fact, few common users know what this is and what it does. This term is widely accepted. Chinese translation is called "surface subdivision" and is often referred to as "Mosaic" in professional fields. Because domestic IT media generally adopt the term "surface subdivision, therefore, in the subsequent articles, we also use this title for good.

In fact, the surface subdivision is by no means the whole content updated by dx11. From a certain perspective, it is not even the most revolutionary update. So why does a/n care about the surface subdivision? NVIDIA uses the gtx400 series for its own strong surface subdivision performance, AMD also focuses on the demand for dx11 graphics cards, and is even the most widely used dx11 test.ProgramHeaven is also basically centered on the surface subdivision.Article?

To put it simply, although there are many new features in dx11 to improve image quality, it can be seen immediately in the short term. What game developers are most likely to master is the curved surface subdivision technology. This kind of easy-to-use and effective things will be the most representative of dx11 performance and performance technology in the long initial stage of dx11 popularity, and will naturally attract attention from all parties. So everyone understands why nvidia and AMD are arguing over this issue.

So what is the surface subdivision? What can we bring to ordinary players? This is what we will focus on in this article. Let everyone know about it and determine whether it can influence your choice.

Surface Subdivision engine in dx11

 

 

When manufacturers and users begin to create mythical and curved surface subdivisions, they may not have imagined such an amazing day. In fact, the surface subdivision is also the "scattered soldiers" compiled by dx11 ".

Surface Subdivision first appeared in the professional field. After years of operation, amd was finally introduced to PC graphics technology. Through the release of r600 series, it was seen in the desktop graphics market. However, because Microsoft does not provide an official identity and the proprietary nature is too strong, it is difficult and unwilling to follow up on such technologies, whether it is other core graphics manufacturers or game developers. Fortunately, amd used xbox360 graphics core xnos for Microsoft. Due to the closed nature of the host market, a large number of xbox360 Games use curved surface subdivision technology. Microsoft personally experienced its benefits, finally, the program was compiled in dx11 and promoted through its own strong standard. Otherwise, I really don't know how long it will be on the edge.

In fact, what we call a curved surface subdivision is to add more polygon quantity to a polygon model mechanically. This is the core content of this model, such a technology does not play any role in improving the image performance, but has a negative impact on the performance.

In dx11, surface subdivision can improve the image quality. We can find out the cause by observing a dx11 pipeline diagram. In addition to tessellator, the hull shader module and domain shader module are added in front of the assembly line. That is to say, to improve the graphic effect through surface subdivision, it must be manually controlled before and after surface subdivision, so it cannot be used.

The figure above gives a clear answer to the role of the new units hull shader, tessellator, and domain shader. Hull shader is mainly responsible for defining the "deformation" trend of the subdivision level (SLS) and related control points. The reason why the deformation is enclosed by quotation marks is as follows, it must be noted that this deformation is only a small change similar to a curvature change, rather than a large polygon displacement. tessellator is responsible for the information transmitted Based on HS, add a polygon to implement HS. The most important function of domain shader is to implement model deformation through Texture Control, this is the high-Detail picture we all see in the subdivided surface of dx11.

Through the above analysis, we can draw a conclusion that, in fact, the subdivision surface is only responsible for providing material basis for subsequent operations to improve image quality, whether it is replacing textures and Smoothing Effects, A large number of polygon exist. Imagine how developers want to achieve the landform effect of a city by replacing textures on a triangle. There is a beautiful replacement texture, and how to deform and stretch the three vertices in the district? However, if you have 100000 vertices, it will be much easier.

In fact, from the user's point of view, the content of this section is not important. What kind of happiness they get from the surface subdivision is what they care about, not what they do.

Surface Subdivision-smoother Model

 

 

We already know that the role of surface subdivision is to greatly increase the number of polygon in the original model. A model originally composed of only 100 triangles was suddenly assigned with 100000 triangles. How can game developers use these extra free resources? Or, How Do gamers see the differences between the 100000 polygon model and the 100 polygon model?

Currently, table-level graphics technology is based on Polygon modeling principles. Therefore, no matter the Quadrilateral, triangle, circle, or any shape, it is composed of a limited number of triangles. This causes us to often find objects, especially objects that are supposed to be smooth, have stiff edges. Even if they look at the smooth edges, it is also formed by a straight line connection, which is caused by insufficient polygon quantity. To achieve smooth effects that can fool the visual, you must increase the number of polygon to a certain extent.

For example, when Miss Laura, who is no longer popular but more popular, appeared in the first generation of tomb shadows, the whole body was straight lines in a tough style and called a muscle beauty. However, it is not the game developers who want to turn Laura into shi tailong, but the number of polygon must be strictly controlled when the graphic computing capability is extremely limited at that time, otherwise the game speed cannot be guaranteed. In the latest version of tomb shadows, polygon is no longer a concern for game developers due to the significant improvement in hardware functions. Laura is back to the initial set of sexiness and fullness, it's just that players' enthusiasm and the quality of the game are no longer.

Also, the most popular FPS game "Quake III Arena", when we open the geometric details to the highest level, models including door holes will show relatively smooth and excessive, however, when the geometric details are reduced, the three sides are still ugly. Although id software gave this technology a name, the actual content still uses more polygon to approximate the smooth surface.

The above two examples illustrate a problem. When the number of polygon is increased, we will get a smoother and more rounded model, the curved surface subdivision can be easily provided to game developers with a very large number of polygon. The result is naturally that the simple model of the 100 triangles is transformed into a round model of the 100000 triangles. The graphic effects that players see have also been improved, which is the first role of subdivided surfaces to improve image quality.

Surface Subdivision-more detailed models

 

 

The model, which consists of 100 triangles, is also upgraded to 100000 triangles for free. However, this model has changed from Laura to a monster and we do not need to be smooth, but enrich the details of credibility. What can these 100000 polygon do?

Many users know bump mapping, Normal mapping, and other technologies. You can use textures to increase the details of a model. However, these Paster techniques only simulate details by deceiving the naked eye, and do not take a larger angle of view offset or closer viewing, otherwise it is easy to see flaws, because neither of them can process the model itself, it can be said that it is a deception of light and shadows.

The fact that a large number of polygon are produced by surface subdivision technology gives the model a chance of "rebirth", so that more vertices can be manually controlled to achieve real vertex displacement, it directly affects the shape of the model, so that the model has authentic and credible details. The technology that uses this large number of free polygon to generate model vertex displacement is called the placement mapping ).

A placement texture uses a depth texture (in fact, it can be understood as a black and white texture, and the offset of the corresponding vertex is determined by the different black and white shades) to control a large number of vertices produced by surface subdivision, the actual model displacement is created, which greatly improves the details of the model and significantly improves the image quality. In actual sense and effect, this is far more important than a simple smooth model, and the image improvement effect is more obvious.

For example, it is easier to understand. With regard to the widely used dx11 testing software heaven, after surface subdivision is enabled (in fact, a combination of Surface Subdivision and placement textures is enabled ), the details of the screen have been greatly improved. No matter the groove of the floor tile or the folding skeleton details of the Red Dragon, they have been carefully described, in addition, due to the displacement operation on model vertices, these extra details can produce real shadows and other effects. On the other hand, after turning off the curved surface subdivision option, everything is calm, the city is no longer gorgeous, and the Red Dragon is no longer majestic.

Because a large number of vertices are required for displacement, the model must have enough polygon. This is exactly what the surface subdivision does, this has become the second role of image quality improvement.

Bypass various puddles

 

 

Here, I believe you should understand that the surface subdivision technology can indeed help users get better picture quality. Simply put, it is a useful and practical technology. However, due to various problems encountered in practical use, many good technologies have finally become useless. Will Surface Subdivision suffer from the same problem? Especially for game developers, whether a technology is easy to use is more important to them. Developers tend to choose the former, especially for PC game developers, most of them work in a rush under the double pressure of construction period and budget. It may be the only criterion for them to evaluate a new technology, because you cannot expect that blizzard is everywhere, and gt5 is everywhere.

In the previous article, we have clarified two ways to improve the image quality that can be brought by Surface Subdivision. In the following sections, we will explain the problems that may occur in these two methods separately, and whether or how to solve the surface subdivision.

From an easy-to-use perspective, surface subdivision automatically generates a large number of polygon to achieve smooth model effects, which should be very easy for developers to use, so it is not difficult for developers to accept it.

However, there is a very interesting problem. Because the polygon is generated automatically, it can be said that the smooth effect is also automatic, how to control where smooth effects are not generated is a problem that developers need to consider. It seems ridiculous. In fact, such problems exist and some early versions of Surface Subdivision have been killed.

If you are familiar with the development of graphics cards, you may remember the truform technology developed by amd in the radeon 8500 era. In fact, this is also a surface subdivision technology, but it only supports automatic polygon generation, lack of appropriate control measures. In AMD's demonstration, truform can indeed smooth some models that seem to be sharp, but in actual games, this kind of "carpet" smooth processing exposes problems.

At that time, the most well-known truform bug was that in hero Sam, the strong line-opening machine guns were "smooth, this allows our hero to spin around the screen with a very pleasant round belly rifle. It is precisely for this reason that truform fails.

In the development stage, the Subdivision Surface Technology in dx11 has already seen the puddles of previous ships, to avoid similar problems to the maximum extent. This means that not only the tessellator unit is added to the dx11 rendering pipeline, but also the role of hull shader. As a controller, hull shader can determine where to add polygon to achieve smooth effects based on developers' intentions.

This kind of judgment is actually not difficult. Before a subdivision surface appears, a model with a low polygon quantity but smooth effects is generally implemented using soft edge and hard edge. In fact, we can achieve smooth display through the discovery operations.

We can explain how this is implemented. In the same model, the number of polygon is small, and the left-side model performs Soft Edge processing, which makes the model look smoother. The right side is the original or hard-side processing model, you can clearly see the edges and corners of the model.

A long time ago, this technology was used in the game, and the operations on the soft and hard sides were different on the legal line, and the hull shader could judge the difference according to the programmer's instructions, it also informs tessellator which model or part of the model should be subdivided to achieve the controllable and smooth model effect. Controllability has become the key to dx11 surface subdivision over similar technologies.

Simulate realistic natural scenarios

 

 

Another way to improve the image quality of a subdivision surface is achieved by replacing the texture, which requires a lot of later control. That is to say, after a large number of vertices are generated, how can we control the deformation of these newly added vertices to increase the details of the model we want.

In fact, the method to control the new deformation of vertices is not only a method to replace textures, but it is also relatively easy to use at most, therefore, in the previous article, we used "placement Textures" to express deformation control. In general, in addition to replacing textures, deformation control can also be implemented using program control.

Because a large number of new vertices generated by subsurface are actually existing, that is, they all have three-dimensional spatial coordinates. Through some programming, we can control these coordinates for displacement, if Texture Control is static, program control is dynamic, because we can add many variables to the program to make the vertex constantly changing, for example, the water or floating flag.

The occean technology demo test clearly shows that the sea surface changes significantly when the surface subdivision technology is enabled and the subdivision level is adjusted. Especially when the number of levels increases, the details of the sea surface become extremely rich and realistic. Procedures for controlling the effect of sea surface changesCodeIt is the same, but because the number of controllable vertices is different, the effects are different. This is the role of Surface Subdivision here.

In fact, before the appearance of the dx11 surface subdivision technology, such effects have already been used. In crysis, which still holds the title of the strongest image quality, the crytek2 engine uses a technology called screen-space tessellation, in fact, it is through the program to control a large number of Surface Subdivision vertices to create a realistic marine effect, coupled with the outstanding Light and Shadow technology of the game itself, to make the effect more realistic.

When demonstrating the surface subdivision effects of the hd5000 series, amd displays a flat with more natural and smooth effects after surface subdivision. This is the result that when the number of vertices increases, the effect of controlling through physical programs such as gravity and wind is better consistent.

Demonstrate the power of a High-Detail Model

 

 

Although it is very efficient to control vertex deformation through programs, this effect can only be applied to unordered, large-area scenarios, such as natural landform like the ocean. If you need to control a specific model, such as a game character, we still need to use the replacement texture technology we mentioned earlier. The replacement texture can be operated in two different ways.

The so-called two methods actually refer to the different texture acquisition methods used for replacement, which is invisible to users, but there is a difficult difference for game developers.

The first method, in fact, has been described many times in earlier introduction to some game engines, but we were talking about not replacing textures, but normal maps. In the early stage of game development, the modelers established a set of high-Detail models, and then saved the detailed information into a replacement map using the "bake" method, then, in the game, we use the information of this texture to control the number of vertices subdivided by the surface. The actual result is that a low polygon model achieves the same effect as a high-Detail model through surface subdivision + placement textures.

This method can achieve the best effect of replacement textures, but developers need to establish a high-Detail model in the early stage, and the development cost is not much reduced. However, with the maturity of modeling software such as zbrush, it is not too complicated to create a high-Detail model. The above is the process of creating a normal texture in "Unreal 3", which is actually the same as the process of creating a replacement texture.

In the second way, game developers can save a lot of effort and effort, because they do not need to make a special replacement texture, which saves a lot of development costs and development cycles.

We all know that the model usually has at least one color texture, and the information contained in the alpha channel in the color texture can be directly used as a replacement texture. Of course, it would be better to use the concave and convex textures. It is the use of professional graphics software Maya to easily display the use of color textures in the alpha channel information to control the effect of vertices.

Of course, the information contained in this texture is not set up for vertex displacement control, so the accuracy is not very high and may not be suitable for the use of character models. However, it is very suitable for scenarios, such as the conversion in heaven, walls, and other parts. The effect is almost the same as that of the dedicated replacement texture.

We need Surface Subdivision

 

 

Through this article, we try our best to explain the role and significance of surface subdivision in dx11 through simple language descriptions, as well as what practical images can be acquired for users to improve their feelings, and whether these technologies are widely used by developers in more game works.

N cards are far ahead of a card in heaven 2.0, which uses a large number of Surface Subdivision Technologies

I believe most readers have agreed that surface subdivision is an excellent technology, but it is actually an intermediate process, not the final result we see. The deformation of a large number of polygon produced by Surface Subdivision under human control is the fundamental factor for improving the image quality. This is a complementary process.

For developers, a good technology will be discarded if it is not easy to use. In the several situations we analyzed, surface subdivision is actually easy to use. In the past, developers have accumulated a lot of experience through other similar technologies, we believe that in the future, we will see more and more amazing visual effects brought by the curved surface subdivision technology.

It is a good technology that is easy to use and can indeed improve the image quality. The conclusion is that the user needs to subdivide the surface, and there will be more and more needs. This tells us a real problem. When more and more games use surface subdivision, it is critical that the graphics card itself has a powerful curved subdivision engine. Although nvidia and AMD have both launched dx11 video card products, the tests show that NVIDIA gtx400 series graphics cards have the ability to clearly surpass the competitor's curved surface subdivision, in the future, this will help users who use NVIDIA gtx400 graphics cards to enjoy a better gaming experience. ■

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.