Welcome to od|forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Tato

Edge Displacement on fractured pieces

173 posts in this topic

could you be more precise where is the bound geometry path in the shader?

 

i seek and i can not find

thanks in advance

1 person likes this

Share this post


Link to post
Share on other sites

I try to open the file in H14 and h15 but it gives black render , even when i change the model surface inside the shader, so i hope if any one help to get it in h14 and h14

Share this post


Link to post
Share on other sites

I just updated it for H15.

I spent 15 mins on this and didn't have the chance to test it properly so there still may be some problems left.

 

@akima : there is a parameter called Bound Geo on both displaceSOP and  wrangleDisp shader. If you still have any problems send me a PM.

 

Cheers!

Pavel

SOP_SHOP_EdgeDisp_v19.hiplc

6 people like this

Share this post


Link to post
Share on other sites

I just updated it for H15.

I spent 15 mins on this and didn't have the chance to test it properly so there still may be some problems left.

 

@akima : there is a parameter called Bound Geo on both displaceSOP and  wrangleDisp shader. If you still have any problems send me a PM.

 

Cheers!

Pavel

Thanks for the hip file , 

iv test now in H15 and its working .

Share this post


Link to post
Share on other sites

Can anyone explain how to work these posted HIP files?

 

Let's start with v19.

 

I open up the file and see nothing. I press the L-KEY to layout the nodes and I dive into the simple_sim. The File Cache node is broken so I set it to Write Files and play the timeline to the end which bakes the data. I switch the File Cache node back to Read Files mode and it is no longer broken, it is reading the baked data.

 

This is where I am stuck.

 

I do have the dopnet1 network written out as a file, however, there is yet another file reference in the displaced_geo node looking for piecesTest_PRE_v01_$F4.bgeo. Where does that file data come from?

Share this post


Link to post
Share on other sites

The rule of thumb is : Press 'Save To Disk' on each filecache node moving from left to right through each geometry object in sop level.

So the order is :

1)simple_sim/filecache1

2)displaced_geo/filecache1

3)displaced_geo/filecache2

 

also I forgot to check 'Load From Disk' on displaced_geo/filecache1 which is not important, as this node is there only to make computations faster. Other two, especially  displaced_geo/filecache2, are much more important.

 

1 person likes this

Share this post


Link to post
Share on other sites

Thanks for the usage info, it worked for me. Now I can see the detail in the render.

 

When I click Render Houdini goes away for a while, is there any speed vs quality control in this setup?

Share this post


Link to post
Share on other sites

It is highly dependent on the dicing of the geometry, so you can decrease Shading Quality object/mantra parameter to make it run faster.

Share this post


Link to post
Share on other sites

I'm having issues getting this to work with a test scene.

 

Firstly it seems to have problems subdividing the model at the "autosubd" node. I'm not sure why it's getting strange geometry as the geo looks fine going in.

 

When you attempt to preview the Displaced Geometry there are crazy spikes going off at all different angles and no displacement happening.

 

When attempting to render, there is no displaced geometry created at render time at all.

 

I am using a constraint sim in my DOP Network and the artifacts from the subdividing seem to have something to do with the constraints. The bad geometry seems to be where there are unbroken constraints but I am unsure how the constrainer geometry is even there at that point as it should not even be part of the bgeos being cached out.

Font_Crumble_002.hipnc

Share this post


Link to post
Share on other sites

Hey, man!

 

You can do several things to fix your scene:

 

First of all - when assembling pieces with assembe SOP - keep Inside group field empty, or it will split pieces before packing, and it will produce wrong results when displacing. As a rule of thumb I never use inside group, but this is just my workflow..

Its also good to ensure that each piece is fused , so switch 'switch_generate_name' node to 1. This will fix most of the problems.

About the subdividing - you can use bricker polygons option instead of subdivide node, or switch to OpenSubdiv Loop to subdivide them - not perfect but produces better results with this geometry.

I also found that computed matrices are not generated properly using Two Edges on Poly frame SOP, so switch to First Edge instead. Finally I updated the code to last version, because there was a bug that caused some other problems.

 

Btw I didn't tested it in motion, so there still may be some problems with matrices.

 

Cheers!

Pavel

Font_Crumble_002_FIX.hiplc

Edited by rayman

Share this post


Link to post
Share on other sites

Thanks for the help. I couldn't get Opensubdiv Loop to work as it kept complaining about non-manifold geometry. I think I just have to make the geo coming in a bit cleaner.

Share this post


Link to post
Share on other sites

Hi, after trying to implement this technique, I don't manage to get my UVs correct on my displaced mesh. I managed to do everything whis is related to the displaced of the points and the matrix for my simulation, but my Uvs are still incorrect.

Can someone tell me what I did wrong?

Displace_fractured_edges_correction_uv.hip

geo_test.bgeo.sc

Share this post


Link to post
Share on other sites
5 hours ago, fencer said:

just saw on vimeo

https://vimeo.com/168000306

what do you think about this approach?

interesting, and simple, but I'm having a hard time setting it up :/ I'm always seeing some displacement on the "outer faces" of my cube.

Share this post


Link to post
Share on other sites

I just spent all day (and a bit of yesterday) re-wrapping up my setup in this thread to handle uvs better. Everything is great when you do it gray shaded, but the second you want to do this in production, you run into a whole different world of problems. That's why setups get much more complicated. ;)   Uv's with multiple uv tiles and uv islands are not an easy thing to handle. So after fussing with a few ideas, I ended up just masking the displacement at the uv seams, and so far it works great.  

That being said, it would be cool if there was a better way to handle uv seams also on something like a vdb mesh. It's very tricky to fix certain situations. Does anybody know of a way to cut a mesh by a curve easily? I'm sure it's possible -- just haven't dived into it much yet this would solve some issues when re transfering uvs. You basically want to cut in edges so they line up exactly at the uv seams between the original and the upressed or vdb meshed piece. 

1 person likes this

Share this post


Link to post
Share on other sites

highres_fractured_block.jpghighres_fractured_pig.jpg

Tried another simple approach (I'm following this thread for two years, implementing different CVEX raytracing methods without great success) with SDFs. The idea is to use VDB point advection providing a good way to slide points on surface. The network is just a few standard Houdini nodes without extensive coding. It's working for round meshes by following curvature. It's also working for square meshes for some degree of quality ("smoothed corners" problem still there). It has no hardcoded noise pattern and allows for arbitrary displace. And it works quite well on test cases. It does nothing with UVs.

 

highres_fracture.hipnc

Unified noise control may be not very usable, splitting it on two nodes with separate controls over inner and edge noises may be handy.

Edited by f1480187
3 people like this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now