Size: a a a

pro.graphon (and gamedev)

2020 July 04

d

disba1ancer in pro.graphon (and gamedev)
но на шинтеле явно какие-то глюки с GL_FRAMEBUFER_SRGB и глубиной
источник

DK

Denis Kerzhemanov in pro.graphon (and gamedev)
Привет!
Можно ли засинхронизировать несколько групп потоков в compute-шейдере?
источник

d

disba1ancer in pro.graphon (and gamedev)
а насколько дешёвой будет такая операция в шейдере?
t = float(t > 0.f);
источник

A

Alexey Taranov in pro.graphon (and gamedev)
disba1ancer
а насколько дешёвой будет такая операция в шейдере?
t = float(t > 0.f);
А чем не лучше t = max(t,0.0f)?
источник

d

disba1ancer in pro.graphon (and gamedev)
Alexey Taranov
А чем не лучше t = max(t,0.0f)?
если t будет больше нуля то у нас будет t, а не единица
источник

d

disba1ancer in pro.graphon (and gamedev)
а мне надо единицу
источник

A

Alexey Taranov in pro.graphon (and gamedev)
disba1ancer
а мне надо единицу
t=max(sign(t),0.0f)
источник

A

Alexey Taranov in pro.graphon (and gamedev)
Но не даю гарантий что лучше)
источник

d

disba1ancer in pro.graphon (and gamedev)
Alexey Taranov
t=max(sign(t),0.0f)
а что возвращает sign?
источник

A

Alexey Taranov in pro.graphon (and gamedev)
disba1ancer
а что возвращает sign?
1 если больше 0.0, -1, если отрицательные и 0 если 0.0
источник

A

Alexey Taranov in pro.graphon (and gamedev)
disba1ancer
а что возвращает sign?
источник

d

disba1ancer in pro.graphon (and gamedev)
выглядит неплохо, пожалуй его попробую
источник

A

Alexey Taranov in pro.graphon (and gamedev)
disba1ancer
выглядит неплохо, пожалуй его попробую
Всегда юзаю такую штуку для обхода бранчей, не сказал бы что эффективнее... Просто нет бранчей)))
источник

d

disba1ancer in pro.graphon (and gamedev)
Alexey Taranov
Всегда юзаю такую штуку для обхода бранчей, не сказал бы что эффективнее... Просто нет бранчей)))
у меня генератор текстуры :
vec4 defaultTexture(vec2 uv) {
   //float t = abs(dot(clamp((fract(uv) - .5f) * 256.f, -.5f, .5f), vec2(1.f)));
   float t = max(sign((uv.x - .5f) * (uv.y - .5f)), 0.f);
   return vec4(clamp(vec3(t, .0f, t), .09325f, .90675f), 1.f);
}
источник

d

disba1ancer in pro.graphon (and gamedev)
стало уже поинтереснее
источник

d

disba1ancer in pro.graphon (and gamedev)
также прикрутил мультисемплинг
источник

d

disba1ancer in pro.graphon (and gamedev)
правда резолв идёт с отключенным FRAMEBUFFER_SRGB, мне кажется это не правильно, но вопрос в том насколько сильные будут искажения
источник

A

Andrei Konshyn in pro.graphon (and gamedev)
disba1ancer
а насколько дешёвой будет такая операция в шейдере?
t = float(t > 0.f);
Есть же step(0.0, f)
источник

d

disba1ancer in pro.graphon (and gamedev)
Andrei Konshyn
Есть же step(0.0, f)
а это ещё что за зверь?
источник

A

Andrei Konshyn in pro.graphon (and gamedev)
Если right > left return 1 else 0
источник