POV-Ray : Newsgroups : povray.general : .NET distributed POV Server Time
15 Oct 2026 11:38:54 EDT (-0400)
  .NET distributed POV (Message 1 to 14 of 14)  
From: Ben Martens
Subject: .NET distributed POV
Date: 2 Nov 2001 19:41:25
Message: <3be33d35@news.povray.org>
I'm tossing around ideas for a .NET programming contest.  One idea was to
build a distributed POV system based on .NET.  I've seen quite a few systems
that do this with other architectures.  In my random thoughts so far, I've
come across two potential problems.  If anyone can offer any advice I would
really appreciate it:

1)  I know it's possible to render parts of an image using command line
switches.  However, if I send parts of a picture to different computers,
this is going to mess up anti-aliasing, correct?  I suppose this could be
avoided by post-processing.  Or is there a way to do anti-aliasing in this
situation?

2)  Do I need to write my own routines to stitch the picture back together,
or is there any easy way to accomplish this?

3)  I would like to support any platform that can run Povray.  What is the
best way to tell POV to render a file?  Should I just pass it a command
line?  If that's the case, are all the command lines the same across
platforms or would I need separate commands for Linus, Windows, etc.?

Thank you for any help,
-Ben
http://bwmartens.tripod.com


Post a reply to this message

From: Chris Jeppesen
Subject: Re: .NET distributed POV
Date: 2 Nov 2001 20:01:46
Message: <3be341fa@news.povray.org>
"Ben Martens" <bma### [at] purdueedu> wrote in message
news:3be33d35@news.povray.org...
> I'm tossing around ideas for a .NET programming contest.  One idea was to
> build a distributed POV system based on .NET.  I've seen quite a few
systems
> that do this with other architectures.  In my random thoughts so far, I've
> come across two potential problems.  If anyone can offer any advice I
would
> really appreciate it:

I have been working on something like this for myself in Java, which I call
the "Atomic Banana Peeler" (ABP)

>
> 1)  I know it's possible to render parts of an image using command line
> switches.  However, if I send parts of a picture to different computers,
> this is going to mess up anti-aliasing, correct?  I suppose this could be
> avoided by post-processing.  Or is there a way to do anti-aliasing in this
> situation?

ABP takes no special steps to prevent this problem, but I have examined the
images it produces closely and cannot see any seam in them, even in highly
AA-d pictures. Either POV handles it internally or it is an effect human
vision does not pick up.

If it really is a problem, I suppose that you should render one extra row of
pixels in each strip, and remove the extras when you stitch it.

>
> 2)  Do I need to write my own routines to stitch the picture back
together,
> or is there any easy way to accomplish this?

I do not think there is any way to easily stitch images back together.
Normally I render .PNG files, but neither Paint Shop Pro nor any Java image
library I could find could do anything with a .PNG partial render. My
program renders vertical strips as TGA images, and then stitches those,
because a TGA rendered in vertical columns has black space in each row of
pixels where it didn't render, making it easy to process.

>
> 3)  I would like to support any platform that can run Povray.  What is the
> best way to tell POV to render a file?  Should I just pass it a command
> line?  If that's the case, are all the command lines the same across
> platforms or would I need separate commands for Linus, Windows, etc.?

.NET? Cross Platform? I didn't think these could be held in the same
thought. ABP uses exactly the same command line for rendering in Windows and
Linux, except for the /RENDER /EXIT in windows.

> Thank you for any help,
> -Ben
> http://bwmartens.tripod.com
>

Hope this helps some.

Chris

#local N=16#local W="/h>m8X=X7KJXFXWhjhKMa$Q$AD390$&<"#macro K()#declare A
=A+1asc(substr(W,A,1))*2/N-4#end#local A=0plane{z,-2normal{ripples}finish{
reflection.9}}camera{sky z location 1+7*y look_at -z}light_source{y*N,1}
sky_sphere{pigment{gradient z color_map{[0rgb z+y/2][1rgb 0]}}}difference{
cylinder{-y/8,y/8,2}prism{-N,N,N#while(A<N*2)<K(),K()>/2-<34,44>/N#end}
pigment{color x+y/2}} //http://ryooki.digiquill.com/ Kwan Systems! 2001


Post a reply to this message

From: Warp
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 07:12:10
Message: <3be3df1a@news.povray.org>
Ben Martens <bma### [at] purdueedu> wrote:
: 1)  I know it's possible to render parts of an image using command line
: switches.  However, if I send parts of a picture to different computers,
: this is going to mess up anti-aliasing, correct?

  Nope. POV-Ray has no problems with antialiasing with split images. This
is because it always calculates one extra line above the current first line
(haven't you noticed that POV-Ray calculates line 0?).

  What DOES cause problems is radiosity.

: 2)  Do I need to write my own routines to stitch the picture back together,
: or is there any easy way to accomplish this?

  If you output the images to raw TGA format, joining them is extremely easy
to do (even with plain unix tools). I have done this. Just take the first
image as is, and append the other images to it but each from byte 19 onwards
(the first 18 bytes are the header of the TGA).

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


Post a reply to this message

From: Warp
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 07:13:10
Message: <3be3df55@news.povray.org>
Chris Jeppesen <chr### [at] digiquillcom> wrote:
: ABP takes no special steps to prevent this problem, but I have examined the
: images it produces closely and cannot see any seam in them, even in highly
: AA-d pictures. Either POV handles it internally or it is an effect human
: vision does not pick up.

  No, POV-Ray does calculate it correctly. It first renders the line above
the first line (line 0) and it then can antialias the first line correctly.

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


Post a reply to this message

From: Mike Williams
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 07:53:47
Message: <3gDa3JAkJ747EwA2@econym.demon.co.uk>
Wasn't it Ben Martens who wrote:
>I'm tossing around ideas for a .NET programming contest.  One idea was to
>build a distributed POV system based on .NET.  I've seen quite a few systems
>that do this with other architectures.  In my random thoughts so far, I've
>come across two potential problems.  If anyone can offer any advice I would
>really appreciate it:

One overall point to bear in mind is that it would be a good idea to
wait for pov 3.5 to become stable before attempting anything like this.
3.5 has a feature called "I/O restrictions" which you can use to prevent
malicious scene files from doing #fopen, #read and #write on any file on
the computer.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Ben Martens
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 10:33:14
Message: <3be40e3a$1@news.povray.org>
This is great.  Thank you for all the advice (and I'm always open to more!)
I just wanted to address the .NET question...

Chris wrote:
>> .NET? Cross Platform? I didn't think these could be held in the same
thought.

.NET, contrary to what the anti-Microsoft press would lead you to believe,
IS very cross platform.  That is the beauty of it.  I'm still learning about
it, but basically you can write in any language.  Those chunks you make from
different languages can all interact in the same program seemlessly.  This
is because .NET compiles to an intermediate language.  After the program is
in that intermediate language, any platform with the .NET framework can run
it.  Obviously they the Windows one is already working.  I know a Linux port
is in the works, and I think a Mac one may be finished already(?).  It's
really very neat technology. As I mentioned, I'm just starting to learn, but
the bottom half sounds similar to Java.  Except that this actually works.
Sun had so many chances with Java but screwed them all up and never
delivered on their promises about true cross-platform, etc... but I don't
want to start a flame war.

Thanks again for the help,
-Ben


Post a reply to this message

From: Jon A  Cruz
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 11:51:26
Message: <3BE4206F.DE285497@geocities.com>
Ben Martens wrote:

> This is great.  Thank you for all the advice (and I'm always open to more!)
> I just wanted to address the .NET question...
>
> Chris wrote:
> >> .NET? Cross Platform? I didn't think these could be held in the same
> thought.
>
> .NET, contrary to what the anti-Microsoft press would lead you to believe,
> IS very cross platform.  That is the beauty of it.  I'm still learning about
> it, but basically you can write in any language.

Well....
Yes and no.

Yes, the language of .NET is supposed to be cross-platform. The exact same way
the OS of WindowsNT/2K/XP is supposed to be cross-chip. Of course, how many
chips is XP shipping for? Alpha? PowerPC?...

And the same way that NT 3.5 and NT 4 had pluggable filesystem support. But how
long was it before Microsoft added a FAT32 pluggable filesystem for cross-OS
support? Can you say "never" boys and girls?

Anyway, the language is cross-platform, but the key libraries are not. That's a
gotcha to keep your eyes on. Even if someone else clones them, you still have
compatiblity issues like with WINE.


from http://java.oreilly.com/news/farley_0800.html

> Portability: The .NET core works on Windows only but theoretically supports
> development in many languages (once sub-/supersets of these languages have
> been defined and IL compilers have been created for them). Also, Net's SOAP
> capabilities will allow components on other platforms to exchange data messages
> with .NET components. While a few of the elements in .NET, such as SOAP and
> its discovery and lookup protocols, are provided as public specifications, the core
> components of the framework (IL runtime environment, ASP+ internals, Win
> Forms and Web Forms component "contracts", etc.) are kept by Microsoft, and
> Microsoft will be the only provider of complete .NET development and runtime
> environments. There has already been some pressure by the development
> community for Microsoft to open up these specifications, but this would be
> counter to Microsoft's standard practices.
>

But if you look at it as a replacement for working with COM/ActiveX (although
it really is just the next extension of those) and with VisualBasic, then it
seems like a huge stride in a better direction.

On Project Mono, the Linux effort, they mention that they're not interested in
much more than the development infrastructure part, and "We're not interested
in Passport or SQL"...

I think somewhere in summer they expect to have an initial cut with GUI stuff
working.

Oh, and from the Mono FAQ:


> Question 20: What is a 100% .NET application?
>
> A `100% .NET application' is one that only uses the APIs defined under the
> System namespace and does not use PInvoke. These applications would in
> theory run unmodified on Windows, Linux, HP-UX, Solaris, MacOS X and others.
>
--
Jon A. Cruz
http://www.geocities.com/joncruz/action.html


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 12:02:31
Message: <3be42327@news.povray.org>
In article <3BE4206F.DE285497@geocities.com> , "Jon A. Cruz" 
<jon### [at] geocitiescom> wrote:

>> .NET, contrary to what the anti-Microsoft press would lead you to believe,
>> IS very cross platform.  That is the beauty of it.  I'm still learning about
>> it, but basically you can write in any language.
>
> Well....
> Yes and no.
>
> Yes, the language of .NET is supposed to be cross-platform. The exact same way
> the OS of WindowsNT/2K/XP is supposed to be cross-chip. Of course, how many
> chips is XP shipping for? Alpha? PowerPC?...
>
> And the same way that NT 3.5 and NT 4 had pluggable filesystem support. But
> how long was it before Microsoft added a FAT32 pluggable filesystem for
> cross-OS support? Can you say "never" boys and girls?
>
> Anyway, the language is cross-platform, but the key libraries are not. That's
> a gotcha to keep your eyes on. Even if someone else clones them, you still
> have compatiblity issues like with WINE.

Especially as there is a well-established way to communicate over a network,
and it comes with two very common APIs of which either is supported on every
platform you can hook up to the Internet:  Sockets or Streams

And you can run any light-weight high-level protocol over them.  After all
the last thing desired is slower rendering because of a slow (=bloated)
protocol running over a modem connection so all render servers are only
waiting...

    Thorsten


Post a reply to this message

From: Dan Byers
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 15:16:07
Message: <B809AD89.360E%goofygrafx@aol.com>
in article 3be33d35@news.povray.org, Ben Martens at bma### [at] purdueedu
wrote on 11/2/01 6:41 PM:

> I'm tossing around ideas for a .NET programming contest.  One idea was to
> build a distributed POV system based on .NET.  I've seen quite a few systems
> that do this with other architectures.  In my random thoughts so far, I've
> come across two potential problems.  If anyone can offer any advice I would
> really appreciate it:
> 
> 1)  I know it's possible to render parts of an image using command line
> switches.  However, if I send parts of a picture to different computers,
> this is going to mess up anti-aliasing, correct?  I suppose this could be
> avoided by post-processing.  Or is there a way to do anti-aliasing in this
> situation?
> 
> 2)  Do I need to write my own routines to stitch the picture back together,
> or is there any easy way to accomplish this?
> 
> 3)  I would like to support any platform that can run Povray.  What is the
> best way to tell POV to render a file?  Should I just pass it a command
> line?  If that's the case, are all the command lines the same across
> platforms or would I need separate commands for Linus, Windows, etc.?
> 
> Thank you for any help,
> -Ben
> http://bwmartens.tripod.com

I'm almost done with a little app I wrote in AppleScript which would allow
me to remote-render pov files via email... it's pretty basic - I can only
really render with the default settings, but tests have worked so far...
maybe I'll post my finished script in one of the binary folders here, if
there's an interest...

-- 
dan
http://hometown.aol.com/goofygrafx
(to reply, substitute 'home' for 'aol')


Post a reply to this message

From: Daniel Matthews
Subject: Re: .NET distributed POV
Date: 3 Nov 2001 19:10:20
Message: <1122264.eGJsNajkDb@3-e.net>
Talk to these guys
http://www.imp.org/

Ben Martens wrote:

> I'm tossing around ideas for a .NET programming contest.  One idea was to
> build a distributed POV system based on .NET.  I've seen quite a few
> systems
> that do this with other architectures.  In my random thoughts so far, I've
> come across two potential problems.  If anyone can offer any advice I
> would really appreciate it:
> 
> 1)  I know it's possible to render parts of an image using command line
> switches.  However, if I send parts of a picture to different computers,
> this is going to mess up anti-aliasing, correct?  I suppose this could be
> avoided by post-processing.  Or is there a way to do anti-aliasing in this
> situation?
> 
> 2)  Do I need to write my own routines to stitch the picture back
> together, or is there any easy way to accomplish this?
> 
> 3)  I would like to support any platform that can run Povray.  What is the
> best way to tell POV to render a file?  Should I just pass it a command
> line?  If that's the case, are all the command lines the same across
> platforms or would I need separate commands for Linus, Windows, etc.?
> 
> Thank you for any help,
> -Ben
> http://bwmartens.tripod.com


Post a reply to this message

From: Rev  Bob 'Bob' Crispen
Subject: Re: .NET distributed POV
Date: 4 Nov 2001 04:53:15
Message: <Xns914F46352846revbob@127.0.0.1>
The kindly Rev. overheard "Ben Martens" <bma### [at] purdueedu> saying
on 02 Nov 2001: 

> I'm tossing around ideas for a .NET programming contest.  One idea
> was to build a distributed POV system based on .NET.

You have, I trust, seen the latest jolly little prank where somebody 
can snarf your whole Passport wallet, credit cards and all, by having 
you read a message in hotmail?

If you've put any credit card data into Passport, cancel the cards now.  
If you've put your email address into Passport, close your account and 
get another ISP.  If you've put your snailmail address into Passport, 
burn down your house and move.  It's the only way to be sure.

It *might* be sensible for people to use .NET if we could be sure it 
would never be connected to any network.  In fact, it was designed to 
operate exactly that way, but when the security wizards at Microsoft 
tried to lock it down, it somehow appeared on every website on the net.

I'd write more temperate, sensible reasons why I'd rather have my 
privates squeezed in a vise than have anything to do with .NET, but the 
NIMDA worm is clobbering my router again.
-- 
Rev. Bob "Bob" Crispen
crispen at hiwaay dot net

Chaos, panic, & disorder - my work here is done.


Post a reply to this message

From: Adrien Beau
Subject: Re: .NET distributed POV
Date: 9 Nov 2001 01:41:50
Message: <3BEB7AB6.79EFF6B4@free.fr>
Ben Martens wrote:
> 
> This is great.  Thank you for all the advice (and I'm always open to more!)
> I just wanted to address the .NET question...
> 
> Chris wrote:
> >> .NET? Cross Platform? I didn't think these could be held in the same
> thought.
> 
> .NET, contrary to what the anti-Microsoft press would lead you to believe,
> IS very cross platform.  That is the beauty of it.  I'm still learning about
> it, but basically you can write in any language.  Those chunks you make from
> different languages can all interact in the same program seemlessly.  This
> is because .NET compiles to an intermediate language.  After the program is
> in that intermediate language, any platform with the .NET framework can run
> it.  Obviously they the Windows one is already working.  I know a Linux port
> is in the works, and I think a Mac one may be finished already(?).  It's
> really very neat technology. As I mentioned, I'm just starting to learn, but
> the bottom half sounds similar to Java.  Except that this actually works.
> Sun had so many chances with Java but screwed them all up and never
> delivered on their promises about true cross-platform, etc... but I don't
> want to start a flame war.
> 
> Thanks again for the help,
> -Ben

Not very nice to write an ultra-polemical text and then say
"But please don't answer".

Today, .NET is mono-platform. Dot. No other OS supports today. Dot.
What other OS will support in the future is unknown and should not
be relied upon.

You can't write in any language. You can write in a lot of .NETted
languages. Yes, they resemble a lot the languages they derived from
(Cobol.NET, ha!), but they're not the same. Important note: you
just can't use an existing program, even if it is written in a
langugage the .NET platform supports: You have to rewrite some parts
(or most?) of its code.

As you said, you're just starting to learn. .NET might well be a
nice platform, but don't take everything Microsoft marketing
tells you for granted. C#.NET, the existing .NET platform and
Windows, and ASP.NET. This is what is working right now, and it's
rather good. The rest of it is still a bit... vaporous.

The part about Java is pure Microsoft-induced non-sense. Java
is not perfectly cross-platform, granted. But it is infinitely
more than .NET. And it works (.NET too).

-- 
Adrien Beau   adr### [at] freefr   http://adrien.beau.free.fr/


Post a reply to this message

From: Rev  Bob 'Bob' Crispen
Subject: Re: .NET distributed POV
Date: 10 Nov 2001 18:18:31
Message: <Xns9155ADE7776FErevbob@127.0.0.1>
The kindly Rev. overheard Adrien Beau <adr### [at] freefr> saying on
09 Nov 2001: 

> You can't write in any language. You can write in a lot of .NETted
> languages. Yes, they resemble a lot the languages they derived from
> (Cobol.NET, ha!), but they're not the same. Important note: you
> just can't use an existing program, even if it is written in a
> langugage the .NET platform supports: You have to rewrite some
> parts (or most?) of its code.

Somehow, I think the rush into C# may be something well short of a 
stampede.  Can you say "Visual J++" boys and girls?  Too many bright 
young kids developed great little applications in VJ++ and were shocked 
to discover they'd have to do a port to Java if they expected their 
apps to interoperate with web browsers or run on other platforms, and 
that the port was far from straightforward or easy.

Still, having learned Forth and the assembly language for several 
vanished machines, I don't suppose I can reasonably say that it's a bad 
idea to learn any programming language.
-- 
Rev. Bob "Bob" Crispen
crispen at hiwaay dot net

Nature abhors a vacuum.  Then again, so does my dog.


Post a reply to this message

From: Adrien Beau
Subject: Re: .NET distributed POV
Date: 11 Nov 2001 03:05:22
Message: <3BEE314D.9723F235@free.fr>
"Rev. Bob 'Bob' Crispen" wrote:
> 
> Somehow, I think the rush into C# may be something well short of a
> stampede.

I think it will happen, perhaps not as fast as Microsoft
marketing dreams of it.  Of course, everybody knows that
C# is roughly Java, but without those bastar-- err nice
people at Sun going to court everytime you try to "innovate".

I have not tried it, but know colleagues who have, and it
is a vast improvement over VB they say. This is actually
one of the few good technologies of .NET.

> Still, having learned Forth and the assembly language for several
> vanished machines, I don't suppose I can reasonably say that it's a bad
> idea to learn any programming language.

Why program when Microsoft and friends can do it for you?  ;-)
Just click there, please. And no, this is only possible to
do in the pro version...

Followup set to off-topic, but I don't read it, so mail me
directly if you prefer.

-- 
Adrien Beau   adr### [at] freefr   http://adrien.beau.free.fr/


Post a reply to this message

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