Возможно проблема в том что массив размером
int Tw = terrain.terrainData.heightmapWidth - 1;
а перебор идет по
for(int y=0; y < terrain.terrainData.alphamapHeight; y++)
{
for(int x=0; x < terrain.terrainData.alphamapWidth; x++)
{
На какой строке ошибка? В посте 13 написано что она на 149 строке. Где эта строка?