Shannon McSheehan - LoL FX + Knowledge Share

VFX Friday! I posted a few pieces I did from last year on Art Station but never posted them here so I wanted to do that today. :slight_smile:

A few gifs pulled from my artstation: https://www.artstation.com/artwork/Dxq6NO


The enemy version of E. It’s a shroud that hides allies inside! It’s a musical themed skin so pulses and wave forms were a big inspiration. I ended up really liking the line waves. Something simple yet detailed enough to catch your eye. The other versions for Allies inside and outside are on the Artstation post.


Senna auto’s! She has pretty different autos than most ADC’s. Her’s are beams which I found particularly challenging to have something that scaled well at such varying lengths and still looked good. Her passive meant that once at higher stacks she gains attack range. We have awesome tech to transition beam hue and distance so hers goes from a blue to pink over the lifetime of the game.


Senna W enemy version! Lots of moving parts to this one, but I ended up really liking how they all came together timing wise. It’s an AoE root for anyone in that circle. I went through so so so many versions of the missile to get it right and capture that chaotic motion while not being too distracting or losing the leading edge.


This is Aphelios, he has 5 weapons he can swap between. I mostly like the idle FX on the infernum gun, the middle blue gun, which is fire based :smiley: Swishy trails! I worked with another FX artist to get this skin done on time for ship. We split the kit into different abilities and tackled them independantly. It worked out because he has 5 different guns so quite a big of work for each of us to do. We don’t typically work that way as often it’s more of a challange for two artists to work on the same project. From checking out the same assets to possibly dissonance between styles it can get pretty tricky.

I’m also prepping for a GDC talk this year! Myself and three other kick ass VFX buddies will be speaking at the VFX Bootcamp on Monday about Things We Wished We Knew Before Jumping into VFX. Should be fun! I’m stubbing in images for my parts. Haha I am an artist :grimacing:
image

I hope it turns out well! It’s exciting to see it all come together :octopus: Hope everyone had a great new years and happy holidays. :christmas_tree: :partying_face: Happy to answer any questions about the above FX creation.

20 Likes

Happy new year Shannon! Good to see you again around here! :sparkles:

speaking at the VFX Bootcamp on Monday about Things We Wished We Knew Before Jumping into VFX

That sounds like something that would definitely be useful to see! Any idea if it will be recorded and posted online, or is it exclusive to attendees?

Hey RyVan, sorry if it’s disappointing to hear but I’m not aware of any plans to make it broader than GDC attendees and vault access members.

No problem at all, there’s always this forum to post any questions in! :smiley: Thanks for letting us know!

Great work Shannon! really want to know the way of creation about those pulses , wave forms and line waves in both SENNA’s E and W. Thank you !

Oh no, I’m getting a warning before posting here “Are you sure you want to continue this old conversation?” haha rip.

Thank you for your patience with my inactivity in answering questions that I’ve still yet to answer. @MetaZ I’m looking at your question about Senna E and W! :sweat_smile:

I did do an episode for the Real Time VFX Podcast with @TravisMcCallum Please go over to his thread to check it out. Happy to answer additional questions if there are any here.

I’m also participating in a livestream tonight at 6pm. This one is mostly focused on the VFX of League of Legends


Trails! I know I’ve talked much about them here before ~ You can get some great motion to trails by making sure that your texture makes sense for the direction that it’s going to flow. Make sure the eye has shapes it can follow as it flows that emphasize the direction and add interest to the shapes. If you want a dissipation feel try increasing the trails width over it’s lifetime to mimic the motion of a wake (like from the back of a boat). If you have the option you can always shorten the UV tile along with it to get less detail over the lifetime of the trail. That will help keep more interest/detail towards the leading edge of the trail. For funs also try adjusting the scroll speed over it’s lifetime. I’ve found that fast scroll into slow scroll with the above adjustments gives me a nice dissipation of energy look.

To get the value depth I’m spawning two trails with the same UV tile, one additive the other either subtractive or alphablend depending on the look I want. The lifetime of the alpha/subtract trail is shorter than the additive to keep the contrast at the head of the trail. Especially if you’re trails will go in mostly a straight line you don’t need much tessellation so can get away with two trails easytown.

Something else to try if you want a ribbon feel - keep the highest value of your trail texture to the edges for a more ribbon like look. It mimics the defined edge sheer ribbons have.
image

23 Likes

How do you deal with common artifacts such as overlapping on steep curves (when the character suddenly turns 180 degrees, etc.)? :sparkles:

5 Likes

@MetaZ Here is more info about how Senna E waves and W wave forms were made. Please let me know if you have any other questions :smiley: It was fun to go back and revisit the effect

So for Senna E waves, here is the mesh! There are bumps in the mesh itself but also distortions on the UV’s themselves to help when the wave texture moves over the mesh feel like it’s pushing and pinching in the right areas to emphasize the motion.
image
I have the mesh rotating randomly 360 degrees when it spawns to break up the repetition. Similarly I have the UV’s shrunk so that the mult texture goes cleanly over the whole UV during it’s lifetime.

Here is that mesh with this image suuuuper small lined texture scrolling over it. Any smaller and it looked a little too fuzzy with compression. Already looks kinda trippy. As my husband just said AH MY EYES :slight_smile: I slowed the spawn rate down so you could see what just one mesh looked like.
Sberke_Senna_E_waves_01
image
You might notice that the lines aren’t scrolling linearly across the mesh, nor does the UV scale stay uniform. I’m changing those values over it’s lifetime to the values above. I have the values stay static after .6 seconds because I will also add an erosion and a mult. It was too much movement also having the UV scroll and scale still zoomin :smiley:

Also ya I totally can see the seam :grimacing: BUT again I knew I was going to add other textures so it wasn’t worth it at this stage to spend a bunch of time noodling with trying to get it perfect.

NEXT I added an alpha erosion. I eroded the line texture with this circle texture image
Sberke_Senna_E_waves_02
The lines with the circle erode are on the left, the circle texture that I’m using to erode the lines is on the right. Trippy right? :smiley: You can get some really cool looks with circles over squiggly UV’s like this.

Okay now that I had an erosion dissipation I wanted, the lines were just TOO MUCH detail for the eyes. I multiplied this texture over the lines: image
Sberke_Senna_E_waves_03 Sberke_Senna_E_waves_04
So the left is what that squiggly texture looks like by itself on the mesh. that’s what we’re going to scroll across the mesh over it’s lifetime as a multiply. The right side gif is that same texture set up as a multiply with NO scroll speed.

And now that same mult texture WITH scroll!
Sberke_Senna_E_waves_05

And now at the spawn rate I actually have in the ability itself ~
Sberke_Senna_E_waves_06

I do find it fun to look at. It kind of makes a weeoo weeoo sound to me in my head as it goes haha. Here it is with color! I start with blue which turns into pink over it’s lifetime.
Sberke_Senna_E_waves_07

All together ~ (I retimed the emitter life so that it could be a shorter gif)
Sberke_Senna_E_waves_08

I’ll make a separate post here about the wave forms, this ended up being a lot longer than I though haha.

@Lush Wellllll in some cases it just looks like butts tbh. Quads render over each other if a player makes 180 turns really fast. Additive render mode will especially be noticeable as the quads with render over each other and look noticeably brighter. The tools that LoL has does have some options to try and mitigate the overlap though. An awesome engineer gave us two different smoothing options for longer trails to either smooth from back or smooth from front. It takes into consideration the orientation of whichever you specify and tries to smooth/math out a less jarring orientation over the lifetime of the trail. You can get some nice results but with shorter life trails it often looks a bit janky as it’s trying to orient only a few quads.

There is also an option to factor in quad density to player speed. So if a player is moving faster more quads are drawn. That CAN be tricky of course because if a player say…teleports (which in LoL moves a character from one location to another. Can be a very large distance) if an artist forgets to specify a trail cap cutoff then that has caused hitching in the past haha 5 million quads! . :sweat_smile: Because of that there was a property for max trail cuttoff distance added as well as max spawn rate. Sometimes you gotta learn the hard way. :joy:

32 Likes

So much appreciated about this!So creative, smart and brilliant ! You do have deep understanding about UV scrolling and texturing and modelling skills to get high quallity and creative effects with a lower costs way. I really call it magic !! Just open my mind as always.

3 Likes

Looks great, do post a breakdown would be awesome :slight_smile:

Damn, there is a hope that one day I will finally have read everything down here! I already read almost a third of all the great artworks and tricks in this post and I can’t thank all of the community, and especially our wonderful thread host, enough for all the guidance in there! :heart_eyes: (and all the hours of late-night reading it :wink:)

1 Like

Hey Shannon and anyone else that Might be able to help, I’m trying to recreate this effect, and I’m just wondering about the approach to this part of Vel’koz’s W.
Thank you :slight_smile:

Hey Sam! Happy to help where I can :smiley: Is there a particular aspect of the effect you’d like to know more about?

Super Helpful. Can’t believe that trick also using UV scroll! Thank you for your sharing ! cheer!

1 Like

I was wondering about how I’d go about the crack in the ground, at first I thought it was just painted but would I be right in assuming that its a mesh?

I also had a similar question to Sam’s last question. I feel like I asked this once, but I can’t remember what the answer was. For vfx meshes or textures that feel environment related (Vel’koz W, Morgana W, Orn Q) are those modeled and textured by the vfx artist, or does a character artist handle that? A mix of both? Just asking about the static ones, since I’m guessing things like Zyra’s plants and the claws on Thresh’s Box are animated.

1 Like
  • @Travis I haven’t forgotten about you two! Thank you for being super patient. Truth is now that I’m on RnD + I got a new SSD I didn’t have LoLPC synced anymore so had to re-get ALL of those files which was a cake show to pull everything down. My goal is to use their tools to get you better reference for when I explain how it’s done there.
3 Likes

Oh! No rush! That sounds like a lot of work :scream: and I know you’re doing all of this in your free time. Thank you so much! Take your time

2 Likes

A post was split to a new topic: Issues creating trail in unity