• Home
  • Raw
  • Download

Lines Matching full:program

64     program binary can be reloaded into the GL via ProgramBinaryOES.  This is a
69 application then compiles and links its shaders and reads back the program
70 binaries. On subsequent runs, only the program binaries need be supplied!
73 disposal -- program binaries generated online by the GL are interchangeable
82 vendor extensions as a standard method for loading offline-compiled program
93 relevant to wholesale program object replacement.
95 need to keep shader object state in sync with program object state.
96 - Explicit links during program object reload are no longer needed since
97 the program binary is pre-linked and ready to run.
98 - The number of API calls needed to load program objects is much fewer.
106 RESOLVED: No more than you do when using GLSL source shaders. A program
114 both GLSL source shaders and program binaries, causing them to run out of
116 shader program characteristics. An application need be concerned no more
117 with these issues when using program binaries than when using GLSL source
122 RESOLVED: Any shader objects attached to the program object at the time
126 The program binary retrieved by GetProgramBinaryOES is the one installed
133 attached to the program object when ProgramBinaryOES is called?
140 reason is switching back and forth between loading a program object with
141 program binaries, and loading it with compiled GLSL shaders.
146 loading program binaries. A vendor extension must also be present in order
155 needs to retrieve a program binary with an anonymous <binaryFormat> and
156 resupply that same <binaryFormat> when loading the program binary.
160 RESOLVED: Even if a program binary is successfully retrieved with
161 GetProgramBinaryOES and then in a future run the program binary is
163 the program binary load may still fail.
168 associated with the cached program binary, and INVALID_ENUM will be thrown
169 if the cached program binary format is passed into ProgramBinaryOES anyway.
171 Even if the cached program binary format is still valid, ProgramBinaryOES
173 signaling to the app that it needs to recompile and recache its program
178 attribute location used by the program binary?
182 and replaces any program binary loaded prior to LinkProgram. So there is no
183 mechanism to remap an attribute location after loading a program binary.
186 retrieving the program binary. By calling BindAttribLocation followed by
188 followed by a call to GetProgramBinaryOES, the retrieved program binary will
193 void GetProgramBinaryOES(uint program, sizei bufSize, sizei *length,
196 void ProgramBinaryOES(uint program, enum binaryFormat,
216 binaries, to directly load pre-linked program binaries, or to load the
219 Add section 2.15.4, Program Binaries
223 void GetProgramBinaryOES(uint program, sizei bufSize, sizei *length,
226 returns the program object's executable, henceforth referred to as its
227 program binary. The maximum number of bytes that may be written into
229 bytes in the program binary, then 0 is returned in <length>, and an
234 The number of bytes in the program binary can be queried by calling
235 GetProgramiv with <pname> PROGRAM_BINARY_LENGTH_OES. When a program
236 object's LINK_STATUS is FALSE, its program binary length is zero, and a call
241 void ProgramBinaryOES(uint program, enum binaryFormat,
244 loads a program object with a program binary previously returned from
249 be the length of the program binary as returned by GetProgramBinaryOES or
250 GetProgramiv with <pname> PROGRAM_BINARY_LENGTH_OES. The program binary
253 An implementation may reject a program binary if it determines the program
257 program binary for future use.
259 A program object's program binary is replaced by calls to LinkProgram or
260 ProgramBinaryOES. Either command sets the program object's LINK_STATUS to
266 that program object is lost. Thus, a failed load does not restore the old
267 state of <program>.
270 program object, as these shader objects are used only by LinkProgram.
273 return the number of program binary formats and the list of program binary
284 the program object, <program>, does not contain a valid program binary as
286 contain the entire program binary; or if the value of
291 (table 6.25, Program Object State) add the following:
295 PROGRAM_BINARY_LENGTH_OES Z+ GetProgramiv 0 Length of program binary 2.15.4
301 …PROGRAM_BINARY_FORMATS_OES 0+*Z GetIntegerv N/A Enumerated program binary format…
302 …NUM_PROGRAM_BINARY_FORMATS_OES Z GetIntegerv 0 Number of program binary formats…
322 // Create new shader/program objects and attach them together.
351 // Retrieve the binary from the program object
358 // Cache the program binary for future runs
389 // Read the program binary
400 // Load the binary into the program object -- no need to link!
410 // Something must have changed since the program binaries
412 // and then retrieve and cache new program binaries once again.
445 #05 01/08/2008 Benj Lipchak Clarify program object state after