This is the sixth in a continuing series of posts about my experience (limited as it is) as an author. Click here for a complete index of all the stories in this series.
In January 1993 I published my first book. It was a book about computer graphics titled Ray Tracing Creations. Ray tracing is a way of making photorealistic computer-generated images. Unlike other rendering methods, ray tracing creates realistic-looking reflections. Technically I was a co-author who got second billing but about 60% or more of the book was my work. This is the story of how I got involved in ray tracing and how I came to write this book
CompuServe and Me
As I mentioned in my story about my magazine feature “The Reunion“, in the early 1980s I got involved in the online community known as CompuServe Information Service. It was a precursor to the Internet and predated much more popular America Online or AOL as it was called. CompuServe was a very expensive service costing up to $6 per hour to connect. I would not have been able to afford it if I didn’t get a job as a forum moderator/discussion leader on a variety of forums. In those days they were called “SysOps” which was short for System Operator. If you worked as a discussion leader or SysOp you would get a “free flag” which would give you free connect time as long as you are working in your designated area.
My first free flag was in a group called NipSig which was short for National Information Providers Special Interest Group. It was a meeting place mostly for newspaper people who were supplying content for CompuServe. And eventually was renamed Issues Forum because it turned into a general discussion group for politics and a variety of other issues. There was a subsection called “Handicapped Issues” and I was a discussion leader in that group. I met friends there that are still friends today and that was nearly 40 years ago. Most notably my friend Pamela Bowen who was a newspaper editor had encouraged me as a writer and gave me the courage to write that article about the reunion.
One of the subsections of the Issues Form was about sexuality and it eventually spun off into a forum of its own forum called HSX or Human Sexuality Support Groups. I moved over to that forum to lead a subgroup on disability and sexuality. That particular subgroup didn’t generate much activity. Only a handful of people participated in the forum. Once they had discussed their relationship issues related to their disabilities there wasn’t much else to talk about. When an opening came along for the head sysop of that forum I took the job. It wasn’t so much as a discussion leader but just the day-to-day maintenance of the message boards and upload areas screening for inappropriate content etc.
If you were a full-fledged sysop and not just a discussion leader you would get a free account that was good anywhere on CompuServe, not just the area you managed. One of my favorite places to hang out was the Graphics Forum. In 1990 I left HSX and devoted full time to the graphics forum. I had been involved in the graphics forum for several years. I was there in 1987 when CompuServe first introduced a graphics file format called Graphics Interchange Format or GIF. When a revised standard came out in 1989 it included the specification for overlaying partial images in a way that could create very rudimentary animations. I wrote some software that would help piece together multiple images into a very crude animation. This was MUCH less sophisticated than the animated GIF files you see today.
My Claim to Fame
One of the popular things to do with this new format was to scan softcore porn images and upload them. There were special adult-only sections in the HSX and the Graphics Forum for these uploads. Although I cannot prove it, I am claiming that I made the very first animated porn image ever created in GIF format. I found a very grainy low-quality nude image and using a paint program painted on a pair of underwear. Then I animated it so that the underwear came off. I still have the image stashed away somewhere but as I said, I can’t prove that it was the first such image ever created. I know that 99% of the GIF images in existence at the time came through the CompuServe forums. I had one of the very first programs capable of creating an animation. So I’m confident it was the first animated porn GIF ever made. Now back to our regular story.
One of the subsections of the graphics forum was a gathering place for programmers involved in the open-source graphics rendering program. There was a guy named David K. Buck who had a program called DKB-Trace. He decided that he didn’t want to work on development anymore. He donated the code to a new team of developers led by a programmer in California named Drew Wells. Drew formed a new group and renamed the software Persistence of Vision Ray Tracer or POV-Ray for short. The program was completely text-based. Using the POV-Ray language you would specify the location and shape of various objects, their color, reflective properties, texture, transparency, etc. as well as the location and intensity of several light sources and location, direction, and field-of-view of a virtual camera. The program would then take this information and render a photorealistic image. It was all done with text that had to be parsed and converted into something that can then be rendered.
Sometime around 1990 perhaps 1991 I submitted my first piece of code to the project and eventually became a very active developer. I added code that allowed you to put in mathematical formulas to position objects. Previously you could just specify the X, Y, Z location of an object with raw numbers. Or you could initialize an identifier such as width, height, length to be particular values that can be referenced throughout the specification of your scene. But before the code I added, there was no way to put in a formula such as “width+index*5”. In my senior year of college, I had taken a graduate-level 600 course in compiler design so it was trivial for me to know how to parse an expression such as that. At one point the POV-Team gave me the nickname “parse meister”.
The Book Deal
In 1992 our team leader Drew Wells made a deal with a computer book publisher known as Waite Group Press run by a man named Mitch Waite. Drew was given the task of writing a book called Ray Tracing Creations. He had only written a very few short chapters and the book wasn’t going to be much of a book at the rate he was going. I don’t remember if I offered or if I was recruited to submit a reference section to the book. It would be detailed documentation of all the commands and functions available in the POV-Ray program. Below is the table of contents of the book. I wrote the introductory chapter which was 30 pages and the reference chapter which was about 230 pages. Another team member named Dan farmer wrote chapter 6 on animation that was about 30 pages. Drew wrote the remaining pages about 200 long.
Here are the “About the Author” pages. That blurry image of Drew really look that bad in the original book. It’s not that I did a bad scan of it.
I dedicated the book to my online friend Pamela Bowen who was a newspaper editor from Huntington WV. She had read much of what I had written long CompuServe including my magazine article “The Reunion” and I was so grateful that she had encouraged me to write that I had to dedicate it to her. People said “What you couldn’t have dedicated it to your mom or dad or something?” Later when we did the second edition of the book I dedicated it “To my parents… Who taught me that I could do anything.”
I believe the book sold about 6000 copies. I think I was paid a flat fee of maybe $1000 and Dan got a stipend as well but Drew got most of the royalties. Drew had lots of personal issues going on in his life and if I hadn’t stepped in to complete the book it would’ve never happened.
The book came with a 3.5″ floppy disk containing the program. Unbeknownst to the POV-Team in general, Drew had promised the publisher that they would have exclusive rights to distribute the program with a book. The problem was, the software was completely open-source. Anyone could make copies and distribute them however they wanted. There was only one official version but in general, it was a free program. When a couple of magazines decided to distribute our program on a disk with the magazine, the folks at Waite Group got pretty upset. We had to go through a lot to get them to defend our exclusive deal. We were constantly sending threatening letters to people telling them that they could not redistribute our program if it was bundled with some sort of print publication. The whole thing was a nightmare.
The Second Edition
About a year later I was recruited to update and revise the book. This time it would be my book with Drew getting second billing. I don’t recall if he got any payment of royalties for the second edition. I know that I got real royalties this time. It was about $1 per book and it sold just under 6000 copies. Between the two versions of the book, we had made pretty extensive updates to the program and so this new version of the book reflected those changes. The book was also translated into other languages. Somewhere around here, I have a version in Portuguese that was sold in Brazil. I received a small one-time fee for the foreign language versions.
By this time Drew was completely missing in action and I had taken over management of the team. I refused to call myself the “team leader” and I retitled the job “team coordinator”. It was a reaction to the fact that Drew had led us into a real mess and I wanted to have a more cooperative group decision-making process. Hence the name “coordinator” rather than “leader”. I contributed a small section to a couple of other graphics books published by Waite Group Press and I was paid a small flat fee for the contribution.
My Big Failure
I don’t recall if it was after the second edition of Ray Tracing Creations or if it was between the two editions but at one point they wanted me to write a new book. This one would be entirely mine. It would be more of a tutorial on how to create images rather than a reference manual like the books I had written. There was a brief tutorial in Drew’s chapters but they wanted an entire book that was a how-to book rather than a reference.
I wrote a sample chapter that they liked and they sent me a contract to sign. The big problem was they wanted it done by a certain date. After writing another chapter or so, I realized that it was moving much too slowly. There was no way I was going to be able to complete the book in time. I kept putting off signing the contract and they would send me emails asking me what was wrong. Finally, I gave them a call and tried to talk to Mitch Waite himself. He was unavailable but I talked to one of the associate editors. I don’t remember his name.
I admitted to him that the reason I hadn’t signed a contract was that I was wrestling with the possibility that I just couldn’t do it. I asked him if I could have more time. I estimated it was going to take me maybe five or six months more than whatever deadline they had set. I’m thinking it was two or three months. I don’t remember.
They wouldn’t budge on the deadline. They said that the first book had created momentum and that they were on a schedule where they wanted to publish something every five or six months I think. I don’t remember. This was a rather small market and they were putting out a catalog of new titles to send to retail and wholesale book buyers. If I delayed, it would leave a hole in their schedule. I just gave up.
In July 1994, Ray Tracing Worlds with POV-Ray was published. They hired another POV-Team member Alexander Enzmann as the primary author. In our group, he went by the name Xander. Another team member named Lutz Kretzschmar who lived in Germany had written a program called MORAY that was sort of a primitive CAD graphics modeling program that would let you create objects in sort of a primitive wireframe version. It didn’t give you an accurate preview of what you’re scene was going to look like. After you created the wireframe preview, it would export files in POV-Ray format. They included a copy of his program and he contributed a chapter and got second billing as co-author. I contributed an appendix that outlined the difference between the earliest versions of POV-Ray and the latest one.
Now that I think about it, this book must have come out between the two versions of Ray Tracing Creations because I’m pretty sure my second edition covered a later version than the one bundled with Ray Tracing Worlds.
The reason that they were able to create the book so quickly is that much of it focused on how to use the CAD program. I had never used MORAY and would not have been able to write such a book.
As I mentioned earlier, the normal way of creating a scene to be rendered was to type it out in a special computer language as an ordinary text file. It takes a lot of time to explain how to do that. Using a CAD program is easier. Unfortunately, the MORAY didn’t support all of the features of POV-Ray.
I was disappointed we never did publish a book about the detailed usage of the text-based method of creating a scene. I considered the possibility of going ahead and writing the book on my own time and submitting it to them on spec but I was getting burnt out on working with the program and never did write that other book.
The Rest of My POV-Ray Story
I don’t remember exactly when, but shortly thereafter I stepped down as the team coordinator and handed things over to a guy named Chris Cason who lived in Australia. The program has gone through a couple of minor revisions since I left. Chris Cason still manages the team although I don’t know how active they are lately. I don’t think there’s been an upgrade in several years.
Other CAD software and rendering programs such as Autodesk Fusion 360 and Blender are easier to use and produce spectacular results. They are completely graphics-based and you can see what you’re working on while you are working on it. You don’t have the disadvantages of a clumsy text interface. They do not use ray tracing to generate images. Ray tracing is incredibly slow. However some of the advanced graphics cards being sold for PCs these days have ray tracing algorithms that produce accurate reflections that are not possible in other forms of rendering. Even Pixar has gotten into the ray tracing business. Some of the scenes in Cars 2 and later Pixar movies had ray tracing effects.
I initially got into ray tracing because I wanted to create my own images. In my teens and early twenties, I tried pencil sketches as a way to create art but I never got good at it. One of the things I learned the hard way is why artists paint on an easel. I had to lay my paper flat on a table to draw. I would prop up my head on my left hand and often my head was at an awkward angle. Some of the drawings didn’t look too bad until you pick the page up and looked at it directly. It had all sorts of distortions because I was drawing it looking at the page at an angle.
Eventually I lost much of the use of my hands so the only way I could create images was on the computer and ray tracing was the perfect way to do it.
In 1995, I made a Christmas card with a ray traced rendering of two angels hovering over the little town of Bethlehem and the Star of Bethlehem shining down on the city. I created a new ray traced Christmas card every year from then until Christmas 2019. There was one exception. In 2016 a few years ago I took angels from the 1995 image and found a way to export them in a format where I could make physical objects using my 3D printer. I also printed tiny buildings of Bethlehem and the Star. I pasted the star on a dark blue cardboard background and photographed the scene re-creating the 1995 image.
For Christmas 2020 I had completely run out of ideas. The cards were expensive to print and it was time-consuming. I didn’t send Christmas cards that year and probably will not this year.
One of my blogs http://graphics.cyborg5.com/ gives details about some of the images I’ve created and how I made them. Here is a photo album of all of my Christmas cards on my Facebook page. They are public images and you should be able to click on the link and see them even if you are not a member of Facebook.