<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>CFOWMaker :: Catur Documentation</title>
    <link>https://doc.cdryx.net/CdryxAIOUPlugin/cfowumodule/cfowmaker/index.html</link>
    <description>Overview UCFOWMaker is the core fog of war builder. It manages two render targets (line-of-sight and revealed areas), a UDynamicMeshComponent plane sized to the current room cluster, and dynamic material instances for both the fog mesh and an optional post-process volume. It implements ICCell and ICPlayerControllerBoundable to react to perspective changes.&#xA;Properties Name Description fogMakerStruct Copy of the FCFOWMakerStruct configuration renderTarget2D Render target for current line-of-sight painting renderTarget2DRevealed Render target for previously revealed areas fogDynamicMaterial Dynamic material instance applied to the fog mesh plane dynamicMeshComponent Dynamic mesh component representing the fog plane postProcessFogDynamicMaterial Optional dynamic material instance for post-process fog compositing currentFogOfWar Pointer to the current cluster FCRectangle being fogged topView True when the camera is in first-person perspective (fog disabled) built True once the fog maker has been fully initialized Functions Name Description instanciate Static factory that creates the fog maker, render targets, materials and mesh buildASync Async entry point called each tick: checks if fog needs redrawing, enqueues commands wantDraw Returns true if the fog should be recomputed (rooms built, not in top view, queue empty) drawFog Async: finds the closest cluster and enqueues a cluster change or mesh clear updateFog_sync Game thread: dequeues commands, clears render targets, rebuilds the mesh plane setMinimapZDistance Updates the minimap distance parameter on the fog material isBuilt Returns true if the fog maker is initialized clean Unbinds from the player controller events onPerspectiveTypeChange Reacts to camera perspective changes (disables fog in first person) // instanciate creates the fog maker with all its resources: UCFOWMaker::instanciate(sceneComponent, fowMaker, stream, fowMakerStruct, postProcessVolume); // buildASync is called each tick by the spawner: fowMaker-&gt;buildASync(singleDoRun, pawnX, pawnY); // Internally, buildASync runs drawFog asynchronously: // - drawFog finds the closest cluster via RoomUtility::closestCluster // - If the cluster changed, enqueues FCFOWDataQueue(newCluster) // - If the pawn left all clusters, enqueues FCFOWDataQueue(true) to clear // updateFog_sync runs on the game thread: // - Clears both render targets // - Rebuilds the dynamic mesh plane to match the cluster bounds // - Adjusts material scale parameters for non-square clusters // Perspective change handling: // FIRT_VIEW -&gt; topView = true, clears the mesh immediately // TOP_VIEW -&gt; topView = false, fog resumes on next tick </description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate></lastBuildDate>
    <atom:link href="https://doc.cdryx.net/CdryxAIOUPlugin/cfowumodule/cfowmaker/index.xml" rel="self" type="application/rss+xml" />
  </channel>
</rss>