发明名称 一种3D流体的仿真方法及系统
摘要 本发明提供了一种3D流体的仿真方法及系统,相应的方法包括:搜索每个流体粒子的邻居粒子,并通过核函数解出Navier-Stokes状态方程,获得流体粒子的粒子位置和粒子密度;计算每个流体粒子的象素浓度,再将流体粒子的象素浓度进行平滑处理后输出;将流体粒子的密度和位置转化成一个空间密度场,形成表面数据并得出表面的法向量;将表面数据和表面法向量处理成面中心和法向量格式,在光线的位置通过光子效应绘制屏幕坐标;根据象素流体粒子的象素浓度、屏幕坐标通过变换矩阵转换到世界坐标系下,并进行贴图和颜色合成,最后将合成的颜色输出。本发明无需依赖网格且计算速度较快、计算量和存储空间较小,能够获得较好的渲染效果。
申请公布号 CN102831275A 申请公布日期 2012.12.19
申请号 CN201210319521.4 申请日期 2012.08.31
申请人 中国科学技术大学 发明人 董兰芳;汪锦想
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京凯特来知识产权代理有限公司 11260 代理人 郑立明;赵镇勇
主权项 一种3D流体的仿真方法,其特征在于,包括:通过空间Hash方法搜索每个流体粒子的邻居粒子,并通过核函数解出Navier‑Stokes状态方程,获得流体粒子的粒子位置和粒子密度,并输出;通过OpenGL颜色混合模式和Billboard方法并根据每个流体粒子的粒子位置,计算出每个流体粒子的象素浓度,再通过Cuda将所述流体粒子的象素浓度进行平滑处理后输出;将所述流体粒子的密度和位置转化成一个空间密度场,通过设定一个阈值将空间密度场转换成Marching Cube数据构造,形成表面数据并得出表面的法向量;将所述表面数据和表面法向量处理成面中心和法向量格式,根据Snell原理,计算出光线的位置,在所述光线的位置通过光子效应绘制屏幕坐标;根据所述象素流体粒子的象素浓度、屏幕坐标通过变换矩阵转换到世界坐标系下,并根据变换矩阵转换到世界坐标系下的所述象素流体粒子的象素浓度、屏幕坐标进行贴图和颜色合成,最后将合成的颜色输出。
地址 230026 安徽省合肥市包河区金寨路96号