added pressure driven HSV brush modifier
This commit is contained in:
@@ -144,9 +144,9 @@ ui::StrokeSample ui::Stroke::randomize_sample(const glm::vec2& pos, float pressu
|
||||
s.size = 800.f * m_brush.m_tip_size * (1.f - rnd_nor() * m_brush.m_jitter_scale) * size_dyn;
|
||||
s.flow = m_brush.m_tip_flow * (1.f - rnd_nor() * m_brush.m_jitter_flow) * flow_dyn;
|
||||
auto hsv = convert_rgb2hsv(m_brush.m_tip_color);
|
||||
hsv.x = hsv.x + (rnd_nor() - 0.5f) * m_brush.m_jitter_hue;
|
||||
hsv.y = hsv.y + (rnd_nor() - 0.5f) * m_brush.m_jitter_sat;
|
||||
hsv.z = hsv.z + (rnd_nor() - 0.5f) * m_brush.m_jitter_val;
|
||||
hsv.x = hsv.x + (rnd_nor() - 0.5f) * m_brush.m_jitter_hue + (pressure * 2.0f - 0.5f) * m_brush.m_tip_hue * m_brush.m_tip_hue_pressure;
|
||||
hsv.y = hsv.y + (rnd_nor() - 0.5f) * m_brush.m_jitter_sat + (pressure * 2.0f - 0.5f) * m_brush.m_tip_sat * m_brush.m_tip_sat_pressure;
|
||||
hsv.z = hsv.z + (rnd_nor() - 0.5f) * m_brush.m_jitter_val + (pressure * 2.0f - 0.5f) * m_brush.m_tip_val * m_brush.m_tip_val_pressure;
|
||||
s.col = convert_hsv2rgb(hsv);
|
||||
return s;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user