HappehLemons Posted May 26, 2020 Share Posted May 26, 2020 (edited) Using a deforming collisions, has anyone had success with getting flip particles to stick to the surface and stay there? I'd like flip particles that make contact with an animated deforming collider to stick on contact with some way to determine if they stay stuck on the collision object in that position where they collide, or they are loosened off the surface to begin acting as normal flip particles / begin sliding down the surface. It seems anytime I add animation and particles into the mix they either fall off because of the animation, or they get pulled off the collision surface by the flip particles themselves in the case of more viscus fluids. I've tried: Stick on collision... no luck. While it helps the particles hold on there for a bit, and guide them on the surface, maxing out everything, the particles still seem to slide down the surface and fall off even with the most viscus fluids. Enabling slip on collision and zeroing it out doesn't seem to help much either. Friction didn't do much either. Is there any tricky non-expensive (hopefully simple) way of doing this? It'll be used in animation so I can't have the sims taking too long. I'd like it to be done inside the autodop network and not post sim so it can be interacted with by other flip particles / the collider. I've found solutions to do this post-sim but it doesn't give me the result I'm looking for. Edited May 28, 2020 by HappehLemons Quote Link to comment Share on other sites More sharing options...
HappehLemons Posted May 28, 2020 Author Share Posted May 28, 2020 (edited) Just to continue updating this while I try to find a solution here's what I come across for resources: Been on the hunt for something that something sticks to an animated surface with velocity and doesn't full off unless it's set to. It'll also need to resolve quickly, because it will be used for animation. (The below all include .hip files that work on H18) 1) This method uses a popdrag for air resistance plus some other methods that work well to keep particles smoothly flowing across a surface. Suffers from animation really throwing it out of wack. When particles fell off the surface because of rotation in animation from the collision object it caused them to have very strange behavior (They kind of just flated in the air in a strange pattern). I didn't dig too much into this, but didn't seem very CPU taxing and did do a good job of smoothly flowing surfaces. https://www.sidefx.com/forum/topic/24897/ (Hip File) https://www.sidefx.com/forum/attachment/2540103a248b6325ae9c84345748756cbb800e33/ 2) Not really applicable. It's using a fog map to make a stick on collision mask based on Houdini built in stick on collision setup that doesn't give a great stick result for me.. So not adding any stick, just making it per object level. Overall a method that converts your geo to a fog density, uses a volume wrangle to control the density of the fog and uses that as a stick mask. Seems to be a bit more of a taxing method as the default sims example are simple, yet take a while per frame then other methods listed. May of just been the scene setup. Works well, but a simple rotation caused all particles fall off. Had great sticking effects with good control, but I wasn't able to easily find a method to get these to stick to an animated surface during a 180 rotation on the sphere. https://www.sidefx.com/forum/topic/33954/ (Hip file) https://www.sidefx.com/forum/attachment/dc1b85ffd5ead04d635ddb117ec8eff5e3d81399/ 3) Not really applicable again as it's also using the stick on collision tools within houdini. It's using a fog map to make a stick on collision mask but using a different node setup with a part of geo versus the whole thing. It converts an area to a gas field and uses that as a stick mask. Goes about it a bit different way - blasts off the section and uses a pryo node to turn it into density, but like the first method, a rotation caused particles to fall out. Scene simmed pretty fast, maybe due to the areas of selection being converted to a fog being smaller.. (Hip file) https://forums.odforce.net/applications/core/interface/file/attachment.php?id=44804 4) Particles really *stick" right where they hit, and the sim was very quick. Doing a rotation did cause them to come off, it didn't make all of them. I'll have to mess around some more with the settings on this. Uses a Geometry VOP DOP and sample collision field for every particle . Might start digging into this method. (Hip File) https://forums.odforce.net/applications/core/interface/file/attachment.php?id=17044 5) Have not tested this yet because it's not free. Considering picking this up but not sure if it would work for me. It's a scene for $33. It's more about surface adhesion versus *sticking* though so it may not have what I need. Can't speak to much becasue I haven't used it. Benchmarks show it to resolve pretty quickly though and add very little onto total sim times. https://gumroad.com/l/Oejcb Edited May 29, 2020 by HappehLemons Quote Link to comment Share on other sites More sharing options...
bigmustache Posted August 7, 2020 Share Posted August 7, 2020 try to turn up velocity scale on collision panel? Quote Link to comment Share on other sites More sharing options...
How_Do_I_Dini Posted April 6 Share Posted April 6 Hello! I was looking for a solution to this issue and unfortunately, the documentation and forum posts fall short of this. FORTUNATELY I was able to find a solution that is simple and easy to set up and I just wanted to comment on this thread (despite the fact that it is almost 4 years old at this point) to help those looking for a similar solution. THE PROBLEM: The issue I was having was, during my flip simulation, my collider geometry was animated/deforming/moving in space and when the flip particles would collide with the collision surface, the particles would stay with the stick to collision enabled only while the collider was static. As soon as the collision geometry began deforming, the formerly stuck particles would begin sliding, completely unhindered by any frictional forces and slide off the surface. The real problem as it turns out, was due to the fact that the velocity of the collider was not being calculated. THE SOLUTION: Connect your collision geometry to a collisionsource sop >> set the voxel size to an appropriate resolution and connect both outputs of the collisionsource node to a merge sop and connect it to your dopnet for your flip simulation. Also make sure that in your dopnet>> flipsolver, under volume motion >> collisions, you have velocity type set to point. Also, obviously make sure you have stick to collision enabled under flipsolver>> volume motion >>collisions. This solved the issue for me as now the velocity of the moving collision object was being calculated. Hope this helps someone! cheers Quote Link to comment Share on other sites More sharing options...
TheDude123 Posted July 7 Share Posted July 7 On 4/6/2024 at 9:53 AM, How_Do_I_Dini said: Hello! I was looking for a solution to this issue and unfortunately, the documentation and forum posts fall short of this. FORTUNATELY I was able to find a solution that is simple and easy to set up and I just wanted to comment on this thread (despite the fact that it is almost 4 years old at this point) to help those looking for a similar solution. THE PROBLEM: The issue I was having was, during my flip simulation, my collider geometry was animated/deforming/moving in space and when the flip particles would collide with the collision surface, the particles would stay with the stick to collision enabled only while the collider was static. As soon as the collision geometry began deforming, the formerly stuck particles would begin sliding, completely unhindered by any frictional forces and slide off the surface. The real problem as it turns out, was due to the fact that the velocity of the collider was not being calculated. THE SOLUTION: Connect your collision geometry to a collisionsource sop >> set the voxel size to an appropriate resolution and connect both outputs of the collisionsource node to a merge sop and connect it to your dopnet for your flip simulation. Also make sure that in your dopnet>> flipsolver, under volume motion >> collisions, you have velocity type set to point. Also, obviously make sure you have stick to collision enabled under flipsolver>> volume motion >>collisions. This solved the issue for me as now the velocity of the moving collision object was being calculated. Hope this helps someone! cheers Would you happen to have a .hip file to illustrate your method? Thanks! 1 Quote Link to comment Share on other sites More sharing options...
Maoyaozhuayu Posted September 18 Share Posted September 18 On 4/7/2024 at 12:53 AM, How_Do_I_Dini said: Hello! I was looking for a solution to this issue and unfortunately, the documentation and forum posts fall short of this. 你好!我一直在寻找这个问题的解决方案,不幸的是,文档和论坛帖子没有达到这个要求。 FORTUNATELY I was able to find a solution that is simple and easy to set up and I just wanted to comment on this thread (despite the fact that it is almost 4 years old at this point) to help those looking for a similar solution. 幸运的是,我能够找到一个简单且易于设置的解决方案,我只是想对此线程发表评论(尽管事实上它已经有近 4 年历史了)以帮助那些寻找类似解决方案的人。 THE PROBLEM: 问题: The issue I was having was, during my flip simulation, my collider geometry was animated/deforming/moving in space and when the flip particles would collide with the collision surface, the particles would stay with the stick to collision enabled only while the collider was static. As soon as the collision geometry began deforming, the formerly stuck particles would begin sliding, completely unhindered by any frictional forces and slide off the surface. 我遇到的问题是,在翻转模拟期间,我的对撞机几何体在空间中进行动画/变形/移动,并且当翻转粒子与碰撞表面碰撞时,粒子将保持在碰撞棒上,仅当碰撞体处于启用状态时才启用碰撞。静止的。一旦碰撞几何体开始变形,之前粘住的颗粒就会开始滑动,完全不受任何摩擦力的阻碍,并从表面滑落。 The real problem as it turns out, was due to the fact that the velocity of the collider was not being calculated. 事实证明,真正的问题是由于没有计算对撞机的速度。 THE SOLUTION: 解决方案: Connect your collision geometry to a collisionsource sop >> set the voxel size to an appropriate resolution and connect both outputs of the collisionsource node to a merge sop and connect it to your dopnet for your flip simulation. Also make sure that in your dopnet>> flipsolver, under volume motion >> collisions, you have velocity type set to point. Also, obviously make sure you have stick to collision enabled under flipsolver>> volume motion >>collisions. 将碰撞几何体连接到碰撞源 sop >> 将体素大小设置为适当的分辨率,并将碰撞源节点的两个输出连接到合并 sop,并将其连接到 dopnet 以进行翻转模拟。还要确保在 dopnet>> 翻转求解器中,在体积运动 >> 碰撞下,将速度类型设置为点。另外,显然请确保您已坚持在 Flipsolver>> 体积运动 >>collisions 下启用碰撞。 This solved the issue for me as now the velocity of the moving collision object was being calculated. Hope this helps someone! 这为我解决了这个问题,因为现在正在计算移动碰撞物体的速度。希望这对某人有帮助! cheers 干杯 Thank you !!! Quote Link to comment Share on other sites More sharing options...
Maoyaozhuayu Posted September 18 Share Posted September 18 On 4/7/2024 at 12:53 AM, How_Do_I_Dini said: Hello! I was looking for a solution to this issue and unfortunately, the documentation and forum posts fall short of this. 你好!我一直在寻找这个问题的解决方案,不幸的是,文档和论坛帖子没有达到这个要求。 FORTUNATELY I was able to find a solution that is simple and easy to set up and I just wanted to comment on this thread (despite the fact that it is almost 4 years old at this point) to help those looking for a similar solution. 幸运的是,我能够找到一个简单且易于设置的解决方案,我只是想对此线程发表评论(尽管事实上它已经有近 4 年历史了)以帮助那些寻找类似解决方案的人。 THE PROBLEM: 问题: The issue I was having was, during my flip simulation, my collider geometry was animated/deforming/moving in space and when the flip particles would collide with the collision surface, the particles would stay with the stick to collision enabled only while the collider was static. As soon as the collision geometry began deforming, the formerly stuck particles would begin sliding, completely unhindered by any frictional forces and slide off the surface. 我遇到的问题是,在翻转模拟期间,我的对撞机几何体在空间中进行动画/变形/移动,并且当翻转粒子与碰撞表面碰撞时,粒子将保持在碰撞棒上,仅当碰撞体处于启用状态时才启用碰撞。静止的。一旦碰撞几何体开始变形,之前粘住的颗粒就会开始滑动,完全不受任何摩擦力的阻碍,并从表面滑落。 The real problem as it turns out, was due to the fact that the velocity of the collider was not being calculated. 事实证明,真正的问题是由于没有计算对撞机的速度。 THE SOLUTION: 解决方案: Connect your collision geometry to a collisionsource sop >> set the voxel size to an appropriate resolution and connect both outputs of the collisionsource node to a merge sop and connect it to your dopnet for your flip simulation. Also make sure that in your dopnet>> flipsolver, under volume motion >> collisions, you have velocity type set to point. Also, obviously make sure you have stick to collision enabled under flipsolver>> volume motion >>collisions. 将碰撞几何体连接到碰撞源 sop >> 将体素大小设置为适当的分辨率,并将碰撞源节点的两个输出连接到合并 sop,并将其连接到 dopnet 以进行翻转模拟。还要确保在 dopnet>> 翻转求解器中,在体积运动 >> 碰撞下,将速度类型设置为点。另外,显然请确保您已坚持在 Flipsolver>> 体积运动 >>collisions 下启用碰撞。 This solved the issue for me as now the velocity of the moving collision object was being calculated. Hope this helps someone! 这为我解决了这个问题,因为现在正在计算移动碰撞物体的速度。希望这对某人有帮助! cheers 干杯 Thank you !!! Quote Link to comment Share on other sites More sharing options...
hannes603 Posted September 18 Share Posted September 18 (edited) pop collision detect with multisolver flip should do the trick stick.mp4 sticky_pop_particles_collider_flip_multisolver.hip Edited September 18 by hannes603 1 Quote Link to comment Share on other sites More sharing options...
paranoidx Posted October 12 Share Posted October 12 I would want to do this simple method (if you don't want to play with "sticky field"), just use the attribute transfer where the fluid collide with animated geo. From that attribute value, apply pop/scatter whatever you want to distribute points needed. Eextra step can add custom age attrbute where points kill over time Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.