The Art of Game Rendering: A Deep Dive into Genshin Impact's Techniques
January 24, 2025, 6:19 am

Location: United States, California, San Francisco
Employees: 5001-10000
Founded date: 2003
Total raised: $525M
In the world of gaming, visuals are the first brushstrokes on the canvas of player experience. Genshin Impact, a title that has captivated millions, showcases a masterclass in rendering techniques. This article explores the intricate details of its rendering pipeline, revealing the artistry behind its stunning graphics.
Genshin Impact employs a custom Scriptable Render Pipeline (SRP) that operates seamlessly across both mobile and desktop platforms. The mobile version, while slightly stripped down, still retains the essence of its desktop counterpart. However, the desktop version is fortified against analysis, making it a challenge for developers and enthusiasts alike to dissect its rendering secrets. Yet, tools like Ninja Ripper allow for the extraction of textures and meshes, providing a glimpse into the game’s visual mechanics.
The rendering process begins with a deferred rendering approach, a choice that stands out in the mobile gaming landscape. Typically, deferred rendering is associated with physically based rendering (PBR) materials, but Genshin Impact adds its unique twist. The first draw call involves rendering a quad into a 128x128 texture, capturing the sky's color based on current lighting parameters. This texture plays a crucial role in rendering reflections on water and fog effects.
Next, another 128x128 texture is prepared by blending noise textures and masks, creating a subtle sky texture with barely visible clouds. The first two draw calls set the stage for the intricate dance of light and color that follows. The third draw call focuses on rendering objects into a G-buffer, which consists of three RGBA textures and a depth stencil buffer. This is where the magic begins, as different object types are categorized using the stencil buffer.
The G-buffer captures essential information: normals, glossiness, and diffuse colors. The first RGBA texture holds normals and glossiness for the main geometry, while the second captures the diffuse color and emissive intensity. The third texture stores additional normals and ambient lighting data. This meticulous breakdown ensures that every detail is accounted for, allowing for rich visual fidelity.
Grass rendering is particularly fascinating. Each blade is represented by 48 to 114 triangles, depending on the level of detail (LOD). The game employs instancing to render up to 32 groups of grass in a single draw call, optimizing performance. The vertex shader performs most calculations, utilizing pseudo-random values for positioning and bending. This clever use of noise textures adds a layer of realism to the grass, enhancing immersion.
Bushes and tree canopies follow suit, with each object containing between 1,300 to 3,500 triangles. The use of LODs ensures that distant objects are rendered efficiently, maintaining performance without sacrificing quality. The design of large leafy trees cleverly combines static geometry with sprites, creating a seamless visual experience.
As we move to the more complex elements, animated characters are rendered in two passes. The first pass captures the main color and emissive intensity, while the second pass applies a slight normal offset to create an ink outline effect. This technique adds a unique stylistic flair, distinguishing Genshin Impact from other titles.
After rendering the G-buffer, the depth buffer is copied into a lower resolution texture, which is then combined into a larger texture. This step is crucial for optimizing performance, especially on mobile devices. The shadow mapping process follows, utilizing traditional Unity shadow techniques with multiple cascades for depth precision.
The rendering pipeline continues with the application of screen-space reflections, primarily on water surfaces. This effect enhances realism, allowing players to see their surroundings reflected in the game’s water bodies. The game also incorporates transparent objects, primarily for effects, ensuring that every visual element is accounted for.
The deferred rendering of the main scene occurs in three passes, utilizing the G-buffer and shadow textures. This process ensures that the final image is rich and detailed, with lighting effects applied based on the stencil buffer. The result is a vibrant world that feels alive and immersive.
Lighting plays a pivotal role in Genshin Impact’s visual storytelling. Spot and omni lights are rendered as geometry, allowing for dynamic lighting effects that enhance the atmosphere. The game’s environments are meticulously crafted, with up to 72 light sources in certain scenes, each contributing to the overall ambiance.
The final touches include rendering the sky, sun, and clouds, all of which are created using procedural models. The integration of fog and water surfaces further enriches the visual experience, creating a dynamic and engaging world for players to explore.
In a typical frame, Genshin Impact renders between 500,000 to 850,000 triangles, a remarkable feat for a mobile game. The efficiency of draw calls and instancing techniques ensures that performance remains smooth, even in visually demanding scenarios. However, some optimizations could be improved, such as the use of lightmaps in interior spaces.
Despite these minor shortcomings, Genshin Impact stands as a testament to what can be achieved in mobile gaming. Its rendering techniques are not just functional; they are an art form. The game exemplifies how to create a visually stunning experience that resonates with players.
In conclusion, Genshin Impact is more than just a game; it’s a visual symphony. Its rendering pipeline is a carefully orchestrated process that combines artistry with technology. As the gaming industry continues to evolve, titles like Genshin Impact set the standard for what is possible, inspiring future developers to push the boundaries of visual storytelling.
Genshin Impact employs a custom Scriptable Render Pipeline (SRP) that operates seamlessly across both mobile and desktop platforms. The mobile version, while slightly stripped down, still retains the essence of its desktop counterpart. However, the desktop version is fortified against analysis, making it a challenge for developers and enthusiasts alike to dissect its rendering secrets. Yet, tools like Ninja Ripper allow for the extraction of textures and meshes, providing a glimpse into the game’s visual mechanics.
The rendering process begins with a deferred rendering approach, a choice that stands out in the mobile gaming landscape. Typically, deferred rendering is associated with physically based rendering (PBR) materials, but Genshin Impact adds its unique twist. The first draw call involves rendering a quad into a 128x128 texture, capturing the sky's color based on current lighting parameters. This texture plays a crucial role in rendering reflections on water and fog effects.
Next, another 128x128 texture is prepared by blending noise textures and masks, creating a subtle sky texture with barely visible clouds. The first two draw calls set the stage for the intricate dance of light and color that follows. The third draw call focuses on rendering objects into a G-buffer, which consists of three RGBA textures and a depth stencil buffer. This is where the magic begins, as different object types are categorized using the stencil buffer.
The G-buffer captures essential information: normals, glossiness, and diffuse colors. The first RGBA texture holds normals and glossiness for the main geometry, while the second captures the diffuse color and emissive intensity. The third texture stores additional normals and ambient lighting data. This meticulous breakdown ensures that every detail is accounted for, allowing for rich visual fidelity.
Grass rendering is particularly fascinating. Each blade is represented by 48 to 114 triangles, depending on the level of detail (LOD). The game employs instancing to render up to 32 groups of grass in a single draw call, optimizing performance. The vertex shader performs most calculations, utilizing pseudo-random values for positioning and bending. This clever use of noise textures adds a layer of realism to the grass, enhancing immersion.
Bushes and tree canopies follow suit, with each object containing between 1,300 to 3,500 triangles. The use of LODs ensures that distant objects are rendered efficiently, maintaining performance without sacrificing quality. The design of large leafy trees cleverly combines static geometry with sprites, creating a seamless visual experience.
As we move to the more complex elements, animated characters are rendered in two passes. The first pass captures the main color and emissive intensity, while the second pass applies a slight normal offset to create an ink outline effect. This technique adds a unique stylistic flair, distinguishing Genshin Impact from other titles.
After rendering the G-buffer, the depth buffer is copied into a lower resolution texture, which is then combined into a larger texture. This step is crucial for optimizing performance, especially on mobile devices. The shadow mapping process follows, utilizing traditional Unity shadow techniques with multiple cascades for depth precision.
The rendering pipeline continues with the application of screen-space reflections, primarily on water surfaces. This effect enhances realism, allowing players to see their surroundings reflected in the game’s water bodies. The game also incorporates transparent objects, primarily for effects, ensuring that every visual element is accounted for.
The deferred rendering of the main scene occurs in three passes, utilizing the G-buffer and shadow textures. This process ensures that the final image is rich and detailed, with lighting effects applied based on the stencil buffer. The result is a vibrant world that feels alive and immersive.
Lighting plays a pivotal role in Genshin Impact’s visual storytelling. Spot and omni lights are rendered as geometry, allowing for dynamic lighting effects that enhance the atmosphere. The game’s environments are meticulously crafted, with up to 72 light sources in certain scenes, each contributing to the overall ambiance.
The final touches include rendering the sky, sun, and clouds, all of which are created using procedural models. The integration of fog and water surfaces further enriches the visual experience, creating a dynamic and engaging world for players to explore.
In a typical frame, Genshin Impact renders between 500,000 to 850,000 triangles, a remarkable feat for a mobile game. The efficiency of draw calls and instancing techniques ensures that performance remains smooth, even in visually demanding scenarios. However, some optimizations could be improved, such as the use of lightmaps in interior spaces.
Despite these minor shortcomings, Genshin Impact stands as a testament to what can be achieved in mobile gaming. Its rendering techniques are not just functional; they are an art form. The game exemplifies how to create a visually stunning experience that resonates with players.
In conclusion, Genshin Impact is more than just a game; it’s a visual symphony. Its rendering pipeline is a carefully orchestrated process that combines artistry with technology. As the gaming industry continues to evolve, titles like Genshin Impact set the standard for what is possible, inspiring future developers to push the boundaries of visual storytelling.