PDA

View Full Version : Shadow Ray Trace corrupts the object surface when rendering



abacus
07-27-2006, 10:03 AM
Hi,

I am creating an oceanliner and are faced with a few challenges in creating the ships hull. Since the hull have som advanced curves who all have in common that they should be smooth, I have found it a bit tricky to model the hull using the standard tools, such as Bend and Streatch. I find myself ending up editing the hull lines manually by simply moving the points about in order to create the desired shape. Using the smoothing option on the surfaces the hull looks brilliant in the perspective view of the modeller. Transferring the hull to the layout it looks great in the camera view. But when finally rendering the hull having the ray trace shadows option enabled, the hull gets distorted in som areas resulting in areas of black trianglular shapes. Any Ideas on how to resolve this issue are gratefully recieved.

/Abacus

Sekhar
07-27-2006, 10:24 AM
Could you post a screenshot?

Penforhire
07-27-2006, 01:42 PM
Next time you might try patching curves to get a smooth but sophisticated shape like a ship's hull. You might also have some multiple geometry in the same place (or 2-point polys you can easily select and delete).

abacus
07-27-2006, 05:06 PM
I have attached sceenshots of the bow section of the ships hull. In image xxx_003 you se the anomalies as black lines or small trangles. Note that the hull cracks blow the surface. In image xxx_001 you see another behaviour of the mirror image of the hull as it appears in the water. It looks as if the hull plating is losening up and falling off. 002 is yet another example of the hull distortion further aft in a less curved section of the hull.

I had a look in the statistics and yes, there are a lot of non-planar vertices (I discovered that the hull section below the water line in image 003 are non-planar). What's the short story on non-planar polygons and how should one avoid them? (It seems virtually impossible to avoid when editing the points manually in a curved shape?)

Thank you for your help!

/Abacus

jameswillmott
07-27-2006, 05:58 PM
You could subpatch everything or just triple all your ngons.

abacus
07-27-2006, 06:04 PM
I deleted all non-planar polygones and most of the anomalies disapeared (as did the hull unfortunately, please see attachment). Even if they are now much less obvious, it seems some distortion are still there both on the hull and in the reflection as lines or dots. Any ideas on how to remove those?

I will try the option of creating the hull using patched curves. Any other modelling tips on creating a hull shape with minimum distortion?

/Abacus

pixym
07-27-2006, 06:55 PM
Could you post a part of the mesh thats have this issue?

Sarford
07-27-2006, 08:47 PM
You have the surface set to double sided by any chance?

abacus
07-28-2006, 04:30 AM
I selected all non-planar polygones and converted them to triangles. This solved a large part of the problem. I then removed the dubble sided option, which I was using, and this removed all distortions to the hull (See attachment below, 008).

As a last change I subpatched the hull surface which created the virtually perfect surface. This created another problem though. Structures created on the hull surface was severely distorted (005, 007). All portholes and windows lost there shapes completely. I tested to create new port holes in the subpatched surface by using Boolean Subract, which usually works fine, but this had not effect on the hull surface. I.e. no porthole was created. I guess we have left the ray trace shadow issue, but since you have provided such brilliant help so far, I can not resist asking. Any Ideas on how to preserv some sharp edges, such as portholes, when using subpatch?

Again, thanks for your advice.

/Abacus

dballesg
07-28-2006, 05:57 AM
Hi,

Booleans are the worst enemy of SubPatches, because almost 100% of time create polygons with more than 4 or 3 vertices. Unless you are really careful plannig them and even after that you will need a lot of cleanout creating 4 or 3 vertices polygons where you need it.

To sharp your Subpatch edges, use the SubPatch Weight Map, adding weight where you want more straight edges with the airbrush tool if you want to paint them or with the Set Map value.

Hope this helps.

Best regards,
David

Wonderpup
07-28-2006, 06:49 AM
Dont forget you can freeze your subpatch object, which should preserve the smooth shape and allow things like booleans to work. (You can define the resolution of your frozen mesh using the settings in the general options menu.)

Sarford
07-28-2006, 08:43 AM
The deformations in your picture definitly have to do with your polygon flow. If you wanna continue using sub-d on your hull, construct these things by hand, its not as hard as it looks.
If you wanna create sharp edges, I advise against weighting. The more you weight your vertexes the more the polygons will be visible during rendering. Better to use an extra row of polygons very close to the edge you want sharp.

ps: The example is CC-sub-d's but you'll get the picture... You can get the edge even sharper by adding more geometry

Penforhire
07-28-2006, 09:31 AM
Because of the nasty cleanup with booleans I think the preferred technique is to drill/stencil shapes like portholes onto the hull (preserves existing curvature), kill all the surrounding polys (and delete unneeded points after stencil), and recreate good quad polys. If you think ahead you can dice up the local hull area (using Knife or Bandsaw to preserve curvature) and use a stenciled shape with the exact number of points needed to construct the new polys. If you still get pinching you can reduce the effect by dicing up the hull ever-closer to your portholes.

Sharp edges can be maintained by either using separated meshes or else adding very close bandsaw/knife edges on each side of your intended sharp edge. The interactive preview in Sub-D mode during bandsaw/knife is great for judging this.

abacus
07-28-2006, 04:42 PM
I have some new techniques to try out. Thanks all of you for taking the time to share your experience! :)

/abacus