FMeX (or Delphi FMX Extended) is a set of classes designed to optimize the performance and usability of the FMX library. FMeX is compatible with Delphi 10+
- 20200601 - Demos fixed and tested on mobile (10.4 (android32/Ios64)
- 20200304 - New Perlin's noise 3D "voxel" Demo (early)
- Introduces TeCustomMesh, with "MergeFrom" method, for merging FMeX Mesh together into on and single Mesh. (Draw Call optimization)
- FMX compatible
- Show techniques to achieve good performance within FMX, with merging Ticks, and animation
- Cadender, to control precise animation cadence (slow down motion, speed up, back to normal) (see Particle demo)
- GS.Core
- Gx (TEMPORARY)
As a "learning" base, if you find this lib cool, please "star" it ! It's free, and help to reference code, as well to make it more visible.
Attempt to replace the OBJ FMX loader which has some problem for loading large file (perf(!) and materials behaviour)
Attempt to adapt an existing Spine loader. (esotericsoftware.com) -> Used cool unit form Dan (dan.soft.studio "a_t" gmail.com): -> After compile, please put goblins.xxx and goblins-[anim].xxx into binary dir. This is a test only, and certainly spine had no futur application in FMeX.
As a TeCustom.MergeFrom(...) capabilities, see Stress Cube demo. With a less than a middle class usual SoHo desktop PC computer, thousands of cube limits could be reached. It could be a good base for a Cube Voxel Engine. Note that is is a raw rendering, there are no geometric optimization at all. And it need it. :)
this example implements a 2d particle rendering : Logic side is processed on CPU, and rendering side prepares all Particles in large Merged Mesh, which is manipulated runtime by CPU, and drawing in one "low level" call. (see FMeX.Particles2D.pas)