Option Explicit
Option Base 0
'Ширина и высота экрана, поле зрения, размер
'одного блока
Const RENDER_H = 64
Const RENDER_W = 96
Const FOV = 75
Const cellHeight = 64
Const cellWidth = 64
'Определяем переменные
Sub startRender()
Dim plX As Double, plY As Double, plPOV As Double, _
arrMap() As Variant, rngMap As Range, mapHeight As Long, mapWidth As Long, _
arrRender() As Variant
'Определение размера карты
mapHeight = Sheets("MAP").Cells(Rows.Count, 1).End(xlUp).Row
mapWidth = Application.WorksheetFunction.CountA(Sheets("MAP").Rows(1))
'Диапазон карты
Set rngMap = Sheets("MAP").Range(Sheets("MAP").Cells(1, 1), _
Sheets("MAP").Cells(mapHeight, mapWidth))
arrMap() = rngMap.Value
'Расчёт положения игрока на карте
plX = GetPlayerCoord(arrMap(), "X")
plY = GetPlayerCoord(arrMap(), "Y")
'То самое направление взгляда, изменение которого мне лень прописывать
plPOV = Application.WorksheetFunction.Radians(90)
'Вызываем функцию, которая возвращает массив данных для отрисовки изображения
arrRender() = getArrayForRender(plX, plY, plPOV, arrMap())
Call renderImage(arrRender())
End Sub
Комментарий недоступен
Минимальные требования: 1Tb RAM?
Wolfenstein 3D в EXCEL?
мсье знает толк в извращениях
И тем не менее до рендера на SQL ему еще далеко:
https://habr.com/ru/post/435390/
Комментарий недоступен
Благодарю, я старался)
а зачем.