Programming => Graphics and Multimedia => Graphics => Topic started by: apeoperaio on January 11, 2017, 09:10:18 am
Delphi 10 (DX) offers some 3D visual components (http://docwiki.embarcadero.com/RADStudio/Seattle/en/FireMonkey_3D):
- TViewPort3d (something like lazarus TOpenGLControl?);
- 3D scene components: TCamera, Tlight, TDummy and TProxyObject;
- a set of 3D Shapes components (TPlane, TDisk, TCube, TMesh, TSphere...);
- a set of 3D Layers components;
- a set of Materials components.
There is something similar in Lazarus?
I know there is GLScene as a separated package, I was just wondering if there is the chance to introduce these 3D components in lazarus existing component palette.
DeleD has something similar.
Yes. Install GLScene ;)
Yes. Install GLScene ;)Exactly. It registers its components to the existing component palette, just as you wished.
Unfortunately GLScene seems to support only Windows. Somebody should fork it and make a cross-platform version.
Firemonkey is a different thing altogether, but afaik newer Delphi's even have directwrite components in the VCL.
I assume it is possible, but somebody simply has to find or create direct* headers, maintain them, and work on the components.
Here is few links for pascalized DirectX headers:
One more link to add to the list Cyrax provided:
Despite the name, it is fully FPC compatible, and definitely the most up-to-date DirectX header I am aware of.
I would also agree that GLScene might be what you're looking for. (Fun fact: FireMonkey (the Delphi component you referenced) is actually itself based on a FORK of GLScene, which was called DXScene (and was really just a stripped down version of GLScene that used DirectX 9 instead of OpenGL as a rendering backend.) To be quite honest, as well, I would say that the current revision of FireMonkey has far from caught up to where the current revision of GLScene is today, in terms of features/e.t.c.
You might also want to try out the Castle Game Engine, which is extremely robust (and much more modern "internally" than GLScene... far less slow GLBegin/GLEnd stuff), but is also perhaps a little less easy to get started with due to the lower number of "visual" components it provides.
thanks a lot for all hints and suggestions