- Preload in layout 1? (then maybe BG1 is unloaded when going to layout 2 as it’s not present on that layout)
Yes it will be unloaded by C2 engine transition system, so this approach will not work as you suspected.
- Preload at the start of layout 2? In this case does the plugin make a difference from simply creating the object on start of layout?
One of solutions would be to make not a layout transition preloader but layout initialization preloader. Technically it's the same, the difference is when and how you trigger it.
Layout transition preloader you start at the end of previous layout and then you jump to the next layout having everything preloaded.
Layout initialization preloader you start at the beginning of the layout and you preload/initialize anything that does not exist on the layout yet but will be spawned during runtime. In this case you most likely want to enable the Stabilizer to ensure that everything is smooth when you hide the preloading layer.
The difference from just spawning the objects as you do right now is that by just spawning them, you will notice the lag, while with preloader you can show the progress of loading and you can preload elements further used in this layout (like bullets, etc.).
You can also combine a Layout transition and layout initialization preloaders.
Spawning the element at "On start of layout" instead of having them on the layout sounds like a not the best solution. I suggest to just put the item on the layout and use regular Layout transition preloader. Otherwise you will probably have to preload both before and after the layout starts.
Hope that helps, if you have any further questions just let me know