[fpc-pascal] GLPT v0.1.1 released

Anthony Walter sysrpl at gmail.com
Thu Oct 11 16:17:55 CEST 2018

I haven't tried your package yet since I really don't want to boot into
Windows, but I looked at your source code in the git repository.

Off the top of my head here are just a  few questions or suggestions you
need to implement to make it useful:

1) I don't see any code to enumerate the supported screen resolutions
2) I don't see any code to toggle a window exclusive mode
3) I don't see any code to abstract loading OpenGL or extensions
  3a) You should provide a function to return either the OpenGL library
name based on the Context requested, or a handle to the library so that
GetProcAddress can be called
  3b) You should provide a platform independent function to load extensions
by name
4) Your get time function is incredibly inaccurate. You should be using
QueryPerformanceCounter on Windows and clock_gettime on Linux and Mac.

function GetTime should look something like this:

  BaseTime: Double = 0;

{$ifdef windows}
function GetTime: Double;
  Resolution, Counter: Int64;
  Resolution := Resolution div 1000;
  Result := Counter / Resolution / 1000;
  if BaseTime = 0 then
    BaseTime := Result;
  Result := Result - BaseTime;
function GetTime: Double;
  Nanosecond = 1 / 1000000000;
  T: TTimeSpec;
  clock_gettime(CLOCK_MONOTONIC, @T);
  Result := T.tv_sec + T.tv_nsec * Nanosecond;
  if BaseTime = 0 then
    BaseTime := Result;
  Result := Result - BaseTime;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20181011/31c419d2/attachment.html>

More information about the fpc-pascal mailing list