http://unrealoutpost.com/blog/2016/04/13/fog-of-war-part-1/ - I just found this tutorial. It’s using dynamic textures for fog of war in Unreal Engine 4.11… So from a brief glance (notice the WarCraft 2 screen shot), I think it looks promising.
Though my scenario is a little different than WarCraft 2 because the fog of war doesn’t need to be as dynamic. Movement through the fog isn’t fliud because it’s a board game. Movement is very much discrete - each of the 26x19 squares is either 100% fog or 0% fog. Also, when a board game piece moves a square and new square becomes visible (no longer grayed out by fog), it becomes permanently visible. So updates only happen after each discrete square move, and the squares are updated discretely. Another difference is that only the board texture is modified - we don’t need to gray out anything else because there’s nothing to gray out (ie we don’t need to gray out other board game pieces).