At each level of fading, I’d have to have the command FastLED.show(), for each level of fading so it would show a gradual fade ?
Yes, I was assuming you were going to fade like I said and fade all the LEDs at once not just one at a time.
I just have to fade it from black up to the color I want, but it fades from bright to black.
So to go the other way you have to specify the colour of the LED in a different way. Currently you use CRGB::Yellow which is not very flexible and only sets a colour to the maximum. There are lots of ways of specifying a LED's colour. See the documentation at https://github.com/FastLED/FastLED/wiki/Pixel-reference and also other pages on that wiki to see the full range of controls you have.
Possibly the best way is to use the leds[ i ].setRGB( 50, 100, 150 ) method.
To fade up you have to have a target value of RGB you are aiming at and how many steps you want to use. Then take each final value and divide by the number of fading steps to get an increment value for each colour component. Make this increment a float value or it won't work very well. On each iteration of the fade up loop add this increment to the current value to show ( also a float type variable ). However, make this value an int before setting the pixel, like this:-
leds[i].setRGB( int(currentR), int(currentG), int(currentB));
Note the current value starts at zero and gradually gets bigger by the repeated addition of the colour increments.
With regard to that code:-
That second show does nothing as the LEDs have not been changed since the last time the show method was called.