Если вы поддерживаете отношения между лицами, вы можете вычислить одно, а затем получить все остальные, используя преобразования. Или вы можете просто рассчитать все шесть по отдельности.
Самый простой способ сделать это - использовать перекрестное произведение двух векторов ребер и нормализовать результат, чтобы получить единичный вектор в 3D.
Выберите любую поверхность куба, точки которой (1, 2, 3, 4) пронумерованы таким образом, что, если вы посмотрите вниз на единичный вектор, перпендикулярный грани, числа будут идти против часовой стрелки.
Рассчитать векторы между точками 1 и 2:
То же самое для вектора, бегущего из точки 1 в точку 4.
Пересеки первый вектор во второй, нормализуй его, и это твой единичный вектор.