Various: RemoveDelayed utility, using fcl-res instead of windres tool, MultiTexture features

Multi-texturing in X3D
  1. New utility TCastleTransform.RemoveDelayed to remove TCastleTransform but not immediately. This is great if you need to remove some TCastleTransform from children list, but you also iterate over the children list right now.

  2. We no longer use windres utility, instead we generate Windows resources in memory using FPC’s units from fcl-res package.

    Our build tool now uses fcl-res units to actually build a resource file in memory, and write the resulting RES file. This means we can write the Windows RES file without the help of any external tool, and without creating some intermediate/temporary RC/manifest files. Everything happens in memory, in a cross-platform way.

    This is nicer for people with Delphi, who want to compile applications without the need to download windres from FPC/MinGW/MSys.

    This is also nicer for people doing cross-compilation from e.g. Linux to Windows. Previously this required Linux version of windres, which needed installation of MinGW binutils on Linux. Now this utility is not necessary.

  3. MultiTexture features are now restored in shader renderer. All models from demo-models/multi_texturing and described on our X3D multi-texturing page now work with latest CGE and view3dscene.