HDR color picking was not working for node space
This commit is contained in:
@@ -1975,7 +1975,7 @@ int ED_space_image_color_sample(SpaceImage *sima, ARegion *ar, int mval[2], floa
|
||||
if (ibuf->rect_float) {
|
||||
fp = (ibuf->rect_float + (ibuf->channels) * (y * ibuf->x + x));
|
||||
|
||||
if (ibuf->profile == IB_PROFILE_LINEAR_RGB) {
|
||||
if (ELEM(ibuf->profile, IB_PROFILE_LINEAR_RGB, IB_PROFILE_NONE)) {
|
||||
linearrgb_to_srgb_v3_v3(r_col, fp);
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -383,8 +383,8 @@ int ED_space_node_color_sample(SpaceNode *snode, ARegion *ar, int mval[2], float
|
||||
|
||||
if (ibuf->rect_float) {
|
||||
fp = (ibuf->rect_float + (ibuf->channels) * (y * ibuf->x + x));
|
||||
|
||||
if (ibuf->profile == IB_PROFILE_LINEAR_RGB) {
|
||||
/* IB_PROFILE_NONE is default but infact its linear */
|
||||
if (ELEM(ibuf->profile, IB_PROFILE_LINEAR_RGB, IB_PROFILE_NONE)) {
|
||||
linearrgb_to_srgb_v3_v3(r_col, fp);
|
||||
}
|
||||
else {
|
||||
@@ -437,7 +437,7 @@ static void sample_apply(bContext *C, wmOperator *op, wmEvent *event)
|
||||
|
||||
if (fx >= 0.0f && fy >= 0.0f && fx < 1.0f && fy < 1.0f) {
|
||||
float *fp;
|
||||
char *cp;
|
||||
unsigned char *cp;
|
||||
int x = (int)(fx * ibuf->x), y = (int)(fy * ibuf->y);
|
||||
|
||||
CLAMP(x, 0, ibuf->x - 1);
|
||||
@@ -449,7 +449,7 @@ static void sample_apply(bContext *C, wmOperator *op, wmEvent *event)
|
||||
info->channels = ibuf->channels;
|
||||
|
||||
if (ibuf->rect) {
|
||||
cp = (char *)(ibuf->rect + y * ibuf->x + x);
|
||||
cp = (unsigned char *)(ibuf->rect + y * ibuf->x + x);
|
||||
|
||||
info->col[0] = cp[0];
|
||||
info->col[1] = cp[1];
|
||||
|
||||
Reference in New Issue
Block a user