I am very happy to be here today to share with you the open capabilities of our graphics engine service this year, and we welcome all friends to communicate together.

Huawei graphics engine service simply a graphics 3D rendering engine, and actually provides two service capabilities. The first is the lightweight 3D rendering engine , which means that can be integrated into a graphics engine service Lightweight 3D applications provide 3D rendering capabilities and interactive capabilities; the second is enhanced plug-in capabilities , graphics engine services are made into plug-ins based on the split of features, integrated in the game engine, and provided to Some differentiated capabilities of game partners.

Lightweight 3D rendering engine capabilities

Let me quickly introduce the first capability-graphics 3D rendering engine lightweight solution. The lightweight solution includes some basic 3D elements and functions, such as PBR rendering pipeline, animation physics engine and particle special effects . It allows our developers to easily create ideal 3D effects and integrate them in applications without having to understand particularly advanced graphics rendering technology.

First of all, we implemented the standard lightweight PBR pipeline . This pipeline supports standard PBR physical materials, including physical materials exported by three parties, such as the import of standard material libraries such as Substance and 3D Max Maya. It can be developed from development to operation. Accurately express the physical material displayed on the surface of the object.

Secondly, the graphics engine service also implements the animation system . This animation system is a skeletal animation, including the drive of standard skeletal elements in GRTF or IBS. At the same time, the graphics engine service also supports IK animation technology.

In addition, we also self-developed a set of lightweight physics engine , which can simulate the effects of simple collision, fall, and movement of rigid bodies. At the same time, we also did some fluid simulations on the mobile terminal for the first time this year.

In order to enhance the expression of our graphics engine service, we have also implemented a particle system , which can simulate some natural effects, such as flames, smoke, bubbles, waterfalls and other real physical effects expressed through particles.

We can illustrate the functions of the lightweight rendering engine in more detail by enumerating the following three scenarios.

The first one is a very simple e-commerce scenario. The graphics engine service is lightweight and the size is less than 1M, so it is easy to integrate in application development. At the same time, we provide a teaching material, even if you don’t know programming, you can integrate graphics in 10 minutes. Engine service, so that the e-commerce partner can easily display the content he wants.

The second is the effect of our 3D physical simulation of fluid. This is the ability to integrate graphics engine services on the mobile phone theme this year. When the mobile phone is shaking, the fluid is doing some physical simulations in real time, which can enhance some of the fun of our theme.
The last one is an AR application made by the combination of Huawei AR Engine and graphics engine services. AR Engine provides an environment detection capability. Huawei graphics engine services provide some high-definition renderings, and use some technologies in the pipeline to present a virtual and real fusion effect. .

The above are some basic functions and capabilities that the lightweight rendering engine and pipeline can provide for our friends.

Enhanced plug-in capabilities

Let’s talk about graphic enhanced service capabilities and plug-ins. Compared with lightweight applications, our game applications are more complex, but through HMS Core, related technologies and capabilities are opened to provide game developers with some effects and performance. Upgrade, so the current game enhanced capabilities and plug-ins have been introduced.

Let me introduce them one by one.

first of 1619210f1a400a is ray tracing technology (Ray Shop) , ray tracing technology is a very important feature of the graphics engine service, and it is also a module we have built. Everyone knows that ray tracing can present some very good 3D real effects, and can achieve some irregular surface reflection or refraction effects, such as the reflection of the lake surface and the reflection of the curved surface.

However, because of the computing power requirements, ray tracing is mostly applied to the PC and the host side, and it is difficult to achieve the computing power of the mobile terminal. Based on this, we combined Huawei's own patented RT technology to refine it and open it up, because compared to the PC-side RT technology, we optimized the energy consumption ratio to 1:10, which originally required 10 times the ray tracing. The computing power can now be completed by only 1 time, which saves a large part of the resources and computing power, which can ensure that RT complements the rasterization pipeline, so as to achieve the effect that we can apply on the mobile terminal.

Because the computing power of ray tracing technology itself is relatively large, we also made tools when implementing it, so that our development partners can easily integrate plug-ins, combined with our pipeline, if you want to apply our ray tracing technology, you can use the tool Traverse the objects in the scene, choose the reflection or the reflected object you want to chase, so that you can make the special effect of the chase on the basis of rasterization.

This video is a light pursuit effect integrated in the mobile game of Tianyu this year in cooperation with Tianyu.

The second is Dynamic Diffuse Global Illumination (DDGI) technology, a technology that uses ray tracing to calculate diffuse lighting. Compared with other static GI technologies, it can present dynamic light and shadow changes in real time, making game lighting more realistic and more atmospheric. powerful.
The following demo is a scene similar to window-drawing we made on our mobile phone. There are IBL and plane light in this scene respectively. When it is window-drawing, the wall and ground behind it will have some light illumination effects. If not With the blessing of DDGI, the lighting effect of the latter part is not obvious.

DDGI, especially the dynamic DDGI technology itself, also requires a lot of computing power. In the traditional pixel is a Probe calculation requires the radiance of each pixel in one direction, and each pixel integrates the radiance of all directions, which is equivalent to N N Calculation of the radiance. However, the amount of calculation on the mobile phone is far from reaching the amount of calculation, so we have made certain optimizations to project the radiance onto the SH of 9 coefficients, so that the project To SH, and then the integral query SH, our calculation amount is equivalent to 9 N, The decrease in the amount of calculations will bring a certain amount of computing power support and performance will be improved.

At the same time, DDGI can also support a variety of light sources, such as parallel light, point light, and surface light, as well as dynamic scenes.

We are also trying to do some docking and debugging with our friends, and hope to meet you in actual product applications soon.

The previous topic is mainly about improving the rendering effect, and then I will talk about the plug-ins related to the graphics rendering plug-in capabilities to enhance the performance.

first Slim LOD technology . The traditional LOD technology requires a high-precision model. It is necessary to perform some surface reduction or model reduction processing on this model to generate some models of different levels. This will cause a problem, and the package volume will increase 20%, plus the traditional LOD technology needs to merge and delete vertices, there will be some changes in the topology of the line segment connections, and some adjustments need to be made constantly. Our Slim LOD technology actually breaks the original LOD technology itself. We have selected some vertices in the model to make Index reservations, so that no new model will be generated, which is equivalent to the number of vertices and the textures. There is no need to re-match, so the designer’s workload will be greatly reduced. This is also an effect that we and Sanqi Mutual Entertainment have done here. It is applied to Sanqi Mutual Entertainment’s "Douluo Continent·Soul Master Duel". There is a 20% drop in the number of vertices.

last one is Good Culling's technology , which optimizes the culling scheme. This scheme is used more in games. In order to ensure performance, many models in the game scene need to do some preprocessing to remove the invisible models on the screen. Lose. It is possible that the optimization elimination schemes that everyone basically adopts are all GPU schemes, but it will cause some delay jitter problems. In the process of camera or object movement, we often use the depth information of the previous 1 frame or even the previous 2 frames. When the GPU is processing the current frame, if the occlusion relationship changes, the calculation result of this frame will be wrong. , Can only wait for the next frame or the next 2 frames to be processed correctly, so there will be some jumps.

We have proposed an optimized culling scheme, using a CPU soft raster scheme, which is equivalent to writing the occluder into our Z-Buffer (sound), and the occluded object is compared in depth according to the Z-Buffer.

The advantage of CPU removal is that there is no GPU jitter and compatibility issues, and it can run very well on low-end mobile phones. From the experimental test data, the frame rate before and after the application is about 10%- 15% increase.
The above is an introduction to the open capabilities of our Huawei graphics engine service. Thank you very much for coming to the HDC conference in your busy schedule. You are also welcome to contact us and communicate more.

Thanks!

for more details>>

Visit Huawei Developer Alliance official website
Obtain development guide document
Huawei Mobile Services open source warehouse address: GitHub , Gitee

and learn about the latest technical information of HMS Core for the first time~


HarmonyOS_SDK
596 声望11.7k 粉丝

HarmonyOS SDK通过将HarmonyOS系统级能力对外开放,支撑开发者高效打造更纯净、更智能、更精致、更易用的鸿蒙原生应用,和开发者共同成长。