POV-Ray : Newsgroups : povray.binaries.images : Playing with Monsters Server Time
5 Nov 2024 20:15:22 EST (-0500)
  Playing with Monsters (Message 1 to 10 of 16)  
Goto Latest 10 Messages Next 6 Messages >>>
From: Artemia Salina
Subject: Playing with Monsters
Date: 2 Jul 2006 00:01:10
Message: <44a74506@news.povray.org>
I must admit I've been playing with monsters lately, and it's been lots 
of fun! Please note the scaled spheres under the eye balls and how they 
are not rotated correctly to lay on the surface of the large sphere. I 
haven't been able to figure out how to do this properly yet. Any 
pointers or suggestions would be greatly appreciated!


Post a reply to this message


Attachments:
Download 'eyesphere.jpg' (218 KB)

Preview of image 'eyesphere.jpg'
eyesphere.jpg


 

From: Artemia Salina
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 00:06:32
Message: <44a74648$1@news.povray.org>
Artemia Salina wrote:
>  Please note the scaled spheres under the eye balls and how they 
> are not rotated correctly to lay on the surface of the large sphere. I 
> haven't been able to figure out how to do this properly yet.

I should've mentioned that I placed the small spheres and eye balls on 
the large shpere using the trace function. As I say I'm having a hard 
time calculating the correct rotation angles to have the small spheres 
lay flat on the large sphere (if they were cylinders they would radiate 
outward from <0,0,0>)


Post a reply to this message

From: Norbert Kern
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 02:00:05
Message: <web.44a75ff45c8cac3ab1e4135b0@news.povray.org>
Hi,
rotate your objects by
rotate <degrees (atan2 (Norm.z,Norm.y)),0,-degrees (atan2 (Norm.x,Norm.y))>
..
IIRC you need #include "functions.inc" too.

Norbert Kern


Post a reply to this message

From: Artemia Salina
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 03:45:17
Message: <pan.2006.07.02.07.45.17.176935@sheayright.com>
On Sun, 02 Jul 2006 01:56:04 -0400, Norbert Kern wrote:

> Hi,
> rotate your objects by
> rotate <degrees (atan2 (Norm.z,Norm.y)),0,-degrees (atan2 (Norm.x,Norm.y))>
> ..
> IIRC you need #include "functions.inc" too.


Thank you Norbert, I'll try that.


-- 
Today's Alliterative Monomania Headlines:
Ecliptic Easterling Earthworm Elegantly Enharbors Ecaudate Earthbank
Wallachian Wagnerian Whist Whizzingly Washes Welsbach Weismannism
Wide-angle Wallachian Waler Waitingly Whipsaws Wagnerian Wait-a-while


Post a reply to this message

From: Sven Littkowski
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 07:23:37
Message: <44a7acb9@news.povray.org>
Freaky little lady you!

Well done, but I wonder if you could add some muscles or venes to the 
surface of the main sphere. An idea for that: using blobs or using 
sphere_sweeps. And getting some more items onto the surface of the main 
body, such as here and there along thin arm, some walking tentacles below, 
some cruely singing mouths, and so. Maybe some nostrils or other items. Some 
semi-transparent organic sackets filled with some yellow liquid at the 
outside, uhh!

Put some irregularity to the eyes - some bigger, some smaller. And prevent 
that they are arranged in such a sorted way - use irregularity again.

Best greetings,

Sven


Post a reply to this message

From: Artemia Salina
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 13:42:45
Message: <pan.2006.07.02.17.42.43.980807@sheayright.com>
On Sun, 02 Jul 2006 13:23:35 +0200, Sven Littkowski wrote:

> Freaky little lady you!

I'm a guy :-)

(Don't feel bad, I get that all the time)
 
> Well done, but I wonder if you could add some muscles or venes to the 
> surface of the main sphere.

Yes, this scene is far from being done. I mainly posted it to show the
problem I'm having rotating the pieces to sit on the sphere properly.

I'd eventually like to have optical cords dangling off of the backs of the
eyes that would attach to the main sphere like tree roots.

> An idea for that: using blobs or using sphere_sweeps. And getting some
> more items onto the surface of the main body, such as here and there
> along thin arm, some walking tentacles below, some cruely singing
> mouths, and so. Maybe some nostrils or other items.

You're reading my mind! :-)

> Some semi-transparent organic sackets filled with some yellow liquid at the
> outside, uhh!

I hadn't thought of that but it sounds gross! (which is GOOD!)
 
I tried Norbert's suggestion last night (see his article in this thread)
and it didn't work. I played with swapping the sign for the x and z axes
but still no luck.

You suggest using blobs or other odd shapes for the main body and doing so
will make it much more difficult to orient the smaller parts to it. I
thought perhaps that since the trace() function was already shooting rays
at the base object there would be some algorithmic way to use information
returned from trace() to orient the smaller objects on the base object.

I'd like to find an example scene that does that.
 

-- 
Today's Alliterative Monomania Headlines:
Knarred Knotted Koel Kneadingly Knits Kiby Kirk
Radio-active Retrousse Router Representatively Radiographs Retrousse Rancheria
Up-over Unpardonable Upsilon Unerringly Underruns Upright Urethane


Post a reply to this message

From: Norbert Kern
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 16:55:01
Message: <web.44a8318f5c8cac3a9db1fe880@news.povray.org>
Artemia Salina <y2k### [at] sheayrightcom> wrote:

> I tried Norbert's suggestion last night (see his article in this thread)
> and it didn't work. I played with swapping the sign for the x and z axes
> but still no luck.

It should work, believe me!
Here a bit more code, which shows what I mean -

#declare Norm = <0,0,0>;
#declare loc = trace (M1, start, <0,0,0>, Norm);
#if (vlength(Norm) != 0)
        object {
                eye
                rotate <degrees (atan2 (Norm.z,Norm.y)),0,-degrees (atan2
(Norm.x,Norm.y))>
                translate loc
        }
#end

If the difficulties persist, please post the relevant code part.


Norbert Kern


Post a reply to this message

From: Artemia Salina
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 17:19:22
Message: <pan.2006.07.02.21.19.21.472772@sheayright.com>
On Sun, 02 Jul 2006 16:50:23 -0400, Norbert Kern wrote:

> Artemia Salina <y2k### [at] sheayrightcom> wrote:
> 
>> I tried Norbert's suggestion last night (see his article in this thread)
>> and it didn't work. I played with swapping the sign for the x and z axes
>> but still no luck.
> 
> It should work, believe me!
> Here a bit more code, which shows what I mean -
> 
> #declare Norm = <0,0,0>;
> #declare loc = trace (M1, start, <0,0,0>, Norm);

Oh, I think I see what's going on. Instead of <0,0,0> for the direction
vector I'm using <0,0,-1>! I don't know how or why I did that. I'll retry
with your suggestion, Norbert.

Thanks again for the assistance!


Post a reply to this message

From: Norbert Kern
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 17:35:00
Message: <web.44a83b515c8cac3a9db1fe880@news.povray.org>
My fault, <0,0,0> doesn't work!
I don't know, how you come to your start coordinates for trace (start), but
if the base sphere is centered at <0,0,0>, the direction has to be -start.

Norbert Kern


Post a reply to this message

From: Artemia Salina
Subject: Re: Playing with Monsters
Date: 2 Jul 2006 18:03:58
Message: <pan.2006.07.02.22.03.54.579706@sheayright.com>
On Sun, 02 Jul 2006 17:32:01 -0400, Norbert Kern wrote:

> My fault, <0,0,0> doesn't work!
> I don't know, how you come to your start coordinates for trace (start), but
> if the base sphere is centered at <0,0,0>, the direction has to be -start.
> 
> Norbert Kern

Here's a the code that I'm using (with most texturing removed for clarity). The
RRand() just provides some irregularity to the final positioning of the eyes
and makes the eyeballs look in different directions (rotating them in their
sockets).

So Start would be

<-90, -90 (plus some randomness), 0>

And it would end the scanning at

<90 (plus some randomness), 90 (plus some randomness), 0>

++++++++++++

#declare BSB = sphere{0, 11 scale <1, 0.85, 1>};
#declare Norm = <0,0,0>;
#declare CntX = -90;
#declare CntY = -90;
#declare ZZ = <0,0,-1>;
#declare N1 = seed(12345);

#while(CntY < 90)
        #while(CntX < 90)
                #declare POSB = trace(BSB, <CntX, CntY + RRand(-0.95, 0.95, N1), 0>,
ZZ, Norm);

                #if (!VZero(Norm))
                merge{
                        object {Eye(Green*0.5, .70)
                                // Make eyes look in different directions
                                rotate <POSB.y*RRand(4, 20, N1), -POSB.x*RRand(4, 20,
N1), 0>
                                pigment{rgbt 1}
                        }
                        sphere{<0,0,0.55>, 0.75
                                texture{pigment{rgb <1, .9, .9>}}
                                // Flatten the spheres a bit
                                scale <1.3, 1.3, 0.95>
                                // This rotation was what I was using and it was
close:
                                // rotate <POSB.y*8, -POSB.x*8, 0>
                                rotate <degrees (atan2 (Norm.z,Norm.y)),0,-degrees
(atan2(Norm.x,Norm.y))>
                        }
                        translate POSB
                }
                #end
                #declare CntX = CntX + 3 + RRand(-0.55, 0.55, N1);
        #end
        #declare CntX = -90;
        #declare CntY = CntY + 2;
#end

-- 
Today's Alliterative Monomania Headlines:
Laputan Laryngeal Law-fall Liquidly Litters Lachrymary Law-fall
Degloried Deflective Decession Disfavorably Disincorporates Dihedral Decahedron
Redivivus Rapid-fire Refait Retroactively Roentgenizes Retrousse Redif


Post a reply to this message

Goto Latest 10 Messages Next 6 Messages >>>

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