Updating the influence map
So far, we've seen how to configure and spread influences in isolation. The actual update loop for the influence map combines each of these steps together. Remember that clearing the influence map is necessary in between spreading influences; otherwise the resulting influences will be oversaturated:
function Sandbox_Update(sandbox, deltaTimeInMillis) Sandbox.ClearInfluenceMap(sandbox, 0); for i=1, 15 do Sandbox.SetInfluence( sandbox, 0, Sandbox.RandomPoint(sandbox, "default"), 1); end Sandbox.SpreadInfluenceMap(sandbox, 0); end
While this simple update scheme will work, it is incredibly CPU-intensive to calculate the entire influence map every sandbox update. Typically, a slightly out of date influence map will not adversely affect tactical decision making based on influence map data. As the sandbox internally updates at a frequency independent of frame rate, we can use...