Einzelnen Beitrag anzeigen

Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#28

Re: [Bitte mal Testen] 3D nonVCL Demo

  Alt 12. Feb 2007, 18:17
Zitat von igel457:
Mit meiner Medion Radeon 9800 OEM schaffe ich so um die 190 FPS. Schalte ich sh Moddel aus, so habe ich sogar 290 FPS. Allerdings laufen dann auch alle Animationen schneller ab, was du vielleicht noch ändern solltest.
Oh.

Zitat von igel457:
Eine Frage: Wie Zeichnest du die Spektrumanalyse? Zeichnest du die jedes mal in eine Textur?
Sehr simpel:

Delphi-Quellcode:
procedure _Engie.RenderVUMeter(L,R: Single);
const
  //...
  sizeFFT = 255;
var
  i: Integer;
  FFTBuf512: array [0..sizeFFT] of single;
begin
  Enter2D;
  glDisable(GL_LIGHTING);
  glDisable(GL_TEXTURE_2D);

  //...

  // FFT
  if VUMeter in [2,3] then
  begin
    BASS_ChannelGetData(Channel, @FFTBuf512, BASS_DATA_FFT512);
    glColor4f(0.0, 0.0, 1.0, 0.8);
    glBegin(GL_LINES);
      glVertex2f(PX, PY + YF);
      glVertex2f(PX, PY + 100 + YF);
      glVertex2f(PX, PY + 100 + YF); // ???
      glVertex2f(PX + 2 + sizeFFT, PY + 100 + YF);
    glEnd;

    for i := 0 to sizeFFT do
    begin
      glBegin(GL_LINES);
        glColor4f(1.0, 1.0, 0.0, 0.8);
        glVertex2f(PX+ 2 + i, PY + YF + 100 - 2);
        glColor4f(1.0, 0.0, 0.0, 0.8);
        glVertex2f(PX + 2 + i, PY + YF + 100 - 2 - round(FFTBuf512[i] * 512) );
      glEnd;
    end;
  end;
  glEnable(GL_LIGHTING);
  glEnable(GL_TEXTURE_2D);
  Exit2D;
end;
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat