A method for generating graphics corresponding to a plurality of buildings in a three-dimensional virtual environment comprising: identifying, with a processor, a region in the three-dimensional virtual environment that is enclosed by a plurality of streets within the three-dimensional virtual environment; identifying, with the processor, a rectangular portion of the region in the three-dimensional virtual environment; generating, with the processor, a two-dimensional arrangement of a plurality of tiles only within the rectangular portion of the region, comprising assigning, with the processor, a type code to each tile in the plurality of tiles, wherein said type code for each tile indicates for each side of said each tile whether said each side is adjacent to another tile in the two-dimensional arrangement or corresponds instead to an exterior face of a building, and identifying based on the type code, with the processor, for each tile a corresponding subset of building segment graphics in a plurality of building segment graphics stored in a memory; wherein building segment graphics data includes three-dimensional models for procedurally generated buildings in the three-dimensional virtual environment; identifying, with the processor, one building segment graphic in the subset of building segment graphics for each tile in the plurality of tiles based on an array of pseudo-random index values stored in the memory, each index value corresponding to one building segment graphic in the subset of building segment graphics; and generating, with the processor and a display device, a graphical depiction of the three-dimensional virtual environment including a graphical depiction of the plurality of buildings in the region based on the two-dimensional arrangement of the plurality of tiles and the one building segment graphic identified for each tile in the plurality of tiles; wherein the type code and the pseudo-random index value act as column and row identifiers for the processor to select one set of building segment graphics in a two-dimensional table. identifying, with a processor, a region in the three-dimensional virtual environment that is enclosed by a plurality of streets within the three-dimensional virtual environment; identifying, with the processor, a rectangular portion of the region in the three-dimensional virtual environment; generating, with the processor, a two-dimensional arrangement of a plurality of tiles only within the rectangular portion of the region, comprising assigning, with the processor, a type code to each tile in the plurality of tiles, wherein said type code for each tile indicates for each side of said each tile whether said each side is adjacent to another tile in the two-dimensional arrangement or corresponds instead to an exterior face of a building, and identifying based on the type code, with the processor, for each tile a corresponding subset of building segment graphics in a plurality of building segment graphics stored in a memory; wherein building segment graphics data includes three-dimensional models for procedurally generated buildings in the three-dimensional virtual environment; identifying, with the processor, one building segment graphic in the subset of building segment graphics for each tile in the plurality of tiles based on an array of pseudo-random index values stored in the memory, each index value corresponding to one building segment graphic in the subset of building segment graphics; and generating, with the processor and a display device, a graphical depiction of the three-dimensional virtual environment including a graphical depiction of the plurality of buildings in the region based on the two-dimensional arrangement of the plurality of tiles and the one building segment graphic identified for each tile in the plurality of tiles; wherein the type code and the pseudo-random index value act as column and row identifiers for the processor to select one set of building segment graphics in a two-dimensional table.