EMAIL: nazrat@athabascau.ca NAME: Nazrat Durand TOPIC: Toys COPYRIGHT: I SUBMIT TO THE STANDARD RAYTRACING COMPETITION COPYRIGHT. TITLE: Castle Protects House COUNTRY: Canada WEBPAGE: RENDERER USED: POV-RAY 3.02 TOOLS USED: cmpeg 1.0, LEGO, MicroMegablocks, TANDEM blocks, TYCO blocks. A modified version of the the building brick library that Filip Spacek modified for POV-RAY from Paul Gyugyi Rayshade library. I have included the files used with cmpeg so that others can see what I have done. My first attempt in a previous round suffered for not knowing how to manipulate cmpeg. I still need to do a lot of experimentation, but now I at least know which numbers can have a major impact. CREATION TIME: The little house took a quarter hour to physically build and over two hours to program. It has 146 bricks in it. The castle, with a few more bricks, took a bit more time. The castle was created for the previous competition. I felt that the previous animation did not do justice to this object. Therefore I am trying again. With over five times the number of frames. Total pieces in castle = 19 + 2*928 + 6*1137 + 5*472= 11057 Unique placements = 19 + 928 + 1138 + 472 = 2536 It took me about six hours to count them today. I hesitate to guess how much time was spent placing them. HARDWARE USED: A 66 MHz 486 20MB was used to design the castle. Rendering was done on a 266 MHz Pentium II machine with 128 MB. VIEWING RECOMMENDATIONS: I used VMPEG on a wintel machine. ANIMATION DESCRIPTION: A lovely little house is destroyed by a younger sibling's errant ball. Therefore the elder sibling builds a castle to protect the new house from bouncing balls. Oh, I added the last few frames so that this thing will loop relatively seamlessly. DESCRIPTION OF HOW THIS ANIMATION WAS CREATED: Each brick is positioned by translating by units of widr and talr. By adding and then commenting out various loops and clock variables, I was able to selectively build or display different parts of the castle. One goody I would like to share with people, though. There is no combination of rotations and translations that will transform a left-hand object into a right-hand object. For those interested, here is a bit of code that will do so: #declare YZ_Mirror = transform { matrix < -1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 > } #declare Right_Hand_Object = object { Left_Hand_Object transform YZ_Mirror } BTW: #include ; If your object is far from the YZ plane, you may have to go hunting for its mirror twin. It is amazing how much time can be saved on building the right gate tower when the above transform is applied to the left gate tower! (Left tower = 2 weeks ) (right tower = a couple-three days of agonizing, an hour of Reading The Friendly Manual, a moment of inspiration, an hour of trial and error )