updated .todo, added scenes/die.fart which illustrates boolean object problem where continuation rays starting in the middle of a boolean object do not realize that fact

git-svn-id: svn://anubis/fart/trunk@213 7f9b0f55-74a9-4bce-be96-3c2cd072584d
This commit is contained in:
Josh Holtrop 2009-03-12 03:23:10 +00:00
parent 91e490b65a
commit 195593cc9b
2 changed files with 140 additions and 0 deletions

2
.todo
View File

@ -4,12 +4,14 @@ FART To-Do List
High Priority:
- Add distribution infrastructure
- Multi-threading
- Rework booleans to base them on regions instead of in/out for each side
Medium Priority:
- Shape definitions / reusability
- Scene file pre-parser to allow includes, macros, and comments
- Vim syntax file
- Add jitter parameter to lights to effect soft shadow edges
- Allow >2 sub-shapes in boolean shape definitions in scene files
Low Priority:
- Refraction

138
scenes/die.fart Normal file
View File

@ -0,0 +1,138 @@
scene
{
camera
{
position <1.5, -2.5, 1.5>
look_at <0, 0, 0>
}
light
{
position <10, 4, 10>
}
plane
{
position <0, 0, 1>, 0.501
}
union
{
union {
union {
box { size <1, 0.8, 0.8> }
union {
box { size <0.8, 1, 0.8> }
box { size <0.8, 0.8, 1> }
}
}
union {
union {
union {
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, 0.4, -0.4>
}
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, -0.4, -0.4>
}
}
union {
cyl {
size <0.1, 0.1, 0.8>
translate <-0.4, 0.4, -0.4>
}
cyl {
size <0.1, 0.1, 0.8>
translate <-0.4, -0.4, -0.4>
}
}
}
union {
union {
union {
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, -0.4, 0.4>
rotate -90, <1, 0, 0>
}
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, -0.4, -0.4>
rotate -90, <1, 0, 0>
}
}
union {
cyl {
size <0.1, 0.1, 0.8>
translate <-0.4, -0.4, 0.4>
rotate -90, <1, 0, 0>
}
cyl {
size <0.1, 0.1, 0.8>
translate <-0.4, -0.4, -0.4>
rotate -90, <1, 0, 0>
}
}
}
union {
union {
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, -0.4, 0.4>
rotate -90, <0, 1, 0>
}
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, -0.4, -0.4>
rotate -90, <0, 1, 0>
}
}
union {
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, 0.4, 0.4>
rotate -90, <0, 1, 0>
}
cyl {
size <0.1, 0.1, 0.8>
translate <0.4, 0.4, -0.4>
rotate -90, <0, 1, 0>
}
}
}
}
}
}
union {
union {
union {
sphere { radius 0.1 translate <0.4, 0.4, 0.4> }
sphere { radius 0.1 translate <0.4, 0.4, -0.4> }
}
union {
sphere { radius 0.1 translate <0.4, -0.4, 0.4> }
sphere { radius 0.1 translate <0.4, -0.4, -0.4> }
}
}
union {
union {
sphere { radius 0.1 translate <-0.4, 0.4, 0.4> }
sphere { radius 0.1 translate <-0.4, 0.4, -0.4> }
}
union {
sphere { radius 0.1 translate <-0.4, -0.4, 0.4> }
sphere { radius 0.1 translate <-0.4, -0.4, -0.4> }
}
}
}
material
{
color <1, 0.2, 1>
transparency 0.5
}
}
}