var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),document.addEventListener("gform/theme/scripts_loaded",function(){gform.themeScriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>"function"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn("The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1."),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener("gform_main_scripts_loaded",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener("gform/theme/scripts_loaded",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener("DOMContentLoaded",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook("action",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook("filter",o,r,e,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,r){gform.removeHook("action",o,r)},removeFilter:function(o,r,e){gform.removeHook("filter",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+"_"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==r?t.apply(null,e):e[0]=t.apply(null,e)})),"filter"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});
/* = 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_1');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_1').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_1').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_1').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_1').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_1').val();gformInitSpinner( 1, 'https://joemcnally.com/wp-content/plugins/gravityforms/images/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [1, current_page]);window['gf_submitting_1'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_1').replaceWith(confirmation_content);jQuery(document).trigger('gform_confirmation_loaded', [1]);window['gf_submitting_1'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_1').text());}else{jQuery('#gform_1').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger("gform_pre_post_render", [{ formId: "1", currentPage: "current_page", abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( "gform_wrapper_1" ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( "span" ); visibilitySpan.id = "gform_visibility_test_1"; gformWrapperDiv.insertAdjacentElement( "afterend", visibilitySpan ); } const visibilityTestDiv = document.getElementById( "gform_visibility_test_1" ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; jQuery( document ).trigger( 'gform_post_render', [1, current_page] ); gform.utils.trigger( { event: 'gform/postRender', native: false, data: { formId: 1, currentPage: current_page } } ); gform.utils.trigger( { event: 'gform/post_render', native: false, data: { formId: 1, currentPage: current_page } } ); if ( visibilityTestDiv ) { visibilityTestDiv.parentNode.removeChild( visibilityTestDiv ); } } function debounce( func, wait, immediate ) { var timeout; return function() { var context = this, args = arguments; var later = function() { timeout = null; if ( !immediate ) func.apply( context, args ); }; var callNow = immediate && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ 'style', 'class' ], }); } else { triggerPostRender(); } } );} );
/* ]]> */
Pierre says
I’m just experimenting with 2 SB800’s and a few umbrellas. Slowly getting the hang of it and it’s good fun. Of course i’m using “normal” sized one’s, not the metropolitan sized versions you carry around Joe 😉 But it’s indeed amazing what one can achieve with just 1 or 2 umbrellas
Teknik Fotografi says
This article makes me amazed, yes i strongly agree about umbrella is simple, relatively cheap, no frills.
Josh says
Nice post Joe, with great example images. As of yet, I still haven’t put more than two SB-900s through a single umbrella. This makes me want to try for three and vary the positions!
When you say a “big” shoot through, is that something like 65 – 85″ or larger?
JimO says
No pictures of “Sasquatch”? 🙂
Bojan says
Great post Joe! Were the sample images taken at PhotoShop world shot on TTL as well?
Joe McNally says
yep, all ttl….Joe
Joe McNally says
yep, was about 65″ range or so….Joe
Ken Toney says
Joe, I hate I’m missing Orlando PSW but I’ll see you and Moose in Vegas!
Brin Reynolds says
Great advice for sure, amazing what difference a modifier makes.
Val says
How do those flashes stay on the triflash? I’ve had Nikons fall off brackets that rely on a gripping action and haven’t found any that have the lock hole required.
Rey Cuba says
Is important to understand this alternatives for me living in a poor country and subject to limitations, sometimes an umbrella and small flashes is all I found at my reach, this is why I want to thank you for your always incisive way of portrait light.
Tom McKean says
Hi Joe. Wonderful article on umbrella lighting. Especially using the larger sizes. I have been experimenting with a 60″ octa, and am getting some very nice results.
Thanks for your very nice article on umbrella lighting. Can’t wait to see what you and Lastolight come up with in new designs.
Nate Parker says
I don’t usually shoot flash as a landscaper, but when I read about it: the best lessons are here. Good stuff Mr. Joe. Thanks man.
Sebastian says
Hi master Joe,
I know this may be hard to explain with just a few lines of words. But please try. I really like the retouching of the pics from Saudi Arabia. Like the colors that blend together nicely. What are the basics of how to retouch this kind of image?
Sincerely,
Sebastian
Nikolay says
Lately my umbrellas are remaining in my bag unused most of the time, but after going through this post I feel like taking them out and giving them a second chance 😉
For my latest photo shoot instead of the umbrellas I decided to go for the White Bed Sheet as my feel light (initially I was planning to use 2-3 umbrellas to cover the job).
I’m really glad Joe that you are the kind of person that like to share your own experience which very often gives me the inspirational spark to try different approaches to my lighting and also to think out of the box.
Stevie Purves says
Hi Joe, Brilliant article, I’ve just started with using umbrellas for a light source with an SB600 in TTL and have been experimenting with your help here and on Kelby Training – amazing work, thank you!
Cynthia says
I use umbrellas almost every time for portraits- easy to transport and don’t cost a lot to replace when they get knocked over. I never thought about moving the speed lights inside them to mold the light (duh!) Thanks for the article.
Karen says
Looks like you made it onto the BBC news feed today, Joe. Or at least the “Day in Pictures” pic of photographers shooting Maria Sharapova sure likes you aiming into the Porsche.
Shannon Doser Real Estate Group says
I absolutely love these pictures. Way to break away from the traditional.
Ken Tan says
Great advise, Joe! Gonna definitely take out my umbrella again and start using them.
imageCORE says
Joe! This is great! Thanks for the post. I will be following this blog from now.
Jonathan Ellul says
you are a rockstar. thanks for all the fantastic info.
london wedding photos says
shows you you don’t need a ton of kit
Ian Hamilton says
Knowledge, not kit ….. 🙂