Guilty Gear XRD Shader playground

Decided to rip some of the Guilty Gear Xrd -SIGN- models and see if I could replicate a similar, “close enough” appearance in UE4.

I think I’m getting pretty close.

Here is what she looks like in engine:

And here is what she looks like in game

Short little video showing off the ripped animation

I still have to work on her face. The normals on her face are not as they should be per the Guilty Gear shader discussion video that was put out, so I may need to re-adjust them to make them flat again for the lighting problems. Her lips are also pursed and it may be because I’m using a lower poly head model. Plus I need to find a way to cull the outline shader on her lips themselves. The outline shader itself also needs to be slightly tweaked, as well as the interior line system.

Specular is giving me a problem but overall I’m happy with how its coming along.


Wow! I’ve been wanting to recreate the shader for a long time! Care to show us your material?

Sure, they are fairly simple.

First the cel shader which is applied to the mesh. The light direction is just a directional light with the forward vector passed in through a material parameter. The material is Surface / Opaque / Unlit

Then the inverted hull shader is a surface, masked, unlit two sided.

Even more progress has been made! I (think) I figured out what the extra data I had was used for and put it to work… I believe it’s correct because it looks even better now. She now has weighted shading on individual parts, so some things that are occluded (like under her dress or her shoes) have a higher tendency to be shaded than not. Specularity has been sorted out as well, so now she has specular highlights across some pieces as well. Toned back the outline shader and brightened it up so it’s not as black, smoothed the inner line rendering as well… no more nasty filtering. If the camera gets too far away, the lines are too small to render. Not quite sure how to deal with that one just yet, but it may just involve increasing the line width based on camera distance, or super sampling the scene.

Overall I think I’m pretty happy with the appearance now. Up next is trying to fix her buckles… I translated the bones closer to her body in the skeletal mesh file and when I preview animations there, they are correct, but out in the game world they go back to their pre-translation state. I may have to just translate them on beginplay which is gross but doable. Deciding if I want to maybe do another character next (like Ramlethal) or continue with one and try to get her weapons and more game like animations.

EDIT: Shrank her head slightly and readjusted it to be the same angle as it is in the game itself.

Awesome! Can you show a break down of your updated materials?

Sure thing! It’s getting a little big for its britches to fit on one screenshot but I think I can fit it in and be legible

I may move all the parameters into a character specific parameter collection and turn instead into just “Cel Shader”, so I can apply it to every character I import. The Hull shader got a slight tweak but that was just adding a color modulation to the output, not worth taking another screenshot of

I tried to replicate your shader but i got an error, “(Node if) if input A must be of type float”, any ideas on what im doing wrong?

I keep on checking thread and haven’t commented yet.

What you have achieved is fantastic. The overall look is great. I would love to be able to get working on my game, but, still fairly new to UE4 and not completely astute with all the material nodes and how everything goes together. I can make basic materials, but, nothing like .

Keep up the good work.



Probably the custom node. It’s just calling hlsl step


Im trying arround with toon-style shaders and i am also having problems recreating shader, but have no clue that i’m doing wrong.
Could you upload the shader maybe? That would be really great! It looks fantastic!

Could you possibly make a .zip file containing a version of the material that works with material instances?

Probably more than a little bit late, but I’m sure video will help.

I am also working on simulating Guilty Gear’s effect. I want to walk through the whole workflow they had. Right now I am having trouble on writing a similar cgfx shader as they did in Softimage that shows the same result in game engine.

Softimage’s service is down, I am not sure if I should do it in Maya instead. I tried the realtime cgfx shader in Maya and I don’t know if it’s my problem or it’s just Maya is not good at doing realtime shading, the result is terrible, lol.

where did you use the inverted hull shader? the mesh has had a material.

I believe the inverted hull shader is used on the duplicate of the mesh.

① In your 3d modeling software (blender, maya, 3ds) duplicate the mesh, push or pull it unitl it’s just a tiny bit bigger than the original, and then export that out.
(i don’t think you need to invert the normals on it, because it looks like the shader is doing that for you.)
② Then import it into UE4, parent it to the original mesh, giving it the same anim instance, and apply that inverted hull shader to it.

Any one know how that green (occlusion weighting) texture was created?