How to use Data Assets in UE5 - How im using them and how there awesome!!

Поделиться
HTML-код
  • Опубликовано: 26 ноя 2024
  • Updated Discord invitation: / discord #UnrealEngine #blueprints #gamedev #coding
    ► Join the Discord: / discord
    ► Description
    How to use data assets to create default settings for actors inside UE5
    -----------------------------------------------------------------------------------------------------------
    ► Patreon: / gamedevxr
    ► Twitter: / gamedevxr
    ► Instagram: / gamedevxr
    -----------------------------------------------------------------------------------------------------------
    If you're new to VR and want to get started with Oculus Quest development, I recommend watching these videos first.
    1. Installing UE4 from Source code (contains more up to date Quest features)
    • Installing UE4 4.25 fr...
    2. Installing Android Studio (Required to create Oculus Quest projects in UE4.25+)
    • Installing Android Stu...
    3. My Oculus Quest 1 Settings (These are different to the Quest 2)
    • My Oculus Quest 4.25 B...
    4. My Oculus Quest 2 Settings
    • Quest 2 Settings You S...
    -----------------------------------------------------------------------------------------------------------
    PC SPECS:
    ► RTX 2070 Super
    ► I9-9900K
    ► 32GB Ram
    ► 2TB SSD
    Equipment
    ► Keyboard: HyperX Alloy Origins
    ► Mouse: Anker® Ergonomic Optical USB Wired Vertical Mouse
    ► Mic: Trust GXT 232
    ► WebCam: Jelly Comb
    ► Screen: AOC I2367fh 23-inch LED x 2
    ► Headset 1: Oculus Quest 128GB
    ► Headset 2: Oculus Rift + Motion Controllers
    ► Headset 2: Oculus Quest 2
    ► Graphics Tablet: Wacom Cintiq 13hd

Комментарии • 21

  • @STUVash
    @STUVash Год назад +3

    7:26 so that's why there was no function related to editing the Primary Data Asset, this is such obscure knowledge even the editor doesn't count the PDA as "dirty" when modifying it this way, but you can still save it.
    The video was nice but this is the jackpot part for me ^
    Thanks for the tip. ❤‍🔥

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

    4:19 - Ha! I love that secret little crash in there.

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

    Great tutorial, man. Been trying to figure out how to manage my data in Unreal (like I did with Scriptable Objects in Unity) and this really helped.

  • @Eroktic
    @Eroktic Год назад +1

    A little bit lenghty, but very informative, tnx!

  • @RolyPolyGames
    @RolyPolyGames Год назад +1

    NM looked a bit more into it looks like these are handy for initialization even for C++ Users. Just can't manipulate the data in it, still not bad for an inventory system.

  • @samsilva6602
    @samsilva6602 Год назад +1

    I wonder if makes sense to use them to build an inventory system hmmm...

  • @Karlettto89
    @Karlettto89 Год назад +1

    hi! I noticed that in the Save Game object it's possible to create a data asset variable to store. So why do you mention that the data asset cannot be saved? (I haven't tried to actually save it and load it, just curious why it wouldn't work)

  • @ДмитроГорпинюк-л4л

    Is it a good practise, lets say if i have a PlayerState with all information about my character state on a current level and i want to enter another level, to store a Player State information or an object inside a DataAsset and then reinitialize a Player State with all information from prevoius level or its much easier to store it in SaveGame or GameInstance. I just can't see any useful techincs with them that i can use, exept basic inventory system.

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

    Thank you sir.

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

    @GDXR im having a problem it works fine in editor but when i package it it wont work can you help me?

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

    Great vid. Question, any help with a save system using data assets? It doesn’t seem to be the most practical way to get all the data vars in a data asset and set each one. Would be nice to see a video on this.

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

      Yeah, I'm hoping to add a save system to my project soon so I'll be taking a look at it. As you said, Data tables as a whole aren't designed to be modified at runtime even though they can be which is why you can't save all their variables. But as you can see in this video I'm using the, The way I'm going to approach this will be to have a function inside my game instance which contains the variables for my Data asset which im modifying, I don't need all of them, only the ones used by my play and displayed in the player's menu. There I can set the variables the player has changed and save them (Only the modified ones). Then on load, I can populate the data asset with the modified variables. Basically, the function is going to act like a middleman.
      Make sure to drop by the discord, more than happy to keep you updated once I start tackling it.

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

    I have an issue where I have a main data asset that has reference to other data assets, when I access the main data asset from the character, it will clear the references when I close the editor, I'm assuming it's a bug, have you ran into this issue?

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

    i cant find the PrimaryDataAsset parent class anywhere, can anyone please help me?

  • @LumberingTroll
    @LumberingTroll 2 года назад +1

    I've been saying for a while Data Assets are the way to go, but everyone keeps using Data Tables, makes me sad.

    • @GDXR
      @GDXR  2 года назад

      Yeah, there's definitely benefit to both. The way I look at data assets as there great for default settings. For actors but if your going to create an actor that pulls data in like weapon damage and such then data tables are the way to go our you will need a data asset for every variation.
      Aye the end of the day though its down to the use case.

    • @LumberingTroll
      @LumberingTroll 2 года назад +1

      @@GDXR Yeah that is intended, the Asset Manager and Data Assets were made for games with a large amount of itemization, Epic introduced this with the ARPG template. If your game has a lot of items Data Assets are just more performant as Indexed file names is simply faster than doing a string search in a large file like a Data Table.

    • @Fighter05
      @Fighter05 2 года назад +5

      @@GDXR One thing that is nice about Data Tables as well is they can be edited outside of the engine with a spreadsheet tool. You can use mass populate rows and apply the math tools that are common in say Excel. So you can do things like curves for say EXP needed per level etc and more advanced math functions that would be a pain in the dick to populate by hand for so many entries in a Data Asset.
      There is also the idea of remote work or working from a laptop, tablet or cellphone. Being able to work on items or things in your game from say your sisters couch over the holidays or a coffee bar without access to your UE workstation has its benefits. This remote work is why DataTables are common for importing dialog. That way a writer or a designer can work wherever and whenever they want without access to the engine or without messing with any objects, just submit their revisions prior, custom excel script formats the dialog for the game via a Data Table and were good, update prior to the build. Creative writing from within a Data Asset isn't the most artistic or mind clearing experience.
      Data Assets are great though as DataTables don't have a parent/child setup. Which any dev would know has major benefits. It does depend on use case though for sure.

  • @plopyy
    @plopyy Год назад +1

    Ce n'est pas du tout une bonne manière d'utiliser les Data Assets, leur but comme les Datatables, est de pouvoir enregistrer des informations fixe (hors jeu) et de manière multiple, et non pas juste une fois.
    Toi,il suffirais de remplacer ton Data Asset par un struct ...

  • @BlueBeam10
    @BlueBeam10 10 месяцев назад +1

    11:24: Well, that's not even the problem. There is obviously an overlap detection as you tested it, and it properly gets your character reference. However, your node == is supposed to check if two actors references are the same, but you only input the one detected by the overlap, you don't actually compare it with anything. Are you sure you even understand what you are doing?