Pixar Image Computer: Difference between revisions
imported>Hunter Hutchins |
imported>DreamRimmer bot II m Bot: Implementing outcome of RfC: converting list-defined references from {{reflist|refs=…}} to <references>…</references> for VisualEditor compatibility |
||
| Line 1: | Line 1: | ||
{{Short description|Graphics designing computer by Pixar}} | {{Short description|Graphics designing computer by Pixar}} | ||
{{Use mdy dates|date=October 2025}} | |||
{{Use American English|date=October 2025}} | |||
{{Infobox information appliance | {{Infobox information appliance | ||
| name = Pixar Image Computer | | name = Pixar Image Computer | ||
| Line 16: | Line 18: | ||
| website = | | website = | ||
}} | }} | ||
The '''Pixar Image Computer''' is a graphics computer originally developed by the Graphics Group, the computer division of [[Lucasfilm]], which | The '''Pixar Image Computer''' is a graphics computer originally developed by the Graphics Group, the computer division of [[Lucasfilm]], which later became [[Pixar]]. Aimed at commercial and scientific high-end [[Visualization (graphic)|visualization]] markets, such as [[medicine]], [[geophysics]] and [[meteorology]], the original machine was advanced for its time, but sold poorly. | ||
== History == | == History == | ||
=== Creation === | === Creation === | ||
When [[George Lucas]] recruited people from [[New York Institute of Technology|NYIT]] in 1979 to start | When [[George Lucas]] recruited people from [[New York Institute of Technology|NYIT]] in 1979 to start Lucasfilm's Computer Division, the group was set to develop digital [[optical printing]], digital audio, digital [[non-linear editing]] and computer graphics.<ref name="AutoFZ-1" /> Computer graphics quality was just not good enough due to technological limitations at the time. The team then decided to solve the problem by starting a hardware project, building what they would call the Pixar Image Computer, a machine with more computational power that was able to produce images with higher resolution.<ref name="AutoFZ-2" /> | ||
=== Availability === | === Availability === | ||
About three months after their acquisition by [[Steve Jobs]] on February 3, 1986, the computer became commercially available for the first time, and was aimed at commercial and scientific high-end [[Visualization (graphic)|visualization]] markets, such as [[medical imaging]], [[Geophysical imaging|geophysics]], and [[meteorology]].<ref name="AutoFZ-3" /><ref>{{cite web| url=https://www.cnet.com/tech/tech-industry/steve-jobs-a-timeline/ |title=Steve Jobs: A timeline |website=[[CNet]] |date=5 October 2011 |author=CNet News Staff}}</ref> The machine sold for $135,000, but also required a $35,000 [[workstation]] from [[Sun Microsystems]] or [[Silicon Graphics]] (in total, {{Inflation|US|170000|1986|r=-4|fmt=eq}}). The original machine was well ahead of its time and generated many single sales, for labs and research.<ref name="Deutschman" /> However, the system did not sell in quantity. | About three months after their acquisition by [[Steve Jobs]] on February 3, 1986, the computer became commercially available for the first time, and was aimed at commercial and scientific high-end [[Visualization (graphic)|visualization]] markets, such as [[medical imaging]], [[Geophysical imaging|geophysics]], and [[meteorology]].<ref name="AutoFZ-3" /><ref>{{cite web| url=https://www.cnet.com/tech/tech-industry/steve-jobs-a-timeline/ |title=Steve Jobs: A timeline |website=[[CNet]] |date=5 October 2011 |author=CNet News Staff}}</ref> The machine sold for $135,000, but also required a $35,000 [[workstation]] from [[Sun Microsystems]] or [[Silicon Graphics]] (in total, {{Inflation|US|170000|1986|r=-4|fmt=eq}}). The original machine was well ahead of its time and generated many single sales, for labs and research.<ref name="Deutschman" /> However, the system did not sell in quantity. | ||
In 1987, Pixar redesigned the machine to create the P-II second generation machine, which sold for $30,000.<ref>{{cite book|last=Isaacson|first=Walter | author-link =Walter Isaacson|title=Steve Jobs|year=2011|publisher=[[Simon & Schuster]]|title-link=Steve Jobs (book) }}</ref> In an attempt to gain a foothold in the medical market, Pixar donated ten machines to leading hospitals and sent marketing people to doctors' conventions. However, this had little effect on sales, despite the machine's ability to render [[Computed axial tomography|CAT]] scan data in 3D. Pixar did get a contract with the manufacturer of CAT Scanners, which sold 30 machines. By 1988 Pixar had only sold 120 Pixar Image Computers.<ref name="Deutschman" /> | In 1987, Pixar redesigned the machine to create the P-II second generation machine, which sold for $30,000.<ref>{{cite book|last=Isaacson|first=Walter | author-link =Walter Isaacson|title=Steve Jobs|year=2011|publisher=[[Simon & Schuster]]|title-link=Steve Jobs (book) }}</ref> In an attempt to gain a foothold in the medical market, Pixar donated ten machines to leading hospitals and sent marketing people to doctors' conventions. However, this had little effect on sales, despite the machine's ability to render [[Computed axial tomography|CAT]] scan data in 3D. Pixar did get a contract with the manufacturer of CAT Scanners, which sold 30 machines. By 1988, Pixar had only sold 120 Pixar Image Computers.<ref name="Deutschman" /> | ||
In 1988, Pixar began the development of the PII-9, a nine-slot version of the low cost P-II. This machine was coupled with a very early [[RAID]] model,<ref>{{cite web|url=http://www.specktech.com/PixarImageComputer.html |title=Pixar Image Computer}}</ref> a high performance bus, a hardware image [[data compression|decompression]] card, 4 processors (called Chaps or channel processors), very large memory cards ([[VMEbus|VME]] sized card full of memory), high resolutions video cards with 10-bit [[Digital-to-analog converter|DACs]] which were programmable for a variety of frame rates and resolutions, and finally an overlay board which ran [[NeWS]], as well as the 9-slot chassis. A full-up system was quite expensive, as the 3 [[Gibibyte|GiB]] RAID was $300,000 alone. At this time in history most file systems could only address 2 GiB of disk space. This system was aimed at high-end government imaging applications, which were done by dedicated systems produced by the [[aerospace industry]] and which cost a million dollars a seat. The PII-9 and the associated software became the prototype of the next generation of commercial "low cost" workstations. | In 1988, Pixar began the development of the PII-9, a nine-slot version of the low-cost P-II. This machine was coupled with a very early [[RAID]] model,<ref>{{cite web|url=http://www.specktech.com/PixarImageComputer.html |title=Pixar Image Computer}}</ref> a high performance bus, a hardware image [[data compression|decompression]] card, 4 processors (called Chaps or channel processors), very large memory cards ([[VMEbus|VME]] sized card full of memory), high resolutions video cards with 10-bit [[Digital-to-analog converter|DACs]] which were programmable for a variety of frame rates and resolutions, and finally an overlay board which ran [[NeWS]], as well as the 9-slot chassis. A full-up system was quite expensive, as the 3 [[Gibibyte|GiB]] RAID was $300,000 alone. At this time in history, most file systems could only address 2 GiB of disk space. This system was aimed at high-end government imaging applications, which were done by dedicated systems produced by the [[aerospace industry]] and which cost a million dollars a seat. The PII-9 and the associated software became the prototype of the next generation of commercial "low cost" workstations. | ||
=== Demise and legacy === | === Demise and legacy === | ||
In 1990, the Pixar Image Computer was defining the state | In 1990, the Pixar Image Computer was defining the "state of the art" in commercial image processing.<ref name="FX Guide"/> Because the computers were too expensive to sell in large quantities, the decision to sell the hardware to Vicom Systems was the catalyst for Pixar to lay off its hardware engineers and sell the imaging business. Fewer than 300 Pixar Image Computers were ever sold.<ref name=":0">{{cite web |title=Pixar Image Computer |url=https://www.ricomputermuseum.org/collections-gallery/equipment/pixar-image-computer |archive-url=https://web.archive.org/web/20200309075156/https://www.ricomputermuseum.org/Home/equipment/pixar-image-computer |archive-date=9 March 2020 |website=Rhode Island Computer Museum}}</ref> | ||
{{quote| text="It was built to be part of a pipeline, but as we developed it we realized we were competing with [[Moore's law]] with CPU and we probably couldn't get far enough ahead of it to justify it so we actually stopped the hardware effort."| sign=[[Edwin_Catmull|Ed Catmull]], President of Pixar<ref>{{Cite web |url= https://www.fxguide.com/featured/pixars-renderman-turns-25/ |title= Pixar's RenderMan turns 25 |date= 25 July 2013 |access-date= 2019-04-21}}</ref> | source=|title=}} | {{quote| text="It was built to be part of a pipeline, but as we developed it we realized we were competing with [[Moore's law]] with CPU and we probably couldn't get far enough ahead of it to justify it so we actually stopped the hardware effort."| sign=[[Edwin_Catmull|Ed Catmull]], President of Pixar<ref name="FX Guide">{{Cite web |url= https://www.fxguide.com/featured/pixars-renderman-turns-25/ |title= Pixar's RenderMan turns 25 |date= 25 July 2013 |access-date= 2019-04-21}}</ref> | source=|title=}} | ||
The Pixar computer business was sold to Vicom Systems in 1990 for $2,000,000. Vicom Systems filed for [[Chapter 11]] within a year afterwards. | The Pixar computer business was sold to Vicom Systems in 1990<ref name=":0"/> for $2,000,000. Vicom Systems filed for [[Chapter 11]] within a year afterwards.{{citation needed|date=October 2025|reason=Source provided said the company went bankrupt, but does not specify what type of bankruptcy it was.}} | ||
Many of the lessons learned from the Pixar Image Computer made it into the Low Cost Workstation (LCWS) and Commercial Analyst Workstation (CAWS) program guidelines in the early and mid 1990s. The government mass deployment that drove the PII-9 development occurred in the late 1990s, in a program called Integrated Exploitation Capability (IEC). | Many of the lessons learned from the Pixar Image Computer made it into the Low Cost Workstation (LCWS) and Commercial Analyst Workstation (CAWS) program guidelines in the early and mid-1990s. The government{{clarification needed|date=October 2025}} mass deployment that drove the PII-9 development occurred in the late 1990s, in a program called Integrated Exploitation Capability (IEC).{{citation needed|date=October 2025}} | ||
== Design == | == Design == | ||
The P-II could have two Channel Processors, or Chaps. The chassis could hold 4 cards. The PII-9 could hold 9 cards (4 Chaps, 2 video processors, 2 Off Screen Memory (OSM) cards, and an Overlay Board for the [[NeWS]] windowing system). NeWS was extended to control the image pipeline for roaming, image comparison, and stereo image viewing. | The P-II could have two Channel Processors, or Chaps. The chassis could hold 4 cards. The PII-9 could hold 9 cards (4 Chaps, 2 video processors, 2 Off-Screen Memory (OSM) cards, and an Overlay Board for the [[NeWS]] windowing system). NeWS was extended to control the image pipeline for roaming, image comparison, and stereo image viewing. | ||
Each Chap is a 4-way parallel ([[RGBA color space|RGBA]]) image computer.<ref name="Levinthal" /> This was a [[SIMD]] architecture, which was good for imagery and video applications. It processed four image channels in parallel, one for red, one for green, one for blue, and one for the [[alpha channel]] (whose inventors have connections to Pixar).<ref name="AutoFZ-2" /><ref name="Porter" /> The Chaps did 16-bit integer arithmetic. | Each Chap is a 4-way parallel ([[RGBA color space|RGBA]]) image computer.<ref name="Levinthal" /> This was a [[SIMD]] architecture, which was good for imagery and video applications. It processed four image channels in parallel, one for red, one for green, one for blue, and one for the [[alpha channel]] (whose inventors have connections to Pixar).<ref name="AutoFZ-2" /><ref name="Porter" /> The Chaps did 16-bit integer arithmetic. | ||
| Line 48: | Line 50: | ||
== PXR File Format == | == PXR File Format == | ||
Pixar Image Computer | Pixar Image Computer uses the 'Pixar storage standard' PXR File format. PXR file have structure:<ref>Pixar Image Computer Users Manual v1.2 Dec 1986</ref> | ||
1. Header (512 bytes) | 1. Header (512 bytes) | ||
| Line 56: | Line 58: | ||
3. Picture data | 3. Picture data | ||
Origin of image is left top corner. All data in file use small endian byte order. | Origin of image is left top corner. All data in file use small-endian byte order. | ||
=== Header (512 bytes) === | === Header (512 bytes) === | ||
| Line 62: | Line 64: | ||
|- | |- | ||
! Offset (hex) | ! Offset (hex) | ||
! | ! Bytes | ||
! Field name | ! Field name | ||
! Description | ! Description | ||
|- | |- | ||
| 0 (0x0000) | | 0 (0x0000) | ||
| 4 | | 4 | ||
| file signature/magic number | | file signature/magic number | ||
| {{tt|0x80 0xe8 0x00 0x00}} | | {{tt|0x80 0xe8 0x00 0x00}} | ||
|- | |- | ||
| 4 (0x0004) | | 4 (0x0004) | ||
| 2 | | 2 | ||
| Version | | Version | ||
| File format version (only have version 0) | | File format version (only have version 0) | ||
|- | |- | ||
| 6 (0x0006) | | 6 (0x0006) | ||
| 246 | | 246 | ||
| Ascii description | | Ascii description | ||
| String for file description | | String for file description | ||
| Line 87: | Line 89: | ||
|- | |- | ||
| 256 (0x0100) | | 256 (0x0100) | ||
| 160 | | 160 | ||
| colspan=2 | Unused | | colspan=2 | Unused | ||
|- | |- | ||
| 416 (0x01a0) | | 416 (0x01a0) | ||
| 2 | | 2 | ||
| Picture height | | Picture height | ||
| Pixel height of whole picture | | Pixel height of whole picture | ||
|- | |- | ||
| 418 (0x01a2) | | 418 (0x01a2) | ||
| 2 | | 2 | ||
| Picture width | | Picture width | ||
| Pixel width of full picture | | Pixel width of full picture | ||
|- | |- | ||
| 420 (0x01a4) | | 420 (0x01a4) | ||
| 2 | | 2 | ||
| Tile height | | Tile height | ||
| Pixel height of each tile (≤ full picture height) | | Pixel height of each tile (≤ full picture height) | ||
|- | |- | ||
| 422 (0x01a6) | | 422 (0x01a6) | ||
| 2 | | 2 | ||
| Tile width | | Tile width | ||
| Pixel width of each tile (≤ full picture width) | | Pixel width of each tile (≤ full picture width) | ||
|- | |- | ||
| 424 (0x01a8) | | 424 (0x01a8) | ||
| 2 | | 2 | ||
| Picture format | | Picture format | ||
| 4 bits for | | 4 bits for which channel is in file: <code>R</code> = bit 0, <code>G</code> = bit 1, <code>B</code> = bit 2, <code>A</code> = bit 3; 4 low bits in low byte. | ||
|- | |- | ||
| 426 (0x01aa) | | 426 (0x01aa) | ||
| 2 | | 2 | ||
| Picture storage | | Picture storage | ||
| | | <code>0</code> = 8-bit encoded, <code>1</code> = 12 bit encoded, <code>2</code> = 8 bit dumped, <code>3</code> = 12 bit dumped | ||
|- | |- | ||
| 428 (0x01ac) | | 428 (0x01ac) | ||
| 2 | | 2 | ||
| Blocking factor | | Blocking factor | ||
| Optimum disk transfer chunk | | Optimum disk transfer chunk | ||
|- | |- | ||
| 430 (0x01ae) | | 430 (0x01ae) | ||
| 2 | | 2 | ||
| Alpha mode | | Alpha mode | ||
| | | <code>0</code> = matted-to-black (pre multiply), <code>1</code> = unassociated | ||
|- | |- | ||
| 432 (0x01b0) | | 432 (0x01b0) | ||
| 2 | | 2 | ||
| x offset | | x offset | ||
| x offset for picture | | x offset for picture | ||
|- | |- | ||
| 434 (0x01b2) | | 434 (0x01b2) | ||
| 2 | | 2 | ||
| y offset | | y offset | ||
| y offset for picture | | y offset for picture | ||
|- | |- | ||
| 436 (0x01b4) | | {{nowrap|436 (0x01b4)}} | ||
| 76 | | 76 | ||
| colspan=2 |Unused | | colspan=2 |Unused | ||
|} | |} | ||
| Line 171: | Line 173: | ||
and y direction: | and y direction: | ||
1 + (pictureHeight − 1)/tileHeight | 1 + (pictureHeight − 1)/tileHeight | ||
Tile order is sweep from left to right, from top to bottom; first tile 0 is at left top of picture and last tile (totalNumberTiles − 1) is at right bottom of image. | Tile order is sweep from left to right, from top to bottom; first tile 0 is at left top of picture and last tile (totalNumberTiles − 1) is at right bottom of image. | ||
| Line 178: | Line 180: | ||
Picture storage (at 2 bytes at byte 426 from start of file) can have values: | Picture storage (at 2 bytes at byte 426 from start of file) can have values: | ||
1. 0 - 8 bit channels encoded | 1. 0 - 8-bit channels encoded | ||
2. 1 - 12 bit channels encoded | 2. 1 - 12-bit channels encoded | ||
3. 2 - 8 bit channels dumped | 3. 2 - 8-bit channels dumped | ||
4. 3 - 12 bit channels dumped | 4. 3 - 12-bit channels dumped | ||
Dumped tiles store pixel data direct with order RGBA (4 channels), RGB (3 channels), or R (1 channel, grey image) for whole tile and no have extra byte or mark show end of scan line. Encoded tiles use packets for store image data. Each packet have 2 byte header and encoded pixel data after. Two byte header have flag and count for packet, flag is 4 low bits of byte 2, count is top 4 bits of byte 2 (top bits) combine with 8 bits of byte 1 (low bits) create 12 bit count. Flag have values: | Dumped tiles store pixel data direct with order RGBA (4 channels), RGB (3 channels), or R (1 channel, grey image) for whole tile and no have extra byte or mark show end of scan line. Encoded tiles use packets for store image data. Each packet have 2 byte header and encoded pixel data after. Two byte header have flag and count for packet, flag is 4 low bits of byte 2, count is top 4 bits of byte 2 (top bits) combine with 8 bits of byte 1 (low bits) create 12 bit count. Flag have values: | ||
| Line 233: | Line 235: | ||
=== Pixar 12 bit pixel format === | === Pixar 12 bit pixel format === | ||
Pixar Image Computer and PXR use special 12 bit fix point format have range [-1.5; 2.5), with 10 bits of precision (the documentation describes the range as [-0.5; 1.5) plus an "overflow bit").<ref>http://www.bitsavers.org/pdf/pixar/Pixar_Image_Computer_Users_Manual_v1.2_Dec1986.pdf</ref> | Pixar Image Computer and PXR use special 12 bit fix point format have range [-1.5; 2.5), with 10 bits of precision (the documentation describes the range as [-0.5; 1.5) plus an "overflow bit").<ref>{{Cite web |date=1986-12-02 |title=Pixar User's Manual |url=http://www.bitsavers.org/pdf/pixar/Pixar_Image_Computer_Users_Manual_v1.2_Dec1986.pdf |website=www.bitsavers.org}}</ref> | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 257: | Line 259: | ||
|} | |} | ||
=== 16 bit coefficient values === | === 16-bit coefficient values === | ||
Pixar Image Computer also | Pixar Image Computer also has special 16-bit fixed-point data type (for mảtix value, etc.) have name 'coefficient' with range [-2.0; 2.0) and 14 bits of precision. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 303: | Line 305: | ||
== References == | == References == | ||
<references> | |||
<ref name="AutoFZ-1">{{cite web|url=http://insidemovies.ew.com/2011/06/16/pixar-john-lasseter-burton/|title=John Lasseter on Pixar's early days -- and how 'Toy Story' couldn't have happened without Tim Burton|work=Entertainment Weekly's EW.com|access-date=22 April 2015}}</ref> | <ref name="AutoFZ-1">{{cite web|url=http://insidemovies.ew.com/2011/06/16/pixar-john-lasseter-burton/|title=John Lasseter on Pixar's early days -- and how 'Toy Story' couldn't have happened without Tim Burton|work=Entertainment Weekly's EW.com|access-date=22 April 2015}}</ref> | ||
<ref name="AutoFZ-2">{{cite web|url=https://johncelestri.blogspot.com/2011/09/new-york-institute-of-technology-popeye.html|title=John The Animator Guy|author=John Celestri|work=johncelestri.blogspot.com|date=3 September 2011|access-date=22 April 2015}} {{sps|date=January 2024}}</ref> | <ref name="AutoFZ-2">{{cite web|url=https://johncelestri.blogspot.com/2011/09/new-york-institute-of-technology-popeye.html|title=John The Animator Guy|author=John Celestri|work=johncelestri.blogspot.com|date=3 September 2011|access-date=22 April 2015}} {{sps|date=January 2024}}</ref> | ||
| Line 309: | Line 311: | ||
<ref name="Deutschman">{{cite book | title = The second coming of Steve Jobs | last = Deutschman | first = Alan | year = 2000 | publisher = Broadway Books | location = New York | isbn = 0-7679-0432-X | pages = [https://archive.org/details/secondcomingofst00deut/page/118 118–21] | url-access = registration | url = https://archive.org/details/secondcomingofst00deut/page/118 }}</ref> | <ref name="Deutschman">{{cite book | title = The second coming of Steve Jobs | last = Deutschman | first = Alan | year = 2000 | publisher = Broadway Books | location = New York | isbn = 0-7679-0432-X | pages = [https://archive.org/details/secondcomingofst00deut/page/118 118–21] | url-access = registration | url = https://archive.org/details/secondcomingofst00deut/page/118 }}</ref> | ||
<ref name="Levinthal">{{ Cite conference <!-- Citation bot no --> | first1 = Adam | last1 = Levinthal | first2 = Pat | last2 = Hanrahan | first3 = Mike | last3 = Paquette | first4 = Jim | last4 = Lawson | title = Proceedings of the second international conference on Architectural support for programming languages and operating systems | chapter = Parallel computers for graphics applications | volume = 15 | issue = 5 | publisher = ACM SIGARCH/SIGPLAN/SIGOPS | location = Palo Alto, CA | date = October 1987 | pages = 193–8| doi = 10.1145/36206.36202 | isbn = 0818608056 | s2cid = 18834615 | doi-access = free| editor=Randy Katz }}</ref> | <ref name="Levinthal">{{ Cite conference <!-- Citation bot no --> | first1 = Adam | last1 = Levinthal | first2 = Pat | last2 = Hanrahan | first3 = Mike | last3 = Paquette | first4 = Jim | last4 = Lawson | title = Proceedings of the second international conference on Architectural support for programming languages and operating systems | chapter = Parallel computers for graphics applications | volume = 15 | issue = 5 | publisher = ACM SIGARCH/SIGPLAN/SIGOPS | location = Palo Alto, CA | date = October 1987 | pages = 193–8| doi = 10.1145/36206.36202 | isbn = 0818608056 | s2cid = 18834615 | doi-access = free| editor=Randy Katz }}</ref> | ||
<ref name="Porter">{{cite conference <!-- Citation bot no --> |last=Porter|first=Thomas|author2=Tom Duff|title=Proceedings of the 11th annual conference on Computer graphics and interactive techniques |chapter=Compositing digital images |author-link=Thomas Porter (Pixar)|author-link2=Tom Duff|year=1984|journal=Computer Graphics|volume=18|issue=3|pages=253–259|doi=10.1145/800031.808606|isbn=0-89791-138-5|s2cid=18663039 |chapter-url=https://dl.acm.org/doi/pdf/10.1145/800031.808606}}<br>(Available at [https://graphics.pixar.com/library/Compositing/ pixar.com.])</ref> | <ref name="Porter">{{cite conference <!-- Citation bot no --> |last=Porter|first=Thomas|author2=Tom Duff|title=Proceedings of the 11th annual conference on Computer graphics and interactive techniques |chapter=Compositing digital images |author-link=Thomas Porter (Pixar)|author-link2=Tom Duff|year=1984|journal=Computer Graphics|volume=18|issue=3|pages=253–259|doi=10.1145/800031.808606|isbn=0-89791-138-5|s2cid=18663039 |chapter-url=https://dl.acm.org/doi/pdf/10.1145/800031.808606}}<br />(Available at [https://graphics.pixar.com/library/Compositing/ pixar.com.])</ref> | ||
<ref name="AutoFZ-6">{{Cite periodical |url=https://design.osu.edu/carlson/history/PDFs/pixar-image-processor.pdf |title=Pixar Goes Commercial in a new Market|access-date=2011-10-29 |archive-url=https://web.archive.org/web/20120113091718/https://design.osu.edu/carlson/history/PDFs/pixar-image-processor.pdf |archive-date=2012-01-13 |url-status=dead |magazine=Computer Graphics World |author=Barbara Robertson |date= June 1986 |pages=61–70 }}</ref> | <ref name="AutoFZ-6">{{Cite periodical |url=https://design.osu.edu/carlson/history/PDFs/pixar-image-processor.pdf |title=Pixar Goes Commercial in a new Market|access-date=2011-10-29 |archive-url=https://web.archive.org/web/20120113091718/https://design.osu.edu/carlson/history/PDFs/pixar-image-processor.pdf |archive-date=2012-01-13 |url-status=dead |magazine=Computer Graphics World |author=Barbara Robertson |date= June 1986 |pages=61–70 }}</ref> | ||
</references> | |||
== External links == | == External links == | ||
Latest revision as of 06:23, 18 December 2025
Template:Short description Template:Use mdy dates Template:Use American English Template:Infobox information appliance The Pixar Image Computer is a graphics computer originally developed by the Graphics Group, the computer division of Lucasfilm, which later became Pixar. Aimed at commercial and scientific high-end visualization markets, such as medicine, geophysics and meteorology, the original machine was advanced for its time, but sold poorly.
History
Creation
When George Lucas recruited people from NYIT in 1979 to start Lucasfilm's Computer Division, the group was set to develop digital optical printing, digital audio, digital non-linear editing and computer graphics.[1] Computer graphics quality was just not good enough due to technological limitations at the time. The team then decided to solve the problem by starting a hardware project, building what they would call the Pixar Image Computer, a machine with more computational power that was able to produce images with higher resolution.[2]
Availability
About three months after their acquisition by Steve Jobs on February 3, 1986, the computer became commercially available for the first time, and was aimed at commercial and scientific high-end visualization markets, such as medical imaging, geophysics, and meteorology.[3][4] The machine sold for $135,000, but also required a $35,000 workstation from Sun Microsystems or Silicon Graphics (in total, Expression error: Unrecognized punctuation character "[".). The original machine was well ahead of its time and generated many single sales, for labs and research.[5] However, the system did not sell in quantity.
In 1987, Pixar redesigned the machine to create the P-II second generation machine, which sold for $30,000.[6] In an attempt to gain a foothold in the medical market, Pixar donated ten machines to leading hospitals and sent marketing people to doctors' conventions. However, this had little effect on sales, despite the machine's ability to render CAT scan data in 3D. Pixar did get a contract with the manufacturer of CAT Scanners, which sold 30 machines. By 1988, Pixar had only sold 120 Pixar Image Computers.[5]
In 1988, Pixar began the development of the PII-9, a nine-slot version of the low-cost P-II. This machine was coupled with a very early RAID model,[7] a high performance bus, a hardware image decompression card, 4 processors (called Chaps or channel processors), very large memory cards (VME sized card full of memory), high resolutions video cards with 10-bit DACs which were programmable for a variety of frame rates and resolutions, and finally an overlay board which ran NeWS, as well as the 9-slot chassis. A full-up system was quite expensive, as the 3 GiB RAID was $300,000 alone. At this time in history, most file systems could only address 2 GiB of disk space. This system was aimed at high-end government imaging applications, which were done by dedicated systems produced by the aerospace industry and which cost a million dollars a seat. The PII-9 and the associated software became the prototype of the next generation of commercial "low cost" workstations.
Demise and legacy
In 1990, the Pixar Image Computer was defining the "state of the art" in commercial image processing.[8] Because the computers were too expensive to sell in large quantities, the decision to sell the hardware to Vicom Systems was the catalyst for Pixar to lay off its hardware engineers and sell the imaging business. Fewer than 300 Pixar Image Computers were ever sold.[9]
The Pixar computer business was sold to Vicom Systems in 1990[9] for $2,000,000. Vicom Systems filed for Chapter 11 within a year afterwards.Script error: No such module "Unsubst".
Many of the lessons learned from the Pixar Image Computer made it into the Low Cost Workstation (LCWS) and Commercial Analyst Workstation (CAWS) program guidelines in the early and mid-1990s. The governmentTemplate:Clarification needed mass deployment that drove the PII-9 development occurred in the late 1990s, in a program called Integrated Exploitation Capability (IEC).Script error: No such module "Unsubst".
Design
The P-II could have two Channel Processors, or Chaps. The chassis could hold 4 cards. The PII-9 could hold 9 cards (4 Chaps, 2 video processors, 2 Off-Screen Memory (OSM) cards, and an Overlay Board for the NeWS windowing system). NeWS was extended to control the image pipeline for roaming, image comparison, and stereo image viewing.
Each Chap is a 4-way parallel (RGBA) image computer.[10] This was a SIMD architecture, which was good for imagery and video applications. It processed four image channels in parallel, one for red, one for green, one for blue, and one for the alpha channel (whose inventors have connections to Pixar).[2][11] The Chaps did 16-bit integer arithmetic.
The memory for images only stored 12 bits per color channel (or 48 bits per pixel).[9] 4 bits of extra precision were added to the end when loaded into the Chaps.
A Unix host machine was generally needed to operate it (to provide a keyboard and mouse for user input). The system could communicate image data externally over an 80M per second "Yapbus" or a 2M per second multibus to other hosts, data sources, or disks, and had a performance measured equivalent to 200 VUPS, or 200 times the speed of a VAX-11/780.[12]Template:For what?
PXR File Format
Pixar Image Computer uses the 'Pixar storage standard' PXR File format. PXR file have structure:[13]
1. Header (512 bytes)
2. Tile pointer table (8 × numberTiles bytes)
3. Picture data
Origin of image is left top corner. All data in file use small-endian byte order.
Header (512 bytes)
| Offset (hex) | Bytes | Field name | Description |
|---|---|---|---|
| 0 (0x0000) | 4 | file signature/magic number | Template:Tt |
| 4 (0x0004) | 2 | Version | File format version (only have version 0) |
| 6 (0x0006) | 246 | Ascii description | String for file description |
| 252 (0x00fc) | 4 | Label Pointer | For continue label if need label longer than 246 bytes. Pointer address from start of file. |
| 256 (0x0100) | 160 | Unused | |
| 416 (0x01a0) | 2 | Picture height | Pixel height of whole picture |
| 418 (0x01a2) | 2 | Picture width | Pixel width of full picture |
| 420 (0x01a4) | 2 | Tile height | Pixel height of each tile (≤ full picture height) |
| 422 (0x01a6) | 2 | Tile width | Pixel width of each tile (≤ full picture width) |
| 424 (0x01a8) | 2 | Picture format | 4 bits for which channel is in file: R = bit 0, G = bit 1, B = bit 2, A = bit 3; 4 low bits in low byte.
|
| 426 (0x01aa) | 2 | Picture storage | 0 = 8-bit encoded, 1 = 12 bit encoded, 2 = 8 bit dumped, 3 = 12 bit dumped
|
| 428 (0x01ac) | 2 | Blocking factor | Optimum disk transfer chunk |
| 430 (0x01ae) | 2 | Alpha mode | 0 = matted-to-black (pre multiply), 1 = unassociated
|
| 432 (0x01b0) | 2 | x offset | x offset for picture |
| 434 (0x01b2) | 2 | y offset | y offset for picture |
| 436 (0x01b4) | 76 | Unused | |
Tile pointer table (8 × numberTiles bytes)
The tile pointer table starts at byte 512 from the start of the file and has 1+ tile pointers.
| 512 (0x200) | Tile pointer 1 | Address of tile 0 (4 bytes) | Length of tile 0 data (4 bytes) |
|---|---|---|---|
| 520 (0x208) | Tile pointer 2 | Address of tile 1 (4 bytes) | Length of tile 1 data (4 bytes) |
| ... | ... | ... | ... |
To calculate the number of tiles for x direction:
1 + (pictureWidth − 1)/tileWidth
and y direction:
1 + (pictureHeight − 1)/tileHeight
Tile order is sweep from left to right, from top to bottom; first tile 0 is at left top of picture and last tile (totalNumberTiles − 1) is at right bottom of image.
Dumped & Encoded Pixel Data
Picture storage (at 2 bytes at byte 426 from start of file) can have values:
1. 0 - 8-bit channels encoded 2. 1 - 12-bit channels encoded 3. 2 - 8-bit channels dumped 4. 3 - 12-bit channels dumped
Dumped tiles store pixel data direct with order RGBA (4 channels), RGB (3 channels), or R (1 channel, grey image) for whole tile and no have extra byte or mark show end of scan line. Encoded tiles use packets for store image data. Each packet have 2 byte header and encoded pixel data after. Two byte header have flag and count for packet, flag is 4 low bits of byte 2, count is top 4 bits of byte 2 (top bits) combine with 8 bits of byte 1 (low bits) create 12 bit count. Flag have values:
| Flag | Count | RGBA | RGB | R | comment |
|---|---|---|---|---|---|
| 0 | no use | end of disk block | |||
| 1 | use | RGBA RGBA ... | RGB RGB ... | R ... | full channel dump |
| 2 | use | λRGBA λRGBA ... | λRGB λRGB ... | λR λR ... | full channel run |
| 3 | use | A RGB RGB ... | no use | no use | partial channel dump |
| 4 | use | A λRGB λRGB ... | no use | no use | partial channel run |
For flag value 1 and 3, count is p - 1 number of pixels dumped in packet. For flag value 2 and 4, count is n - 1 number of run lengths in packet, λ is 1 byte (8 bits) store p - 1 number times repeat same pixel. Flag value 3 and 4 only use one A value for that packet and store only RGBA (4 channels) data. One packet never store pixel data from different scan lines but each scan line can use different/any flag.
Pixar 12 bit pixel format
Pixar Image Computer and PXR use special 12 bit fix point format have range [-1.5; 2.5), with 10 bits of precision (the documentation describes the range as [-0.5; 1.5) plus an "overflow bit").[14]
| Bits | Value | Overflow |
|---|---|---|
| 1010 0000 0000 | −1.5 | Y |
| 1100 0000 0000 | −1.0 | Y |
| 1110 0000 0000 | −0.5 | |
| 0000 0000 0000 | 0 | |
| 0010 0000 0000 | 0.5 | |
| 0100 0000 0000 | 1.0 | |
| 0110 0000 0000 | 1.5 | Y |
| 1000 0000 0000 | 2.0 | Y |
| 1001 1111 1111 | 2.4995... | Y |
16-bit coefficient values
Pixar Image Computer also has special 16-bit fixed-point data type (for mảtix value, etc.) have name 'coefficient' with range [-2.0; 2.0) and 14 bits of precision.
| bits | value |
|---|---|
| 1000 0000 0000 0000 | -2.0 |
| 1010 0000 0000 0000 | -1.5 |
| 1100 0000 0000 0000 | -1.0 |
| 1110 0000 0000 0000 | -0.5 |
| 1111 1111 1111 1111 | -0.00006103515625 |
| 0000 0000 0000 0000 | 0.0 |
| 0010 0000 0000 0000 | 0.5 |
| 0100 0000 0000 0000 | 1.0 |
| 0110 0000 0000 0000 | 1.5 |
| 0111 1111 1111 1111 | 1.99993896484375 |
Use
Script error: No such module "Unsubst". In the early 1990s, the Pixar Computer was used for medical imaging, including MRI and CT scans at Georgetown University[9] and mammography at University of California.[15]
Walt Disney Feature Animation, whose parent company later purchased Pixar in 2006,[16] used dozens of the Pixar Image Computers for their Computer Animation Production System (CAPS) and was using them in production up through Pocahontas in 1995.Script error: No such module "Unsubst".
References
- ↑ Script error: No such module "citation/CS1".
- ↑ a b Script error: No such module "citation/CS1". Template:Sps
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ a b Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Cite error: Script error: No such module "Namespace detect".Script error: No such module "Namespace detect".
- ↑ a b c d Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
(Available at pixar.com.) - ↑ Template:Cite periodical
- ↑ Pixar Image Computer Users Manual v1.2 Dec 1986
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".