我尝试使用硬件tesselation来实现基于位置的布料模拟。
这个想法遵循了这篇论文:

,David Huynh,“使用硬件镶嵌技术进行服装模拟”(2011年)。论文。罗切斯特理工学院
http://scholarworks.rit.edu/theses/265/

我知道如何使用镶嵌来创建模拟点。
我不知道还不知道如何将计算出的信息存储到帧缓冲区中。但是,它们可以直接写入帧缓冲区吗? />

评论

变换反馈缓冲区

听起来很好。布料模拟的约束条件使我必须可以访问粒子的所有邻居(以计算弹力)。可以使用此类缓冲区吗?在几何着色器中?为了防止反馈缓冲区多次打印每个顶点,我想使用GL_POINTS。乍看之下,这似乎使计算弹簧变得更加困难。

#1 楼

基于“棘轮怪胎”的评论,我研究了变换反馈缓冲区,并以此方式解决了我的问题。为这些点生成第二个VBO(以及其他一些用于速度的VBO)。
布料的连通性在ivec4中作为顶点属性给出。使用两个VBO的双重缓冲技巧,我始终可以从最后一步中读取(使用连接信息)并写入另一个缓冲区。这是为了解决并发问题。

计算是在顶点着色器中以GL_POINTS形式进行的。我想以任何方式使用。