{"id":43,"date":"2007-10-31T19:45:33","date_gmt":"2007-11-01T02:45:33","guid":{"rendered":"\/\/?p=43"},"modified":"2015-09-28T05:37:48","modified_gmt":"2015-09-28T05:37:48","slug":"a-nice-plane","status":"publish","type":"post","link":"https:\/\/carson.fenimorefamily.com\/?p=43","title":{"rendered":"Fenisoft Scanline Renderer"},"content":{"rendered":"<p>This is one of those projects that seems much cooler to the maker than the observer. Here I have a biplane. What makes it special is that it was rendered using Carson Fenimore&#8217;s 3D renderer. If you have never heard of it, that&#8217;s ok &#8211; that probably won&#8217;t change, even after I finalize things with Pixar. It will probably remain anonymous, just as my stock and pay on the deal will be kept secret, leaving me superficially the same, as always, a humble man unwilling to brag.<\/p>\n<p>This renderer was implemented entirely in c++ under Mac OS X and makes use of no external libraries, other than the STL for data containers and OpenGL for drawing 2D points (really 3D points with a Z value of 0). This means this renderer does the following:<\/p>\n<ul>\n<li>Polygon rasterization &#8211; quads and triangles<\/li>\n<li>Z Buffering &#8211; using patented hidden secret technology<\/li>\n<li>Geometric transformations (scale, translate, rotate)<\/li>\n<li>Arbitrary view (camera can be anywhere; specify view angle along with up, look at, and look from vectors<\/li>\n<li>Phong shading<\/li>\n<\/ul>\n<p>The lesson I learned from this is: Don&#8217;t be deceived: simple things are often not easy to do. This was not easy to implement &#8211; there&#8217;s no &#8220;cookie-cutter&#8221; way to do your own renderer, especially if you have a weak background in linear algebra.<\/p>\n<p>Biplane &#8211; in all its magesty<br \/>\n<a href=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-47\" src=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane2-300x140.png\" alt=\"Biplane 2\" width=\"300\" height=\"140\" srcset=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane2-300x140.png 300w, https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane2.png 745w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a> <a href=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-46\" src=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane-300x180.png\" alt=\"Biplane 1\" width=\"300\" height=\"180\" srcset=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane-300x180.png 300w, https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/biplane.png 632w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Apple &#8211; Notice the Shiny spot thanks to Mr. Phong<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-44\" src=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/apple-300x290.png\" alt=\"Apple\" width=\"300\" height=\"290\" srcset=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/apple-300x290.png 300w, https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/apple.png 757w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>Bike<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-45\" src=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/bike-300x189.png\" alt=\"Bike\" width=\"300\" height=\"189\" srcset=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/bike-300x189.png 300w, https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/bike.png 568w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p>General &#8211; Very large and complex model<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-48\" src=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/general-159x300.png\" alt=\"General\" width=\"159\" height=\"300\" srcset=\"https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/general-159x300.png 159w, https:\/\/carson.fenimorefamily.com\/wp-content\/uploads\/2007\/10\/general.png 332w\" sizes=\"auto, (max-width: 159px) 100vw, 159px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is one of those projects that seems much cooler to the maker than the observer. Here I have a biplane. What makes it special is that it was rendered using Carson Fenimore&#8217;s 3D renderer. If you have never heard of it, that&#8217;s ok &#8211; that probably won&#8217;t change, even after I finalize things with &hellip; <a href=\"https:\/\/carson.fenimorefamily.com\/?p=43\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Fenisoft Scanline Renderer<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-43","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/posts\/43","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=43"}],"version-history":[{"count":1,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/posts\/43\/revisions"}],"predecessor-version":[{"id":192,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=\/wp\/v2\/posts\/43\/revisions\/192"}],"wp:attachment":[{"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=43"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=43"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/carson.fenimorefamily.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=43"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}