上传者: 42166623
|
上传时间: 2022-03-05 23:09:45
|
文件大小: 3.57MB
|
文件类型: -
前言
最近看一些游戏视频,看到了很精彩的布料模拟。然后Unity里也自带了布料物理组件,但是以前只是拿来用,并没有去了解过其背后的实现原理。于是这两天上网搜了一下相关的文章,并准备动手做一个。
筛选了一遍之后,找到一个讲解比较详细的如下:
CS114 Project 3:
Cloth Simulation using Mass-Spring System
下面会参照以上的文章,大致说明一下背后的物理数学原理,然后用Unity的ComputeShader实现一个入门版本的GPU布料模拟。
先放个效果图:
1. 网格质点弹簧模型
1.1 弹性力
这是目前用的比较多的一种布料物理建模。思路是将一块布料视作由一个个质点构成的网格,网格之间由弹簧相连接。如下图:
质点之前的连接分为三类,分别用以模拟材料中的三种力:
上下左右相邻质点连接,模拟结构力(Structural),如拉伸和收缩。
对角线连接