This is your work, valued

Taipa

Tianchen Xu

Elite
@StarsX

My research interest is Black Magics in Computer Graphics.

XUSG. XUSG, XU's supreme graphics lib, is a handy wrapper currently for DirectX 12. It can be a good reference for designing your own DX12 wrapper APIs.

125

ComputeRaster. Real-time software rasterizer using compute shaders, including vertex processing stage (IA and vertex shaders), bin rasterization, tile rasterization (coarse rasterization), and pixel rasterization (fine rasterization, which calls the pixel shaders).

122

NonuniformBlur. Authors' implementation of my SIGGRAPH Asia 2019 Technical Briefs (The Power of Box Filters: Real-time Approximation to Large Convolution Kernel by Box-filtered Image Pyramid) demo I (just for reference). A very fast approximation to large-kernel Gaussian blur with nonuniform blur radii, by making use of box-filtered mip maps V-cycle (theoratically related to Haar wavelet tranforms). The mathematical model can be found in the PDF file.

108

IrradianceMap. Authors' implementation of my SIGGRAPH Asia 2019 Technical Briefs (The Power of Box Filters: Real-time Approximation to Large Convolution Kernel by Box-filtered Image Pyramid) demo II. Real-time dynamic irradiance mapping.

55

RayTracedGGX. Ray tracing sample using GGX reflection model, 1spp with spatial-temporal denoiser. Acceleration structure build uses async compute.

50

FluidX12. Authors' implementation of our SIGGRAPH Asia 2021 Technical Communications (Viewport-Resolution Independent Anti-Aliased Ray Marching on Interior Faces in Cube-Map Space) demo I. Fast volume rendering using our novel ray marching with smoke simulations by Eulerian grid method for solving Navier-Stokes equation.

39

Smoke3D. DirectX 11 3D smoke simulation by Eulerian grid method for solving Navier-Stokes equation and rendering by volume ray-casting, all with compute shaders

39

VolumeRender. Authors' implementation of our SIGGRAPH Asia 2021 Technical Communications (Viewport-Resolution Independent Anti-Aliased Ray Marching on Interior Faces in Cube-Map Space) demo II. Fast real-time volume rendering for an external volume texture with mesh occlusion.

31

MultiVolumes. Authors' implementation of our SIGGRAPH Asia 2021 Technical Communications (Viewport-Resolution Independent Anti-Aliased Ray Marching on Interior Faces in Cube-Map Space) demo III. Fast real-time multiple volumes rendering for external volume textures with mesh occlusion.

31

PoissonSolver. DirectX 11 Poisson solvers using Jacobi iteration, conjugate gradient, and multi-grid method respectively.

27

DXRVoxelizer. XUSGRayTracing-EZ sample on DirectX12: real-time voxelization making use of ray-tracing pipeline for easy solid voxelization.

27

VoxelizerX12. DirectX 12 sample: real-time voxelization making use of tessellation for primitive processing and extrapolations, as well as depth peeling for solid voxelization.

26

SDFTracing. Signed distance field (SDF) generation by amortized ray tracing, SDF AO, and SDF soft shadow

23

ParticleEmitter. An improved implementation of my CASA 2013 paper "Real‐time generation of smoothed‐particle hydrodynamics‐based special effects in character animation" (https://onlinelibrary.wiley.com/doi/abs/10.1002/cav.1545). Particle emissions from the surface of mesh. The emitters are approximatively uniformly distributed by taking the advantage of quad tessellations. The fluid is simulated by SPH using my prefix-sum bin sorting.

22

VoxelizerX. Real-time voxelization making use of tessellation for primitive processing and extrapolations, as well as depth peeling for solid voxelization.

21

Character12. DirectX 12 character animation and rendering. Note: currently, there is no AA deployed in this sample, because it originally worked with temporal AA in my full scene rendering; please use AA settings in the panel provided by your graphics-card vendor for a better visualization.

20

RenderingX12. Partially open source: real-time scene rendering using XUSG based on DirectX 12. 纯粹秀秀demo……ただ、デモを見せるため……

20

SmokeAmp. 3D smoke simulation by Eulerian grid method for solving Navier-Stokes equation and rendering by volume ray-casting, all in C++ AMP

19

SparseVolumeDXR. DirectX 12 sample: real-time rendering with a sparsely volumetric representation from a mesh by depth peeling OIT. The ray-traced shadow path is only enabled with the native DXR, while DXR fallback layer is not supported for this sample, since IgnoreHit() causes crash due with dxrfallbackcompiler anyway.

15

SuperResolution. DML super resolution exercise.

14

RayTracedSPH. Real-time fluid simulation using smoothed particle hydrodynamics (SPH) by taking advantage of GPU hardware ray tracing for particle neighbor search.

13

NNTestAmp. A simple GPU-based CNN exercise sample using C++ AMP, referring to https://www.codeproject.com/Articles/24361/A-Neural-Network-on-GPU

12

VkCube. A Vulkan sample (simply deferred shading) revised from the LunarG SDK, using my DXUT-like framework.

12

MSFallback. Meshlet culling by a layer of interface with amplification-shader and mesh-shader fallback implementations using compute and vertex shaders. All API calls are unified with the fallback layer, and the native and fallback paths can be switched by EnableNativeMeshShader().

11

DynamicResources. Single-pass separable Gaussian blur by dynamic (bindless) resources supported by Shader Model 6.6.

11

VKCubeHLSL. A Vulkan sample (simply deferred shading) revised from the LunarG SDK, using my DXUT-like framework. This is an HLSL version of the Vulkan sample, which utilized my modified glslang initially (glslangValidator.exe attached, compiled from the official glslang, which is feasible now with my suggestions accepted).

9

Smoke2D. DirectX 11 2D smoke simulation (DXUT required).

9

SparseVolumeX. Real-time rendering with a sparsely volumetric representation from a mesh by depth peeling OIT. For a better quality of the shadow map, directional ray-traced shadow mapping will be considered in the future.

9

MeshShader. Simple mesh-shader sample that auto-renders VB with IB to meshlets.

9

SilhouetteX. Silhouette extraction by tessellation (compared with GS).

9

SHIrradianceEZ. XUSG-EZ sample. Use XUSG-EZ, a DX11-style wrapped interface based on DX12, to implement spherical harmonics rendering. The code is also compared with XUSG DX12-style implementation.

8

MIPGen. Different MIP-map generation algorithms.

7

CmdPixels. Image printed to console in 16-color palette.

6

MotionFx. Motion effects materials (VRCAI 2011, CASA 2013, and CAVW).

5

OclDX12Interop. Single-pass separable Gaussian blur with OpenCL interops with DX12

4

Amp12Interop. C++ AMP interops with DX12, a simple color to grey process

4

SA2012Inkwash. SIGGRAPH Asia 2012 Inkwash material.

4

slangpyGaussianBlur. Single-pass separable Gaussian blur using slangpy

3

spvgen. Library to Generate SPIR-V Binary

2