Changeset 984


Ignore:
Timestamp:
Apr 2, 2008 8:15:33 AM (16 years ago)
Author:
gah
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/vizservers/nanovis/NvLIC.cpp

    r851 r984  
    134134}
    135135
    136 void NvLIC::make_patterns()
     136void
     137NvLIC::make_patterns()
    137138{
    138139    Trace("begin make_patterns\n");
    139 
     140   
    140141    disListID = glGenLists(Npat);
    141 
     142   
    142143    Trace("DisplayList : %d\n", disListID);
    143 
    144    int lut[256];
    145    int phase[NPN][NPN];
    146    GLubyte pat[NPN][NPN][4];
    147    int i, j, k, t;
    148    
    149     for (i = 0; i < 256; i++) lut[i] = i < 127 ? 0 : 255;
    150     for (i = 0; i < NPN; i++)
    151         for (j = 0; j < NPN; j++)
    152         {
     144   
     145    int lut[256];
     146    int phase[NPN][NPN];
     147    GLubyte pat[NPN][NPN][4];
     148    int i, j, k, t;
     149   
     150    for (i = 0; i < 256; i++) {
     151        lut[i] = i < 127 ? 0 : 255;
     152    }
     153    for (i = 0; i < NPN; i++) {
     154        for (j = 0; j < NPN; j++) {
    153155            phase[i][j] = rand() % 256;
    154156        }
    155 
    156    for (k = 0; k < Npat; k++) {
    157      t = k*256/Npat;
    158      for (i = 0; i < NPN; i++)
    159      for (j = 0; j < NPN; j++) {
    160        pat[i][j][0] =
    161        pat[i][j][1] =
    162        pat[i][j][2] = lut[(t + phase[i][j]) % 255];
    163        pat[i][j][3] = alpha;
    164      }
    165 
    166      glNewList(disListID + k, GL_COMPILE);
    167      glBindTexture(GL_TEXTURE_2D, pattern_tex);
    168      glTexImage2D(GL_TEXTURE_2D, 0, 4, NPN, NPN, 0,
     157    }
     158    for (k = 0; k < Npat; k++) {
     159        t = k*256/Npat;
     160        for (i = 0; i < NPN; i++) {
     161            for (j = 0; j < NPN; j++) {
     162                pat[i][j][0] =
     163                    pat[i][j][1] =
     164                    pat[i][j][2] = lut[(t + phase[i][j]) % 255];
     165                pat[i][j][3] = alpha;
     166            }
     167        }
     168        glNewList(disListID + k, GL_COMPILE);
     169        glBindTexture(GL_TEXTURE_2D, pattern_tex);
     170        glTexImage2D(GL_TEXTURE_2D, 0, 4, NPN, NPN, 0,
    169171                     GL_RGBA, GL_UNSIGNED_BYTE, pat);
    170      glEndList();
    171    }
    172 
    173      glBindTexture(GL_TEXTURE_2D, pattern_tex);
    174      glTexImage2D(GL_TEXTURE_2D, 0, 4, NPN, NPN, 0,
    175                      GL_RGBA, GL_UNSIGNED_BYTE, pat);
     172        glEndList();
     173    }
     174   
     175    glBindTexture(GL_TEXTURE_2D, pattern_tex);
     176    glTexImage2D(GL_TEXTURE_2D, 0, 4, NPN, NPN, 0,
     177                 GL_RGBA, GL_UNSIGNED_BYTE, pat);
    176178    Trace("finish make_patterns\n");
    177179}
Note: See TracChangeset for help on using the changeset viewer.