Super, Windows and Linux - its what Im need for now
The real (10-byte) Extended
type is not available on Windows/x86_64 (that is, 64-bit Windows binaries). On Windows/x86_64, Extended
is merely an alias to Double
.
Extended
(10-byte) is available on Linux/x86_64, and most i386 (32-bit) platforms, like Windows/i386.
You can check it with this trivial application:
begin
{$ifdef FPC_HAS_TYPE_EXTENDED}
Writeln('FPC_HAS_TYPE_EXTENDED, 10-byte Extended type supported');
Writeln('This should be 10: ', SizeOf(Extended));
{$else}
Writeln('No FPC_HAS_TYPE_EXTENDED, 10-byte Extended type NOT supported.');
Writeln('Extended is only an alias to Double, this should be 8: ', SizeOf(Extended));
{$endif}
end.
Testing it with Windows/x86_64 target:
$ fpc a.lpr
Free Pascal Compiler version 3.2.0-r45643 [2020/06/26] for x86_64
Copyright (c) 1993-2020 by Florian Klaempfl and others
Target OS: Win64 for x64
Compiling a.lpr
Linking a.exe
9 lines compiled, 0.2 sec, 31728 bytes code, 1492 bytes data
~$ ./a
No FPC_HAS_TYPE_EXTENDED, 10-byte Extended type NOT supported.
Extended is only an alias to Double, this should be 8: 8
Of course you can keep using 32-bit Windows binaries if necessary, if you very need Extended support, but I would not advise it. It’s not a cross-platform solution, and most new applications are usually 64-bit also on Windows
UPD: I would like to hear your opinion about asynchronous loading of geometry into a visible node (another topic that I created before). Is there some way to accomplish this?
I have this thread on my TODO list, yes, I’ll post an answer there