Make Beautiful Desktop Applications in C++

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ก.ค. 2023
  • See NordPass Business in action now with a 3-month free trial here (use code thecherno) ► nordpass.com/thecherno
    Patreon ► / thecherno
    Instagram ► / thecherno
    Twitter ► / thecherno
    Discord ► / discord
    Walnut ► github.com/StudioCherno/Walnut
    Hazel ► hazelengine.com
    🕹️ Play our latest game FREE (made in Hazel!) ► studiocherno.itch.io/dichotomy
    🌏 Need web hosting? ► hostinger.com/cherno
    💰 Links to stuff I use:
    ⌨ Keyboard ► geni.us/T2J7
    🐭 Mouse ► geni.us/BuY7
    💻 Monitors ► geni.us/wZFSwSK
    This video is sponsored by NordPass Business.

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

  • @TheCherno
    @TheCherno  10 หลายเดือนก่อน +49

    Hope you guys enjoyed the video! Check out Walnut here ► github.com/StudioCherno/Walnut
    See NordPass Business in action now with a 3-month free trial here (use code thecherno) ► nordpass.com/thecherno

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

      I am gooey😁

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

      Why is the default title bar always white even when I am using the dark mode theme?

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

      I use clion 99% of the time.. Wish you could also use it in some tutorials :)

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

      Make a video on IMO gerrdy. Gerrdy in Many gimmes please make a video on this 😢😢😢

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

      Thanks for sharing the code especially the custom titlebar part. A separate video about it is also welcomed :)

  • @nixellion
    @nixellion 10 หลายเดือนก่อน +498

    "Imagine having your game engine powering your launcher." - Godot be like 👀

    • @ZiplawDev
      @ZiplawDev 10 หลายเดือนก่อน +77

      unreal -> epic games store does that as well lmao

    • @nakoyasha
      @nakoyasha 10 หลายเดือนก่อน +96

      @@ZiplawDev the funniest part about that is that it's a custom build of ue4 that *only* renders a webview and nothing else.

    • @Bobbyhiddn
      @Bobbyhiddn 10 หลายเดือนก่อน +12

      I’ve been trying to figure out if this is something I should pursue. Godot for front end, Python for for backend. I don’t see why not.

    • @scififan698
      @scififan698 10 หลายเดือนก่อน +63

      ​@@Bobbyhiddnif you want a heavy dependency for the front-end and a slow back-end, sure, excellent choice.

    • @pearly1789
      @pearly1789 10 หลายเดือนก่อน +62

      @@scififan698 ​ The epic game store is one of the most godawful user experiences in recent memory. Unbelievably slow and just doesn't load things half the time. Now it all makes sense

  • @verminology9999
    @verminology9999 10 หลายเดือนก่อน +81

    Definite yes to a whole video just cleaning up the main application file! Would love to see your thought process regarding that.

  • @Frame4245
    @Frame4245 10 หลายเดือนก่อน +71

    "Imagine having your game engine powering your launcher." - Meanwhile Epic Games Launcher running as a full Unreal Engine game

    • @CoolModderJaydonX
      @CoolModderJaydonX 10 หลายเดือนก่อน +2

      Wait, really?

    • @Frame4245
      @Frame4245 10 หลายเดือนก่อน +23

      @@CoolModderJaydonX yes it's a full engine build including DirectX, Crash Reporter etc. just for rendering a web view.

    • @phusicus_404
      @phusicus_404 10 หลายเดือนก่อน +19

      Wow that's why it is very slow on my laptop

    • @CoolModderJaydonX
      @CoolModderJaydonX 10 หลายเดือนก่อน +2

      @@Frame4245 Epic Games, was that necessary? I would have just used an app framework for C++ or C#.

    • @flobberant
      @flobberant 10 หลายเดือนก่อน +6

      the worst launcher in the world

  • @dragoniko55
    @dragoniko55 10 หลายเดือนก่อน +87

    NC prefix stands for something like "Non-Client". Some messages have a client and non-client version to differentiate between something happening in the client portion of the window (the app) and the non-client portion (titlebar, resize handles, etc.)

  • @IllumTheMessage
    @IllumTheMessage 10 หลายเดือนก่อน +20

    Can't do enough Walnut videos. Really helpful and useful.

  • @samaykothari
    @samaykothari 10 หลายเดือนก่อน +14

    I love these kinds of videos and hope you will keep making more!

  • @9MAS91
    @9MAS91 10 หลายเดือนก่อน +3

    that image decoding stuff looks interesting looking forward to that vid

  • @MrHaggyy
    @MrHaggyy 9 หลายเดือนก่อน +16

    This is awesome. As a control/system engineer i know my C/C++, but i was never happy with the effort/reward of desktop app tools in C/C++. Walnut might be the tool to let me do my engineer stuff without focusing too much on the application stuff.
    If you want to beef up your example with some sort of file format, save & load, do something, plot something that would be highly appreciated. Maybe a small tooling software that helps you with your game engine or fits nicely along side the engine.

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

    You are explaining the lessons like a real professor/teacher not like a programmer.
    Thanks and I am self learning a lot from your contents ❤️

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

    Thank you for this generosity sharing the code! 😍

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

    My god this bring back memories, my first public github repo was a little wrapper for WPF bundling a theme I liked and adding primary colour variants and a custom window element using it. Bring me a lot of nostalgia!

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

    you're the best!!! with your videos im keep motivating myself to improve my programming skills in cpp and god it's so hard bad interesting, i want to make games with opengl and i'm watching your series about cpp and opengl, you're a great teacher!!!!

  • @hawks3109
    @hawks3109 10 หลายเดือนก่อน +5

    I'd love a video on how the compiler and other components work to actually package and ship the game itself. How is the exe built? How are the assets "cooked and packaged"?

  • @Sh4dowOfD34th
    @Sh4dowOfD34th 10 หลายเดือนก่อน +222

    Instead of something like this we now get big corporations abusing JavaScript and creating bloatware that devours your ram and performs like S* just because they refuse to hire dedicated teams for cross-platform desktop. Great video as always.

    • @brawldude2656
      @brawldude2656 10 หลายเดือนก่อน +15

      fr man modern app guis get %15 idle on my cpu

    • @Parritz
      @Parritz 10 หลายเดือนก่อน +44

      getting a good looking UI in native C++ is an absolute nightmare, i don't blame them

    • @kuhluhOG
      @kuhluhOG 9 หลายเดือนก่อน +10

      @@Parritz it doesn't even need to be C++ (although in this case it mainly depends on the C++ Toolkit/Framework)
      even JavaFX is considerably better

    • @jsonkody
      @jsonkody 9 หลายเดือนก่อน +1

      it has some pretty big advantages thou .. but I wish JS were cleaner and browser would be super-lean and super-fast modular technology 😢
      I need Thanos glove for make it happen xD

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

      @@jsonkody can you explain why javascript isnt cleaner?? whats extra!!

  • @djouze00
    @djouze00 10 หลายเดือนก่อน +5

    I love how every application decides that their titlebar is the best and I'm the one who ends up with an inconsistent ui 🙄

  • @neobscura
    @neobscura 10 หลายเดือนก่อน +4

    It's called caption cause in the win 9x days (especially 95 since there was absolutely zero "decoration" while 98 got a gradient woohoo) the caption was the titlebar text. There was no other container than this as the controlbox was drawn on top of the "titlebar". So caption was essentially "the titlebar".

  • @ZeroUm_
    @ZeroUm_ 10 หลายเดือนก่อน +43

    "Imagine having your gaming engine powering your launcher."
    I've seen a lot more deranged people powering their apps with web browsers.

    • @a_soulspark
      @a_soulspark 10 หลายเดือนก่อน +6

      that would be shocking

    • @v01d_r34l1ty
      @v01d_r34l1ty 10 หลายเดือนก่อน +5

      @@a_soulsparkHaha! Because it’s Electron ⚡️🥴

  • @tswdev
    @tswdev 6 หลายเดือนก่อน +1

    The term caption is used to describe the text that explains or describes some graphical element in the early UI world (its used by Win, Qt, Swing and Delphi for example..). Title or label only really came later. Thus, the "title" or "label" of a window is its caption. In use is also the term "window header" that directly comes from physical mail letters. This last one is kind of odd because "headers" are used for other messaging constructs and thus make little sense to describe a window. Caption also no longer makes a lot of sense as its very imprecise (html uses it to describe/explain an image, instead of title it), just search for its synonyms

  • @nestor1208
    @nestor1208 10 หลายเดือนก่อน +2

    Is there "borderless window" mode for wallnut? Because I frequently see this in games (and use it) instead of fullscreen mode.
    Wouldn't it cause problems with resizing, when implementing custom resizing code? (17:20)
    I reckon it's not "maximized" (18:21), is it?

  • @barnarddale
    @barnarddale 9 หลายเดือนก่อน +8

    Looks like a helpful toolkit. Often, when an app does not use a standard title bar, they lose some edge cases like keyboard control for accessibility. Does this toolkit have most/all of the standard features? If so, are they redirecting to the OS's window management or implementing the same functionality? Thank you!

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

    We're making a cross-platform game that runs on Windows, macOS, Android and will run on iOS in the future. I decided not to use 3rd party framework for GUI but to create it by myselft since we did the same in my company. Right now I create everything in the code but later it will be written in external files on some markup language.

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

    Im weeks new to C++ so a Walnut tutorial series would be highly appreciated!

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

    Great video and a great project hope to see more of it

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

    Very cool, i'll have to poke around with it!

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

    Working on creating an app atm and I have delved a bit into SFML language. Using VS 2022 x64. But...
    For as much C++ coding I think that I've learned and I know the more I realize... I am just at the beginning of what there is to learn and to know.
    Thank you for the great video, Sir Cherno !!

  • @TheAlexgoodlife
    @TheAlexgoodlife 10 หลายเดือนก่อน +39

    Glad to see that linux support is on the table. Would love to see this go cross platform

    • @user-yc9rp8mv5b
      @user-yc9rp8mv5b 7 หลายเดือนก่อน

      Dear friend.
      Visit youtube channel "Solve My Programming Task".
      They create simple programs for free. I used it. I am a student.

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

      linux users will eat him for those windows

  • @arthur1112132
    @arthur1112132 10 หลายเดือนก่อน +12

    23:59 The C23 standard now has a new #embed preprocessor directive to do this directly within the language so that you won't need a script to pre-compute that anymore. The compiler will do this for you :)

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

      i havent seen it implemented anywhere, however. It's still C2x sadly.

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

      So will this not be available in C++?

    • @guckesksk5895
      @guckesksk5895 10 หลายเดือนก่อน +3

      @@v01d_r34l1tyYes it will be available in C++ when C++23 standard come out

    • @arthur1112132
      @arthur1112132 10 หลายเดือนก่อน +2

      ​@@v01d_r34l1ty I guess it will be added into C++'s standards as well.
      Even tho C++ natively supports C's standard, so you will be able to use it once it's added to C anyway

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

      I can hardly wait. I still use mostly C for everything.

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

    Great job! I would like to see cross platform version of Walnut.

  • @georgemallard4120
    @georgemallard4120 10 หลายเดือนก่อน +2

    Love to see more about the Python PNG file to array thing

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

    I would like to see more and more about Walnut, whole series how to make nice looking application be even better.. :)

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

    Something which made me steer away from imgui despite being initially excited is its handling of pop out windows and I am kind of surprised it's not been a problem for hazel/walnut. If you do any game development 2 monitors or preferably 3 are essential, seems like an extremely important feature to have correctly working pop out windows that behave correctly so that you can drag out windows and expand them to fit on second/third monitors.

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

      I've started using imGui recently - could you elaborate on where you're having problems? And are you using the docking branch?

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

      @@user-sl6gn1ss8p I was using the docking branch, but as far as I could see there was no full screen/minimize/dock to windows desktop type functionality. I suppose it could be added with custom code though. While you can drag the window outside by default it seems to behave like a sort of floating window detached from its parent. I get that it probably behaves like that for cross compatibility reasons, but surely in the case of full screen and minimize that is fairly standard across OS's?

  • @Markus_included
    @Markus_included 10 หลายเดือนก่อน +3

    Now i'm wondering how you put the native titlebar buttons in there like firefox does

  • @JRDev4All
    @JRDev4All 10 หลายเดือนก่อน +6

    Things like Im UI, and stuff that derives from it has one humongous flaw: accessibility. And I’m not talking about how widespread it is or how many systems it runs on. I’m talking accessibility in the disabilities sense of the word. There is no accessibility API’s for these libraries, which makes it impossible, if not extraordinarily difficult for developers to make their applications made in those framework accessible to anybody with disabilities

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

      Additionally, some platforms, like iOS/macOS only seem to allow accessibility labels (for screen readers or other things) static, so I don't think it is easy to set the alt-labels at run time - meaning that just getting a mouse event and setting the label appropriately doesn't work.

    • @RockTo11
      @RockTo11 10 หลายเดือนก่อน +2

      Oh - and there are laws requiring accessibility. So if making a real application, in the US for example, there are rules in ADA.

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

      With what technologies? Because if you use apples, native frameworks for iOS and macOS development, that simply doesn’t hold true. I know this because I work with them every day. They make making your apps accessible on Apple platforms extremely easy. And they give you much more stuff to work with than just accessibility labels.

    • @RockTo11
      @RockTo11 10 หลายเดือนก่อน +2

      @@JRDev4All I'm agreeing with what you said.

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

      Sounds like a good project, if any young open source developer is willing to take on the task of making a accessibility library for im gui...

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

    Awesome - thank you !

  • @maybenat
    @maybenat 10 หลายเดือนก่อน +8

    It sucks that with Dear ImGui accessibility kinda sucks, which I partially understand, since it's not meant to be used as a general purpose UI framework (and it's not an issue many programmers care about *sigh*). It's one of the reasons why I'm not using it in "normal" GUI programs outside of internal game engine tools.

    • @voxelfusion9894
      @voxelfusion9894 10 หลายเดือนก่อน +4

      Indeed, your best bet will always be to use established, open toolkits like Qt that won't hamper cross compatibility and accessibility. Using a small and light, niche toolkit may seem nice at first, but it will backfire in the long run if you are serious about your project. Don't start off your project with that kind of technical debt.

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

    Wow, all of that was so cool.

  • @Patrick1985McMahon
    @Patrick1985McMahon 10 หลายเดือนก่อน +2

    Walnut looks so much better than the stuff Windows provides. I really like the dark theme.

  • @glenneric1
    @glenneric1 10 หลายเดือนก่อน +3

    Hazel AND Walnut! This guy's nuts.

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

      I bet something called Peanut is in the making :D

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

    Awesome rundown of Walnut, hope linux comes soon!

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

    Thank for thinking on the Linux support. This week my younger brother was asking for tips on creating GUI apps wit C++ on Linux

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

    how do you design your own buttons and interactivity (animated elements)? is that using illustrator or SVG code? Or do you write it all in C++?

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

    Nice it looks promising ! Can we create transparent topmost and click through app to create an overlay over fullscreen games ?

  • @user-pg2ry6jx1s
    @user-pg2ry6jx1s 10 หลายเดือนก่อน

    Haha, I'm crying 😂 I just love your content ❤ and it actually saved me with my work C++ project.
    I also watched your old imgui videos, and liked it, but unfortunately decided to go for qt (which I also dislike, but still seemed best choice für my demands)... And now you drop a new imgui video 😅

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

      What's wrong with Qt? I actually like it very much :)
      Hard to learn and master but once you get used to it, it is worth it. It's fast and cross-platform for Desktop Apps.

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

    Why do you need a separate launcher for rendering settings when they should be in the game's options and available at the runtime?
    Every time a tweak is needed the game should be restarted?

  • @modded-1.
    @modded-1. 2 หลายเดือนก่อน

    Man you make my way easy thx 😊

  • @johanrojassoderman5590
    @johanrojassoderman5590 10 หลายเดือนก่อน +3

    0:43 looking at you, Epic 👀

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

    That’s why I like flutter! Every pixel ❤️🎨

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

    I'm pretty interested in using Walnut to develop some desktop apps in the future. Please make some tutorials for it! :D
    Please support Linux soon, too.
    And will you support web/mobile platforms as well? Maybe with emscripten for the web?

    • @AlesStibal
      @AlesStibal 10 หลายเดือนก่อน +3

      I would appreciate Linux support as well!

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

    Remembering when I wrote custom title bar for my engine, It was completely nightmare, especially with Win32 NonClient area, and custom hit situation, to move and resize window, in your custom non client area.

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

    I’m always being struggling with organising my application so started with building an application to organise my applications😂😅

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

    Yes more Walnut please 🙏🙏

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

    Is there a way to deveop with walnut without a dedicated GPU? I keep getting a "Vulkan error VkResult = -3", from the check_vk_result() function, and I'm not sure what that enumeration means. (The Enum VkResult only has one listed value, and last I checked -3 was 0xFFFD, not 0x7FFF)
    Seems like a really cool framework, but I'm not sure my Thinkpad T420 with integrated graphics is up to the task.

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

    Does Walnut support per window dpi awareness? So for example a monitor with 100% dpi, and another with 250%, and the controls/text look the same size when you drag windows across monitors?

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

    Nice tips for programming

  • @oleksandrkosar1473
    @oleksandrkosar1473 10 หลายเดือนก่อน +7

    Excellent work! I would love to see it on Linux!

  • @kiwixfps
    @kiwixfps 7 หลายเดือนก่อน +1

    How often is the screen refreshed in walnut?

  • @and_then_I_whispered
    @and_then_I_whispered 10 หลายเดือนก่อน +2

    Cherno in every video : We'll probably make another video on this or that😂

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

    love your videos man!!! can you show us how to made your icon in to the embed please

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

    you basically figured out how is built slate (the ui framework) that unreal engine uses to render its own custom controls and 'look and feel'
    implementing this using C# and WPF is kinda simplier because it already provides classes to custom the window and the controls but of course is limited only to windows
    with C++ it is needed to build an own renderer that overrides the default used in every OS

  • @luciwaves
    @luciwaves 10 หลายเดือนก่อน +2

    God bless you, but I gave it (ImGui) a try this year and having to calculate rectangles just to be able to right-align a label to a textbox is not something I'm young enough to do anymore. Great videos, tho. Thanks for all your educational work.

  • @_luceoon
    @_luceoon 10 หลายเดือนก่อน +4

    "Imagine having a 3D game engine powering your little launcher"... Sounds familiar. Oh wait, thats what Epic Games did with their launcher... It's based on Unreal Engines UI...

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

    Well I'll be damned, I just commented on a previous video about asking for this! :D
    Also the client area being "too big" is false, that's just Windows 11's fault.

  • @mrmaymanalt
    @mrmaymanalt 5 หลายเดือนก่อน +1

    Nice video! Have you considered using SDL2 instead of GLFW for the windowing? It has support for Vulkan and disabling decorations, and it's very cross platform, supporting almost anything. It also has a built in 2D renderer that is incredibly fast. If you want WebAssembly support, you could add an alternative backend that uses SDL2's renderer. SDL2 also has a font loader that can draw text into a texture.

  • @Kickin0u0in0the0nut
    @Kickin0u0in0the0nut 9 หลายเดือนก่อน +1

    Can you make a video about that img embedding that sounded supper interesting

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

    Does an app made with walnut runs on Windows server? Like regular VM with no graphics card? I have and serverside app that uses GDI, its a pain to work with for someone not very experienced like me.

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

      If your server has a graphical user interface, it should have graphics drivers. Just make sure your graphics drivers support either the correct version of OpenGL or Vulkan (whichever Walnut uses) and you should be fine.

  • @audaciousifti
    @audaciousifti 10 หลายเดือนก่อน +5

    For almost all of my CS education all my programs were just CLI based and I never really understood what the purpose was if you didn't know any actual commands. So seeing this now is really cool

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

      did you use c/c++ or was your class more java oriented? i know my first semester java class was entirely cli based but my second semester java class was entirely graphics based.

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

      @@v01d_r34l1ty I used C++

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

      Usually you can type in the Help command or man pages to find out the commands and how to use them. They should be documented somewhere

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

    the links you "add" in the corners don't show up -- I wonder if it's related to ad blockers...?

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

    Would you mind showing how imgui can be used with threads to not hang the UI on heavy tasks? Lets say i want to download multiple images and display them as they come in.
    I am working on embedded systems with custom toolchains and the threading library wants me to specifically close the thread from the main thread and hangs until it is actually closed. I have no clue what the hell i am doing, how to share data and close them without having a slideshow app

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

      just create new thread

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

      @@GameskoTV you are so funny. at least read more than the first sentence

  • @realeques
    @realeques 10 หลายเดือนก่อน +2

    I am a Microsoft NAV/BC developer but its still mesmerizing watching you talk about anything programming related *glaze*

  • @RichardDobkins-fm7lj
    @RichardDobkins-fm7lj หลายเดือนก่อน

    How do you get rid of the console window? I changed the system type in linker settings to windows but it throws a couple of errors about WinMain. You have a check for the pre-processor directive but i'm not sure that's all that's needed.

    • @RichardDobkins-fm7lj
      @RichardDobkins-fm7lj หลายเดือนก่อน

      I figured it out. You have to also be on Dist build

  • @mohamedbensalah5652
    @mohamedbensalah5652 9 หลายเดือนก่อน +1

    I think you can inspire a solution from this
    in WPF to remove that white border
    set Glassframethickness CornerRadius and CaptionHeight to 0

  • @SwordQuake2
    @SwordQuake2 19 วันที่ผ่านมา +1

    Did you make the headless Wallnut video?

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

    Is there a GUI editor for Tk (Similar to Python + Visual TK), that can generate a design file, that can then be referenced from C++? Qt Designer generates a UML file
    I tried GTK + Glade / Cambalache , but had difficulty installing GTK and building in Windows Visual Code.
    Would love to see a video on setting up and building a gui using Imgui, nanogui, or NAppGUI!

  • @MiiDev69
    @MiiDev69 10 หลายเดือนก่อน +34

    This is amazing!
    On the same topic, what are your thoughts on frameworks like Qt?

    • @SpaceTimeBeing_
      @SpaceTimeBeing_ 10 หลายเดือนก่อน +2

      QT is excellent with qml, you can make it as modern looking as you want

  • @names-mars
    @names-mars 10 หลายเดือนก่อน

    Btw, ask one of those openai apps to generate a nice logo for your framework.

  • @supremedeity9003
    @supremedeity9003 10 หลายเดือนก่อน +5

    Hmm... I guess its like the complicated scaffolding is done already so that you can do the designing part.
    I'll try to implement some changes to use it on Linux as it seems interesting, partially because i really like imGUI

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

    The amount of work needed to make a Windows app in C++ is insanity.

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

      Welcome to unmanaged.
      Decompile some C# forms to see the native code

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

    I really like your comment about the possibility of your system. Everything is possible with most platforms, i am not an engineer or a programmer, i am also getting annoyed when someone (my developers) tell me something is not possible. Last time i did the part of the project that everyone was saying is not possible. Fortunately my best programmer pick up the project before i end up destroying our program with bad code (but my face recognition program was 100% working, but with badly structured code) I hope you become a billionaire or a least multimillionaire, because being a billionaire is a lot of troubles.

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

    Its looking good. Keep up the good work.

  • @gabriellevesque2185
    @gabriellevesque2185 10 หลายเดือนก่อน +2

    "Super Graphicssy Compatible" -Cherno, 2023
    😂

  • @SameerKhan-md5po
    @SameerKhan-md5po 10 หลายเดือนก่อน

    I love your content men ❤

  • @rafal7217
    @rafal7217 10 หลายเดือนก่อน +5

    Reinventing the wheel, Qt is a great framework for creating multi-platform C++ applications.

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

      That's more a matter of personal preference. I've worked with Qt and I hated it. I would never use it by choice.

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

    which library i need to make custom titlebar in python like in cpp?

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

    Im just impressed how you can make half an hour video out of small library. this is talent

  • @ChrisKoyo
    @ChrisKoyo 10 หลายเดือนก่อน +2

    I was thinking about making a UI with web tech like electron js and stuff but the problem is to render vulkan through it...without using web graphics API. I think cpp gets just harder for tasks that are much easier with higher level techs

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

      I've done the same with a GLFW OpenGL window embedded in a transparent electron window. Not very efficient but an easy way to get native OpenGL with a web UI. I then use named pipes for IPC between the 2 processes.
      Another option would be to utilise CEF OSR with shared textures - probably less janky

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

      @@CalebFaith that solution can be clever...until it comes to the Input requirements, i.e making the buttons in the main process of the electron app interact with the render behavior...i wonder node.js can allow these, but i don't know how

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

      @@ChrisKoyo yes, I have had to send keystrokes etc. to the GL window via IPC

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

      @@CalebFaith oh okay. So you just used named pipes or others methods too? I wonder if signals could fit too

  • @mikeray3993
    @mikeray3993 6 หลายเดือนก่อน +2

    my betting is you paid zero attention to accessibility, and this system will be totally silent with my screen reader

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

    Hmm, that's a strange way to generate a VS solution file. Why do I need to run an exe to do that?
    I'm getting an error: "Error: cannot open vendor/imgui: No such file or directory"

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

      Did you clone the repository with the -recursive flag?

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

    you can use windows' built-in magnifier (win/+ & win/-) to zoom in and out

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

      Does Windows finally have that behavior? I've had it on Linux for decades.

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

      @@anon_y_mousse it was there from 1995. when Linux didn't even have proper desktop support

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

      @@saeedbarari2207 That's complete bullshit. I've used Win98 and it didn't have that behavior, and CDE has existed since 1993 and gave a better desktop experience than Window, even compared to now.

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

    i am getting an error that i couldn't get the clone for error Failed to clone 'vendor/imgui'. Retry scheduled please u need a reply

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

    Ive learned basics of c++, looking to move forward with some ui. But i am losing my mind trying to find what to use and where to learn it from, qnd that doesnt cost me money.

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

    Does it come with a file dialogue?

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

    I would love to see when you start showcasing Nvidia physx code in hazel 💯

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

    how can I add fullscreen to this app?

  • @MrModez
    @MrModez 10 หลายเดือนก่อน +5

    This is nice, but this is Win32 only, what about other OS?

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

      He uses glwf, which is cross platform.

    • @MrModez
      @MrModez 10 หลายเดือนก่อน +4

      ​@@topg3067Unfortunately this is not how it works. It is a cross platform library, but he edits a win32 backend of that library to achieve the result. Linux for example uses x11 or wayland backend.

  • @galaxian_hitchhiker
    @galaxian_hitchhiker 9 หลายเดือนก่อน +3

    Qt is the way. As long as you don’t change their code/framework, it is all on you to how to ship or sell it. And It is so capable of everything you really not to have extend the framework at all.
    And with much more cleaner code. Right now walnut code seems very cryptic 😄

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

    It is amazing how Flash was beyond it's years! I made a ton of animated text bar/windows with it. It only take feel seconds to create one vs days with C++ or any other language. Even today, I may use Flash to create the UI. Another benefit using Flash to create Custom Windows is that it load in 1 milliseconds. Nothing out there today can beat the speed of flash application. But Adobe kill flash because of greedy. My question is! Can Walnut help create animated Windows at any shape and form like Flash does?

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

    is it possible to use libVLC c++ with walnut?

  • @Bozebo
    @Bozebo 10 หลายเดือนก่อน +4

    3D game engine powering a launcher or UI is way more efficient than an entire web browser powering a launcher or UI like we tend to get, sucking up like 8 cpu cores just sitting there idle (or in the background inside a game's engine, looking at you DotA2) until they fix "bugs" then it happens again inevitably xD

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

      "omg we accidentally constantly open connections from our webapp and transfer data constantly, ooops~ totally unintended, we're definitely not snooping around your system and dumping that data to sell... Noooo.. it's just a bug, ooosie"

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

    How do you hide the IMGUI debug menu?