6 Dicembre 2002
Costruzione di Interfacce - Paolo Cignoni
17
Parsing del selection buffer
vSe non abbiamo usato lo stack (se non abbiamo fatto glPushName) i record sono tutti lunghi uguali e parsarli è facile:
v
v  vector< pair<double,unsigned int> > H;
v  for(int ii=0;ii<hits;ii++){
v    TRACE("%ui %ui %ui %ui\n",  
          selectBuf[ii*4  ],selectBuf[ii*4+1],
          selectBuf[ii*4+2],selectBuf[ii*4+3]);
v H.push_back( make_pair(
                  selectBuf[ii*4+1]/4294967295.0,
                  selectBuf[ii*4+3])
                );
v }
v  sort(H.begin(),H.end());
v  TRACE("\n Closest is %i\n",H[0].second);
v