|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I tried to write IC_Mesh for iso_csg library but failed at "More than 65535
constants in all functions are not supported" error. But IC_Triangle works
pretty fine.
ABX
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
>
> I tried to write IC_Mesh for iso_csg library but failed at "More than 65535
> constants in all functions are not supported" error. But IC_Triangle works
> pretty fine.
Maybe wait for RC6... ;-)
IC_Mesh sound pretty complicated, at least it will be awfully slow i
suppose...
Christoph
--
POV-Ray tutorials, IsoWood include,
TransSkin and more: http://www.tu-bs.de/~y0013390/
Last updated 02 Jun. 2002 _____./\/^>_*_<^\/\.______
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Christoph Hormann" <chr### [at] gmxde> wrote in message
news:3CFBC9CD.9539E2E1@gmx.de...
>
>
> >
> > I tried to write IC_Mesh for iso_csg library but failed at "More than
65535
> > constants in all functions are not supported" error. But IC_Triangle
works
> > pretty fine.
>
> Maybe wait for RC6... ;-)
>
> IC_Mesh sound pretty complicated, at least it will be awfully slow i
> suppose...
>
Even the simple code is slow:
--- start code ---
#declare pigSea = pigment {
bozo
turbulence 1.5
sine_wave
color_map {
[ 0 rgbf <0, 1, 0, 1> ]
[ 1 rgbf <0, 0, 1, 1> ]
}
scale 50
}
#declare matSea = material {
texture {
pigment { pigSea }
normal { bozo scale 50 }
finish {
reflection { 0.1, 0.7
metallic 0.4
}
conserve_energy
phong 0.645
phong_size 130
metallic 0.4
}
}
interior {
ior 1.3
caustics 0.5
media {
absorption <1.0, 0.7, 0.2>*.01
method 3
samples 3,25
intervals 1
}
}
}
// Sky
#declare Sky1 = pigment { image_map { png "skyday9.png" interpolate 2 }
scale .5 }
#declare Sky = sky_sphere { pigment { Sky1
warp { spherical orientation z dist_exp 1 }
rotate x* 180
} }
sky_sphere { Sky }
// Ocean
#declare fnpSea0 = function { pigment {
waves
turbulence 0.4
color_map { [ 0 rgb 0 ] [ 1 rgb 1 ] }
} }
#declare fnpSea1 = function { pigment {
ripples
turbulence 0.9
color_map { [ 0 rgb 0 ] [ 1 rgb 1 ] }
} }
#declare fnpSea2 = function { pigment {
bozo
turbulence 0.7
color_map { [ 0 rgb 0 ] [ 1 rgb 1 ] }
} }
#declare fnSea = function {
fnpSea0(x*.1,0,z*.1).gray*4+fnpSea0(x*3,0,z*3).gray*2-fnpSea2(x,0,z).gray }
#declare Sea = union {
isosurface {
function { y - fnSea(x*.01,y,z*.01) }
contained_by { box { <-3000, -1, -3000>, <3000, 8, 3000> } }
accuracy 0.01
max_gradient 10
}
box { <-3000, -750, -3000>, <3000, -1, 3000> }
}
object { Sea pigment { pigSea } }
--- end code ---
And it gets worse if you replace pigSea with matSea.
Isosurface optimizations, anyone?
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Wed, 5 Jun 2002 11:57:51 -0400, "David Wallace" <dar### [at] earthlinknet>
wrote:
> And it gets worse if you replace pigSea with matSea.
But this kind of slowness not depends on isosurface but on material.
> Isosurface optimizations, anyone?
At least three:
1. use patterns instead of pigments.gray for functions
2. use scale keyword in pattern instead scaling coordinates for function
3. if possible code function directly inside isosurface to avoid referencing
ABX
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> 2. use scale keyword in pattern instead scaling coordinates for function
> 3. if possible code function directly inside isosurface to avoid referencing
Have you actually measured that those will help?
--
#macro M(A,N,D,L)plane{-z,-9pigment{mandel L*9translate N color_map{[0rgb x]
[1rgb 9]}scale<D,D*3D>*1e3}rotate y*A*8}#end M(-3<1.206434.28623>70,7)M(
-1<.7438.1795>1,20)M(1<.77595.13699>30,20)M(3<.75923.07145>80,99)// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On 5 Jun 2002 14:35:22 -0400, Warp <war### [at] tagpovrayorg> wrote:
> > 2. use scale keyword in pattern instead scaling coordinates for function
> > 3. if possible code function directly inside isosurface to avoid referencing
>
> Have you actually measured that those will help?
I compared this for some previous betas - it wasn't scientific research but
just comparision in some particular scenes. I will try to make some better
comparisone and statistic later.
ABX
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
news:u5dsfukc3ui9pd378d9mu7shaddskc7m40@4ax.com...
> On Wed, 5 Jun 2002 11:57:51 -0400, "David Wallace"
<dar### [at] earthlinknet>
> wrote:
>
> > And it gets worse if you replace pigSea with matSea.
>
> But this kind of slowness not depends on isosurface but on material.
>
> > Isosurface optimizations, anyone?
>
> At least three:
>
> 1. use patterns instead of pigments.gray for functions
> 2. use scale keyword in pattern instead scaling coordinates for function
> 3. if possible code function directly inside isosurface to avoid
referencing
>
> ABX
I managed to implement points 1 and 2.... no noticeable effect.
#3 doesn't make for readable code.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Mon, 10 Jun 2002 21:15:08 -0400, "David Wallace" <dar### [at] earthlinknet>
wrote:
> > At least three:
> >
> > 1. use patterns instead of pigments.gray for functions
> > 2. use scale keyword in pattern instead scaling coordinates for function
> > 3. if possible code function directly inside isosurface to avoid referencing
>
> I managed to implement points 1 and 2.... no noticeable effect.
> #3 doesn't make for readable code.
I just fiinished test with 5 passes:
- not optimized scene
- pattern instead of pigment
- scale instead of multiplications
- functions inlined completly and directly in isosurface
- all optimizations together
and difference was ~0.2% which can be just task priority issue. I think none
of my advices is valid for current release. There must be nice optimizations.
ABX
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |