<commit_before>/*
 * An aside on 3D geometry:
 *
 * With the default perspective projection, a 1 unit high quad will fill the
 * screen vertically when at z==0. Since we cannot have z==0, we place it at
 * z==-1, and scale the quad to 2 units high. This provides the same effect.
 *
 * For every unit of depth, the scale must be doubled to fill the sceen;
 *
 *   scale = -z * 2
 *
 * Using this property, we can accurately scale our geometry for any depth.
 *
 * Since the screen automatically adjusts to any aspect ratio, we have to take
 * precautions against super mega ultra wide aspect ratios that will reveal the
 * edges of our geometry... This is just done on a best effort; use more quads!
 *
 * Using 5 quads across (each 4 units wide) works with screen aspect ratios up
 * to about 3.64:1 when scaling by 30 units.
 */

var geoScale = 20 // I don't know why! :) Maybe because science!

// Generate vertex attributes for mountain layers
function mountainVertices(layer) {
    function quad(offset) {
        // Return a quad that is 1 unit high and 4 units wide, scaled to desired size
        return [
            (-2 + offset) * geoScale, geoScale - layer * geoScale / 15, z, x1, y1, // Upper left corner
            ( 2 + offset) * geoScale, geoScale - layer * geoScale / 15, z, x2, y1, // Upper right corner
            (-2 + offset) * geoScale,          - layer * geoScale / 15, z, x1, y2, // Lower left corner
            (-2 + offset) * geoScale,          - layer * geoScale / 15, z, x1, y2, // Lower left corner<commit_msg>Fix a comment<commit_after>/*
 * An aside on 3D geometry:
 *
 * With the default perspective projection, a 1 unit high quad will fill the
 * screen vertically when at z==0. Since we cannot have z==0, we place it at
 * z==-1, and scale the quad to 2 units high. This provides the same effect.
 *
 * For every unit of depth, the scale must be doubled to fill the sceen;
 *
 *   scale = -z * 2
 *
 * Using this property, we can accurately scale our geometry for any depth.
 *
 * Since the screen automatically adjusts to any aspect ratio, we have to take
 * precautions against super mega ultra wide aspect ratios that will reveal the
 * edges of our geometry... This is just done on a best effort; use more quads!
 *
 * Using 5 quads across (each 4 units wide) works with screen aspect ratios up
 * to about 2.4:1 when scaling by 20 units.
 */

var geoScale = 20 // I don't know why! :) Maybe because science!

// Generate vertex attributes for mountain layers
function mountainVertices(layer) {
    function quad(offset) {
        // Return a quad that is 1 unit high and 4 units wide, scaled to desired size
        return [
            (-2 + offset) * geoScale, geoScale - layer * geoScale / 15, z, x1, y1, // Upper left corner
            ( 2 + offset) * geoScale, geoScale - layer * geoScale / 15, z, x2, y1, // Upper right corner
            (-2 + offset) * geoScale,          - layer * geoScale / 15, z, x1, y2, // Lower left corner
            (-2 + offset) * geoScale,          - layer * geoScale / 15, z, x1, y2, // Lower left corner
{'fraction_non_alphanumeric': 0.08822575413558223, 'fraction_numerical': 0.024975673045734673, 'mean_word_length': 2.615474794841735, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3893448', 'n_tokens_mistral': 932, 'n_tokens_neox': 846, 'n_words': 453}