diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-03-08 23:52:58 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-03-08 23:52:58 +0400 |
commit | 9b8dae71a5e0f5cccb4031dbe5f07aae01744c82 (patch) | |
tree | 8a575ab4a9e6835eef2175209ee323df883fd0ac /source/blender/editors/space_node/drawnode.c | |
parent | 0f3e1821eae40c7cebfcf199b58370971b57fa35 (diff) |
Cycles: support for environment texture "Mirror Ball" projection mode, next to
existing "Equirectangular". This projection is useful to create light probes
from a chrome ball placed in a real scene. It expects as input a photograph of
the chrome ball, cropped so the ball just fits inside the image boundaries.
Example setup with panorama camera and mixing two (poor quality) photographs
from different viewpoints to avoid stretching and hide the photographer:
http://www.pasteall.org/pic/28036
Diffstat (limited to 'source/blender/editors/space_node/drawnode.c')
-rw-r--r-- | source/blender/editors/space_node/drawnode.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c index bc22e668b5a..64af846a79b 100644 --- a/source/blender/editors/space_node/drawnode.c +++ b/source/blender/editors/space_node/drawnode.c @@ -1093,6 +1093,14 @@ static void node_shader_buts_tex_image(uiLayout *layout, bContext *C, PointerRNA uiItemR(layout, ptr, "color_space", 0, "", ICON_NONE); } + +static void node_shader_buts_tex_environment(uiLayout *layout, bContext *C, PointerRNA *ptr) +{ + uiTemplateID(layout, C, ptr, "image", NULL, "IMAGE_OT_open", NULL); + uiItemR(layout, ptr, "color_space", 0, "", ICON_NONE); + uiItemR(layout, ptr, "projection", 0, "", ICON_NONE); +} + static void node_shader_buts_tex_sky(uiLayout *layout, bContext *UNUSED(C), PointerRNA *ptr) { uiItemR(layout, ptr, "sun_direction", 0, "", ICON_NONE); @@ -1225,7 +1233,7 @@ static void node_shader_set_butfunc(bNodeType *ntype) ntype->uifunc= node_shader_buts_tex_image; break; case SH_NODE_TEX_ENVIRONMENT: - ntype->uifunc= node_shader_buts_tex_image; + ntype->uifunc= node_shader_buts_tex_environment; break; case SH_NODE_TEX_GRADIENT: ntype->uifunc= node_shader_buts_tex_gradient; |