Island Source
include/architecture.txt
simple_column_end {
LathedObject name = "subobject0" order = 3 knots = "{ 0.000000, 0.000000, 0.000000, 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 10.000000, 10.000000}" control_points = "{ (0.003, 1.000), (0.500, 1.000), (1.000, 1.000), (1.000, 0.664), (0.634, 0.664), (0.914, 0.664), (0.914, 0.332), (0.586, 0.332), (0.845, 0.332), (0.848, 0.000), (0.503, 0.000), (0.003, 0.000) }" weights = "{ 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000 }" accuracy = (50%, 10%);
}
simple_column {
LathedObject position = (0, 0, 0) size = (0.070, 1.000, 0.070)
name = "vertical"
order = 3 knots = "{ 0, 0, 0, 1, 1, 1}"
control_points = "{ (0.997, 0.996), (0.997, 0.509), (0.997, 0.030) }"
weights = "{ 1.000, 1.000, 1.000 }" accuracy = (100%, 50%);
simple_column_end position = (0.000000, 0.950000, 0.000000) size = (0.100000, 0.050000, 0.100000) name = "top";
simple_column_end position = (0.000000, 0.050000, 0.000000) rotation = (180.000000, 0.000000, 0.000000) size = (0.100000, 0.050000, 0.100000) name = "bottom";
}
stairs_three {
Rectangle position = (0.000000, 0.333000, 0.000000) rotation = (270.000000, 0.000000, 0.000000) size = (0.333000, 1.000000, 1.000000) name = "subobject0";
Rectangle position = (0.333000, 0.660000, 0.000000) rotation = (270.000000, 0.000000, 0.000000) size = (0.333000, 1.000000, 1.000000) name = "subobject1";
Rectangle position = (0.666600, 1.000000, 0.000000) rotation = (270.000000, 0.000000, 0.000000) size = (0.333000, 1.000000, 1.000000) name = "subobject2";
Rectangle position = (0.000000, 0.000000, 0.000000) rotation = (0.000000, 90.000000, 0.000000) size = (1.000000, 0.333000, 1.000000) name = "subobject3";
Rectangle position = (0.333000, 0.333300, 0.000000) rotation = (0.000000, 90.000000, 0.000000) size = (1.000000, 0.333000, 1.000000) name = "subobject4";
Rectangle position = (0.667000, 0.666600, 0.000000) rotation = (0.000000, 90.000000, 0.000000) size = (1.000000, 0.333000, 1.000000) name = "subobject5";
Rectangle position = (1.000000, 0.000000, 0.000000) rotation = (0.000000, 90.000000, 0.000000) name = "subobject6";
Rectangle size = (1.000000, 0.333000, 1.000000) name = "subobject7";
Rectangle position = (0.333000, 0.333300, 0.000000) size = (0.667000, 0.333000, 1.000000) name = "subobject8";
Rectangle position = (0.667000, 0.667000, 0.000000) size = (0.333000, 0.333000, 1.000000) name = "subobject9";
Rectangle position = (0.000000, 0.000000, -1.000000) rotation = (0.000000, 0.000000, 0.000000) size = (1.000000, 0.333000, 1.000000) name = "subobject10";
Rectangle position = (0.333000, 0.333000, 0.000000) size = (0.667000, 0.333000, 1.000000) name = "subobject11";
Rectangle position = (0.666600, 0.667000, -1.000000) size = (0.333300, 0.333000, 1.000000) name = "subobject12";
}
gothic_bridge_post {
LathedObject name = "subobject0" order = 3 knots = "{ 0.000000, 0.000000, 0.000000, 1.000000, 2.000000, 3.000000, 4.000000, 5.000000, 6.000000, 7.000000, 8.000000, 9.000000, 10.000000, 11.000000, 11.000000, 11.000000}" control_points = "{ (0.003, 1.000), (0.045, 0.871), (0.221, 0.829), (0.221, 0.829), (0.221, 0.829), (0.124, 0.816), (0.074, 0.758), (0.074, 0.550), (0.074, 0.310), (0.074, 0.166), (0.178, 0.118), (0.178, 0.031), (0.178, 0.004) }" weights = "{ 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000, 1.000 }" number_of_arcs = 3.000000 arc_weight = 1.000000 accuracy = (100%, 60%);
}
gothic_bridge_end {
gothic_bridge_post position = (0.154530, 0.000000, 0.767307) size = (0.750000, 0.750000, 0.750000) name = "subobject0";
gothic_bridge_post position = (0.148517, 0.000000, 0.148517) size = (0.750000, 0.750000, 0.750000) name = "subobject1";
}
gothic_bridge {
NURBSCurve order = 3 knots = "{ 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000}" control_points = "{ (0.007, 0.500), (0.497, 0.578), (0.990, 0.500) }" weights = "{ 1.000, 1.000, 1.000 }" NoDraw name = "subobject1_extrusion_path";
NURBSCurve order = 3 knots = "{ 0.000000, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000}" control_points = "{ (0.500, 1.000), (0.500, 0.500), (0.500, 0.000) }" weights = "{ 1.000, 1.000, 1.000 }" NoDraw name = "subobject1_cross_section";
ExtrudedObject position = (0.029518, -0.499274, -0.835000) size = (0.900000, 1.000000, 0.200000) name = "subobject1" extrusion_path = "subobject1_extrusion_path" cross_section = "subobject1_cross_section";
gothic_bridge_end position = (-0.000228, 0.000000, -0.970553) size = (0.300000, 0.300000, 0.300000) name = "subobject3";
gothic_bridge_end position = (0.858413, 0.000000, -0.977510) size = (0.300000, 0.300000, 0.300000) name = "subobject4";
}
include/tree.txt
standard_leaf {
Rectangle size = .05 texture = "texture/leaf.png";
}
standard_tree {
NURBSCurve name = "circle"
color = (105, 92, 73)
order = 3 knots = "{ 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 4 }"
control_points = "{ (.5, 0, 0), (1, 0, 0), (1, .5, 0), (1, 1, 0), (.5, 1, 0), (0, 1, 0), (0, .5, 0), (0, 0, 0), (.5, 0, 0) }"
weights = "{ 1, .707, 1, .707, 1, .707, 1, .707, 1 }"
NoDraw;
FractalTree axiom = "F+X>X>X" rules = "X:[F+X>X>X]" recursion_depth = 5
delta_phi = 35 length_attenuation = 70% leaf = "standard_leaf"
trunk_cross_section = "circle" trunk_diameter = .05
pruning_radius = 0 accuracy = 10%;
}
poplar_leaf {
Rectangle size = .02 texture = "texture/poplar_leaf.png";
}
poplar_tree {
NURBSCurve name = "circle"
color = (240, 240, 240)
order = 3 knots = "{ 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 4 }"
control_points = "{ (.5, 0, 0), (1, 0, 0), (1, .5, 0), (1, 1, 0), (.5, 1, 0), (0, 1, 0), (0, .5, 0), (0, 0, 0), (.5, 0, 0) }"
weights = "{ 1, .707, 1, .707, 1, .707, 1, .707, 1 }"
NoDraw;
FractalTree recursion_depth = 5
axiom = "X"
rules = "X:>F[+X]>F[+[X]>[X]][X]+[Y];Y:>F[Y]+[Y]"
delta_phi = 50 delta_theta = 110 length_attenuation = 63%
leaf = "poplar_leaf" trunk_cross_section = "circle"
trunk_diameter = .03 accuracy = 10%;
}
pine_needles {
Rectangle size = .05 texture = "texture/pine_needles.png";
}
pine_tree {
NURBSCurve name = "circle"
color = (105, 92, 73)
order = 3 knots = "{ 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 4 }"
control_points = "{ (.5, 0, 0), (1, 0, 0), (1, .5, 0), (1, 1, 0), (.5, 1, 0), (0, 1, 0), (0, .5, 0), (0, 0, 0), (.5, 0, 0) }"
weights = "{ 1, .707, 1, .707, 1, .707, 1, .707, 1 }"
NoDraw;
FractalTree axiom = "Y" rules = "X:F[--X];Y:F[>>>>[+++++///X]]"
delta_phi = 15 // '+'
delta_theta = 30 // '>'
leaf = "pine_needles"
trunk_cross_section = "circle" trunk_diameter = .05
recursion_depth = 4 accuracy = 20% length_attenuation = 70%
pruning_radius = 0;
}
demo.txt
#include "include/architecture.txt"
#include "include/tree.txt"
parthanon_base {
stairs_three position = (0.000000, 0.000000, -0.100000) size = (0.100000, 0.050000, 0.800000) name = "subobject0";
Cube position = (0.090000, 0.000000, -0.900000) size = (0.900000, 0.050000, 0.800000) name = "subobject1";
}
parthanon_long_side {
simple_column position = (0.154521, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject1";
simple_column position = (0.253360, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject2";
simple_column position = (0.364339, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject3";
simple_column position = (0.472007, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject4";
simple_column position = (0.569226, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject5";
simple_column position = (0.675494, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject6";
simple_column position = (0.772690, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject7";
simple_column position = (0.861310, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject8";
simple_column position = (0.949318, 0.000000, 0.000000) size = (0.200000, 0.400000, 0.200000) name = "subobject9";
}
parthanon_short_side {
simple_column position = (0.050000, 0.000000, 0.359954) size = (0.200000, 0.400000, 0.200000) name = "subobject1";
simple_column position = (0.050000, -0.000000, 0.465096) size = (0.200000, 0.400000, 0.200000) name = "subobject2";
simple_column position = (0.050000, 0.000000, 0.703558) size = (0.200000, 0.400000, 0.200000) name = "subobject3";
simple_column position = (0.050000, 0.000000, 0.836795) size = (0.200000, 0.400000, 0.200000) name = "subobject4";
simple_column position = (0.050000, 0.000000, 0.570221) size = (0.200000, 0.400000, 0.200000) name = "subobject6";
simple_column position = (0.050000, 0.000000, 0.243934) size = (0.200000, 0.400000, 0.200000) name = "subobject7";
}
parthanon_roof {
Cube position = (0.000000, 0.173000, 0.333000) rotation = (45.000000, 0.000000, 0.000000) size = (1.000000, 0.030000, 0.500000) name = "subobject0";
Cube position = (0.000000, 0.173, -0.033159) rotation = (-45.000000, 0.000000, 0.000000) size = (1.000000, 0.030000, 0.500000) name = "subobject1";
Cube position = (0.025000, 0.173000, 0.333000) rotation = (45.000000, 0.000000, 0.000000) size = (0.950000, 0.030000, 0.450000) name = "subobject2";
Cube position = (0.025000, 0.175601, 0.027798) rotation = (-45.000000, 0.000000, 0.000000) size = (0.950000, 0.030000, 0.450000) name = "subobject3";
Cube position = (0.025000, 0.000000, 0.050426) size = (0.950000, 0.030000, 0.700000) name = "subobject4";
}
parthanon {
parthanon_base position = (-0.000000, 0.000000, 0.918929) name = "subobject0";
parthanon_long_side position = (0.000000, 0.050000, 0.750000) name = "subobject1";
parthanon_long_side position = (0.000000, 0.050000, 0.050000) name = "subobject2";
parthanon_short_side position = (0.900000, 0.050000, -0.150000) name = "subobject3";
parthanon_short_side position = (0.100000, 0.050000, -0.150000) name = "subobject4";
parthanon_roof position = (0.050000, .45, -0.050000) size = (.95, .5, 1.1) name = "subobject5";
}
subScene {
ReliefSculpture position = (0.000000, -0.030000, 0.000000) file = "demo_land2.jpg" size = (1.000000, 0.160000, 1.000000) threshold = 40 shininess = 0.050000 texture = "texture\grass.jpg" name = "island_ground";
parthanon position = (0.261861, 0.090000, 0.390081) rotation = (0.000000, 180.000000, 0.000000) size = (0.050000, 0.050000, 0.050000) name = "subobject2" texture = "texture/marble_sm.jpg";
gothic_bridge position = (0.250000, 0.055000, 0.700000) size = 0.200000 shininess = 1.000000 rotation = (0.000000, -20.000000, 0.000000) transparency = 0.900000 name = "subobject3";
standard_tree position = (0.633778, 0.078552, 0.445233) rotation = (0.000000, 90.000000, 0.000000) size = (0.080000, 0.080000, 0.080000) name = "subobject4";
standard_tree position = (0.303396, 0.065675, 0.442192) size = (0.080000, 0.080000, 0.080000) name = "subobject5";
standard_tree position = (0.140336, 0.071515, 0.464128) size = (0.080000, 0.080000, 0.080000) name = "subobject6";
standard_tree position = (0.180970, 0.063317, 0.515988) size = (0.080000, 0.080000, 0.080000) name = "subobject7";
standard_tree position = (0.532924, 0.065904, 0.465932) size = (0.080000, 0.080000, 0.080000) name = "subobject8";
standard_tree position = (0.563812, 0.070438, 0.392039) rotation = (0.000000, 45.000000, 0.000000) size = (0.090000, 0.090000, 0.090000) name = "subobject9";
poplar_tree position = (0.590000, 0.074663, 0.396000) size = (0.080000, 0.080000, 0.080000) name = "subobject10";
poplar_tree position = (0.639348, 0.079965, 0.337450) rotation = (0.000000, 28.388889, 0.000000) size = (0.080000, 0.080000, 0.080000) name = "subobject11";
poplar_tree position = (0.580878, 0.075000, 0.480906) rotation = (0.000000, 50.000000, 0.000000) size = (0.080000, 0.080000, 0.080000) name = "subobject12";
poplar_tree position = (0.130000, 0.075000, 0.500000) rotation = (0.000000, 20.000000, 0.000000) size = (0.080000, 0.080000, 0.080000) name = "subobject13";
poplar_tree position = (0.206062, 0.066393, 0.316510) rotation = (0.000000, 225.000000, 0.000000) size = (0.080000, 0.080000, 0.080000) name = "subobject14";
}
Scene {
Sky sun_phi = 70 name = "theSky";
//night_image = "texture\NorthNightSky.jpg";
subScene position = (-22, -5, -5) rotation = (0, 90, 0) size = 50;
Rectangle position = (-1000, -5, 1000) rotation = (-90, 0, 0)
color = (0, 40, 128) size = 2000 name = "water";
}
Home
About
Screenshots
Download
Documentation
Copyright © 2001 Geoffrey Prewett