| XXX - Not complete yet!!! |
| |
| Name |
| |
| SGIX_list_priority |
| |
| Name Strings |
| |
| GL_SGIX_list_priority |
| |
| Version |
| |
| $Date: 1996/05/30 08:00:32 $ $Revision: 1.3 $ |
| |
| Number |
| |
| 80 |
| |
| Dependencies |
| |
| None |
| |
| Overview |
| |
| This extension provides a mechanism for specifying the relative |
| importance of display lists. This information can be used by |
| an OpenGL implementation to guide the placement of display |
| list data in a storage hierarchy. |
| |
| Issues |
| |
| * Should we also add some hints to guide compilation strategies |
| For example a hint could give us the equivalent of the iris gl |
| compactify command. Generally hints could control compilation |
| speed versus memory consumption, degree of optimization, etc. |
| |
| yes, in another spec |
| |
| * Should we go ahead and add a ListParameter command rather than a |
| PrioritorizeList command just in case some other list attribute |
| needs to be added. Do we go ahead and finish the job with |
| f,i,iv functions? |
| |
| yes |
| |
| * Is 1.0 a reasonable default? |
| |
| * Should it be an SGI rather than SGIX extension? |
| |
| New Procedures and Functions |
| |
| ListParameterfSGIX(uint list, |
| enum pname, |
| float params; |
| |
| ListParameterfvSGIX(uint list, |
| enum pname, |
| float *params); |
| |
| ListParameteriSGIX(uint list, |
| enum pname, |
| int param); |
| |
| ListParameterivSGIX(uint list, |
| enum pname, |
| int *params); |
| |
| GetListParameterfvSGIX(uint list, |
| enum pname, |
| float *params); |
| |
| GetListParameterivSGIX(uint list, |
| enum pname, |
| int *params); |
| |
| New Tokens |
| |
| Accepted by the <pname> parameters of ListParameterfSGIX, |
| ListParameterfvSGIX, ListParameteriSGIX, ListParameterivSGIX, |
| GetListParameterfvSGIX, and GetListParameterivSGIX: |
| |
| LIST_PRIORITY_SGIX |
| |
| Additions to Chapter 2 of the 1.0 Specification (OpenGL Operation) |
| |
| None |
| |
| Additions to Chapter 3 of the 1.0 Specification (Rasterization) |
| |
| None |
| |
| Additions to Chapter 4 of the 1.0 Specification (Per-Fragment Operations |
| and the Frame Buffer) |
| |
| None |
| |
| Additions to Chapter 5 of the 1.0 Specification (Special Functions) |
| |
| Applications guide the OpenGL implementation in determining which |
| display lists should be favoured for fast execution by specifying |
| a priority for each display list. Calling ListParameterfSGIX, |
| ListParameterfvSGIX, ListParameteriSGIX, or ListParameterivSGIX |
| with <list> set to the display list, <pname> set to LIST_PRIORITY_SGIX, |
| sets the priority to the value in <params>. |
| The priority value is clamped to the range [0.0, 1.0] before it is |
| assigned. Zero indicates the lowest priority, and hence the least |
| likelihood of optimal execution. One indicates the highest priority, |
| and hence the greatest likelihood of optimal execution. |
| (Attempts attempts to prioritize nonlists are silently ignored. Attempts |
| to prioritize list 0 generates an INVALID_VALUE error.) |
| |
| The priority of a list can be queried by calling GetListParameterfvSGIX or |
| GetListParameterivSGIX with <list> set to the list and <pname> set to |
| LIST_PRIORITY_SGIX. If <list> is not defined than the value returned |
| is undefined. |
| |
| ListParameterfSGIX, ListParameterfvSGIX, ListParameteriSGIX, and |
| ListParameterivSGIX are not included in display lists. |
| |
| Additions to Chapter 6 of the 1.0 Specification (State and State Requests) |
| |
| None |
| |
| Additions to the GLX Specification |
| |
| TBD |
| |
| Errors |
| |
| INVALID_VALUE is generated if ListParameterfSGIX, ListParameterfvSGIX, |
| ListParameteriSGIX, ListParameterivSGIX, GetListParameterfvSGIX, or |
| GetListParameterivSGIX parameter <list> is 0. |
| |
| INVALID_ENUM is generated if ListParameterfSGIX, ListParameterfvSGIX, |
| ListParameteriSGIX, ListParameterivSGIX, GetListParameterfvSGIX, or |
| GetListParameterivSGIX parameter <pname> is not LIST_PRIORITY_SGIX. |
| |
| INVALID_OPERATION is generated if ListParameterfSGIX, ListParameterfvSGIX, |
| ListParameteriSGIX, ListParameterivSGIX, GetListParameterfvSGIX, or |
| GetListParameterivSGIX is called between execution of Begin and the |
| corresponding execution of End. |
| |
| New State |
| |
| Initial |
| Get Value Get Command Type Value Attrib |
| --------- ----------- ---- ------- ------ |
| LIST_PRIORITY_SGIX GetListParameterfvSGIX n x Z+ 1 - |
| |
| |
| New Implementation Dependent State |
| |
| None |