When comparing the x2 examples it is noticeable that "TileMap.Initialize" is done either at "Sub Initialize" or at "Sub StartGame".
Is this arbitrary or deliberate with a particular intention?
B4X:
Public Sub Initialize (Parent As B4XView) ' HelloWorldWithBackground example
Parent.LoadLayout("GameLayout")
world.Initialize("world", world.CreateVec2(0, 0))
X2.Initialize(Me, ivForeground, world)
Dim WorldWidth As Float = 10 'meters
Dim WorldHeight As Float = WorldWidth / 1.333 'same ratio as in the designer script
X2.ConfigureDimensions(world.CreateVec2(WorldWidth / 2, WorldHeight / 2), WorldWidth)
'comment to disable debug drawing
'X2.EnableDebugDraw
TileMap.Initialize(X2, File.DirAssets, "hello world with background.json", ivBackground)
Dim TileSize As Int = Min(X2.MainBC.mWidth / TileMap.TilesPerRow, X2.MainBC.mHeight / TileMap.TilesPerColumn)
TileMap.SetSingleTileDimensionsInBCPixels(TileSize, TileSize)
SetWorldCenter
TileMap.PrepareObjectsDef(ObjectLayer)
TileMap.CreateObject2(ObjectLayer, 9)
...
B4X:
Public Sub StartGame ' Mario example
If X2.IsRunning Then Return
X2.Reset
X2.UpdateWorldCenter(X2.CreateVec2(X2.ScreenAABB.Width / 2, X2.ScreenAABB.Height / 2))
GameOverState = False
TileMap.Initialize(X2, File.DirAssets, "mario 1.json", ivBackground)
Dim TileSizeMeters As Float = X2.ScreenAABB.Height / TileMap.TilesPerColumn
TileMap.SetSingleTileDimensionsInMeters(TileSizeMeters, TileSizeMeters )
TileMap.PrepareObjectsDef(ObjectLayer)
TileMap.SetBackgroundColor(0xFF008AFF)
...
Is this arbitrary or deliberate with a particular intention?