Hello, I am a traditional programmer beginning to delve into the world of VFX and I was curious if hand writing shaders would give me a stronger portfolio than someone who used a shader generator like shader forge? What are your opinions? Thanks so much in advanced for your inputs!
I came from the opposite direction, Nodes and picked up writing shaders after.
In most cases a VFX artist won’t need to know how to write shaders but certainly having an understanding of them will go a long way.
That said, node editors often only allow you to do mostly conventional things, where as writing your own shader may allow you to craft some unique effects thus giving a stronger portfolio.
I would suggest be familiar with both.
@Agilethief thanks for the reply! Being so new to vfx work, rather than just writing some simple unity shaders for materials, it’s great to hear from people who came from the opposite side of the track than I so that I can learn the common practices.
shader forge is the high level visual tool for artists/tech art, not so much low-level technicians; of course tech art is hybrid & you’d really want to do both.
[quote=“Sewellza9, post:1, topic:1799”]
[/quote]afaik code is key; for real time you craft the simplest lines to lower instruction count and memory.
pick your strength — IMO if you can be a rendering engineer you are in desperate demand within emergent mobile/VR
Honestly, I don’t think anyone cares how you made something. They only want to know if you can make that same exact cool thing that is in your portfolio work for them. If you say, “I’m a coder who does vfx that look like this!” you are going to sit down to a better negotiation than saying, “I’m a vfx artist who also codes using nodes…if you want.” Bottom line for art positions is the portfolio unless you’re specifically a tech artist. In which case it’s “how many tools have you made?”
If you can write shader code you can learn to use a node based tool pretty easily. If you can only use node based tools it can be rough trying to write shaders by hand as generally node based tools hide a significant part of shaders from the user.
For a portfolio it totally depends on what you want to be seen as, or what kind of role you want. To some extent going for a pure realtime vfx artist all that matters is if it looks good, and to a slightly lesser extent if it runs well. Having a decent understanding of how to use techniques is good, even if you don’t necessarily know how they work entirely.
However if you’re coming from a programming background I suspect you’ll be more comfortable learning to write shader code and maybe do some basic graphics programming which can help make your effects look even more impressive.
It also depends on what engine you plan on using. If you’re using Unity either can work, and you can use something like Shader Forge or Amplify Shader to learn how to write shaders they both output directly into Unity shader code. If you’re using Unreal you’re going to be using the material editor far more often, and there’s not as much need for touching shader cod directly.