

Technical artworks in group project
The artwork that I have responsibility for in the UE game project when I worked at Tencent
1. The render target with overlook depth research for shader functions like snow footprints, the depth for rain, and GPU skin animation.
2. Houdini dynamic destruction and RBD simulation test and export VAT models and texture in Level.
3. The character makeup system in UE4. I am responsible for the material function and connecting with a blueprint for each part.
4. The 3d sdf clouds workflow and sprite 2d clouds creation;
5. The world offset function based on landscape height and interaction for the grass, and blossom effect;
6. The lighting, screen effect, and fire decays material for the combat scene;
7. The SD procedural texturing for stylized art assets.
8. The research for motion matching animation and pushing box animation blueprint

Shader Functions
Overlook Depth for Raining
1. Render Buildings and other rain occulude proxies into Overlook Depth Textures.
2. Particles sample Overlook Depth Texture in Vertex Shader to test whether it hits something or not.
3. If hit something just transform all the vertices in that particle to (-1,-1,-1,1) on clip space to kill the particle and meanwhile avoid overdraw.

Depth RT + GPU Animation
-
For this DepthRT, I start from rendering the Depth RT for the landsacpe based on the current tool.
-
Then sample the RT for simulating the ground movement vertex offset in Vertex Shader.
-
The animal groups are moving only within the range of where the DepthRT is avaliable to capture.
-
Limitation: For the vally and hills part those animation might be looks weird.
-
Pros: For offline rendering the depth RT, 1k grayscale texture is already enough to render the 512*512 landscape

Overlook Depth for Footprints
-
Render Characters' shoes, clothes to Overlook Depth Texture, then get distance between shoes position and snow surface.
-
Render extra Overlook Depth Texrture just for records those position and keep track those position records into RT cahe.

Interactive shader with collision & RVT

This ripple shader is the functional shaders when close to the air wall in distance, the ripple shows up and then when collision detected, the ripple effects spawn at that position.

Also I build in the shader functions for the landscape offset with RVT textures, like this bloossom effects, I sample RVT height info from the landscape and set to world offset with toggle button, including the axis rotation based on the normal.


Realtime dynamic destruction (Houdini-UE)
Instead of using the VAT methods to make pre- baked destruction animation. For this task is to create dynamic destruction in UE engine. So I start to seperate static and destructable part at first, Then I seperate different fructure levels for differ materials. Based on each level, I try to manualy set up constraint and for loop each level to crank up speeds, then export all the vertex position, velocity and other info to an json list, which enable to get these information in UE engine.



Pre-baked VAT destruction

VAT imported in the level

RBD simulated in the Houdini

DOP network research


2D sprite clouds textures and shaders for start scene
3D SDF Clouds

I try to develop procedural workflow specific for generate volume texture for clouds, and use vex script to calculate the density field of the cloud and direction of light into the texture RGBA channels

UE character customization system


The core of the makeup system is based on the use of Render Target instead of base mapping, by refreshing the Render Target in real time to achieve changes in the makeup. In the PBR framework, we need BaseColor, Normal and Mix (Roughness, Metallic, AO) mapping. If special looks are considered, it may be necessary to add additional mapping channels to record some auxiliary information, or to make use of the alpha channel of existing mapping.
In the case of BaseColor, for example, we need a base map without makeup and a map of the individual makeup components with alpha channels. When generating the look, we blend the base image and the part images in real time and render them to the Render Target.
Texture importer with compression performance check (c#)
