|
![](/i/fill.gif) |
Roz wrote:
> Bas Leerintveld wrote:
>
>> On Tue, 23 Oct 2001 19:38:43 +0200, Roz wrote:
>>
>>
>>>You might want to check out Blender:
>>>
>>
>> I don't like Blender, the UI is horrible; confusing on purpose, to boost
>> the sale of Blender manuals. :-D
>>
>
>
> Blender does have a challenging UI but some people can do amazing things
> with it (I'm not one of them though ;) I think once a person got
> familiar with it they'd see that there's actually a consistent
> interface. But it's not easy to get used to Blender!
>
>
>> TrueVision perhaps? Try http://truevision.sourceforge.net/
>> If this list of features describes the current state of the project, it's
>> not very useful yet, but the project is certainly more active then giram
>> ( http://www.giram.org ), another modeler for GNOME.
>
> TrueVision looks interesting. Anything that runs on Linux that supports
> POV looks interesting to me ;) The material editor in it looks good too!
>
> Danial Matthews pointed out the following link in an earlier thread in
> response to a linux gui for pov:
>
> http://www.azweb.de/kpovmodeler/index.html
>
> Could be worth checking out too!
>
> -Roz
I have been talking to the K3d people about a POV export option too, but
they are focused on RIB. There is a rib2pov script written in perl, but is
is incomplete and old (1994). A revamped version of it would let you move
RIB files to POVMAN, or just the geometry to POV 3.5
rib2pov -------------------- cut here, eh? ----------------------->8
#! /usr/um/bin/perl
# RIB2POV
# v.1.0: (c) Jonathan Mayer, 1994 jma### [at] engin umich edu
#
# version 1.0
# Converts Renderman RIB files to POVRAY scene description files.
# Note that this converter isn't terribly flexible, and is really only
# meant to convert RIB files automatically generated by the macintosh
# application SWIVEL 3D. It ignores anything it doesn't understand.
# I don't know RIB -- I'm making certain assumptions.
#
# Permission to freely distribute and modify is granted by the
# author, provided that all changes are documented and that the
# original credits aren't removed, ok? Just check with me before
# distributing yer modifications. -jm
$COM = "\/\/";
print "$COM Translated by rib2pov, jma### [at] engin umich edu\n";
print "$COM On ",time,"\n\n";
$StackBreak = "\n**BREAK**\n"; #this is hokey
$curobj = "";
@attrStack = (); # this isn't used
@objStack = (); # but this is
$srcPoly = 0; # just some bookkeeping
$destTri = 0;
sub POPOBJECT
{
local ($l);
while (($l = pop (@objStack)) ne $StackBreak) {
print $l,"\n";
}
}
while (<>)
{
if (/^attribute \"identifier\" \".+\" \"(\S+)\"/) {
push (@objStack, $curobj);
push (@objStack, $StackBreak);
push (@objStack, "}");
$curobj = $1;
next;
}
next if ($curobj eq "");
if ((/^polygon ...\[(.*)\]/) ||
(/^gpolygon \[\d+\] ...\[(.*)\]/))
{
# for random polygon A B C D E F...
# creates triangles: <ABC> <ACD> <ADE> <AEF> ...
$srcPoly++;
local (@n) = split (/[ \t\n]+/, $1);
local (@vertexes) = ();
### print "POLY\n";
while (@n) {
$Z = pop (@n);
$Y = pop (@n);
$X = pop (@n);
push (@vertexes, "< $X, $Y, $Z >");
### print " VERTEX: < $X, $Y, $Z >\n";
}
local($C);
local($A) = pop (@vertexes);
local($B) = pop (@vertexes);
while (@vertexes) {
### print " TRIANGLE";
$destTri++;
$C = pop (@vertexes);
# make triangle ABC
push (@objStack, "\t}");
push (@objStack, "\t\t$C");
push (@objStack, "\t\t$B,");
push (@objStack, "\t\t$A,");
push (@objStack, "\ttriangle {");
# set stuff up for next triangle
$B = $C;
}
### print "\n";
next;
}
if (/^scale (\S+) (\S+) (\S+)\b/) {
push (@objStack, "\tscale <$1, $2, $3>");
next;
}
if (/^translate (\S+) (\S+) (\S+)\b/) {
push (@objStack, "\ttranslate <$1, $2, $3>");
next;
}
if (/^rotate (\S+) (\S+) (\S+) (\S+)\b/) {
$rX = $1 * $2;
$rY = $1 * $3;
$rZ = $1 * $4;
push (@objStack, "\trotate <$rX, $rY, $rZ>");
}
if (/^color \[(\S+) (\S+) (\S+)\]/) {
push (@objStack, "\tpigment { color red $1 green $1 blue $1 }");
next;
}
if (/^attributeend\b/) {
push (@objStack, "\#declare $curobj = union {");
push (@objStack, "\/\/ Object: \"$curobj\" ;)");
push (@objStack, " ");
&POPOBJECT;
$nextobj = pop (@objStack);
push (@objStack, "\tobject { $curobj }");
$curobj = $nextobj;
next;
}
}
print "\n\n\/\/ THE END. translated by rib2pov, jma### [at] engin umich edu
;)\n\n";
print STDERR " Translated $srcPoly polygons into $destTri triangles.\n";
exit (0); # gracefully exit stage left.
end of rib2pov ------------- cut here, eh? ----------------------->8
Post a reply to this message
|
![](/i/fill.gif) |