Unite 2017 - Realtime VFX of Spellsouls - I would really appreciate your input

Hello all,
it is my pleasure to say that our presentation for this year’s Unite got accepted - it’s about production of real-time VFX for PvP mobile game Spellsouls.

I’m part of small but awesome VFX team that made those spells (most of team are on this forum), and we would like to share as much as we can with you. To have a better insight of what I’m talking about you can check-out this ad hoc showcase:


Anyway, I have a general plan how to structure the talk and what to present but I would really like to hear your unbiased input. What would you expect to learn? What would you like to hear? How would you like for the talk to be structured? More art or more tech?

And on a side note - if anyone is visiting Unite, or will be in Amsterdam then - I would love to buy you some beer :wink:


Good job, i love it ^^
The style is great and is amazing for a mobile game, i’ll check it 10/10 <3

1 Like

Thanks! If you have any feedback, please share.

And people, don’t be shy, help me out here :wink:

1 Like

Looking good :smiley:

I’m not sure how exactly you are going to present it. But if you are using this tool, maybe don’t show them dying and respawning every time, Its kinda distracting. Also being able to go into slo motion, or seperate elements would be quite handy in a talk about vfx :smiley:

Tech or art is really dependend on who is watching I assume. If they aren’t familiar with vfx I suppose you would want to start with a general breakdown of vfx. Maybe more heavy towards layering and animation. If the crowd is mostly developers I suppose you can go more heavily into shaders.

Maybe something about the decisions you made during creations? Why you used the colors you use? Why you use the timeing and staging the way you did it? That might be really interesting :smiley:

I’d play this, but I’m prety sure I wouldn’t be able to run this smoothly on my phone ;D (I have a crappy phone)

1 Like

Awesome man, thanks for sharing it with the community ^^.
Will it be available online? :smile:

1 Like

I’d be interested in hearing about the shader setup you have, perhaps some breakdowns and textures, any tricks you came up with while working on it? :slight_smile: I really like those effects, they read really well!

1 Like

Well, I wanted to structure the entire talk around three main pillars - art,tech and pipeline - covering as much as I can.

From art side - how we art direct; how and why we choose colors; how we scale the elements; what is important for a good read; what is a typical primary/secondary/tertiary element for our spells; how we balance elements; how mobile platform affects art choices.

Tech side - how we reuse assets; how we optimize things; custom tech (shaders/tools); profiling.

Pipeline - how me make our assets; how we implement them; animation; how we make one spell from beginning to the end.

As you can see, that is a lot of things to talk about in 45-50min so that is why some input on what is important to you can be crucial.

Thank you for your input, it reinforces the vision I had so far :slight_smile:

You are welcome. We love sharing so hopefully more of that will come down the road.

Great, I plan to talk about all of those things. We don’t have many tricks though, we mostly use standard methods but in a smart way :wink:


I’m definitely very interested in hearing about optimizing for the mobile platform, something I guess you will cover in detail in the “Tech Section”?

Personally I would enjoy every little detail about that :slight_smile: Good job!

Will the presentation be available for all the folks after the event?

Yes, I plan to. But, spoiler alert, there isn’t any magical trick to it - control draw calls, minimize overdraw and avoid bones and particles if possible :slight_smile:

Thanks! :wink: As far as I know, Unity usually shares all the videos couple of weeks after the conference. Even if they don’t, I’ll see if I can share it directly here.


I have more questions than critique. All the effects looks great, the last one is my favourite. ><

1 Like

I want to hear about some interesting and unusual story of what was made by accident but somehow worked well. Unexpected moments of work with shaders, particles and so on.

And your reel are awesome!

1 Like

@yarpoplar thanks!

We at the Spellsouls team have interesting shader in Unity but nothing revolutionary as @NikolaD said. Most of the options are well known for people who do VFX, but the way our shader is build it gives us options to experiment and all made with sliders and check boxes. So potentially i can go around and click random stuff and have a lot of different effects which makes it like a toy :slight_smile:

-Using different channels of texture for different things (Green as emission/lighting, Blue as translucency/alpha and Red for grayscale which is manipulated with LUT textures)
-Use RGB texture for color
-Use alpha for “erosion”
-How much alpha impacts color.
-Use of second texture for blending (we only blend between 2 cos of limitations for mobile devices but you can have 4 if you want)
-having 11 options for Blend Source and Blend Destination (textures blending modes as Additive, multiply etc.)
-and many other options which gives us a lot of experimentation

All of this options give you freedom to test out stuff how they fit one with another.
I find myself spending some time with blending modes and changing options for Blend Source and Blend Destination
e.g. The other day I was experimenting with some blending modes and found that:
Plane with the texture of radial gradient and blend mode of
Source - OneMinusDistColor
Destination - OneMinusScrAlpha
Inverse the colors of the texture beneath it.

If you are more interested in how this stuff work i suggest you to look at this Unity - Manual: ShaderLab command: Blend

Also found out that its possible to make BlendAdd (as Blizzard call it) if i am not mistaken it should be:
Source - One
Destination - OneMinusSrcAlpha
And in our case use Blue channel as Alpha
which is great for any kind of effect that has nice colored outline because it keeps inner effect blend normally and outline be additive (e.g. white strike of Lightning with blue outline)
you can find it here: http://www.gdcvault.com/play/1017660/Technical-Artist-Bootcamp-The-VFX

I must admit that though everyday work I am looking for that happy accident and the best way to trigger it is to have flexible enough shader that updates stuff in realtime so you can go wild :smiley:

In the ShowReel that Nikola showed i dont think we used any of blend modes from above but they are coming soon with new effects for the next big update of Spellsouls :slight_smile:

And if you guys have any questions we are here to help!


Thanks for the great answer! I’m going to try some blending in the future!

1 Like

Hey guys,
I just wanted to thank everyone for your feedback.I did my talk today and I think it went pretty well. The feedback I managed to collect was extremely positive. I don’t know if anyone of you were there today, but if you were please share your thoughts.

Anyway, I hope Unity will post the video in the following weeks so I can share it with everyone, in the meantime enjoy this one slide :wink:


It was a great talk, congrats!

1 Like

Hey everyone, heads-up, the talk is online now. If you have some time then go and watch it, but I would like to hear what you think as well.

Thanks, enjoy! :wink:


Thank You Nikola for very interesting and informative talk. The shader you have is like a God of All Shaders for VFX :stuck_out_tongue: Kudos to your tech team : )

1 Like

Great talk! Thanks for sharing :slight_smile:

1 Like

This was amazing! Had to share it on twitter and people seem to like it :slight_smile: Sadly I couldn’t find you on twitter but I’ve linked the company :slight_smile:

It was really inspiring to see how you care about performance and how you use the RGB channels. Again I realized it’s so helpful when the terrain is just flat so that the single terrain-aligned polys do no intersects with the ground - speaking of intersections: Do you do something about when the spells are casted near objects/walls (so that half the spell sticks in those obstacles)?

p.s. Is the tech-tech already online which you mentioned in your talk?

p.s.s. I’ve a question about this master-shader: In Unreal I can use switches to turn features on or off but internally several different material/shaders are created when doing that. So basically this helps to organize stuff but finally it’s not really an optimization because when different blend-modes are used or other settings are set another material/shader is created anyway so that I don’t save drawcalls at this point.
How is this in Unity?