Warnock algorithm


The Warnock algorithm is a hidden surface algorithm invented by John Warnock that is typically used in the field of computer graphics.[1] It solves the problem of rendering a complicated image by recursive subdivision of a scene until areas are obtained that are trivial to compute. In other words, if the scene is simple enough to compute efficiently then it is rendered; otherwise it is divided into smaller parts which are likewise tested for simplicity.[2]
This is a divide and conquer algorithm with run-time of [dubious – discuss], where n is the number of polygons and p is the number of pixels in the viewport.
The inputs are a list of polygons and a viewport. The best case is that if the list of polygons is simple, then draw the polygons in the viewport. Simple is defined as one polygon (then the polygon or its part is drawn in appropriate part of a viewport) or a viewport that is one pixel in size (then that pixel gets a color of the polygon closest to the observer). The continuous step is to split the viewport into 4 equally sized quadrants and to recursively call the algorithm for each quadrant, with a polygon list modified such that it only contains polygons that are visible in that quadrant.
Warnock expressed his algorithm in words and pictures, rather than software code, as the core of his PhD thesis, which also described protocols for shading oblique surfaces and other features that are now the core of 3-dimensional computer graphics. The entire thesis was only 26 pages from Introduction to Bibliography.
References
- ^ Warnock, John (1969). A hidden surface algorithm for computer generated halftone pictures (Thesis). University of Utah.
The algorithm was Warnock's doctoral thesis.
, 32 pages
Also: http://www.codersnotes.com/notes/warnock-subdivision-for-deferred-lighting/warnock.pdf - ^ Daintith, John; Wright, Edmund (2009). Oxford Dictionary of Computing. Oxford University Press. ISBN 978-0-19-923400-4., 608 pages
External links
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.