Companies Home Search Profile

Interactive UI Programming with C++ and ImGui

Focused View

Hristo Iliev

2:05:11

70 View
  • 1. Promo.mp4
    01:50
  • 2. Welcome - Do not skip this!.mp4
    03:53
  • 3. FAQ.html
  • 4. Course Overview.mp4
    01:44
  • 1. Software Used.html
  • 2. Intalling Visual Studio.mp4
    03:24
  • 3.1 project-template.zip
  • 3. Simple Hello, World!.mp4
    05:02
  • 1. What are Windows.mp4
    01:09
  • 2.1 window.zip
  • 2. Creating a Window.mp4
    06:54
  • 3.1 coding standards.zip
  • 3. Coding Standards.mp4
    11:24
  • 4.1 intro big2.zip
  • 4. The BIG2 Stack.mp4
    05:36
  • 5.1 monitors.zip
  • 5. Monitor Functions.mp4
    11:50
  • 6. What is a Graphical API.mp4
    02:18
  • 7.1 clearing.zip
  • 7. Clearing the Window.mp4
    06:44
  • 8.1 framebuffers.zip
  • 8. FrameBuffers & Multiple Windows.mp4
    03:59
  • 9.1 graphics-context.zip
  • 9. Creating the Graphics Context.mp4
    07:18
  • 10. Moving the Graphcis Context to the Window.mp4
    02:44
  • 11.1 resizing-and-graphics-context-in-window.zip
  • 11. Resizing the Window.mp4
    03:36
  • 12. Windowing Quiz.html
  • 1.1 imgui-intro.zip
  • 1. Introducing ImGui.mp4
    06:03
  • 2.1 imgui-move-context-to-window.zip
  • 2. Moving the ImGui Context.mp4
    03:01
  • 3.1 imgui-multiple-context.zip
  • 3. Multiple Windows with ImGui.mp4
    03:58
  • 4.1 custom-imgui-window.zip
  • 4. ImGui Window.mp4
    03:47
  • 5.1 imgui-buttons.zip
  • 5. ImGui Buttons.mp4
    02:46
  • 6.1 imgui-ids.zip
  • 6. ImGui IDs.mp4
    02:08
  • 7.1 imgui-layout.zip
  • 7. ImGui Layout.mp4
    02:02
  • 8.1 imgui-calculator.zip
  • 8. ImGui Caclulator App.mp4
    08:02
  • 9. Better Calculator Task.mp4
    00:30
  • 10. Better Calculator Solution.mp4
    01:47
  • 11. UI Quiz.html
  • 1.1 imgui-menu-bar.zip
  • 1. ImGui Menu.mp4
    02:53
  • 1. Setting the project up from scratch.mp4
    08:49
  • 2. Bonus Materials.html
  • Description


    Learn how to do UI in C++ with Dear ImGui, BGFX and GLFW

    What You'll Learn?


    • Create 2D graphical applications using C++
    • Use GLFW for windowing and keyboard and mouse inputs
    • Use the GLM library for basic 2D mathematics
    • Work with multiple windows
    • Create UI with the help of ImGui
    • Multiple ImGui controls for logic
    • How to initialize BGFX for graphics programming
    • Good coding standards and google coding style
    • How to create custom UI themes and controls with ImGui
    • How to draw lines and shapes in ImGui
    • How to process input and other ImGui events

    Who is this for?


  • Beginner C++ developers who want to learn more about UI programming
  • Game programmers with knowledge about C++ who want to go deeper into graphics and UI
  • Programmers that want to create low-level tools with C++
  • What You Need to Know?


  • Understand Basic C++
  • More details


    Description

    Welcome

    This course is an easy and straightforward introduction into UI programming with C++. The course is segmented into short and on point lessons that focus on concrete topics. In this course you will learn how to initialize a window and graphics and then create various elements with a library called ImGui.

    To participate and learn from this course you should already know C++ at a good level since the basics of programming won't be covered. Otherwise this course is appropriate for junior developers that are familiar with the language. The level of C++ will be kept easy to grasp with no complicated concepts outside of basic OOP.

    Libraries

    Throught the course you will learn how to use a few different libraries. Learning these will generally help you understand a few more concepts than just the UI programming bit. The few major libraries that I've inlcuded in the course are:

    • GLFW - a library used to create and manage windows in your GUI environment. This is an abstraction library over the native interfaces of windows, mac and linux windows.

    • BGFX - a popular cross-platform library for rendering graphics onto a window. Similar to how GLFW is an abstraction over the native windows - bgfx represents an abstraction over Vulkan, OpenGL, DirectX, etc. This library is used by major developers including Microsoft's Minecraft.

    • GLM - a simple math library which we will use mainly for the 2D vector calculations for sizes and positions of UI elements onto the window.

    • Dear, ImGui - an immediate mode UI library. You define the UI through code and it issues commands for GLFW and BGFX to be rendered. Each frame is drawn immediately from the issued commands which also means that each frame you need to redefine the UI. This is usually easier to work with from a programmer stand point.

    Who this course is for:

    • Beginner C++ developers who want to learn more about UI programming
    • Game programmers with knowledge about C++ who want to go deeper into graphics and UI
    • Programmers that want to create low-level tools with C++

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Category

    C++

    Hristo Iliev
    Hristo Iliev
    Instructor's Courses
    I am a professional programmer. Currently, I am a Gameplay Programmer at Ubisoft but before that, I was a Technical Lead in a business company where I had the opportunity to work on various projects. I've also worked with many programming languages, concepts, and application architectures. I also have my own startup called Paper Cranes Ltd.In my line of work, I've mentored and elevated many professionals to be experienced developers.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 28
    • duration 2:05:11
    • Release Date 2023/10/17