JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style type="text/css" media="screen">
html,
body {
width: 100%;
height: 100%;
margin: 0px;
overflow: hidden;
}
canvas {
width: 100%;
height: 100%;
}
</style>
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/110/three.min.js"></script>
<script>
var renderer = new THREE.WebGLRenderer({ preserveDrawingBuffer: true, alpha: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setPixelRatio(window.devicePixelRatio);
renderer.autoClear = true;
document.body.appendChild(renderer.domElement);
var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 1, 400);
var perspectiveCameraZoom = 1;
var zoomLevel = 5;
var cameraZoomLevel = 50;
var zoomSwap = false;
var mouseDown = false;
var scene = new THREE.Scene();
var textureArray = new Array();
var pocettilu = 72;
var tileLine = 12;
var tileShift = 0;
var matA = new Map();
var meshMaterialArray = new Array();
var planeGeo = new THREE.PlaneGeometry(12, 6, 12, 6);
var texLoader = new THREE.TextureLoader();
var tilesInBlock = pocettilu;
var tilesInRow = tileLine;
var tileAdjust = 1;
var triangleFace = 0;
var horizontalIndex = 0;
var verticalIndex = 0;
var offsetposy = 0;
var calc1 = 0;
var calc2 = 0;
var longtile = 15;
var lattile = 7;
for (let index = 0; index < tilesInBlock; index++) {
if (Number.isInteger(index / tilesInRow)...