Size: a a a

HoudiniForGames Chat

2021 November 04

SA

Sergey Alexandrov in HoudiniForGames Chat
float h1 = @height;
float h2 = volumesample(1, 'height', @P);
float c = ch('distance');

float h;
float bm;
if (chi("invert_blend")) c *= -1;

h2 += .5*c;
bm = clamp((h2 - h1)/c, 0, 1);
h = lerp(h1, h2 - bm*c*.5 , bm);

@height = h;
@mask = bm;
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
можно покороче канеш , немного мусорно но сути это сильно не поменяет)
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
в общем горы врезать и кратеры вырезать сильно проще с этим подходом
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
ну и дальше по этой маске уже все слои последовательно можно смешивать
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
пример не очень показателен тут канеш, надо пробовать на более сложных кейсах а то выглядит как тупо блюр в этом случае)
источник

T

Tertium Organum in HoudiniForGames Chat
круто, еще можно рампу прикрутить.
источник

T

Tertium Organum in HoudiniForGames Chat
кстати @P это в пространстве сопа, а не этого отдельного террейна же?
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
ну вроде как локальное пространство соп ноды целиком насколько я понимаю
источник

T

Tertium Organum in HoudiniForGames Chat
почему не получается засемплить с другого террейна после обычного трансформа, как вот Шарк писал про террейны-кратеры, раскиданные скаттером
источник

T

Tertium Organum in HoudiniForGames Chat
причем как вот в начале беседы я говорил - хайт то можно забрать, даже если двигаешь неправильно
источник

T

Tertium Organum in HoudiniForGames Chat
у меня ощущение что я чтото просто в самой базе не понимаю. может он сэмплит по 3д пространству? но тогда бы он не смог нащупать террейн после сдвига хоть каким способом
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
ну там сэмплинг происходит в 2д простанстве если через векс собирать можешь попробовать тупо занулить У
источник

T

Tertium Organum in HoudiniForGames Chat
вот моя строка вначале изза трансформа не работала
@height = @height + volumesample(1, "height", @P) * volumesample(1, "mask", @P);
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
то есть да сэмпл берется из волюма а он у тебя как бы 2д в 3д пространстве ну и если по У не сходится то как бы он сэмплит пустоту
источник

T

Tertium Organum in HoudiniForGames Chat
причем только вот эта чать не работала -
volumesample(1, "mask", @P)
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
ну тут может ответ кроется в пропертях маски и если поставить на стрик заработает но сама идея плэйсить через обычный трансформ изначально не очень
источник

T

Tertium Organum in HoudiniForGames Chat
так и я о том, тогда бы и после heightfield_xform была лажа. а хайт не находился бы вместе с маской. а оно как то гибридно не работало
источник

T

Tertium Organum in HoudiniForGames Chat
не, там было пох стрик - констант. видимо у нея внутре всетки неонка, у гуди
источник

T

Tertium Organum in HoudiniForGames Chat
интересный подход, и работа у тебя наверно интересная ))
источник

SA

Sergey Alexandrov in HoudiniForGames Chat
кстати проджект на хайтфилдах работает таким образом можно горы всяко поворачивать даже не переводя в мэш
источник