自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(363)
  • 资源 (2)
  • 收藏
  • 关注

原创 【持续更新】总结国内外图形学物理模拟相关学者和网站

总结图形学物理模拟相关学者和个人网站仅做个人笔记所用。欢迎在评论区补充!国外学者Matthias MüllerNV物理组的leader,1999年博士毕业于苏黎世理工博士论文是研究聚合物分子动力学模拟的,后研究图形学。XPBD作者之一。早期曾经研究SPH模拟变形体研究领域:PBD、SPHhttps://matthias-research.github.io/pages/Theodore Kim耶鲁大学副教授,曾任皮克斯高级研究员.曾参与寻梦环游记等动画制作PS: 2020年有一篇S

2022-03-30 12:23:39 4033 6

原创 推导 Primal Residual XPBD

原本的XPBD(Macklin 2016)Chen2023主张左边的红色二阶项可以舍掉,但右边的g(也就是Primal residual) 应该恢复。因为左端那个是Quasi Newton的常见做法。而舍弃右边需要保证lambda很小才成立。舍掉会导致XPBD残差下降停滞,仿真不稳定。

2024-05-20 13:57:58 244

原创 pyamg Smoothed Aggregation算法流程

设置如下算例。分两步,第一步是setup,第二步是solve。第一步的目的就是得到P等。

2024-05-16 17:14:45 279

原创 Newton法求解布料

【GAMES103-基于物理的计算机动画入门】 【精准空降到 1:25:38】 https://www.bilibili.com/video/BV12Q4y1S73g/?

2024-03-18 16:36:00 796

原创 python局域网共享文件 http server

【代码】python局域网共享文件 http server。

2024-03-16 00:57:51 398

原创 Debug Eigen

(下载地址: https://gitlab.com/libeigen/eigen/-/blob/master/debug/msvc/eigen.natvis )(如果你git clone过Eigen文件夹,就发现它就在Eigen源码的Debug目录下面)假如我们直接想要检查Eigen中的VectorXf的值,我们会发现无法看到内部的值,如图。(其中%VSINSTALLDIR%是Visual studio的安装目录)只需要下载eigen.natvis这个文件,然后放到下面的目录即可。

2024-02-01 23:59:28 494

原创 zeno编译

/step 0//step 1//step 2。

2023-10-11 16:25:47 582

原创 WSL无法保存文件(权限不足)

其中username是你的用户名。

2023-09-11 20:42:12 814

原创 git proxy

【代码】git proxy。

2023-09-05 08:01:38 588

原创 Houdini vex清除过远的离散点(outliers)

filter num控制最小邻居数目。filter dist控制最小距离。

2023-08-07 11:08:26 693

原创 Houdini中获取matrix的属性需要getcomp函数

matrix3x3的type是3@xxx。直接写mat[0][0]是错误的。

2023-08-04 16:31:09 529

原创 houdini vex中的属性类型(attribute)

https://www.sidefx.com/docs/houdini/vex/snippets.html#parameters

2023-08-04 16:20:34 755

原创 ziran2019调用栈

admm1所处文件所处函数行号执行语句main.cppmain98h.start();AdmmInit.hstart38sim.simulate();SimulationBase.hsimulate347advanceOneFrame();AdmmSimulationFoam.hadvanceOneTimeStep813admmStep();AdmmSimulationFoam.hadmmStep781FStep(local_t

2023-08-04 11:52:25 510

原创 wsl安装ziran2019

是为了翻墙的话走代理。否则github clone的很慢。但是在Windows的硬盘创建文件的时候会出现权限问题,参考这个帖子。首先从windows商店搜索ubuntu18。注:WSL可以访问windows上的硬盘。然后重启WSL或重启windows即可。(我是用的wsl一代,二代没测试过)然后照着README安装即可。(亲测Ubuntu20不行)新安装的系统首先要更新apt。然后第一次打开会自动安装。

2023-08-03 22:21:20 1050

原创 Houdini查看参数能用的内置变量($符号开头的变量)

在某个参数上,右键,reference, local variable就能看到。

2023-07-30 17:12:43 793

原创 houdini命令行工具iconvert批量转换exr图片为png

【代码】houdini命令行工具iconvert批量转换exr图片为png。

2023-07-27 22:33:36 595

原创 【splishsplash】volumeSampling:粒子化采样的小工具

输出的vtk可以使用paraview预览或者使用python的meshio库读入。功能:输入一个obj文件,输出一个在体积内采样好的粒子文件(vtk)以查看粒子的平均半径是多少。类似于Houdini的。或者trimesh的。

2023-07-27 15:45:59 603

原创 如何将矩阵乘法改写成matrix free的形式

M存储:实际上存每个M的倒数。inv_mass数组为Nx1的。例如之前是1,2,3, 扩容后是1,1,1,2,2,2,3,3,3。col_ind: col_ind是从tet_indices得到的。它也需要扩容, 例如之前是1,2,3, 扩容后是1,2,3,4,5,6,7,8,9。其中gradC是mx3n的矩阵,它是CSR格式的,每行有12个非零值。M是对角矩阵,3nx3n。alpha_tilde是对角矩阵。同时有一个辅助的数组为col_ind,也是Mx12。col_ind记录的是每行的列下标。

2023-07-21 17:38:29 606

原创 使用scipy的kdtree寻找最近邻点

因为第一个点必定是自己所以找俩。返回的是两个np array。第一个是所有的最小距离,第二个是所有的最近点index。

2023-07-18 14:20:24 890

原创 vscode debug的方式(launch.json) vs code

在.vscode文件夹下建立launch.json。

2023-07-18 11:01:49 3261

原创 使用cProfile来对python程序进行性能调优(各个函数耗时/火焰图)

性能调优就是打印出来每个函数的耗时。用一个图来表示的话,叫做火焰图。flamegraph。

2023-07-06 10:04:28 1218

原创 vscode launch.json与tasks.json

launch.json: 用于debug。tasks.json: 用于执行一切任务。

2023-05-18 15:05:39 1014

原创 houdini vex 查找最近点的距离

值得注意的是,不能使用nearpoint,因为会找到最近的点是自己(很无语)。所以用nearpoint的maxpts参数设为2,则找到的第二个点恰好就是最近点(第一个点是自己)

2023-04-05 23:06:50 1096

原创 Neohooken PBD 文献笔记

以上的能量密度分为CH与CD两项。CD就是应力偏量造成的弹性力。由于constraint对应的是单元能量,而能量密度只是与单元能量差了一个体积。所以通过对应关系我们可以找到deviatoric alpha与材料参数的对应关系。实际上,为了保证rest stability(也就是变形为0的时候不受力),需要对Hydrostatic项进行修正。显然CD是无法完全对应到psiD的,主要就是差了一个减去常数3。所以CD对应于平移了3mu/2的能量密度。定义能量密度为cosntraint的函数。

2023-04-03 11:39:04 1050

原创 taichi windows编译 build from source

然后install python whel。

2023-03-30 16:10:48 672

原创 Everything about PBD:关于PBD的一切!

原始PBD可以认为是alpha为0的系统,因此是刚度无穷大的系统,条件数比较大。但是它是能够产生三维的变形的。根据刘天添的fast simulation of mass-spring system 中的论证,XPBD相当于是隐式的欧拉时间积分。或者说是沿着绳子的截面的法向量,它是四元数的函数。描述刚体与粒子系统的不同之处在于,我们要求解的变量不再是粒子的位置,而是刚体的平移和旋转。我们可以设计出多种多样的constraints,比如体积约束,距离约束,应变约束,流体密度约束,刚体约束,塑性约束等等…

2023-03-29 17:48:45 2398

原创 【读文献】primal dual PBD

上市可以认为是广义坐标系下的速度(实际上是广义坐标的时间导数)与直角坐标系下的速度u的关系。又因为我们采用了最简单的显式时间积分,速度和位置之间只不过是乘以个dt的关系,而dt是个常数,因此是线性的。上市可以认为是广义坐标系下的速度(实际上是广义坐标的时间导数)与直角坐标系下的速度u的关系。又因为我们采用了最简单的显式时间积分,速度和位置之间只不过是乘以个dt的关系,而dt是个常数,因此是线性的。我们这里不加上标的q都默认是q+. 因为q-是已知量(上一时刻的广义位置),而只有下一时刻的位置q+是未知量。

2023-03-27 16:20:24 699

原创 【Houdini】fluid particle surface 节点

需要在Regions中打开subtract from collision volumes。第三个输入端口可以在表面重建前减去部分。

2023-03-25 22:09:13 1185

原创 【Houdini】使用karma赋予材质

这是因为USD的文件存储结构和旧的材质旧不太一样。所以任何旧的东西(包括材质、表面等)都要先导入到USD当中,相当于做一次格式转换,然后后续使用的时候,都要使用转换后的。也就是说,USD目前是出于一种半封闭状态的,其他的不太和它兼容,要想使用,就得先转换一下。一个很常见的混淆是Material VOP和Material Path。前者是用来导入旧的材质的(除了MTLX材质以外的任何材质)至于为什么要分这两步,并且还要分开旧材质和新材质呢?后者是专门导入MTLX新材质的。

2023-03-20 17:08:17 684

原创 jupyter 同时打印多个值

【代码】jupyter 同时打印多个值。

2023-03-13 22:08:37 307

原创 Houdini 组(group)的详细讲解

内容参考Houdini101首先,group可以看做是一种特殊的attribute,只是他的值只是0-1。因此他其实就是一种mask而已。在vex中,我们只要用这样的写法就能自动创建一个名为mygroup的组。这和attrb基本一致。我们键入group关键字,会发现以下节点与之有关。

2023-03-11 21:41:25 2240

原创 houdini快捷操作

aaa

2023-03-11 00:13:06 521

原创 Houdini polyextrude讲解

既然是poly extrude,所操作的对象必然要是polygon或者polygon mesh的。首先选择要extrude的面或者是线。我们先以面为例。

2023-03-10 21:55:53 938

原创 使用Houdini输出四面体网格并输出tetgen格式

我们的目标是从houdini输出生成的四面体,希望是tetgen格式的。众所周知,houdini是不能直接输出四面体的。我探索并试验了以上所有三种方案。优缺点如下:第一种方案的缺点是四面体是不可控的,因为是tetgen现生成的。第二种方案的缺点是你要保证geo里面没有多余的数据。例如还存储的颜色或uv等信息,或者houdini的prim上还存了其他信息,就会导致解析失败。当然我们可以使用clean节点清除掉这些多余信息。我会把脚本放到文末。第三种方案是最好的。可控性最好。因此后面我们会说这种方法。

2023-03-10 15:39:22 1026 1

原创 推导能量对广义坐标的导数

其中G是广义坐标到一般坐标的Jacobian矩阵。其中能去掉外面的T是因为矩阵求导时,假如。则U对u的导数就是A,而非A的转置。其中符号表示内积。

2023-03-03 15:34:57 647

原创 用powershell脚本调用ffmpeg将图片序列转换为视频

【代码】用powershell脚本调用ffmpeg将图片序列转换为视频。

2023-03-02 19:29:25 214

原创 taichi写出ply序列的最小化例子

taichi写出ply序列的最小化例子。

2023-03-01 01:00:23 230

原创 houdini配置vscode

来自。

2023-02-27 20:58:25 915

原创 【BUG】Houdini解决OpenCL问题

报错解决:

2023-02-25 23:12:12 473

原创 【taichi】在Window10上从源码编译太极(用于AOT)

如果出现问题,就手动运行最后一条命令来调用VS安装器。vulkan貌似不需要显示安装,只需要确保你的NV driver的版本比较新即可。driver中貌似自带vulkan。为了防止与user side已经安装好的taichi冲突,建议新建一个conda环境。建议取消中文语言包,只选英文的(因为中文有几率会出现BUG)说明:C++游戏开发是为了UE AOT用的。vulkan也是UE AOT要用的。第二是说要用Vulkan。中有安装好的python包。就有安装好的c_api。然后代码中的安装脚本。

2023-02-17 10:53:37 1031

biomass_papers_noPDF_2020-8-19.enlx

自用参考文献备份 自用生物质,流化床,拉格朗日法参考文献集合 endnote导入 不带PDF文件附件 2020-8-19 共计126篇

2020-08-19

paraview.zip

包括user guide, ppt,和user guide教程里所用的例子。先保存下,方便随时查看。

2020-01-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除