Dan Moran
Dan Moran
  • Видео 24
  • Просмотров 2 257 358
Shaders Case Study - Distortion FX with Unity's Post-processing Stack v2
Get the Shaders for this Video here ➜ github.com/Broxxar/PostProcessDistortionFX
Support me on Patreon ➜ www.patreon.com/DanMoran
Follow me on the Twittersphere ➜ DanielJMoran
Extra Links:
Environment Art ➜ www.kenney.nl/assets/nature-pack-extended
Character Art ➜ www.kenney.nl/assets/3d-characters
More Kenney Game Assets ➜ www.kenney.nl/assets
Music:
Pokémon Mystery Dungeon: Gates to Infinity OST - Tyrain Maze (Inner Chamber)
Ryoma Nakamura, Keisuke Ito, Yasuhiro Kawagoe
Просмотров: 52 245

Видео

Shaders Case Study - Dead Cells' Character Art Pipeline
Просмотров 150 тыс.5 лет назад
Get the Shaders for this Video here ➜ github.com/Broxxar/PixelArtPipeline Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Extra Links Gamasutra article on Dead Cells' art ➜ www.gamasutra.com/view/news/313026/Art_Design_Deep_Dive_Using_a_3D_pipeline_for_2D_animation_in_Dead_Cells.php Bonus explanation of normal mapping using inverse Matr...
Shader Fundamentals - Image Based Lighting
Просмотров 47 тыс.6 лет назад
Get the Shaders for this Video here ➜ github.com/Broxxar/ImageBasedLighting Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Extra Links Free PBR ➜ freepbr.com/ HDR Labs sIBL Acrhive ➜ www.hdrlabs.com/sibl/archive.html Music: Mass Effect Andromeda - Galaxy Map Theme John Paesano & EA Games Soundtrack
Shaders Case Study - Brawl Stars: Toon Shading
Просмотров 96 тыс.7 лет назад
Get the Assets for this Video here ➜ github.com/Broxxar/ToonShading Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Music: Red Dead Redemption Soundtrack - Estancia, 2010 Bill Elm & Woody Jackson
Shader Fundamentals - Normal Mapping
Просмотров 166 тыс.7 лет назад
Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ github.com/Broxxar/NormalMapping Music: Donkey Kong Country: Tropical Freeze - Stickerbrush Symphony, 2014 David Wise & Kenji Yamamoto
Shaders Case Study - Dishonored 2: A Crack in the Slab
Просмотров 52 тыс.7 лет назад
Check out The Debug Log ➜ thedebuglog.com Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ github.com/Broxxar/ACrackInTheSlab Music: Dishonored 2 OST - Emily Kaldwins Theme, 2016 Daniel Licht
Channel Update - Hey, remember me?
Просмотров 12 тыс.7 лет назад
Ooops I accidentally a whole four months of my life. Is that bad?
Shader Case Study - Glowing Object Outlines
Просмотров 89 тыс.7 лет назад
Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ goo.gl/LJQRFl
Shaders Case Study - Pixel Art Palette Swapping
Просмотров 54 тыс.7 лет назад
Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ goo.gl/5LKV4o Title card and thumbnail art originally by: BlueASIS ➜ StonieBlueASIS Music: Baby Blue Sky - Easther's Dreams, 2016 OCReMix ➜ ocremix.org/ Chimpzilla ➜ chimpazilla halc ➜ dr_halc
Shaders Case Study - No Man's Sky: Topographic Scanner
Просмотров 93 тыс.8 лет назад
Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ goo.gl/dKA0sT Music: No Man’s Sky: Music For An Infinite Universe, 2016 65daysofstatic
Shaders Case Study - Overwatch: Winston's Barrier Projector
Просмотров 73 тыс.8 лет назад
Support me on Patreon ➜ www.patreon.com/DanMoran Follow me on the Twittersphere ➜ DanielJMoran Get the Assets for this Video here ➜ drive.google.com/drive/folders/0B53FgoEwVzoDTTd4VmsxQWNUdnM?resourcekey=0-FvdchAYkcaHa68DLzEx92w&usp=sharing Music: Synaesthesia Auditiva, 2016 Lúcio Rejuvenescencia This video is for educational purposes. Don't be silly and use this effect "as is" in y...
Shaders Case Study - Stealth Games' XRay Vision
Просмотров 60 тыс.8 лет назад
In this video, we explore how a common effect from Stealth Games could be realized in Unity. Support me on Patreon: www.patreon.com/DanMoran Follow me on the Twittersphere: DanielJMoran Get the Assets for this Video here: drive.google.com/drive/folders/0B53FgoEwVzoDTTd4VmsxQWNUdnM?resourcekey=0-FvdchAYkcaHa68DLzEx92w&usp=sharing Music: Deus Ex: Human Revolution, 2011 Michael McCann ...
Shaders Case Study - Hearthstone: Golden Cards
Просмотров 156 тыс.8 лет назад
In this video, we explore shader techniques for recreating the effects of Hearthstone's animated Golden Cards. Support me on Patreon: www.patreon.com/DanMoran Checkout more Artwork by Jeremy Chong: mixppl.artstation.com/ Follow me on the Twittersphere: DanielJMoran Get the Assets for this Video here: drive.google.com/drive/folders/0B53FgoEwVzoDTTd4VmsxQWNUdnM?resourcekey=0-FvdchAYkc...
Animation 102 - Animating 2D Characters
Просмотров 65 тыс.8 лет назад
In this video, we'll animate a 2D Character made up of multiple sprites, explore different ways of setting up a basic Animator, and drive our animator from a script. Support me on Patreon: www.patreon.com/DanMoran Hit me up on Twitter: DanielJMoran Get the Assets for this Video: drive.google.com/drive/folders/0B53FgoEwVzoDTTd4VmsxQWNUdnM?resourcekey=0-FvdchAYkcaHa68DLzEx92w&usp=shar...
Shaders Case Study - Pokémon Battle Transitions
Просмотров 116 тыс.8 лет назад
In this Visual Case Study, we use shaders to recreate the various screen transitions seen in Pokemon and other RPGs. Support me on Patreon: www.patreon.com/DanMoran Unity Documentation - Platform specific rendering differences: docs.unity3d.com/Manual/SL-PlatformDifferences.html Get the Assets for this Video here: danjohnmoran.com/TutorialAssets/shaders_case_study_2_assets.unitypackage Music: P...
Shaders Case Study - Spelunky Ice Cave Crystals
Просмотров 54 тыс.8 лет назад
Shaders Case Study - Spelunky Ice Cave Crystals
Ludum Dare 35 Timelapse
Просмотров 20 тыс.8 лет назад
Ludum Dare 35 Timelapse
Shaders 103 - Using Replacement Shaders
Просмотров 122 тыс.8 лет назад
Shaders 103 - Using Replacement Shaders
Welcome to Makin' Stuff Look Good in Unity!
Просмотров 76 тыс.8 лет назад
Welcome to Makin' Stuff Look Good in Unity!
Particles Case Study - The Legend Of Zelda: The Wind Waker
Просмотров 80 тыс.8 лет назад
Particles Case Study - The Legend Of Zelda: The Wind Waker
Animation 101 - Intro to Animation in Unity
Просмотров 186 тыс.8 лет назад
Animation 101 - Intro to Animation in Unity
Particles 102 - Intro to Particle Systems
Просмотров 82 тыс.8 лет назад
Particles 102 - Intro to Particle Systems
Shaders 102 - Basics of Image Effects
Просмотров 135 тыс.8 лет назад
Shaders 102 - Basics of Image Effects
Shaders 101 - Intro to Shaders
Просмотров 223 тыс.8 лет назад
Shaders 101 - Intro to Shaders

Комментарии

  • @veeruneerukonda67
    @veeruneerukonda67 Месяц назад

    First off ❤ the video, you are a very good teacher. I have a question though, how did you create those greyscale textures? Any information is gonna help me, program used method etc.. thnx in advance man

  • @forbiddenbox
    @forbiddenbox Месяц назад

    PLS UPLOADDDD ESPECIALLY FOR TOOLS IN UNITY PLEASEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE

  • @CommissarChaotic
    @CommissarChaotic 2 месяца назад

    I have extended my knowledge of shader stuff which was none simply by doing and tinkering around, I appreciate your Interactive Component stuffs

  • @MrCatoblepa
    @MrCatoblepa 2 месяца назад

    I am doing research for my PhD and this is 10 times better than any scientific paper i have read about Mikktspace normals. Thanks a lot

  • @gorkemucar13
    @gorkemucar13 3 месяца назад

    For those who fail to get the code working, this format is only supported at default 3d rendering. It won't work for URP or HDRP. Went nearly insane because of it.

  • @Hloredea
    @Hloredea 3 месяца назад

    how to make them?

  • @shackleshotgun
    @shackleshotgun 4 месяца назад

    "I'll get into art as I recover burnout after studying computer science in university. I'm sure everything will be just very calm and no math involved. :)" (jokes aside really good video but lol)

  • @ComfortZoneGames
    @ComfortZoneGames 5 месяцев назад

    I've realised that if you use normal maps on the object you want to capture, these normal maps aren't captured. The captured normal maps only contain the normal direction of the polygons not the normals per pixel (including used normal maps). Am I doing something wrong?

  • @9rrr7
    @9rrr7 6 месяцев назад

    What the fuck is going on in the background😂😂😂😂 I mean the music

  • @OakFencePost
    @OakFencePost 6 месяцев назад

    all i get is an error saying "value cannot be null" and it says that the value name is "mat" but i dont have a value or varible called mat anywhere

  • @wesley6442
    @wesley6442 7 месяцев назад

    I am having issues with game if anyone can give advice or solutions, I've been fighting to get something to work and I have gotten nowhere. I feel there is a stupid easy solution and I am just not finding it, basically I want one of the camera's in my scene to view the same object differently. The idea is you use a device that shows a 3D holographic representation of a building, it's meant to be futuristic/sci fi themed and the operator can see the building as a 3D hologram to look around at, I have tried everything to get it work and I want to avoid duplicating objects, I just want one camera to see things differently while the main camera sees normally. I have used replacement shader scripts for cameras that refuse to work, nothing changes, I've tried prefab variants that kind of work but then anything that happens to my original object doesn't update on the variant, so if a door opens for example the duplicate/variant doesn't update and then it just gets too complicated with setting up for multiple animators and other things.. it would be so much simpler if I could just get my second camera to see the building/objects with a different texture, or shader or material swap but I can't get it to work for the life of me

  • @Test-iv4pm
    @Test-iv4pm 7 месяцев назад

    I see this is viable for side-on 2d games. There is one animation, and it might be flipped. Does this technique work for top-down 2d games? I'm thinking that it wouldn't work because the animation would have to be rendered to sprites from every angle.

  • @curiouspers
    @curiouspers 7 месяцев назад

    Hey man, how is life? Wanted to say that your videos inspired me very long ago, and now I'm working as a tech artist / vfx in gamedev for several years already, so thank you very much! ❤

  • @RivertuneGames
    @RivertuneGames 8 месяцев назад

    5:06 Is that a track from Titan Souls I hear?

  • @cutescarydolls
    @cutescarydolls 8 месяцев назад

    8:39

  • @leviticus
    @leviticus 9 месяцев назад

    @DanMoranGameDev In the fragment shader, ( 3:06 in the video ), how would you invert the scene so that white is far away and black is close up? And is there a way to get rid of the color component of this shader, such that it stays in grayscale without reading the models colors? Thanks for awesome tutorials!

  • @walidchtioui9328
    @walidchtioui9328 10 месяцев назад

    Anyone watching this now: Find other resources, this video fails to explain the most basic things such as: the execution process, how v2f got passed to the frag function, #pragma etc... Nothing explained. Too bad dislike button was removed...

  • @user-br8xw3gw2e
    @user-br8xw3gw2e 10 месяцев назад

    One note, you do a lot of Animator update in the Update function, it's worth mentionning (and I don't know if that was the case 7 years ago) that you should be using IDs and not Strings to do that for performance reasons. It's a good "best practice" to have. bool _grounded = true; int groundedID; void Start() { groundedID = Animator.StringToHash("IsGrounded"); } void Update() { _grounded = ...; myAnimator.SetBool(groundedID, _grounded); }

  • @StropusDeveloper
    @StropusDeveloper 11 месяцев назад

    Hmm I can't seem to access the Code and Resources. It says "It appears you don't have permission to access this page. 403 Error. Forbidden." This doesn't seem to be working in my game. Do I need a render image assigned to my camera or something? Edit: I looked closer and it appears that you don't have a render image assigned either, I'm using the Universal Render Pipeline. Can this mess things up?

  • @joejones8533
    @joejones8533 11 месяцев назад

    how do i implement the toon lighting shader in the example project? Im trying to figure out how to apply it to my own rig

  • @pxlsoldier9551
    @pxlsoldier9551 Год назад

    will there ever be more videos?

  • @alensash406
    @alensash406 Год назад

    this is exactly what I needed to see and learn. like the basic shit like wtf is all this template code is and why it's here. I'm so relieved. fucking finally

  • @incorrigibleg
    @incorrigibleg Год назад

    this seems to no longer work as of Unity 2022... the problem is that input colors in your Sampler2D may not reliably correspond to their intended grayscale value. Thus, although you've chosen say 128,128,128,255 as the middle value, in the shader this r-val might fall between 55-56 (i.e. around .2.) It's likely that some goofy things have happened to the default sprite shaders since this tutorial was made that apply gamma correction or something of this sort... in any case, although the substitution works fine in principle, source images will be color-altered before they are available to be sampled, resulting in consistent but not mathematically simple bias in palette sampling. The distortion is so bad that even a four-color palette doesn't work as expected... if anyone knows how to get consistent sampling in shaders as of say 2022, that would be a great help - but as for now I have to abandon this useful and quite simple technique and fall back on extremely expensive operations.

    • @incorrigibleg
      @incorrigibleg Год назад

      In some new versions of Unity, it appears that Linear Color Space is on by default, but sometimes (what conditions? idk) shaders are still trying to convert from Gamma space, leading to an extra call to GammaToLinearSpace, causing colors to be wrong when you sample them. The solution, other than finding where that might happen, is just to use LinearToGammaSpace on the color that you are using to sample for replacement.

  • @pixelninja666
    @pixelninja666 Год назад

    what a brilliant explanation....well done

  • @JustLukeMinecraft
    @JustLukeMinecraft Год назад

    Amazing video, best tutorial I could find on here that explains normal maps

  • @k0walsk
    @k0walsk Год назад

    Excellent yes I understand everything now thank you

  • @iaindonnelly92
    @iaindonnelly92 Год назад

    Great breakdown, found this very informative! Don't suppose you still have the textures? Link doesn't seem to work (in fairness, I'm 7 years late to the party!)

  • @TeHzoAr
    @TeHzoAr Год назад

    miss this channel bro

  • @johnnydarling8021
    @johnnydarling8021 Год назад

    8:45 Why not just use an animated sprite (or flipbook) for the sparks? It would always face the camera, normally a drawback with using sprites, but if that’s what you’re going for…

  • @AlexandreCoulonOldChannel
    @AlexandreCoulonOldChannel Год назад

    Thanks for this cool tuto ! I tried to fade 2 textures with a tween slider, but as the solution code is no longer available (dead link), I wonder if I did it the most efficient way ? Here's the code: float4 frag(v2f i) : SV_Target { float4 texColor = tex2D(_MainTex, i.uv); float4 texColor2 = tex2D(_SecondTex, i.uv); return lerp(texColor, texColor2, _Tween); }

  • @Lost1nTranslation
    @Lost1nTranslation Год назад

    Please make more videos 😢🥲🥲🥲🥲🥲🥲🥲🥲🥲

  • @syalin4433
    @syalin4433 Год назад

    im sure im doing something wrong, but this legit does not work

  • @rupeshsappata1432
    @rupeshsappata1432 Год назад

    Amazing Video with simple and begginer friendly tutorial 🤗

  • @rubpty
    @rubpty Год назад

    A new version of this would be assome. Is not working anymore for new versions of Unity.

  • @zkll5052
    @zkll5052 Год назад

    Hi, i'm new to unity and was wondering if i can edit the demo script for the scan to happen every 3 seconds without input, if anyone could help me with that that'd be great!

  • @shabifenhong
    @shabifenhong Год назад

    weird, for spec, where is your env brdf?

  • @evilartnboy
    @evilartnboy Год назад

    For anyone who cant get it to work, copy the link and paste it into url bar

  • @manonthedollar
    @manonthedollar Год назад

    Maaaan, thank you for *finally* describing this in a way I can understand. I could never understand why a "flat" normal map was 0,0,1, but makes total sense now when you say we're multiplying the normal map values with the tangent/bitangent/normal.

  • @craftymunz7425
    @craftymunz7425 Год назад

    this explanation is amazing

  • @killpopers
    @killpopers Год назад

    Where can we find you making stuff now?

  • @jackisgoofingoff5510
    @jackisgoofingoff5510 Год назад

    This is the only case study that I can understand

  • @Redsam121
    @Redsam121 Год назад

    How did you make the shader transparent?

  • @cristiansamidossantosalves7204

    How can I make the water animation? I'm searching for a long time but I don't found what I was searching

  • @La_Chignole
    @La_Chignole Год назад

    TEX COORD !!!!

  • @mattdavisgames
    @mattdavisgames Год назад

    I was just revisiting Metroid Prime 3 and noticed they used an almost identical FoV animation for entering hyper mode, back in 2007. Wonder where this effect first appeared.

  • @fernandorodriguezalvarez6545

    As an advice for people that may be banging their heads against the wall because the array indexing doesn't seem to work as you would expect: you can use the round() function for it to consistently provide you the correct index. I was having issues where not using this function was resultling in different behaviours in different platforms (Windows, macOS, Android, iOS), and this did it for me. The default rounding made by the shader was removing the decimal part of the value, so multiplications that result in e.g. 3.999 would return 3, and therefore use the incorrect color in the array.

  • @9ameplay
    @9ameplay Год назад

    i wanna do a golden card, but i have 0 experience with this app.

  • @whitealvin2292
    @whitealvin2292 Год назад

    Hello! Thank you so much for the content in your video! But I encountered difficulties when using the plugin. I don't know how to use the files you posted on github in Unity. Could you teach me?(This text is translated, I am very sorry to cause trouble to your reading)

  • @graphics_travelers
    @graphics_travelers Год назад

    You probably won't answer this anytime soon if ever, but I still have to ask if the distortion observed at 06:39 could be described as an affine texture warping? If I understood correctly by digging through internet a bit, this problem occurs because when dividing our *x* and *y* coordinates with a *w* value in the vertex shader those values between each vertex then end up interpolated linearly which results in equal value distribution between vertices which is incorrect and unwanted in this case, because it mathematically does not account for the distortion caused by the perspective projection matrix, therefore what we actually want to do is to divide the *xy* coordinates by the interpolated *w* value only in the fragment shader where it in effect accounts for the perspective projection/distortion. Please correct me if I'm wrong, because I would really love to have a correct and solid understanding of why this happens.