Topic Title: Efficient and Realistic Cloth Simulation Engine on Multiple Platforms
Technical Area: Cloth Simulation
Cloth simulation is the core technology to obtain the true visual effects of digital garments based on physical based simulation which uses computer graphics (CG) related technologies massively. This technology has been developed for many years and has been applied in many fields to help people wear smarter and better. Firstly, designers can achieve benefits by viewing their fashionable clothes directly by cloth simulation without making the real clothes which is expensive and slow. Moreover, consumers can see the virtual clothes in different view angles and customize the clothes conveniently to find their true loves.
Currently, almost all cloth simulation engines are working on powerful computers equipped with many CPU cores or GPU cores for acceptable user experience. That means we can only view the wonderful 3D virtual clothes while these heavy computers are available. For better user experience, we aim at developing an efficient and realistic cloth simulation engine which can work on all the mainstream platforms such as Windows, MacOS, Linux, iOS, Android, etc. Using this engine, people can view the wonderful virtual clothes on any device at any time.
Related Research Topics
To achieve the required cloth simulation engine, several challenges where related research topics may arise:
1. Efficiency: The simulation should be maintained also fast on platforms which own limited computing capability. One way to realize this is to dynamically simplify the cloth meshes without obvious loss of the fidelity. Moreover, the simulation dynamics, the collision handlings and other computationally intensive modules should also be optimized.
2. Reality: Since we want the realistic dressing effect to help fashion designers and customers make choices. The simulation engine should support the measured physical properties of the clothes, such as stretching ratio, shearing ratio, bending stiffness, friction ratio, density, etc. Moreover, these physical properties should influence the shape of the clothes in a convinced way which can be verified by the real dressing experiments.
3. Scalability: The simulation engine is required to work on multiple platforms for maximum performance. If the working platform consists of pure CPUs, the engine should use all the CPU resources. As far as we know, almost all devices have GPUs which are more powerful for solutions of parallelizable problems. Therefore, simulation engine should also know how to utilize GPU threads such as Nvidia GPUs, AMD GPUs and Mobile GPUs. Compute shader may be a preferable choice to adopt rather than CUDA and OpenCL since graphics and computations are both expected for the engine which runs on multiple platforms. It is also valuable to note that the performances of many algorithms working on GPUs are not as good as executing on CPUs, so these algorithms should be modified or replaced by other GPU-friendly ones to develop the qualified simulation engine.