KhronosGroup / OpenGL-API

OpenGL and OpenGL ES API Issue Tracker
34 stars 5 forks source link

[OpenGL] 4.6: Vertex Post-Processing chapter contains a lot of incorrect references to "vertex shader" #9

Closed NicolBolas closed 6 years ago

NicolBolas commented 7 years ago

Consider the first line of 13.5:

Flatshading a vertex shader output means to assign all vertices of the primitive the same value for that output.

Except that this isn't true. This happens to the output of the last vertex active processing stage, not specifically vertex shader outputs. Yes, the section later goes on to talk about "If a vertex, tessellation or geometry shader is active...", but that sentence is still wrong.

And this is not the only place where "vertex shader" is used instead of "last active vertex processing stage" or similar terminology. Here are a number of other examples from chapter 13:

A vertex shader may write a single clip distance

Next, vertex shader outputs are clipped.

For vertex shader outputs specified to be interpolated without perspective correction

pdaniell-nv commented 7 years ago

Discussed in the OpenGL WG meeting on Friday. From the examples above the phrase "vertex shader", when it applies to the last vertex processing shader stage, should be replaced with "last vertex processing shader stage" or similar. This primarily affects Chapter 13.

@oddhack There are about 5 occurrences of "vertex shader" in chapter 13 we should fix. Can you take care of it?

ghost commented 6 years ago

Looks like this affects ES too, so also assigning myself to discuss in the next ES meeting.

ghost commented 6 years ago

Assigning to Piers to talk about this with the OpenGL ES group.

pdaniell-nv commented 6 years ago

Joint OpenGL|ES WG meeting discussed this. When talking specifically about a "shader stage" then phrase "last vertex processing shader stage" should be used. Otherwise when talking about vertex processing in general then simply "vertex processing [stage]" should be used.

We'll leave the details to spec editor discretion.

Assigned to @oddhack to incorporate these changes in next GL|ES spec updates.

oddhack commented 6 years ago

The fixes identified by @pdaniell-nv will be in the next GL & ES spec updates, coming soon.

Note that we also use the terminology "upstream shader" earlier in the spec, referring to the vertex or tessellation shader feeding the geometry shader. The same terminology was previously used in e.g. the Points section, but I switched the latter usage to the "last stage" terminology.