Common UI pause menu : an empty Unreal Engine 5.2 blueprint only project overview

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 มิ.ย. 2024
  • I've setup a clean blueprint only project to understand and play with CommonUI. In this video I go through Unreal's quickstart guide, then go through how I setup my HUD and pause menu to handle input from both gamepad and keyboard. I tried transferring over Lyra's menu system, but that was a really big task.
    It's been very helpful going back to a clean project and this has really helped me understand CommonUI and its setup, I hope it helps you as well as it's helped me!
    Github project (~1.7MB) at : github.com/NanceDevDiaries/Pa...
    Unreal Engine CommonUI documentation : docs.unrealengine.com/5.2/en-...
    Unreal Engine version used: 5.2
    Join my Patreon to get video credits and if you'd like to give thanks!
    / nancedevdiaries
    Thanks for watching!
    ---------------
    Timestamps:
    00:00 - Intro
    01:12 - Downloading the project
    02:08 - Common UI Quickstart Guide
    11:24 - Setting the default input mode
    12:27 - Project overview
    18:58 - Common Buttons and their input UI
    22:27 - Bottom action bar
    25:31 - UI input pitfall of BP only
    28:00 - Outro

ความคิดเห็น • 49

  • @nfrancisj2122
    @nfrancisj2122 5 หลายเดือนก่อน +6

    Just a heads-up for anyone making their own, and not migrating from Lyra, for the gamepad Base Controller Data, you have to set the Gamepad Hardware ID Mapping. Input Device Name and Hardware Device Identifier. For Xbox Controllers: XInputInterface, and XInputController. Cheers!

  • @3BEEZ
    @3BEEZ ปีที่แล้ว +1

    Great work, I can definitely see use for some of this in my existing project.

  • @BooneyTune
    @BooneyTune ปีที่แล้ว

    This would be very useful for getting started. Thanks for sharing!

  • @UAKrogan
    @UAKrogan 10 หลายเดือนก่อน

    Thx for the awesome tutorial about Common UI. Please continue this series using c++

  • @austinscottful
    @austinscottful ปีที่แล้ว

    Great video. Exactly what I needed.

  • @Raggidii
    @Raggidii 3 หลายเดือนก่อน

    Saved me a ton of time - thank you so much!

  • @JakeOpp_
    @JakeOpp_ 9 หลายเดือนก่อน +6

    This video really deserves more views. Taking something as complicated as whats in Lyra and just picking one section to explain in depth is really helpful. I'm running into an issue with Enhanced Input and the CommonUI problems, specifically with the pause menu and it not handing control back properly. Have you gotten this all working with Enhanced input?

  • @meowyih1
    @meowyih1 8 หลายเดือนก่อน +1

    Thanks for the video as well as the simple project you provided. It really helps! Sometimes I wonder did UE team write their official document this bad on purpose? Are there some internal, well organized documents that planning to sell for money? 😒

  • @matthewlkomar4026
    @matthewlkomar4026 10 หลายเดือนก่อน +1

    Didn't realize I needed to set Input Mode Game and UI only when putting up menus, thanks for showing that. Was stuck on it for a couple days.

  • @tariqzeyad252
    @tariqzeyad252 8 หลายเดือนก่อน +2

    The only down side for common ui that whenever you push a widget it get constructed every single time, so if you have a huge widget , the game will freeze for a sec every time it pushed...

  • @blackdevilcreations
    @blackdevilcreations ปีที่แล้ว +7

    Link the SetText of your EventConstruct to a EventPreConstruct, too.
    That makes the text change in the UMG Editor directly.. so you have a live preview 😉

  • @CyberiaWu
    @CyberiaWu 7 หลายเดือนก่อน

    Hi,
    Thank you for this very interesting tutorial and the online project. There is one thing I don't understand.
    I understood how everything worked but for example : I have widgets that are displayed when the character has to click on a key when he is in a box collision.
    How should I do to add this in a BlueprintActor because in the tutorial the action is in the Playercontroller. Should I connect the "create overall UI Layout Widget" node to on component "Begin overlapp" which is connected to my cast to BP_Character?

  • @ijerofei
    @ijerofei ปีที่แล้ว

    Hi, can you please explain how to manage footstep sounds in Lyra? How to make them silent when crouching for example

  • @steffethegreek
    @steffethegreek ปีที่แล้ว

    Will you be making more tutorials with the commonui plugin?

  • @joric
    @joric 9 วันที่ผ่านมา

    Could you explain how to get HUD widget from the player controller in this scheme? Or it's supposed to add logic to W_DefaultHUDLayout so it fetches player controller on tick?

  • @LOL1423derp92
    @LOL1423derp92 3 หลายเดือนก่อน

    how do I bind multiple inputs for a single button and add different functionality? For example, I want to create a commonUIbutton and have inputs for Triangle and square. Triangle does one action, while square does another.
    How would I add these inputs? Would I add an enhanced input event in the commonUIbutton? or is there another way?

  • @JoaoVictor-fk8no
    @JoaoVictor-fk8no 9 หลายเดือนก่อน

    I had some issues with commonUI and was wondering if you could help me? So, i made a pause Menu that opens when you press ESC, it pushes a PauseMenuWidget to a menustack and it has a Options button, when you press it, another widget is pushed to the stack, hiding the PauseMenu and showing the new widget, this new options widget contains 5 buttons: Graphics, Video, Audio etc. When i click one of these buttons, another widget is pushed, but this time to a different stack, so the Options Widget still appears on screen (so you can still click other buttons), so, for example, if you are on the Options Widget and click the Graphics button, a widget will appear on the right side of the screen, it has many options you can customize, like texture quality, shadow quality etc. The problem is: if you click on the Graphics button, then click on the Video button, and then click again on the Graphics button, if you change anything in this graphics widget it WILL NOT apply the changes, because there's 2 graphics widgets created, and for some reason unreal doesn't apply the changes made in this second widget, only on the first one, that is now hidden, unreal doesn't clear the first Graphics Widget from memory, even if you set it to "deactivate widget" or "remove from parent" or any other delete node, so, how could i fix this?

  • @WesleyOverdijk
    @WesleyOverdijk 3 หลายเดือนก่อน +1

    I don't understand how this works with the enhanced input system. The input data table looks very similar to a input maping context (in purpose). Would you have to maintain both? Or has this changed since this video was made?
    UPDATE: The UE docs for 5.3 now document this experimental feature under "Using CommonUI With Enhanced Input". It works very similar, but with input actions and a mapping context. Cool stuff :)

    • @nancedevdiaries
      @nancedevdiaries  3 หลายเดือนก่อน

      Neat! That sounds more maintainable

  • @Dahvidownz
    @Dahvidownz 3 หลายเดือนก่อน

    Alittle confused on the bottomactionbar. Do you need to make a seperate widget for that? It needs an action button class. Which creating one created a new Common Button Base.

    • @nancedevdiaries
      @nancedevdiaries  หลายเดือนก่อน

      I've made a video about the common action bar, hopefully it helps! Cheers th-cam.com/video/1wvHRJANOto/w-d-xo.htmlsi=dj80uFPj7ysG7Khc

  • @ja.consultoria4.0
    @ja.consultoria4.0 5 หลายเดือนก่อน

    As soon as I call the HUD, I completely lose control. I've being comparing my project to yours and the Lyra and nothing. What could disable the control?

    • @ja.consultoria4.0
      @ja.consultoria4.0 5 หลายเดือนก่อน

      Ok I got it. Opening the HUD first broke it. Starting with the main menu works.

  • @LOL1423derp92
    @LOL1423derp92 3 หลายเดือนก่อน

    21:45 I have been trying to figure out how you setup the selection between the two buttons in the pause menu. I am re-creating this in a separate project, and I cant get the gamepad to select up or down

    • @LOL1423derp92
      @LOL1423derp92 3 หลายเดือนก่อน +1

      NVM i figured it out - need get desired focus target overridden in functions

  • @FPChris
    @FPChris 8 หลายเดือนก่อน

    Question. When playing games on Windows a huge issue is all the game pads using XBox icons. Does Common UI allow XBox, PS, and Nintendo layouts and allow the player to manually pick one rather than auto detecting. ?

    • @nancedevdiaries
      @nancedevdiaries  8 หลายเดือนก่อน

      I'd love to know this as well! I noticed the option to select "dual sense", that seems to be PS5/PS4 controller in the Options menu of Lyra in-game, I could try though I don't own PS5 controller. I haven't tried plugging in a switch controller in my PC.

    • @Soraphis91
      @Soraphis91 7 หลายเดือนก่อน

      Yeah, you'd create for each of the different controller types a "CommonInputBaseControllerData" asset, define the actualy controller specifics there.
      there is a field "Gamepad Name", which by default says "Generic", but you can create multiple different with different controller names.
      In the Project Settings > Common Input Settings > you would add to "Windows" additional "Controller Data" assets. I just don't know yet, how to create additional controller names (because my list only shows "Generic") and if there is something special for the names for it to detect the correct controller type.

  • @unrealdevop
    @unrealdevop 5 หลายเดือนก่อน

    So I believe I setup everything correctly in my project. Even designed my buttons after how they did it in Lyra.
    The Problem is that the Input Actions for my button don't seem to work. I have it named 'InputActionWidget' just like you did but mine simply doesn't seem to work.
    I'll compare it against your project to see if maybe I missed something. You mentioned that you made your own InputAction BP but never really said why.

    • @unrealdevop
      @unrealdevop 5 หลายเดือนก่อน

      Update....this is really odd, I'll have to look into this....I migrated my menu from my project to yours and it works fine.....I'm pretty sure I set everything up correctly on mine....only difference being that your controller has XSX for the XBox controller and mine had Generic because I'm not using the Source Build. So that must be the problem....that's odd though because when I followed the Unreal Live video It worked.

    • @unrealdevop
      @unrealdevop 5 หลายเดือนก่อน +2

      Update 2: So it seems that I renamed an asset and it broke a soft reference to my InputDataTable. After fixing that it's now working for both Keyboard & Mouse as well as Gamepads.

    • @thenameisnik
      @thenameisnik 2 หลายเดือนก่อน

      ⁠​⁠​⁠​⁠​⁠​⁠​⁠​⁠@@unrealdevophey I’m having same issue - what do you mean soft reference to the InoutDataTable, from where? Do you remember by any chance, thanks!

    • @unrealdevop
      @unrealdevop 2 หลายเดือนก่อน +1

      @@thenameisnik Yeah, well with mine I renamed the Input Data Table. Re-naming it will break the reference to it in the Config File that stores your project settings because Unreal Engine I guess has no way of telling it what you renamed it to. If you did that and it still shows up, remove it and add it back.

    • @thenameisnik
      @thenameisnik 2 หลายเดือนก่อน +1

      @@unrealdevop Thanks for your help man! in my case in Common UI Settings where we add the Gamepad/Keybord Controllers - i re-added them and it started working, could have lost soft reference liek you said (even though the names were matching lol)

  • @user-mt5yx2if7k
    @user-mt5yx2if7k 8 หลายเดือนก่อน

    Great sharing, but I downloaded your project and got no response when I pressed the button on my computer, I don't know what is wrong

    • @nancedevdiaries
      @nancedevdiaries  8 หลายเดือนก่อน

      Thanks! That's odd, just double checking which engine version are you using? And by the "button not working" are those the buttons in the menu?

    • @MegaMiley
      @MegaMiley 7 หลายเดือนก่อน

      @@nancedevdiaries I've got the same issue, using UE 5.3.1 on Windows, when I start the project in it's own instance I can press escape all I want but nothing happens, also saw a different input for the spacebar and that one also didn't do anything

    • @nancedevdiaries
      @nancedevdiaries  7 หลายเดือนก่อน

      @@MegaMiley Interesting, I'll give it a go on 5.3 when I have a moment. My project is 5.2 that might have to do with it. I'm curious what would need to change for 5.3, if you find out in the meantime, it would be great for you to share here. Cheers!

    • @edwardteach42
      @edwardteach42 7 หลายเดือนก่อน

      @@nancedevdiaries This issue is also present in 5.2 when you run as standalone or packaged build. If you remove the Push Widget to Layer Stack that pushes the HUD, it will work as expected. However, I noticed that even in 5.2 when running as standalone, the InputActionWidget does not show up as expected. If you run in the editor window, it works fine, any idea what could cause this?

    • @nancedevdiaries
      @nancedevdiaries  7 หลายเดือนก่อน

      Thanks for the info, I just noticed this too in a standalone game. Something's up with the HUD widget in a packaged game, and when removing that HUD being pushed to the layer stack, sometimes I get the action widget show up sometimes I don't. It might be something to do with timing or asset loading in a packaged game? Will share if I find something out, no dice at the moment.

  • @ryanke6695
    @ryanke6695 8 หลายเดือนก่อน

    Sir do you have the c++ version just like lyra project? I find Lyra UI is so complicated...

  • @davy4842
    @davy4842 ปีที่แล้ว

    Boom first I was watching sleeping asmr

  • @SylvainRochette
    @SylvainRochette 6 หลายเดือนก่อน

    The sound of your voice are too low, i heard nothing, just see the video without sound lol