Releasing my League VFXs Fan-Arts for Study Purposes

Hello, everyone!

As I have mentioned earlier, here’s the quasi-totality of my League VFX Fan-Arts, made in Unity. This is a full project, so you’ll have access to all my shaders, materials, textures, particle systems, meshes, animations, etc… for 14 different skins. That’s around 90 shaders (some of them can be similar to each other, some can be unique, while some are just evolutions of previous ones), 300 textures (same for that), and about 50 different spells or attacks.

Here’s the videos playlist, if you want to see what the download is about:

Fan-Made League FXs

One important thing, though: I do not own any rights on anything that Riot made (like the characters, their animations or their textures), of course. This is simply a collection of VFX Fan-Arts, and I am only sharing this for STUDY purposes. As my VFXs are (for the most part) driven by the characters animations, I cannot really separate them. @Keyserito, @ShannonBerke, if this is an issue at all, I will take down the project ASAP. :slight_smile:

So, please, do NOT misuse any files in this project.

My only intent is to allow people to study how I designed and implemented the visual effects in Unity, and show my own studying progress. You’re free to reuse any shaders or textures I made, though, as long as you tell me. :slight_smile:

Here’s the download link. Current Unity version is 5.5:

Also, the two other FXs I previously shared:
Hextech Anivia:
Portal FX:

Please be aware that none of what’s in this project is directly usable in the game.

Also, I am no programmer, so the scripts can be clunky at times. And probably not in their best shape. Most shaders, meshes and textures could be improved and optimized. I did not spend the time doing that, considering it was only to make videos. If you plan to reuse my shaders or textures, I believe it’d be best to first optimize them properly.

Finally, ShaderForge is obviously not included in the package. If you want to view or edit the shaders, you will need to import it.

I have added a “League of Effects - Controls.txt” file in the .zip. Please read it. It contains all the controls you’ll need to play around with the spells, as well as some more information.

Here are all the controls per skin, just in case. They are ordered chronologically, both here and in the engine. Use/View/Modify them by opening the appropriate scene in the root of the project.


The code I wrote has evolved greatly from the beginning, becoming more and more complex over time. Thus, the first spells are very simple and can be a bit clunky. The latest skins are much more complete, and can sometimes (like Lux, Annie or Jhin) better reflect what would be expected from a game environment, excepted the movement and targeting. Some errors can happen too, but as I’ve tested each and every scene before release, everything should be working fine. The few exceptions are listed below.

Also, please wait for the animations to finish before starting a new one.

Click to show:

[details=Star Guardian Karma]1) Star Guardian Karma

Use “Q” to start her Q animation
Use “R” to start her R animation[/details]

[details=Arcade Braum]2) Arcade Braum

Use “R” to start his R animation. Takes about 2 seconds to appear.[/details]

[details=PROJECT Bard]3) PROJECT Bard

Animations don’t reset. Please restart the engine for each animation.
Use “Q” to show the complete heal animation
Use “W” to show the heal, stepped on by an enemy
Use “E” to show the heal, stepped on by an ally[/details]

[details=Shadow Isles Darius]4) Shadow Isles Darius

Main code changed a bit. HUD not really working, up to Arcanist Jinx.

Use “R” to start his R animation. Might unsync if you reactivate too early.[/details]

[details=Void Brand]5) Void Brand

Use “W” to start his W animation[/details]

[details=Arcade Garen]6) Arcade Garen

Use “R” to start his R animation[/details]

[details=Arclight Ashe]7) Arclight Ashe

Use “R” to start her R animation[/details]

[details=Common from Arcanist Jinx → Void Annie]*) 8) Arcanist Jinx → 14) Void Annie

The main code has been changed a lot.

You can now switch scenes (only 8 to 14) using the HUD.

Q/W/E/R to activate the different spells.
Space to auto-attack
C to switch cameras
D to slow down Time
F to speed up Time
T to reset Time speed
H hides the HUD[/details]

[details=Arcanist Jinx]8) Arcanist Jinx

Q: switches weapons.
Space auto-attacks using the current weapon.
W: working as intended.
E: lays traps and launches Garen’s animation, trapping him.
R: working as intended.[/details]

[details=Hextech Veigar]9) Hextech Veigar

Q/W/E/R/Space working as intended. Nothing special on this one.[/details]

[details=Star Guardian Gragas]10) Star Guardian Gragas

Q: throws the barrel, which then charges and explodes. This is one animation, so please wait for it to finish before starting a new one.
W: was supposed to add a buff, but I kinda forgot about it.
E: working as intended.
R: has some shader issues. Couldn’t find the culprit right now.
Space’s auto attack animation is clunky, due to the exporter plugin I used.[/details]

[details=PROJECT: Karthus]11) PROJECT: Karthus

Q/W/E/R/Space working as intended. Nothing special there.
B: plays the Recall animation.
K: kills Karthus and triggers his passive. Cannot use spells while dead like in the game, sorry.[/details]

[details=Dark Star Lux]12) Dark Star Lux

This one has sounds. Careful for your ears !
Q/W/E/R/Space working as intended.
Q/W/R apply the passive. R refreshes it.
Space procs it on hit.
Q: roots the target.
W: shields twice.
E: can be reactivated upon arrival. If not reactivated, will explode by itself. If reactivated before arrival, it’ll reset the animation. Please avoid doing that. :stuck_out_tongue:
K: kills Lux.[/details]

[details=Battlecast Jhin]13) Battlecast Jhin

Might take a while to load.
This one has sounds too. Also, random VO player that plays one chosen line on each animation if none is playing, with a small randomization.
Q/W/E/R working as intended.

Space’s autoattacks work just like in the game: they have 4 charges. The fourth one is more powerful. Once the fourth shot if fired, Jhin reloads. Does not reload automatically after x seconds.
Q: spawns three minions, killing one of them on each bounce, then exploding on Garen.
W: fires a skillshot. If Garen has the mark, it’ll root him.
E: poses a mine that activates, then explodes after a few seconds. Reveals and marks the target.
R: zooms the camera out. You can reactivate R to shoot 4 powerful bullets. The 4th shot is more powerful. Once the fourth shot is fired or the time is over, the camera zooms back to the normal view.
B: plays the Recall animation.
K: kills Jhin.
L: kills Garen, spawning an exploding flower.
4 (numpad): plays the Laugh animation.[/details]

[details=Void Annie]14) Void Annie

Q/W/E/R/Space working as intended.
Voices not in the engine. They were added in post-prod.

Auto attacks don’t do anything special.
Spells charge the passive. Once the passive reaches the fourth proc, it activates the stun. On the next damaging ability, Annie stuns the target.
K: kills Annie.
B: plays the Recall animation.
R: spawns Tibbers. Tibbers uses some special controls, described below. The first Tibbers spawn might freeze the game a bit. Sorry.
Tibbers appears in a damaging AOE, stunning the target if the passive is up.
U: makes Tibbers attack his target once.
I: enrages Tibbers, who attacks his target multiple times, and faster.
E: procs the shield on both Annie and Tibbers.
Y: kills Tibbers. The Tibbers death VFX would need to be optimized a lot. It is way too heavy right now.
4 (numpad): plays the Laugh animation.
3 (numpad): plays the Dance animation.[/details]

As always, I am highly open to feedback, suggestions or questions, though I will most likely not touch any of those skins again. Feel free to contact me for anything, either here or on my email directly. :slight_smile:

Have a good day~!


Kevin You are awesome :slight_smile:
What a great morning to start studying with …

God bless you. Keep the good work up.

1 Like

This is fantastic news! Just starting out but I’ve already done my fair share of going through your awesome work in slo-mo :smiley: Thanks for sharing the knowledge!

1 Like

I really appreciate this, thanks @Sirhaian! I’ve been following your stuff since your Chinese New Years Ezreal ult for the Riot Art contest on Polycount. It’s gotten even more amazing since then (Pretty sure that was you… 0_o)

@ Sirhaian, You’re hero. Thank you for putting this out there for us to learn.

Hey! Yes, that was me. It ended up being a lot different from Ezreal’s ultimate though. :smiley:
And I was using UE back then, too. :’)

Glad it helps! Let me know if there’s anything that doesn’t work, or anything that would need some clarification. :slight_smile:

1 Like

This is truly amazing. Thank you so much for being a huge help at sharing knowledge in the community. I’ll be pointing people toward this for a very long time to come.


Thanks! :smiley:
Really glad it can help. I’ll keep doing that for my future personal projects.
And I hope some other people could follow. I believe it would really help everyone out. :slight_smile:

1 Like

@Sirhaian guys,Thanks very much!It’s so great that sharing your making method and help people like me that can make my effect follow your think and skill.:heart_eyes:

1 Like

This is awesome! I’ve wanted to make my own fan art fx/practice in the past, but ended up making my own full Irelia with animations just to do the fx. Which, obviously, isn’t very efficient. :stuck_out_tongue:

How did you get the models and animations?

1 Like

While I do not know if that is a good or a bad thing, there’s a program that allows you to extract the game resources: Wooxy. :slight_smile:

Then, using a plugin, you can open the files in Maya and then export them in fbx for Unity. :slight_smile:


@Sirhaian I love this!!!Thank you for putting this out there for us to learn.

1 Like

@Sirhaian: Great, thanks for the tip! I may revisit mine again then. XD

1 Like

That is amazing! Thank you!

1 Like

WHOA! This is the type of thing I could only dream existed when I was still learning this field. You are going to make a ton of people happy with this, thanks for doing it! Kickass work :smiley:

1 Like

Thanks a lot! :smiley:

1 Like

@Sirhaian Thank you, let me solve a lot of questions

thanks for share! Hope you make more tutorial! You are awsome :slight_smile:

1 Like

谢谢你的分享! 希望你能分享更多的教程! 非常感谢~

1 Like

Fantastic stuff mate, Right in time for the weekend.