Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
По сути функция repeat должна повторять текстуру (как background-repeat: repeat в css) в зависимости от положения точки центра, короче: двигается центр, двигается и текстура за ним. Мне даже ума не хватает описать это, поэтому формулу сам искал, хватило ума только на это говно. Спустя несколько недель додумался до следующего говна, уже без цикла:
float repeat(float x, float z) {
float mp = x > z ? -1.0 : 1.0;
z += RAD * mp;
float dx = distance(x, z);
float n = floor(dx / D) * D;
x += n*mp;
return x;
}
Тяжело не знать математики. Может местные шизы подскажут как называется такое поведение и как нормальную формулу?
у меня не текстура, в том-то и проблема, у меня есть система particles, чтобы не создавать их миллион, чтобы они покрывали все поле, я двигаю их как текстуру
JloJle4Ka # 0
)))))))))
sobakapavlova # 0 ⇈
MAKAKA # 0 ⇈
Я писал 2Д игрушки, и ничего сложнее синуса мне не приходилось понимать
[email protected] # 0 ⇈
MAKAKA # 0 ⇈
bormand # 0
Удачи там с интеловскими интеграшками. Хотя может свежие уже научились.
sobakapavlova # 0 ⇈
TOPT # 0 ⇈
sobakapavlova # 0 ⇈
TOPT # 0 ⇈
bormand # 0
Ставишь в настройках текстурного семплера VK_SAMPLER_ADDRESS_MODE_REPEAT (или как оно там в твоём графическом апи) и течёшь. GPU само разберётся.
sobakapavlova # 0 ⇈
CHayT # 0
P.S. Борманд правильно сказала про то, что OpenGL сам умеет в разные texture sampling, но вопрос был про формулу.
bormand # 0 ⇈
Для семплера это повторение текстуры, скорее всего, вообще ничего не стоит.
sobakapavlova # 0 ⇈