POV-Ray : Newsgroups : povray.general : Blocky Horizon Reflection Server Time
5 Aug 2024 16:16:05 EDT (-0400)
  Blocky Horizon Reflection (Message 1 to 8 of 8)  
From: Scott Blaufuss
Subject: Blocky Horizon Reflection
Date: 5 Aug 2002 12:29:26
Message: <3d4ea7e6$1@news.povray.org>
I've made a highly reflective blimp using a union of several bicubic_patch
elements.  My problem is that the reflection of the horizon is extremely
blocky.  The u_steps and v_steps have been set to 3 and I get slightly
better results when setting them higher, but at a huge cost in render time
(I'm making an animation).

Here is a snippet of code for the blimp;

// blimp_body
#declare blimp_body = union {
 bicubic_patch {
  type 1
  flatness 0
  u_steps blimp_usteps
  v_steps blimp_vsteps
  <-2.742, 0.003, -0.002> <-2.742, 1.486, -0.002> <-1.480, 2.748, -0.002>
<0.004, 2.748, -0.002>
  <-2.742, -1.481, -0.002> <-2.742, 0.003, -0.002> <-1.480, 2.748, -3.872>
<0.004, 2.748, -3.872>
  <-1.480, -2.743, -0.002> <-1.480, -2.743, -3.872> <0.004, 0.003, -9.752>
<0.004, 1.628, -9.752>
  <0.004, -2.743, -0.002> <0.004, -2.743, -3.872> <0.004, -1.623, -9.752>
<0.004, 0.003, -9.752>
 }
 bicubic_patch {
  type 1
...
...

You can see a small sample image showing the blocky horizon at;
http://home.attbi.com/~sblaufuss/scene250.bmp

Any help with this would be appreciated.

Thanks,
Scott


Post a reply to this message

From: Jamie Davison
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 16:09:03
Message: <MPG.17b8ec5a42e42143989ba0@news.povray.org>
> You can see a small sample image showing the blocky horizon at;
> http://home.attbi.com/~sblaufuss/scene250.bmp
> 
> Any help with this would be appreciated.

Patches (IIRC) are converted into triangles during parsing, and the only 
way to get a truly smooth reflection is either a) up the U and V steps to 
higher, more processor intensive values, or b) try and figure out another 
way to make the surface you want using CSG or an isosurface, for example.

Somebody else may have ideas though, so don't take my waffling to be the 
final word.

Jamie.


Post a reply to this message

From: Slime
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 17:03:03
Message: <3d4ee807@news.povray.org>
> Patches (IIRC) are converted into triangles during parsing

Are they? I doubt it... that wouldn't be consistent with the functionality
of a raytracer.

I'm willing to bet the normals of the patches don't match up. That would
explain square blocks as opposed to triangular blocks.

 - Slime
[ http://www.slimeland.com/ ]


Post a reply to this message

From: Jide
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 17:50:37
Message: <3d4ef32d$1@news.povray.org>
Slime wrote:
> > Patches (IIRC) are converted into triangles during parsing
>
> Are they? I doubt it... that wouldn't be consistent with the functionality
> of a raytracer.

6.5.2.1  Bicubic Patch
A bicubic_patch is a 3D curved surface created from a mesh of triangles.

--
-Jide


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 17:53:15
Message: <Xns9261F262130D1raf256com@204.213.191.226>
"Jide" <jid### [at] kotisoonfi> wrote in
news:3d4ef32d$1@news.povray.org 

>> > Patches (IIRC) are converted into triangles during parsing
>> Are they? I doubt it... that wouldn't be consistent with the
>> functionality of a raytracer.
> 6.5.2.1  Bicubic Patch
> A bicubic_patch is a 3D curved surface created from a mesh of
> triangles. 

there must be function (isosurface) for bicubic path, what is the expresion 
for it ?



-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

From: Christopher James Huff
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 18:03:13
Message: <chrishuff-142BF0.16530805082002@netplex.aussie.org>
In article <3d4ee807@news.povray.org>, "Slime" <slm### [at] slimelandcom> 
wrote:

> > Patches (IIRC) are converted into triangles during parsing
> 
> Are they? I doubt it... that wouldn't be consistent with the functionality
> of a raytracer.

They are converted into triangles, type 0 does everything at render time 
and type 1 does some of the work at parse time. It doesn't have anything 
to do with POV being a raytracer. It is just easier to solve for a 
tesselated patch than to solve for the mathematical surface...more 
reliable as well, it doesn't give as many artifacts. Height fields are 
also tesselated, and POV supports triangles and two kinds of mesh 
primitives...being a raytracer does not make triangles forbidden.

-- 
Christopher James Huff <chr### [at] maccom>
POV-Ray TAG e-mail: chr### [at] tagpovrayorg
TAG web site: http://tag.povray.org/


Post a reply to this message

From: Christopher James Huff
Subject: Re: Blocky Horizon Reflection
Date: 5 Aug 2002 18:12:51
Message: <chrishuff-7E33D5.17024505082002@netplex.aussie.org>
In article <Xns### [at] 204213191226>,
 "Rafal 'Raf256' Maj" <raf### [at] raf256com> wrote:

> there must be function (isosurface) for bicubic path, what is the expresion 
> for it ?

A bicubic patch is a parametric shape, not an isosurface. You could come 
up with a function to describe some cases, but clipping it to the right 
shape would be a huge pain and you wouldn't be able to do it for all 
cases (a self intersecting patch, for example). It would be much easier 
with the parametric primitive, but still much more of a pain than simply 
using the internal primitive. And if you are going to do either of 
these, why limit yourself to a bicubic patch?

It sounds like the problem here is simply with the parameters to the 
bicubic patch. I'm not familiar enough with using that shape to be of 
any help though...

-- 
Christopher James Huff <chr### [at] maccom>
POV-Ray TAG e-mail: chr### [at] tagpovrayorg
TAG web site: http://tag.povray.org/


Post a reply to this message

From: Warp
Subject: Re: Blocky Horizon Reflection
Date: 6 Aug 2002 17:06:54
Message: <3d503a6d@news.povray.org>
Christopher James Huff <chr### [at] maccom> wrote:
> being a raytracer does not make triangles forbidden.

  In fact, many things can only be made in a rational way with triangle
meshes (eg. human shapes). They are also really fast (POV-Ray can render
millions of triangles in less than a minute).

-- 
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}//  - Warp -


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.