Results 1 to 6 of 6

Thread: Overlapping creates massive slow down

  1. #1

    Overlapping creates massive slow down

    I'm not sure if it's due to using alpha or blending or what, but if I have 10,000 textures or 10,000 lines spread out, performance is great, but if those textures or lines get bunched up where they overlap significantly, performance drops to a crawl. What is happening? I use alpha on all my objects, so they're semitransparent.. is it getting caught in some massive depth recursion? Can you set a limit?

    Thanks, Jeff

  2. #2

    Re: Overlapping creates massive slow down

    You have 10,000 textures getting used at the same time? That would be a lot of glBindTexture calls and a lot of texture moving in and out of the texture cache.

    If you are using blending, then there is the cost of read and write of the framebuffer. That problem exists on all GPUs past and present.

    What is depth recursion? Are you doing some technique? Shaders?

  3. #3

    Re: Overlapping creates massive slow down

    Most of the textures are the same texture being applied to many sprites in a VBO, so there are few bind operations. Depth recursion is something I made up to describe the possible process of showing all the layers of transparency to the max degree, perhaps accumulating in some O(N2) operation. I don't know, that's part of what I'm trying to understand. Running the textures and lines where they don't overlap to any large degree causes no performance problems, but if I have 10,000 lines radiate from a single point, it slows to a crawl - not because it's drawing 10,000 lines, but because all those lines are close together turning into a mass of brightness.

  4. #4
    Member Newbie
    Join Date
    May 2010

    Re: Overlapping creates massive slow down

    What's the performance when you disable blending?

  5. #5

    Re: Overlapping creates massive slow down

    No meaningful change in performance when disabling blending, turning off alpha, disabling line smooth, or decreasing line width.

  6. #6
    Senior Member Frequent Contributor
    Join Date
    Dec 2007

    Re: Overlapping creates massive slow down

    The problem is most probably that you update the same piece of the framebuffer. No matter how many shader cores your GPU has if all the drawing you perform is clustered up in the same small tile in the framebuffer the GPU has to serialize the work as no shader core groups can work on the fragment processing of the same little screen tile.

    Maybe your problem is totally different than what I think it is, but from what you described this is my best guess.
    Disclaimer: This is my personal profile. Whatever I write here is my personal opinion and none of my statements or speculations are anyhow related to my employer and as such should not be treated as accurate or valid and in no case should those be considered to represent the opinions of my employer.
    Technical Blog:

Similar Threads

  1. Replies: 4
    Last Post: 12-14-2011, 03:56 AM
  2. glTexImage with integer creates INVALID OPERATION
    By bdysk in forum OpenGL: Basic Coding
    Replies: 1
    Last Post: 03-03-2010, 09:43 AM
  3. GluBuildMipMaps() creates a border on ATI cards?
    By halo in forum OpenGL: Advanced Coding
    Replies: 7
    Last Post: 03-11-2006, 06:40 PM
  4. Alpha Channel creates color banding???
    By jpummill in forum OpenGL: Basic Coding
    Replies: 13
    Last Post: 09-14-2003, 04:17 AM
  5. Using 2x2 RGB texture creates red lines?
    By ToolChest in forum OpenGL: Advanced Coding
    Replies: 10
    Last Post: 02-10-2003, 08:57 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
Proudly hosted by Digital Ocean