Page 2 of 2 FirstFirst 12
Results 11 to 12 of 12

Thread: A Look At OpenGL ES 3.0: Lots Of Good Stuff

  1. #11
    Join Date
    Sep 2012
    Posts
    2

    Default

    Quote Originally Posted by curaga View Post
    Vert packing is an old trick, you can create any complex system you like as long as you can also unpack in a vertex shader.

    You sure it will be a benefit though?
    How can a vertex shader look at more than one vertex at a time? With delta compression, every vertex would depend on the previous one, so the GPU could not unpack them in parallel. However multiple delta-compressed sequences could be unpacked in parallel. So maybe each vertex given could be the start of a delta-compressed path, and a supplementary buffer provides the deltas? But a vertex shader is restricted to producing one output vertex for each input vertex. What I want is a way to generate vertices in shader code. Bezier rendering is adaptive: you generate more vertices in the areas of the curve which make tight bends, and fewer in the areas which are closer to straight; so it's hard to predict the total number that you need in advance. When rendering delta-compressed sequences, the total number of output vertices can be known in advance, however it's still a vertex-generation problem because each vertex must be visited in order, to apply diffs from the previous vertex. Isn't this type of problem the point of having geometry shaders?

  2. #12
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    4,994

    Default

    Yes, delta compression in general is badly parallelizable. But you may be able to send the vertices as 8-bit values still with clever packing, in non-delta ways.

    I was only talking about your point of sending less data over. Geometry shaders are needed to generate more, I agree there.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •