The Game Dev Cave
The Game Dev Cave
  • 640
  • 2 196 054
Fresnel - Unreal Material Course #11
In this series we'll go over all the important info you need to know to properly get started with unreal engine's material system!
Watch the full course here on patreon : www.patreon.com/posts/unreal-engine-103568300
Or here for youtube members : ua-cam.com/video/Ocdd7rvDNec/v-deo.html
Join the discord for any help you need! : discord.gg/24cdJBP
Join this channel to get access to perks:
ua-cam.com/channels/ZDqEs0yzMcQA5sT1YbZNkg.htmljoin
support the channel and development over on patreon : www.patreon.com/thegamingcaves
Get personalized Coaching : www.fiverr.com/s/2P9GaN
Переглядів: 250

Відео

Unreal Engine : Outlines WITHOUT Post Processing
Переглядів 7519 годин тому
Cartoony games usually require some sort of outlines around your characters, environments and a whole bunch of other objects. A while ago i made a video on a post processing effect to do this with. Today, let's take a look at a somewhat cleaner, if not more expensive way to get outlines. Project file downloads: UA-cam members: ua-cam.com/users/postUgkxpGiDObHo0SqSdQJSZPb1gY-qNlXyfhsi Patreons: ...
Sine and Time In Materials - Unreal Material Course #10
Переглядів 25514 годин тому
In this series we'll go over all the important info you need to know to properly get started with unreal engine's material system! Watch the full course here on patreon : www.patreon.com/posts/unreal-engine-103568300 Or here for youtube members : ua-cam.com/video/Ocdd7rvDNec/v-deo.html Join the discord for any help you need! : discord.gg/24cdJBP Join this channel to get access to perks: ua-cam....
Height Lerp - Unreal Material Course #9
Переглядів 39319 годин тому
In this series we'll go over all the important info you need to know to properly get started with unreal engine's material system! Watch the full course here on patreon : www.patreon.com/posts/unreal-engine-103568300 Or here for youtube members : ua-cam.com/video/Ocdd7rvDNec/v-deo.html Join the discord for any help you need! : discord.gg/24cdJBP Join this channel to get access to perks: ua-cam....
Custom Primitive Data -- Unreal Material Course #8
Переглядів 380День тому
In this series we'll go over all the important info you need to know to properly get started with unreal engine's material system! Watch the full course here on patreon : www.patreon.com/posts/unreal-engine-103568300 Or here for youtube members : ua-cam.com/video/Ocdd7rvDNec/v-deo.html Join the discord for any help you need! : discord.gg/24cdJBP Join this channel to get access to perks: ua-cam....
Inventory Course : Bonus video - Replacing drag drop with Clicking
Переглядів 329День тому
Many of our games will require some sort of inventory system! And let me tell you, there are too many ways to count to make something like that but today, lets take a look at how you can get started on building your own inventory system! Bonus Episode: www.patreon.com/posts/intenvory-bonus-100356841 ua-cam.com/video/TKCzpJ kdo/v-deo.html Finished Course Project files : www.patreon.com/posts/inv...
Material Functions - Unreal Material Course #7
Переглядів 21914 днів тому
In this series we'll go over all the important info you need to know to properly get started with unreal engine's material system! Watch the full course here on patreon : www.patreon.com/posts/unreal-engine-103568300 Or here for youtube members : ua-cam.com/video/Ocdd7rvDNec/v-deo.html Join the discord for any help you need! : discord.gg/24cdJBP Join this channel to get access to perks: ua-cam....
PLEASE just use CASTING
Переглядів 7 тис.14 днів тому
For 70% off 3 months free NordVPN here : nordvpn.sjv.io/TCG Casting is... a problem, but not as big a problem as people often seem to think. For sure, you need to be aware of the issues with it but blindly avoiding casting is just straight up wasting your time. So let's talk about that. Join the discord for any help you need! : discord.gg/24cdJBP Join this channel to get access to perks: ua-cam...
I Worked on This Bossfight for 3 MONTHS! Here is the Result...
Переглядів 50914 днів тому
I Worked on This Bossfight for 3 MONTHS! Here is the Result...
Material Param Collections - - Unreal Material Course #6
Переглядів 19821 день тому
Material Param Collections - - Unreal Material Course #6
Unreal Save Slot Meta Data - Showing Save Slot Data Before Loading
Переглядів 25421 день тому
Unreal Save Slot Meta Data - Showing Save Slot Data Before Loading
Vertex Colors - Unreal Material Course #5
Переглядів 40521 день тому
Vertex Colors - Unreal Material Course #5
Material Instances - Unreal Material Course #4
Переглядів 47328 днів тому
Material Instances - Unreal Material Course #4
How to make Multiple Save Slots in Unreal
Переглядів 532Місяць тому
How to make Multiple Save Slots in Unreal
Unreal Materials : Clamp, Lerp and If - Unreal Material Course #3
Переглядів 316Місяць тому
Unreal Materials : Clamp, Lerp and If - Unreal Material Course #3
Explaining Material MATH (it's not that scary, don't worry) - Unreal Material Course #2
Переглядів 495Місяць тому
Explaining Material MATH (it's not that scary, don't worry) - Unreal Material Course #2
Render Camera to Texture in Unreal Engine
Переглядів 526Місяць тому
Render Camera to Texture in Unreal Engine
Explaining Unreal Material Outputs - Unreal Material Course #1
Переглядів 445Місяць тому
Explaining Unreal Material Outputs - Unreal Material Course #1
Unreal engine Inventory Course - FREE Full Course
Переглядів 1,7 тис.Місяць тому
Unreal engine Inventory Course - FREE Full Course
Unreal's new AUTO Retargeter is MAGIC
Переглядів 471Місяць тому
Unreal's new AUTO Retargeter is MAGIC
I Spent 12 HOURS Developing My Game and THIS is What Happened...
Переглядів 522Місяць тому
I Spent 12 HOURS Developing My Game and THIS is What Happened...
Modular Control Rigs Make Rigging RIDICULOUSLY EASY in unreal 5.4
Переглядів 1,4 тис.Місяць тому
Modular Control Rigs Make Rigging RIDICULOUSLY EASY in unreal 5.4
Nanite Displacement Tessellation in Unreal 5.4 is INSANE
Переглядів 1,9 тис.Місяць тому
Nanite Displacement Tessellation in Unreal 5.4 is INSANE
Unreal Engine JUST made Animation blending TOO EASY
Переглядів 3,9 тис.Місяць тому
Unreal Engine JUST made Animation blending TOO EASY
Unreal Inventory System Course - #12 Shop Buying and Selling
Переглядів 464Місяць тому
Unreal Inventory System Course - #12 Shop Buying and Selling
Using Video Textures in Unreal Engine
Переглядів 482Місяць тому
Using Video Textures in Unreal Engine
Unreal Inventory System Course - #11 Shop Interface
Переглядів 3232 місяці тому
Unreal Inventory System Course - #11 Shop Interface
Unreal Inventory System Course - #10 Chests
Переглядів 3252 місяці тому
Unreal Inventory System Course - #10 Chests
Unreal Engine : Events V.S. Functions
Переглядів 1,1 тис.2 місяці тому
Unreal Engine : Events V.S. Functions
Unreal Inventory System Course - #9 Drop and Delete items
Переглядів 3892 місяці тому
Unreal Inventory System Course - #9 Drop and Delete items

КОМЕНТАРІ

  • @thierrymoreels2735
    @thierrymoreels2735 Годину тому

    offcors EU is crap anyway

  • @muneebhero1159
    @muneebhero1159 8 годин тому

    Hey , how can I make it stop for a few seconds please 🥺🥺🥺🥺

  • @miau_carina
    @miau_carina 22 години тому

    Wait… at pose position has Skeleton??? My version 4.0 doesn’t have it. How did you manage to get that one? Or did I miss?

  • @RonnieBanerjee007
    @RonnieBanerjee007 День тому

    Great descriptive video!

  • @dragondev2617
    @dragondev2617 День тому

    Fresnel is a very useful and simple Node, thank you

  • @ethanjdev
    @ethanjdev День тому

    Thanks for this awesome walkthrough!! I like your flow of just stopping and explaining the details of something or showing why another thing won't work. Very easy to follow :)

  • @Lilium___
    @Lilium___ День тому

    Great series! One issue I have is about runtime variables like durability. You can add the max durability to the data asset, but you can't set the current durability as well, as its shared by all instances of that data asset. I could add them to the inventory struct, but then I would lose the inheritance advantage and every item would have something like durability. Do you have an idea, how you can add runtime data like current magazine ammo, durability, etc. to a data asset driven inventory, that still keeps the inherited structure ?

    • @thegamedevcave
      @thegamedevcave День тому

      yeah, dont try to edit anything about the data asset itself while data aseets can be changed on runtime, you should really treat them as assets, not just blueprints, you wouldn't try to change data about a static mesh for instance either, same goes for data assets. instead metadata like that should go into the itemslot. i'm working on a followup series that'll include some metadata stuff like durability. For something like durability speficailly, i'd probably just put that as a variable on the slot itself. and disable it when it hold an item doesn't have durability. For other kinds of metadata i'm working on setting up a ssytem that uses custom Objects that can hold any amount of data of functions you want :)

    • @Lilium___
      @Lilium___ 11 годин тому

      ​@@thegamedevcave I'm looking forward to your video about it. For now I'm trying an approach using a blueprint of type object, which also has the usual inheritance set up (item -> equipment -> weapon). The object has an attribute for the data asset and the equipment has an attribute for durability and the inventory struct has the object instead of the data asset. Feels a bit clunky too though, and I'm not sure if I'll get issues with that approach later. Like I already noticed, but both my approach and probably yours too has an issue with metadata for each item of the stack, as it saves metadata for the full stack and not one item. If you have something like a health potion with multiple uses but also stackable, I'm not sure how it would work with either approach .. besides making them non stackable to begin with, or move the one that does not have all uses left to a new slot and make it unstackable :/

    • @thegamedevcave
      @thegamedevcave 10 годин тому

      @@Lilium___ i can't think of many games where items with metadata are stackable in an inventory system honestly. Probably for this exact reason. an item slot usually is just a reference to an item with a number telling you how many of that item there are. if each item needs to actually be it's own individual thing, each slot needs to turn into an array instead. But i also dont think you'll want to do that because if each item in a stack is unique, how does a user interact with a specific item in that stack? If items have different behaviour, it's probably better for the user too if they don't stack so they can acces "potion that heals 50 health" speratly from " potion that heals 100 health" . combing those within 1 stack will probably lead to game design issues rather than programming issues. which is why i dont think you see this type of unique item stacking that much in games.

    • @Lilium___
      @Lilium___ 9 годин тому

      @@thegamedevcave Yeah I think that's what it comes down to in the end. I've seen some games that let you stack weapons with full durability, but then again you can only equip one weapon (and not a stack), so the metadata of the stack will never be updated, only one item at a time, when its equipped. Having an array of metadata, one for each item of the stack can solve that, but as you mentioned that can be very clunky for the user. Technically if you have a cake that can be eaten 6 times, you can make it stackable and just subtract one after every 6th use. But good luck implementing that without making the whole system clunky. Thanks for the input, I'll stay with non-stackable items with metadata, otherwise it will just get too complex for almost no gain.

  • @Fin_therian
    @Fin_therian День тому

    I only have the re-generate rig

  • @musgi998
    @musgi998 День тому

    Doesnt using the blackboard option in the wait node makes it use that value and not the one in the outliner.? Or am i missing somthing

    • @thegamedevcave
      @thegamedevcave День тому

      you're 100% right. i kind of did a shit job explaining what i needed here. what i was looking for wasn't just a waiting node from blackboard time (because yeah, that already exists thankfully) but more or less an async wait node. Something that counts up in the background while the rest of the tree is allowed to keep running and then after X amount of time flips a bool (or in this case actually an enum value) so the tree starts to run the other branches, until the timer rolls over again, at which point it'll switch back :)

  • @vangard8689
    @vangard8689 2 дні тому

    Name app

  • @IDKm1324
    @IDKm1324 2 дні тому

    CRL A does nothing

  • @devinbrasher6752
    @devinbrasher6752 2 дні тому

    You skipped promoting the LevelToLoad to a variable.

  • @HITI_
    @HITI_ 2 дні тому

    Nice vid but use different music next time (trust me)

    • @svendkorsgaard9599
      @svendkorsgaard9599 2 дні тому

      I like the music. What's wrong with it?

    • @HITI_
      @HITI_ 2 дні тому

      ​​@@svendkorsgaard9599 its a bit too common and overused. For allot of people it may seem lazy and that kinda ruins the vibe of the video. But do whatever you want if you happy with the results.😁

  • @sami444L
    @sami444L 2 дні тому

    Thanks for this

  • @hamitkeles8885
    @hamitkeles8885 3 дні тому

    You are a hero... thanks.😃

  • @wofkwengel
    @wofkwengel 3 дні тому

    The reason cubes have issues with outlines has nothing to do with polycount, It's simply because they have hard edges. Also you don't need to program anything in blueprints to put outlines on a character, you can put it straight in the skeletal mesh asset.

    • @thegamedevcave
      @thegamedevcave 3 дні тому

      as you can see in the video itself, higher poly count will make the displacement smoother. yeah it is because of hard edges, but adding more geometry, even if just flat faces (while not great to do, definitely don't' subdivide it like 10x of course), does help solve the issue. I'd recommend you try it yourself, try importing a simple low poly cube, add the material and then add simple subdivisions to it and see the difference. I'm pretty sure it's to do with the vertex normal. when the cube's faces onto have 2 tringles each, the vertex normals point straight up, perpendicular to the face, but when there are more tringles on a flat face like that, the vertices on the edges have their normal pointing out diagonally, meaning that the offset is done diagonally which prevents the taring issue. you of course don't HAVE to make specific components to display outlines but if you're going to have a LOT of meshes in your game that all need outlines anyway, you really dont want to give every single one of them their own overlay material, that's just tedious, much easier to just make a component for it once and have it all done automatically.

    • @wofkwengel
      @wofkwengel 3 дні тому

      @@thegamedevcave Subdividing usually also smooths edges in addition to just adding divisions. The smooth edges are the thing that fixes the issue, not the polycount. For the character I was talking about adding the outline to the skeletal mesh in the content browser, so that anywhere you use it, it would have the outlines by default. To me that's super comfortable

    • @thegamedevcave
      @thegamedevcave 3 дні тому

      that's the thing though, in the example i give in this video i specifically use linear subdivision, so the actual edges stay sharp... for the character, yeah that is true, but still that's for every character in your game, if you have like 100+ characters in total, setting up the component like this (even more so when it comes to the static meshes), will save a bit of tedious busywork. Of course, in no way required to do it that way, and if you're just adding it to 1 character there's no need to bother with it, but otherwise, why make things more time consuming on yourself?

    • @wofkwengel
      @wofkwengel 3 дні тому

      ​@@thegamedevcave I'm not talking about the shape of the model, I'm talking about the edge type. You can experiment with this in a modeling software like Maya. It lets you select edges and determine whether they're soft or sharp. When importing a model, UE interprets hard edges as being disconnected from one another. It's interesting, look into it! For assigning a material on multiple assets you can select them in your content browser, right click > Asset actions > Edit selection in property matrix.

  • @noushinpourmirza3054
    @noushinpourmirza3054 3 дні тому

    Amazing job. You made my day. Thank you for this useful video

  • @gherat
    @gherat 3 дні тому

    “You now have a full control rig for character animation” 😂

  • @lagman6661
    @lagman6661 3 дні тому

    Hello, I'am attempting to use commit ability but it is not functioning properly. When my stamina cost is 20, I'am still able to use whatever ability even though I set the cost class. Please Help!

  • @GewoonEenNick
    @GewoonEenNick 4 дні тому

    wow! this is exactly what i wanted thanks!

  • @dimachibisov7456
    @dimachibisov7456 4 дні тому

    God bless you good man=)))

  • @MCA-GK
    @MCA-GK 4 дні тому

    ua-cam.com/video/4-a8QZIf1Dc/v-deo.htmlsi=rfzzFOKVut9e6v8H You just copied the unreal university channel method 😂

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      there are only so many ways to do it, this is the most straightforward way, i dont doubt there are dozens of people that made videos showing this method.. i recorded this video like a month ago anyway, so just nice timing that we both uploaded this around the same time i guess?

    • @MCA-GK
      @MCA-GK 4 дні тому

      @@thegamedevcave This is simple but performance cost and also two extra draw call one for overly material and the other one for internal mesh I used the @codelikeme channel video which is in post process

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      yeah it uses up a lot of extra drawcalls, so it's not exactly ideal in that regard. depends on a lot of factors but this is the same basic technique that has been used since the PS2 era for a lot of games. so altogether, it's not THAT big a deal i'd say. Post processing is generally probably cheaper to do though, but is not as consistent in the thickness out the lines.

    • @Grimstrike
      @Grimstrike 4 дні тому

      @@thegamedevcave Just because it's one more draw call, doesn't mean the method is inferior to postprocess ones, entirely depends on the project and frame budgets, there's no 'one correct way' of doing something usually. I personally really like this method (since this is exactly the visuals one of my projects were looking for), so thank you for the well-made tutorial, don't doubt the majority of viewers are appreciative of all the diverse solutions provided.

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      to be fair it's not just one one draw call, it's one more draw call PER mesh, which can add up quickly so it is something to be mindful of, but overall it does end up looking better than post processing in my opinion and while those extra draw calls might end up adding up to form some performance impact, usually saving draw calls in other ways when possible is probably worth it do be able to use this method :) There's up and down sides to each method for any desired results, this one is the same, just gotta be aware of those and see if they fit the usecase! I'm glad you found it helpful for yours!

  • @4nth365
    @4nth365 4 дні тому

    pole position

  • @EternityUnknown
    @EternityUnknown 4 дні тому

    Lol. If that's AI, then broccoli is a meat.

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      All this chat gpt stuff has warped the meaning of "ai" a lot... 😅

  • @NoKapMan
    @NoKapMan 4 дні тому

    I would suggest making a rough block out in whatever flavor of hard surface and then adding more details. The end result will be better

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      For sure that would make for a smoother workflow. Didnt really work very well in this patricular case though. But in general, yeah

  • @asr59
    @asr59 4 дні тому

    Instead of lerping each texture independently, you can make two different materials with the "makeAttribtes" nodes, and then use a "blendAttributes" node which works as a lerp but with materials instead of textures. Remember to click on tbe output node and on the properties, turn on "UseAtrributes".

    • @thegamedevcave
      @thegamedevcave 4 дні тому

      yeah that's probably a much better way to combine whole texture sets!

    • @asr59
      @asr59 4 дні тому

      @@thegamedevcave It's a game changer, specially when working with landscape materials

  • @suchys_tv
    @suchys_tv 5 днів тому

    So idk why, but it says infinite loop detected. I use 5.4.3

  • @MidnightshadeProductions
    @MidnightshadeProductions 5 днів тому

    So this is just like Interfaces on programming using object oriented method on C#, C++, Java etc. good to know its also in here it is indeed more memory efficient than hard references

    • @thegamedevcave
      @thegamedevcave 5 днів тому

      yup, 100% the same, it's just an interface the same as in any other language you're used to. it's all c++ under the hood (kind of) at the end of the day after all

  • @Cazaq
    @Cazaq 5 днів тому

    Sharing this tidbit, as it might help someone in the future: The Time node has different behaviors dependent on the material domain it is set to. It will return time since the editor started when set to the UI material domain, as such while working in the editor on UI materials that use this node, your materials will be broken, and you will go nuts trying to figure out what is happening (it happened to me in production). For UI materials, it is best to get your time from a BP/C++ via "Get Accurate Time" or by doing "FApp::GetCurrentTime() - GStartTime;" + pass into the material graph via an MPC, then change it back to Time when shipping/packaging a build. Cheers.

    • @thegamedevcave
      @thegamedevcave 5 днів тому

      that's a good headsup to have! makes sense, thanks for sharing!

  • @4rzky536
    @4rzky536 5 днів тому

    finally i found what i was looking for, but i still haven't found it, just a few actually, like how to combine it with a progress bar or percentage, so in the loading screen we can see how much longer

    • @thegamedevcave
      @thegamedevcave 5 днів тому

      about 99% of progress bars you see in games are actually straight up fake, just showing an estimation of how long the dev thinks you'll take to load a certain scene. (which is also the reason that a lot of games will often hang at 99% loading, because the computer is slower than what the devs expected). there is a function called "GetAsyncLoadPercentage" in c++ which you could use to display true loading times (more or less) but it's a slow operation which will make the loading take even longer, but if you do it on something like a 0.2 second timer or something, you might be fine to use it. As far as i know, with just blueprint you wont be able to do this, and that is most likely because rarely would you actually make a proper accurate loading bar. as with so many things in game dev, games often straight up lie to people to make them feel better.

    • @4rzky536
      @4rzky536 День тому

      ​@@thegamedevcave I didn't expect you to give such a detailed explanation, but yeah, so far I've never found an explanation on how to display the level loading time in percentage form, most suggest adding a delay, say 2 seconds, but I think this is unfair, if the user is using a high end PC this is a very long time, but if they are using a mid or even low end PC, 2 seconds is a very, very short time, they will even arrive when all the levels have not finished loading, I find this very often especially in indie games, the level is already open but is still in the loading stage, such as textures, lights, even static mesh, thank you for taking the time to explain this in detail😊

  • @lewislincoln3315
    @lewislincoln3315 6 днів тому

    5:43, While you can't create a function to return a delegate type variable like in C++, you can certainly create a function that takes most UE variable types and use a function instead of an event for when the message is received/broadcasted to said actor.

  • @sams_3d_stuff
    @sams_3d_stuff 6 днів тому

    Best video on GAS 🎉 Thank you!!!

  • @Flowerpot2905
    @Flowerpot2905 6 днів тому

    Very clear explanation - thank you.

  • @nomad7317
    @nomad7317 6 днів тому

    Thanks for the great tutorial. I have a doubt. Let's suppose I have a molotov fire effect - where I need to do increased damage every periodic tick. It follows this formula: 30 + 8 * n, where n is the number of ticks / applications. So in the molotov effect, the damage every period will be (30 + 38 + (30 + 16) + (30 + 24) + (30 + 32) ) for period of 4 seconds (period executes on effect applied). How to achieve this?

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      interesting question. i'd probably do something like adding an extra attribtue to your attribute set for n. that way, every time you apply damage you can increase n. then when you remove the effect, run another effect that simply sets n back to 0 (or 1, depending n how you code things)

  • @leavemealoneimjusttrynavib2687
    @leavemealoneimjusttrynavib2687 6 днів тому

    Whenever trying to jump from hanging, my player doesnt go up he just stutters a lot causing him to re line trace back onto the ledgem

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      sounds like it's doing line traces at all times, isntead of just when fallign down, make sure you have a branch to check if the Z velocity is less than 0

    • @leavemealoneimjusttrynavib2687
      @leavemealoneimjusttrynavib2687 6 днів тому

      @@thegamedevcave It only does line traced when falling. But since the character is stuttering up and down after trying to do it. It has a negative velocity for a few frames causing it to re line trace.

  • @alexrybin3798
    @alexrybin3798 6 днів тому

    Thanks a lot for the tutorial, i got bonus question Is there a way to animate position of start and end point? so my mesh will move along spline inside my blueprint. Not outside like you made in other video. Thank you! :)

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      sadly, splines aren't means to dynamically change at runtime so you can't animate the spline points

    • @alexrybin3798
      @alexrybin3798 6 днів тому

      @@thegamedevcave thank you, what about meshes inside blueprint? in your example it will be moving railroad itself, but not "train"

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      @@alexrybin3798 you might be able to animate some kind of offset varialbe for the meshes, i've never tried if spline meshes can be animated like that. I would assume that also is a problem though since i expect the reason splines can't be animated is that the engine really wants to bake your splinesmesh down to a static mesh. But i've never tested that, so it might work?

  • @Fighter05
    @Fighter05 6 днів тому

    There are reasons it exists; reasons Epic actually put it in the Engine. Every project ever, has casting to some degree. The problems are way less pronounced today. By 2025 ish, its predicted the majority of PC consumers will have at least 32 gigs of ram. Consoles already have 32+ gigs of ram. Its extremely hard for an indie to work at a scale where the pitfalls of casting will actually apply. When you work on large projects that have asset linkers, Data Assets like DA_CharacterAudio or a game like Fortnite, literally thousands of potential skeletal mesh skins. You need ways to load assets in and out without referencing the entire asset tree. Incorrect Casting there will literally prevent most players from being able to play due to lack of memory or ungodly load times with linking like 10 gigs of audio directly to a player character needlessly. But you are right. For most people? Most devs? Most projects? What they are Casting to will already exist in their game anyway. Its already loaded and therefore has virtually zero cost. Casting can also prevent hitching common in a lot of titles by just hard linking related gameplay assets.

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      oh for sure! dont just randomly cast to a bunch of stuff without knowing that it also loads in a bunch of assets. and even though i'm advacating for using a cast every now and then, i still think setting up an interface call makes more since 9/10. people are just unreasonably affraid of casting and don't actually make any consideration for it as a result.as you say, for most people, they're working on a scale where even if they do mess things up, it doesn't actually hurt all that much with modern computers having more and more memory .

  • @Lilium___
    @Lilium___ 6 днів тому

    One thing to note that might be useful, if you have a function with inputs you don't have to drag every connection from the input node to your nodes. You can simply type "get" and the variable name inside the function and you get a reference to the input of the function, without the messy connections to the input node. Makes things a lot less messy. But great video series!

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      yeah i figured that out while cleaning up the project to make it ready for patreons XD can't believe it took me that long to figure this out XD I dont tend to do all that much in blueprint usually so that was a nice thing to figure out :) !

  • @ToriPham
    @ToriPham 7 днів тому

    Hello, thank for the guide, it very cool, but I dont know why my mesh dont duplicates but stay a same place.

  • @kmtsvetanov
    @kmtsvetanov 7 днів тому

    If I wish to switch to a Bow that is in the other hard how will I do it ?

    • @kmtsvetanov
      @kmtsvetanov 7 днів тому

      Found it. We use Attach Component To Component. For Target pin we use "Weapon". For Parent pin - Our Skeletal Mesh Component And for Socket Name we say "hand_r" Remember to switch the socket name to "hand_l" When you select a sword

    • @thegamedevcave
      @thegamedevcave 7 днів тому

      probably best use a whole other system altogether to be honest. but you could add a socket to both hands, and check when you switch weapons if it is the bow and move the mesh to that other hand... but if youre still looking into a system to make for weapon switching, you're best off just not using this one for your use.

  • @Doubleaa500
    @Doubleaa500 7 днів тому

    Thats hilarious to imagine every interactible being loaded just because you're playing the game as the main character!! Haha

  • @Senn3x
    @Senn3x 8 днів тому

    Quad remesher or retopoflow, you are welcome

    • @thegamedevcave
      @thegamedevcave 7 днів тому

      yeah, no.. not an option for the cloak, for the rest of the model though, sure. I used it for the skull and spine and such

  • @ChompyPhD
    @ChompyPhD 8 днів тому

    Great series, thanks for putting it together

  • @pennaverdeful
    @pennaverdeful 8 днів тому

    Thank you for the great explanation! I have one question: If I want to use the Unreal Take Recorder to capture the camera moving as the user moves the mouse, do I need to create a new physical camera to emulate the player's camera? I assume I'd need to feed the camera position and move the transform, because, as you mentioned, the camera transform doesn’t move on its own. So, to record the position, do I need to create a separate camera and track its fake position?

  • @Jackroutube
    @Jackroutube 8 днів тому

    Can you please show us how to add separate slots that only set categories can be placed in for weapons also when it is assigned to said equip able slot it attaches to a set bone or socket ?

    • @Jackroutube
      @Jackroutube 8 днів тому

      I’m new to unreal and made a inventory system by following a tutorial that used a vertical box and you had to manually assign it to the equip able slot by doing this it applied the selected item it a set bone / socket. Using the knowledge I learned I made my attack system around that. But the only down side to that for me was not being able to auto assign slots and drag and drop things around the ui. So I decided to follow your guide which so far has worked great and was exactly what I was looking for, my only issue now is I have no clue how to add a equip able slot to this ui. Because I can’t do this I can no longer assign my sword to my custom socket meaning I can no longer use my attack :(. Have you please got any tips on how I can go about solving this issue ? I would also love to see you cover this in a future episode. Regardless of my issue I thank you for this very handy guide ⭐️⭐️⭐️⭐️⭐️

    • @thegamedevcave
      @thegamedevcave 6 днів тому

      yup, but it'll be a while before i get to that. I uploaded this video so my whole inventory series will be completely up for free once i start the followup series later this year that'll dive into more in depth things like item subclasses, hotbars, item meta data and so on :)

  • @Zatellia
    @Zatellia 9 днів тому

    I am trying to follow along however I can't get past the error at 8:18 where the includes are showing an error. I have followed your steps and have even restarted a couple of times to make sure i didnt do something different. When i open my thirdperson character it doesnt have the ability system either. Any ideas?

    • @thegamedevcave
      @thegamedevcave 9 днів тому

      make sure you properly build from visual studio, not just use live coding. Aside from that, what does that error say when you try to build?

    • @Zatellia
      @Zatellia 9 днів тому

      @@thegamedevcave No errors except the #includes (cannot open source file "AbilitySystemInterface.h and AbilitySystemCompnet.h) and the fact the ability components are not showing up on the character. I did rebuild. I am using 5.4 but i just restarted with 5.3 to see if that makes a difference

    • @Zatellia
      @Zatellia 9 днів тому

      Made no difference if its 5.3 or 5.4

    • @Zatellia
      @Zatellia 9 днів тому

      Well I got the includes for the AbilitySystemInterface.h working but now the includes for TestCharacter.generated.h and TestCharacter.h are 'cannot open source file

    • @Zatellia
      @Zatellia 8 днів тому

      Disregard, stupid mistake on my end lol

  • @IndieGamesWTF
    @IndieGamesWTF 9 днів тому

    Thank you for sharing! what if I wanted to export the model with rig in a FBX and each single animations in separated files (one per animation)?

  • @Samy_aza
    @Samy_aza 9 днів тому

    How the fuck do you make a human. I literally typed in “how to add human” and this fucking video along with 10 other ones show a human without how to add a human. Like. How the hell am I going to rig anything if I can’t even add a fucking human to rig in the first place?

  • @wildbard4112
    @wildbard4112 9 днів тому

    I have a question. I'm making a Metroid Roguelike and I have it set up so that the projectiles from your gun deal damage using the gameplay event system. And I want to set it up so that the gameplay abilities spawn the projectile but I need information from the gun component such as location and what projectile to spawn. How would I do this? Any help would be appreciated.

    • @thegamedevcave
      @thegamedevcave 9 днів тому

      if it's not an ability that's reused anywhere else, simply cast and create a function that returns that information. if the ability is something you'll want to reuse for other characters ( like the enemies), set up an interface with a function that'll return that info.

    • @wildbard4112
      @wildbard4112 9 днів тому

      @@thegamedevcave Gotcha, thanks!