Докуметация Cтарт Статьи Форум Лента Вход
Не официальное русскоязычное сообщество
Главная
    Документация jMonkeyEngine
        jMonkeyEngine Уроки и Документация
            Вклады
                Кубы - Структура Блочного Мира
                    Инструменты
                        Шум

Шум

Опубликованно: 25.06.2017, 20:54
Последняя редакция, Andry: 25.06.2017 21:40

Шумы представляют собой массивы случайных чисел, которые «в некотором роде сближаются». Они часто используются для создания контента, например, для блоков. После определения шума структура будет генерировать случайные числа и размещать соответствующие образом блоки (чем больше число, тем выше высота местности в этой точке).

Помните, что для создания больших шумов потребуется больше времени.

Генерация шума

На данный момент структура поддерживает только один тип шума (на основе Алгоритма Diamond-Square). Вы можете увидеть визуализацию такого шума справа.

Вот как вы можете его использовать:

//Create the block terrain (4x1x4 chunks)
BlockTerrainControl blockTerrain = new BlockTerrainControl(new Vector3Int(4, 1, 4));

//Укажите местоположение, размер, шероховатость и класс блока.
//(Чем меньше шероховатость, тем плотнее созданная местность)
blockTerrain.setBlocksFromNoise(new Vector3Int(0, 0, 0), new Vector3Int(64, 50, 64), 0.3f, CubesTestAssets.BLOCK_GRASS);

//Добавление блоков рельефа к узлу
Node terrainNode = new Node();
terrainNode.addControl(blockTerrain);
rootNode.attachChild(terrainNode);

Некоторый случайный результат этого шума:

test_noise

Дальнейшие улучшения

  • Там будет много шумов и даже интерфейс для определения ваших собственных шумов
  • Можно будет указать загрузчик, который будет выбирать «подходящий тип блока, зависящий от местоположения

Переведено для jmonkeyengine.ru, оригинал
Автор перевода: Andry

Добавить комментарий

jMonkeyEngine.ru © 2017. Все права сохранены.