|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Thorsten Froehlich wrote:
>
> > * You have written isosurface functions by hand with more than X
> > characters (for 'X' use a reasonable value, for example 2000)
>
> Whatever size you pick up to the limit that functions allow, I have created
> such a function ... not that alternating sequences of x-x+y-y+z-z or similar
> combinations make a lot of sense ;-)
Probably this should be changed to 'You have written and used in a
scene'. You are still allowed to answer yes of course... ;-)
--
Christoph Hormann <chr### [at] gmxde>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ron Parker wrote:
>
> Nope, those two are the only ones I know. The 'inside' vs. 'outside' thing
> is basically programming, too, in the case of meshes where such is defined,
> so I don't see the same dichotomy you do here.
If you have a method to determine if some point is inside or outside the
object there is nothing further needed apart from the existing
intersection routines. This makes only one reason why a mesh can't be
used in CSG.
Or did i miss something essential?
--
Christoph Hormann <chr### [at] gmxde>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
y-y-y-n-y-n-n-n-n-y-n-n-y-n-n-n-n-y?-y-y-n-y-y-n-n-y?-y-n?-y-n-y-n-y?-y, but probably
worse-y-y-n-y-y-y-y-y, I think-y-y-n-y-n, but give me a piece of paper and could try
it-n, never looked at the source-n-n-n-n, just the obvious one-y-n, really?-y-y-y-y
but not for the popularity-y-y-n, not obfuscated-y-y: intersection {
sphere {
y-x/2,1 inverse}
sphere {
y+x/2,1 inverse}
inverse
pigment {
rgb 1 transmit 0.5}
}
-definitely no.
So, that would make it a... 36. Hmm, maybe I cheated a bit too much?
--
#local j=text{ttf"arial""JRG".2,0}#local J=0;#while(J<10)#local R=0;#while
(R<2)#local G=0;#while(G<1)#if(inside(j<R,G.1>))object{j scale.025translate
<R-1G-J/20J/-40+2>pigment{rgb<9J>}}#debug"O"#else#debug" "#end#local G=G+
.025;#end#local R=R+.05;#debug"\n"#end#local J=J+1;#end// JRG
Home: http://digilander.iol.it/jrgpov //New: Kitchen scene WIP
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I didn't pass one single question of the test, so I guess for me it is
> 0.
>
> Who did worse??
>
Zero, but i'd get a point if the first question read:
* You have participated in the IRTC and got to the top 21 best images.
Although I did once write some code to display triangle meshes. It even
performed simple shading...
does that count as a modeller?
So with a little cheating I get 2 points - more of a softcore pover I
think...that'd be my Channel 5 compared to Warp's Adult Channel ;>
Jim
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Thu, 31 Jan 2002 22:38:28 +0100, Christoph Hormann
<chr### [at] gmxde> wrote:
>If you have a method to determine if some point is inside or outside the
>object there is nothing further needed apart from the existing
>intersection routines. This makes only one reason why a mesh can't be
>used in CSG.
>Or did i miss something essential?
For CSG, you'll need all intersections, and in 3.1, the
All_Mesh_Intersections function returned just the closest one (for
speed reasons I guess).
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vipbg
TAG e-mail : pet### [at] tagpovrayorg
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp wrote:
>
> Some years ago I made a "Hardcore Povrayer Test" just for fun. Here it is
> again, with small updates.
>
> For each statement which you feel is true in your case (be sincere), take
> one point. The number of points you get is your score. The maximum number
> of points is 65.
> (My personal score is "only" 37, so it *is* a tough test.)
My score: About 10.
Tor Olav
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On 31 Jan 2002 13:32:43 -0500, Warp <war### [at] tagpovrayorg> wrote:
> I'm open to suggestions. :)
Does being a TAG member count? How about alpha and pre-beta testers?
How about coordinators (scene files, docs)?
Does writing a raytracer count? How about a 3D engine using other
methods of visualization (voxel geometry, point clouds, scanline)?
Maybe you should include the julia object in there in terms of trivia.
Well, that's pretty much it for now.
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vipbg
TAG e-mail : pet### [at] tagpovrayorg
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> The meaning of that is that you didn't know the answer to some question
> and thus you didn't take a point in that question, but it interested you
> so much that you tried to find the answer.
oh, yes, forgot about that :)
cu!
--
camera{location-z*3}#macro G(b,e)b+(e-b)*(C/50)#end#macro L(b,e,k,l)#local C=0
;#while(C<50)sphere{G(b,e),.1pigment{rgb G(k,l)}finish{ambient 1}}#local C=C+1
;#end#end L(y-x,y,x,x+y)L(y,-x-y,x+y,y)L(-x-y,-y,y,y+z)L(-y,y,y+z,x+y)L(0,x+y,
<.5,1,.5>,x)L(0,x-y,<.5,1,.5>,x) // ZK http://www.povplace.be.tf
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ok, I tried to make the test more rational and also divide it into more
readable sections. What do you think? What is your new score?
The maximum score (this time I think it's reachable) is 66.
I myself got a score of 48. (Ok, perhaps the test got a bit biased
torwards my own knowledge, but I tried to keep it as unbiased as possible;
judge by yourself :) )
POV-SDL:
-------
* Functions, macros, arrays, loops and file-IO directives are a piece of cake
to you.
* You don't like modellers because they don't allow you to create your
scenes algorithmically. It's a lot more interesting to find an algorithm
to create certain effect or surface than just doing it with the mouse.
* It's not unusual that the scene files you write take several minutes to
parse, even though the file itself only takes a few hundreds of lines.
* It sometimes happens that the scene you made takes a lot longer to parse
than to render, even at a very high resolution and lots of antialiasing.
* You have made yourself an obfuscated signature in POV-Ray SDL in 4 lines
or less, and you use it by default when posting to the POV-Ray news server.
* For any given identifier name you can tell by heart if it's a reserved
keyword (ie. an illegal identifier name) or not (of course without having
syntax highlighting to help you).
* You often debug your povray code using the text message streams.
* You've written your own include file and distributed it on the net. It has
got some popularity.
POV features:
------------
* You have made bicubic patches by hand, by writing plain coordinates (and
they worked as you expected).
* You have made a pov-script that creates a smooth surface with bicubic patches
using some algorithm.
* You know the principle behind joining several bicubic patches so that they
form a contiguous smooth surface (with no sharp edges).
* You know what is the relation between bicubic patches and bezier splines.
* You have made triangle meshes by hand, by writing plain coordinates.
* You have made a pov-script which generates triangle meshes using some
algorithm.
* These meshes you create usually use UV-mapping.
* You know the basic principle of smoothing a mesh, ie. make a mesh of
smooth triangles from a mesh of regular flat triangles.
* It's very easy to you to make slope maps and actually you often use
them to make your textures.
* You use frequency, phase, octaves, omega and lambda without problems
when creating your own textures.
* You can tell what does each one of them do.
* You understand the scattering function pictures in the media section of
the documentation.
* The intensity multiplier curves and light fading functions in the light
source section of the povray manual are very clear and you understand
them perfectly (and you might use them to choose your light source
types).
* Making good-looking radiosity images is not a problem to you.
* You could make any of the Chris Colefax's includes or macros by yourself
if you wanted.
* You know if some special feature is already implemented in the POV-Ray 3.5
standard include files (and thus you know you don't have to implement it
yourself).
* You never get the "camera is inside non-hollow object" warning. If you
ever get it, it's absolutely intentional.
* You know that a height_field has an inside and how it is defined.
* You know, without looking at the docs, how antialiasing methods 1 and 2 work
and what's their difference. You know why method 2 gives usually a much
better result but is slower.
Math:
----
* You have used the quadric, cubic, quartic or poly primitives.
* You have used poly objects bigger than 4th degree.
* You have calculated the polynomial for that poly object by yourself
(instead of looking at the formula somwhere or just trying random values).
* Making isosurfaces is not a problem to you. The only problem is just
figuring out the right function.
* You could write a torus-shaped isosurface by memory, without needing
to look anywhere for the function.
* Even if you don't remember the torus function, you could deduce it by
yourself, without looking it anywhere.
* You usually know when an isosurface function can be implemented as a
poly primitive, and you could convert the function to polynomial form and
construct the poly primitive from it (the torus function is one example
of this).
* You know what is the "sturmian root solver" thing which is used with the
'sturm' keyword in some objects (ie. you know the algorithm it uses) and
why it is needed sometimes.
* You understand the matrix transformation and you can write them by hand.
* You know how to calculate the matrix from any number of consecutive
transformations (translate, scale, rotate). (This means, for example,
that you could write a #macro which creates the matrix transformation from
any given set of other transformations.)
* You know how to use all the internal float, vector and string functions
without problem. You usually use them a lot.
* You can easily calculate the camera parameters when you want to put a
box right in front of the camera so that it completely and exactly fills
the viewing area.
Raytracing algorithms:
---------------------
* You know the principles of raytracing. For example, you know how to calculate
the intersection of a segment and a simple primitive like a sphere, and
how to calculate basic lighting for this intersection point. You might even
have written a simple raytracer some time.
* You understand why hidden surface removal, shadow testing, reflections and
refractions are so easy to implement in raytracing and so difficult to
implement in other rendering techniques. You know how they are implemented
in raytracing.
* You understand why non-linear transformations are next to impossible to
implement for any given primitive. You understand why, regardless of this,
any type of transformation is possible for pigments and such.
* You know how CSG operations are implemented in raytracing.
* You know that 'merge' doesn't have to be a primitive CSG operation
and can recite the equivalent sequence of intersections, unions, and
inverses.
* You know that 'difference' isn't a primitive CSG operation and you
know how POV represents one internally.
* You know BOTH reasons why a mesh can't be used in CSG.
* You know why refraction and media do work with meshes, even though CSG
doesn't.
* You understand how the stochastic radiosity algorithm used by POV-Ray
works at algorithmical level.
* You understand how photon mapping works at algorithmical level.
* You understand how dispersion works at algorithmical level.
Formats:
-------
* You have made a program which outputs a df3 file and used it in a scene.
* You know what a df3 file is and what's its format.
* You know the format of a PCM file.
* You have made one by hand.
The IRTC:
--------
* You participate in almost every IRTC contest.
* You have got to the top 20 best still images.
* You have won a price in the IRTC.
POV-Ray programming:
-------------------
* You have made a patch for povray.
* Your patch is included in MegaPov or at least it's popular.
* Your patch was included in POV-Ray 3.5.
* You have made a popular external tool for povray.
* You know which .cpp and .h files you must change to add a keyword to the
parser.
* You can add a keyword and get it right the first time.
* You know which .cpp file contains the functionality for each aspect of
the renderer.
* You can find a bug in the renderer source code given just a description
of the symptoms and without using a debugger.
* You are a member of the POV-Team.
--
#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
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On 31 Jan 2002 18:39:34 -0500, Warp wrote:
54 this time.
--
#macro R(P)z+_(P)_(P)_(P+1)_(P+1)+z#end#macro Q(C,T)bicubic_patch{type 1u_steps
6v_steps 6R(1)R(3)R(5)R(7)pigment{rgb z}}#end#macro _(Y)#local X=asc(substr(C,Y
,1))-65;<T+mod(X,4)div(X,4)9>-2#end#macro O(T)Q("ABEFUQWS",T)Q("WSXTLOJN",T)#
end O(0)O(3)Q("JNKLCGCD",0)light_source{x 1}// ron### [at] povrayorg
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|