Please Test / Help With DelphiX : FILE : PLASMA.ZIP

Quote
>I need to _QUICKLY_ copy a 100x160 array into a dx surface, at the moment,
i
>am drawing a dib, loading dib into surface, then displaying dib... very
slow
>[30fps on a pII338].

Yes, that's no good for a plasma. I also use and like DelphiX, and I think
that you should describe the surface directely. You have to call functions
like that:

var
  SurfaceDesc: DDSURFACEDESC;
  x, y: Integer;
begin
  DXDraw1.SurfaceDesc.dwSize := Sizeof(SurfaceDesc);
  if DXDraw1.Surface.Lock(PRect(nil)^, SurfaceDesc) then
  begin
    try
      for y:=0 to DXDraw1.Surface.Height-1 do
        for x:=0 to DXDraw1.Surface.Width-1 do
          PByte(Integer(SurfaceDesc.lpSurface)+Y*SurfaceDesc.lPitch+X)^ :=
x+y;

    finally
      {  Without forgetting unlocking  }
      DXDraw1.Surface.UnLock(SurfaceDesc.lpSurface);
    end;
  end;
end;

The example is from the DelphiX-Help.

If you need to keep the surface you are drawing to, you may have to create
an own one.

Quote
>PS - Download the file. Optikal Plasma b1, and tell me what u think.

Looks very good!

Tell me if you have sucess!