Я использую марширующие кубы и трехмерный шум для создания изменяемой / интересной местности. Почему мой шум не применяется к моим марширующим кубам?
Пожалуйста, имейте в виду, что я следовал за реализацией Gem Gems для шумов.
Я пытался использовать 2D-шум, чтобы получить хотя бы какой-то эффект, но у меня та же проблема. Моя проблема в том, что все просто кажется плоским. Я следую за гемами GPU на марширующих кубах, за исключением того, что я не использую шейдер. Я устанавливаю точки равными -point.y (position) и получаю плоскую поверхность, которая является нормальной. Затем я добавляю шум с единицами, встроенными в шум перлина, и я все еще остаюсь плоским. Кстати, мой уровень iso равен 0. Я добавил метод 3D-шума Перлина и использовал его, но ничего не получил. Я не уверен, что я делаю не так.
Это код, который я использую для 3D-шума в единстве:
float Perlin3D(float x, float y, float z)
{
float AB = Mathf.PerlinNoise(x, y);
float BC = Mathf.PerlinNoise(y, z);
float AC = Mathf.PerlinNoise(x, z);
float BA = Mathf.PerlinNoise(y, x);
float CB = Mathf.PerlinNoise(z, y);
float CA = Mathf.PerlinNoise(z, x);
float ABC = AB + BC + AC + BA + CB + CA;
return ABC / 6.0f;
}
Это код, который я использую для наложения баллов по баллам:
isovalue = -transform.position.y + Perlin3D (transform.position.x * 0.9f, transform.position.y * 0.9f, transform.position.z * 0.9f);
Мой уровень ISO установлен на 0.
Кажется, мои марширующие кубики работают нормально. Я пробовал много разных выходов, но редактирование указывает сам, чтобы проверить, правильно ли я получаю результаты, и я делаю. Не уверен, что делать или что я делаю не так.
Я ожидаю, что у меня будет некоторая местность от этого. Никаких сообщений об ошибках не видно, и единственная проблема, которую я думаю, может быть неправильной, это сам шум. Потому что все остальное в моих походных кубиках работает так, как ожидалось. Спасибо!