Lines Matching refs:transform
44 capabilities to these extensions, making transform feedback mode
47 First, it provides transform feedback objects encapsulating transform
49 transform feedback configuration in a single bind call. Second, it
50 provides the ability to pause and resume transform feedback operations.
51 When transform feedback is paused, applications may render without
52 transform feedback or may use transform feedback with different state and
53 a different transform feedback object. When transform feedback is
58 captured in transform feedback mode without querying the captured
61 captured to buffer objects during the last transform feedback capture
62 operation on the transform feedback object used. This draw operation only
97 In transform feedback mode, attributes of the vertices of transformed
109 state are stored in a transform feedback object. If a vertex or geometry
110 shader is active, the set of attributes captured in transform feedback
112 otherwise, it taken from the state of the currently bound transform
113 feedback object, as described below. The name space for transform
115 default transform feedback object.
117 A transform feedback object is created by calling
122 transform feedback object name. The resulting transform feedback object
125 vector and is used for subsequent transform feedback operations.
127 BindTransformFeedbackNV can also be used to bind an existing transform
129 successful, no change is made to the state of the newly bound transform
132 While a transform feedback buffer object is bound, GL operations on the
133 target to which it is bound affect the bound transform feedback object,
134 and queries of the target to which a transform feedback object is bound
136 transform feedback, they are attached to the currently bound transform
137 feedback object. Buffer objects are used for transform feedback only if
138 they are attached to the currently bound transform feedback object.
140 In the initial state, a default transform feedback object is bound, and
141 treated as a transform feedback object with a name of zero. That object
145 a transform feedback operation is active on the currently bound transform
152 <ids> contains <n> names of transform feedback objects to be deleted.
153 After a transform feedback object is deleted it has no contents, and its
155 the value zero. The default transform feedback object cannot be deleted.
157 the transform feedback operation for any object named by <ids> is
164 returns <n> previously unused transform feedback object names in <ids>.
166 GenTransformFeedbacksNV only, but they acquire transform feedback state
172 Transform feedback for the currently bound transform feedback object is
188 into the buffer objects bound for transform feedback (see below).
191 generated by BeginTransformFeedbackEXT if transform feedback is active,
192 and by EndTransformFeedbackEXT if transform feedback is inactive.
195 Transform feedback operations for the currently bound transform feedback
204 respectively. When transform feedback operations are paused, transform
205 feedback is still considered active and changing most transform feedback
206 state related to the object results in an error. However, a new transform
207 feedback object may be bound while transform feedback is paused. The
209 currently bound transform feedback is not active or is paused. The error
211 currently bound transform feedback is not active or is not paused.
213 When transform feedback is active and not paused, all geometric primitives
220 Any primitive type may be used while transform feedback is paused.
231 Table X.1 Legal combinations between the transform feedback primitive
242 Buffer objects are made to be targets of transform feedback by calling one
254 buffer object binding points that are used while transform feedback is
265 written to the buffer object while transform feedback mode is active.
274 The set of buffer objects used by a transform feedback object may not
275 change while transform feedback is active. The error INVALID_OPERATION is
277 if <target> is TRANSFORM_FEEDBACK_BUFER_EXT and transform feedback is
281 transform feedback stage while transform feedback is active and not
285 to the buffer objects bound to the transform feedback binding points. The
299 When transform feedback is paused, no vertices are recorded. When
300 transform feedback is resumed, subsequent vertices are appended to the
302 transform feedback was paused.
304 When quads and polygons are provided to transform feedback with a
314 interleaved, into the buffer object bound to the first transform feedback
322 vertex attribute specified is written to the first transform feedback
324 transform feedback binding points. The total number of variables or
329 for transform feedback purposes would result in either exceeding the
337 In either separate or interleaved modes, all transform feedback binding
341 transform feedback mode does not have a buffer object bound. In
349 removed; there is no support for transform feedback on fixed-function or
354 transform feedback-related state)
358 captured during transform feedback is taken from the active program object
359 and may not be changed while transform feedback is active. That program
361 while the transform feedback object is paused. If no vertex or geometry
368 current transform feedback object is active, even if paused;
370 * by UseProgram if the current transform feedback object is active and
374 or more transform feedback objects, even if the objects are not
378 current transform feedback object is not active.
383 When transform feedback is active, the values of varyings or transformed
385 current transform feedback object. After transform feedback is complete,
387 objects (section 2.9). The number of vertices captured during transform
388 feedback is stored in the corresponding transform feedback object and may
395 to the number of vertices captured the last time transform feedback was
396 active on the transform feedback object named by <id>. The error
397 INVALID_VALUE is generated if <id> is not the name of a transform feedback
400 <id> was bound. No error is generated if the transform feedback object
434 returns TRUE if <id> is the name of a transform feedback object. If <id>
435 is a non-zero value that is not the name of a transform feedback object,
463 a transform feedback operation is active on the currently bound transform
467 the transform feedback operation for any object named by <ids> is
471 transform feedback is active.
474 transform feedback is inactive.
477 the currently bound transform feedback is not active or is paused.
480 the currently bound transform feedback is not active or is not paused.
483 implicitly calls Begin (such as DrawElements) if transform feedback is
501 TRANSFORM_FEEDBACK_BUFFER_EXT and transform feedback is currently active.
504 any binding point used in transform feedback mode does not have a buffer
508 TransformFeedbackAttribsNV if the current transform feedback object is
512 transform feedback object is active and not paused.
515 the name of a program being used by one or more transform feedback
519 the program object being used by the current transform feedback object is
523 not the name of a transform feedback object.
539 ATTRIBS_NV capture in transform
543 transform feedback.
548 BUFFER_BINDING_NV IndexedvEXT each transform feedback
551 BUFFER_START_NV IndexedvEXT range for each transform
554 BUFFER_SIZE_NV IndexedvEXT for each transform
555 TRANSFORM_FEEDBACK_ B GetBooleanv FALSE Is transform feedback 6.1.13 -
557 TRANSFORM_FEEDBACK_ B GetBooleanv FALSE Is transform feedback 6.1.13 -
560 [[ Note: This table includes all transform feedback state provided by
561 NV_transform_feedback, except for transform feedback-related state
563 transform feedback-related state not present in these objects is the
570 TRANSFORM_FEEDBACK_ Z+ GetIntegerv 0 Object bound for transform 2.Y -
580 captured in transform feedback mode?
582 RESOLVED: Adding a new transform feedback state object provides
586 When applications pause and possibly switch to different transform
588 transform feedback operation somewhere. The transform feedback object
589 provides a convenient entity to hold this saved state. The transform
593 Additionally, the transform feedback object is helpful in ensuring
594 that the transform feedback state used when resuming transform
597 transform feedback is active (even when paused), so the state can't
599 apply to transform feedback state stored separately in a GLSL program
600 object; you can't change them while transform feedback is active in
604 Alternately, the in-progress transform feedback state (e.g., vertex
608 2. Are transform feedback objects shared between contexts?
612 multiple copies through sharing. Additionally, sharing transform
619 the primary type of object used in the original transform feedback
622 3. How do the new transform feedback objects interact with GLSL program
625 RESOLVED: The set of varyings captured during transform feedback and
633 while transform feedback is active. The same basic restrictions apply
635 program object while transform feedback is paused. In order to resume
636 transform feedback, the same program object must be active.
638 varyings while it is being actively used for capture in any transform
641 The actual buffer objects bound in transform feedback mode were bound
642 to the context (not the program object) in the original transform
645 4. How do the new transform feedback objects interact with fixed-function
648 RESOLVED: All the state used for transform feedback for
651 the new object. If you switch transform feedback objects, you will
655 5. Should we provide any behavior to "cancel" paused transform feedback
661 transform feedback operation, even if it is currently paused.
663 6. Should buffer object bindings be encapsulated in the new transform
667 all the transform feedback state in one call. Additionally, it
669 transform feedback is active -- even if we switch objects while
672 7. Should we be able to use two different sets of transform feedback
677 in transform feedback that are produced by DrawTransformFeedbackNV.
678 Requiring that applications use the a single transform feedback object
683 8. How should the second transform feedback object used for rendering be
687 DrawTransformFeedbackNV() accept a transform feedback object ID.
693 9. Can a single transform feedback object be used for both capture and
699 when the previous transform feedback operation on that object
700 completes (by an EndTransformFeedbackNV call). If transform feedback
706 from the previous transform feedback operation? If not, does it
712 transform feedback against the inputs of a different vertex shader.
717 written to during the previous transform feedback operation, and are
720 information the draw call uses from the previous transform feedback
725 transform feedback operation?
729 12. What happens on if DrawTransformFeedbackNV() uses a transform feedback
733 RESOLVED: Any primitives discarded during a transform feedback
737 13. How does the ability to pause/resume transform feedback interact with
742 The transform feedback-related query objects and transform feedback
743 objects are completely independent. If multiple transform feedback
745 result reflects the number of primitives written using *any* transform
749 transform feedback is paused, because no primitives will be written to
750 buffers while transform feedback is paused.
753 primitives recorded in the last transform feedback operation on a
754 given transform feedback object? If so, how?
759 15. Can a buffer object be attached to more than one transform feedback
762 RESOLVED: Yes. Applications using transform feedback should avoid
763 cases where transform feedback operations can conflict, including:
769 is written using one transform feedback object while another
770 transform feedback operation writing to an overlapping region of
773 16. When a transform feedback object is active and not paused, binding a
774 different transform feedback object without pausing is specified to
779 they have interaction issues with the current transform feedback API.
781 In particular, transform feedback forbids applications from changing
782 various pieces of relevant state (e.g., transform feedback buffer
783 bindings, active GLSL program object) during an active transform
785 while transform feedback is paused, but it must be restored prior to
788 Consider two active transform feedback objects (A and B) using two
792 // Perform first half of transform feedback for object A.
799 // Perform first half of transform feedback for object B.
806 // Perform second half of transform feedback for object A.
813 // Perform second half of transform feedback for object B.
824 UseProgram(C) is legal because the bound transform feedback object (B)
827 active transform feedback object. Assume the UseProgram(C) call were
830 would be the problem instead -- we'd be resuming a transform feedback
842 be called while transform feedback is paused.