World

The World describes a procedural 3D terrain (height from noise), its edges, fog of war, minimap and generation parameters. Passed to the board as the world block.

Setters

Setter Effect
edgeType(ECEdgeType) How the world border is shaped.
material(UMaterialInterface*) Material applied to the terrain mesh.
worldTopography(UCNoiseDataAsset*) Mandatory base noise defining terrain height.
clusterTopography(UCNoiseDataAsset*) Optional noise for room-cluster areas.
clusterShiftTopography(UCNoiseDataAsset*) Optional shift noise for non-room cluster areas.
roomAndCorridorTopography(UCNoiseDataAsset*) Optional shift noise for rooms and corridors.
fogOfWar(FCBP_FogOfWar) Fog of war settings → FCBP_FogOfWar.
worldEffector(FCBP_WorldEffector) Generation parameters → FCBP_WorldEffector.
shadowEffector(FCBP_ShadowEffector) Shadow settings → FCBP_ShadowEffector.
roomAndCorridorSoftener(EAlphaBlendOption) Blend curve smoothing room/corridor edges into the terrain.

The map (minimap) block exists but has no fluent setter yet.

Example

FCBP_World world = FCBP_World()
    .edgeType(ECEdgeType::MSTBROKEN)
    .material(retrieveAsset<UMaterialInterface>("TERRAIN_MAT"))
    .worldTopography(retrieveAsset<UCNoiseDataAsset>("WORLD_NOISE"))
    .clusterTopography(retrieveAsset<UCNoiseDataAsset>("CLUSTER_NOISE"))
    .clusterShiftTopography(retrieveAsset<UCNoiseDataAsset>("CLUSTER_SHIFT_NOISE"))
    .roomAndCorridorTopography(retrieveAsset<UCNoiseDataAsset>("ROOM_NOISE"))
    .fogOfWar(FCBP_FogOfWar()
        .renderTargetSizePixel(1024))
    .worldEffector(FCBP_WorldEffector()
        .cellSizeMeter(200.0f)
        .numberOfCellToDrawAround(40))
    .shadowEffector(FCBP_ShadowEffector())
    .roomAndCorridorSoftener(EAlphaBlendOption::QuinticInOut);