Discover and read the best of Twitter Threads about #shader

Most recents (16)

4 years ago, we made a series of VFX breakdowns to share with our fellow indie game devs. While we’re working on new ones, here’s a little recap’ of the tutorials we’ve made so far:
⬇⬇⬇

#unitytips #madewithunity #tutorial #Unity3D #shader #indiegame #gamedev #gameart
Retrowave Image Effect Shader 🕹
Electric Arc Effect⚡
Read 8 tweets
I helped out the wonderful @by_index team to create this project
👉 bizupagency.com/en/

This twitter thread is a break-down of the homepage WebGL #threejs interactive animation:

🧵👇
1 - Problem decomposition 🔁

The idea was to have an interactive glossy 3d ball that would interpolate between different states on scroll 🖱

At this point I know that a custom #shader is going to be involved as well as a sort of key frame manager for the state interpolation Image
2 - Interactive Bump (1/4) 🤜🤛

With this idea,
I also needed to come up with a mouse interactivity visual on the ball that would be present throughout the animation

These next few parts will be about the development of that “mouse bump”
Read 11 tweets
Simple barriers, inspired by the concept art by Pavel Savchuk artstation.com/artwork/w8gAEw

#shader #realtimevfx #gamedev #unity3d #VFX #amplifyshader
Well, I guess mixed media uploads are available only on mobile apps so I'll post them in separate tweets
Read 6 tweets
1/ Everybody told me they liked the last thread about simple effects in Pinni, so why not another one?

Customizable transition shaders in less than 4 lines 🧵:
#gamedev #tutorial #shader #hlsl #madewithunity
2/ Once again starting from a basic fragment shader. This will work in ANY engine, but we're using GLSL for simplicity.

Here's our base texture:
3/ What's the goal of this shader?

1. We want to black out the screen up to a certain point
2. That point should depend on the progress of the transition

Let's map the path of the transition in black and white. We can get a value based on each UV's distance from the center.
Read 12 tweets
1/ Have been asked about the Pinni distortion effect quite a few times, so thought I'd explain how it works.

One of my fave effects, displacement maps 🧵:
#gamedev #tutorial #shader #hlsl
2/ Going to start with a basic texture from Pinni to demonstrate each step.

The shader can work in any game engine; in Pinni we use Unity's awful shaders language, but for readability I'll be using HLSL. ImageImage
3/ Distorting an image from a fragment shader basically means taking each UV coordinate and moving it.

We want to move in the opposite direction of the origin, which we can get from the normalized (direction-only) result of our UV coordinate minus the center. Image
Read 14 tweets
Got some LINEWORK comments on my Lantern post
So here's a thread on Linework process & my learnings from this project:

1/12
Linework is a topic Tech-Artists think a lot about—It’s partly why I started this project: ImageImage
2/13
Like w/ any Realtime Shading Feature, the best solutions balance Fidelity, Workflow, & Performance.

The general problem with linework in games comes down to Texture res vs. Memory, and Compression-artifacts/Pixelation—especially if players can get really close to objects.
3/13
Increasing texture-res for each asset, even with optimal UVs, just doesn’t move the needle enough to be practical. It would also have major fidelity issues on low-spec hardware, mobile, etc. So just drawing the lines was a no-go:

ex: Look at them gnarly pixels😱 Image
Read 14 tweets
Based on this, just converted to unreal material graph: shadertoy.com/view/NddcDr
Full graph: ImageImage
Read 6 tweets
🧵
Here is a small breakdown of the impact frame effect I used in my previous tweet (The effect is inspired by @__grit 's hand drawn impact effect). It's post process based.

#VFX #RealtimeVFX #shader #madewithunity #gamedev
The first step of the effect is to get the scene outlines. I used some color/normal/depth edge detection algorithm from @alexanderameye alexanderameye.github.io/notes/edge-det… and made some BIG outlines.
The second step is to blur the outlines to get rid of the hard edges. So radial blur + simple blur. (Radial blur example from @HarryAlisavakis : halisavakis.com/my-take-on-sha… )
Read 7 tweets
🔽How I made this cool "LED panel" effect in Unity
⚠️Disclaimer: I have no idea what I'm actually doing

#madewithunity #unitytips #shader #vfx #unity
Now, the easiest way of doing this would be with a simple scrolling texture. However, if you need many different messages, you need many different textures, and file size can be a problem if you are targeting mobile platforms (which I'm doing)
So instead, I'm only going to use one "high res" mask texture, and keep all the other ones with a really small resolution, which scales better the more textures you need (I think that makes sense?)
Read 9 tweets
Rain Ripples with normals yayyy☔️

No flipbooks or particles used:D Also already have ideas on how to remove the tiling for example. (Full explanation in the comments~)

#madewithunity #unity3d #gamedev #shader #screenshotsaturday #vfx #Realtime
I didn't really liked the approach of using a large flipbook or a realtime rendered texture for rain. Kinda seems overkill for such a small effect. Also the flipbook approach has a limited framerate on top.
But then it hit me, that a single ripple could easily be recreated with good old polar coordinates! But that's just for one ripple only, right? Well then take a look at this little texture here to the left:'D Image
Read 8 tweets
Here, have an
indian temple!

much details!
Explanations!

#madewithunity #gamedev
11 modules ✨✨✨
ONLY base color Image
Nice shots! 📸 ImageImageImage
Read 16 tweets
Finally what I actually wanted to post 😅

Here is a first dynamic update version of the rendering

Got a couple of things to optimize and reduce/remove some expensive operations that cause drops in the video

@ElaborateGames @AlexanderBorner @unity3d #screenshotsaturday
BTW

Doing shadow culling could potentially improve performance a lot

but it's perhaps not necessary for our usecase so that's just a sidenote
Started adding support for additional properties per instance (test with subtle brightness variation)

@ElaborateGames @unity #gamedev #madewithunity Image
Read 39 tweets
Oops, I accidentally set a varying into itself in vertex shader. Actually had no idea that was possible. #shader Image
This is accidentally a perfect demonstration of @zeuxcg's optimizer on a grid. Without (1/2): #shader #cg
Read 5 tweets
Today I made my first ever compute shader. Not sure why I haven't done it sooner, it's fun. And I'm already deep down in the rabbit hole. Goodbye world #shader #madewithunity
This is actually the whole compute 😬 I'm a fraud, everything else is smoke and mirrors. Wanted to simulate smth that's not a texture so particles are a logical thing to do. 99% of the time was figuring out how to set it up and render and why nothing is happening when it should. Image
I said "it's fun" and then I said 99% of the time was rough.. What I mean is it's one of those "I drew a triangle!" moments when it starts working and now you fell so excited because you know you can start making really fun stuff.
Read 3 tweets
Shaders requires an understanding of light and other basic principles that rules our perception. ⁦@pixelspiritdeck⁩ can be your guide on that path pixelspiritdeck.com
00 VOID: The empty canvas. Full potential. The absence of light before creation. In this empty space the main() function lies alone.
01 JUSTICE: with the severity of a sword this card cuts the space judging. The step() function turns the gradient of the horizontal axis into oposites. The first argument, the threshold, divides between full & empty, active vs passive. Like Procrustes this card force his own rule
Read 18 tweets
I've been using flow maps a lot recently to get some cool vfx. In this thread, I'll talk about some things you can do with few math and some textures #unity #vfx #shader
Let's start with simple flow map shader. You can use this (not mine) as starting point gist.github.com/TarasOsiris/e0… We can set a vector directly to drive the flow. So, flowDir = float2(1,0) set the flow to the right. I created this texture with "difference clouds" filter in gimp.
If we expose that vector as a property we can control the flow direction. We can also expose properties to control the lerp speed and flow speed.
Read 11 tweets

Related hashtags

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!