How to make cross-platform games/apps in C++

Поделиться
HTML-код
  • Опубликовано: 8 фев 2025
  • In this video, I will explain to you how you can port your C++ games or apps to other platforms. You have to make the right choices to make your games cross-platform.
    #cpp #programming #gamedev
    Want to learn more? Check out this playlist:
    • If you want to learn h...
    Discord invite link:
    / discord
    Wishlist Midnight Arrow on Steam!
    store.steampow...
    Music: Evan King - Let's Go!
    / contextsensitive
    contextsensiti...

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

  • @happygofishing
    @happygofishing Год назад +37

    Average cmake user, vs average mess of shell and batch scripts enjoyer.

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

    Very helpful and informative video!

  • @InfiniteCoder01
    @InfiniteCoder01 Год назад +6

    You know @TheCherno? Your path of learning game dev reminds me of mine. I feel like you are going to make your own GUI library at the end, like I did after working with ImGui.

    • @lowlevelgamedev9330
      @lowlevelgamedev9330  Год назад +7

      I think everyone knows the cherno 🤣
      alsoo
      I have my own gui library 🤣😂 it is inspired by imgui and it is made for menus. You can find it on my git as glui

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

      Pretty much magically & instantly discovered the Hazel engine & TheCherno when I decided to make my own engine.
      Not sure how, probably the almighty algorithm.

  • @mr.tm-yt
    @mr.tm-yt Год назад +1

    Great video!!! ඞඞ

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

    Nice video, I'm very looking forward to watch the WinAPI tutorial :))

  • @shiru15
    @shiru15 8 месяцев назад +10

    i dont understand anything what you say...

  • @cheerwizard21
    @cheerwizard21 2 месяца назад

    A good experience is making a cross platform app from scratch, using only platform specific API, like WinAPI, X11, Android NDK. It's difficult but it provides a very great experience and knowledge of working with platform specific systems and you can than understand these systems much better. Also you can then make much simpler and faster abstraction, that is better than raylib or sfml.
    Same for audio, which is quite difficult for Linux if you wanna use very low level API something like ALSA. But I would recommend for the first time try something like OpenAL and for Android - AAudio. Because something like ALSA may be too complicated for the first try.
    And for the graphics, old good - OpenGL and OpenGLES. No need to use Vulkan or DX, unless you plan to build AAA game with very intensive graphics.

  • @Evan-fh2zg
    @Evan-fh2zg 6 месяцев назад +3

    holy fuck i thought i left my settings on 2x speed

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

    In Windows, I can compile C++ without GNU or LLVM, by using Visual C++ 2005 or Digital Mars C++. Are there ways to cross-platform without using GNU/LLVM on any platform?

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

      there probably are but I don't know how exactly. It is called cross compiling. There is nothing about the compiling that is platform specific. There is wsl for windows and you can set it up on visual studio for example. For compiling to linux I think you still have to use gcc or clang because msvc can't comlile to linux as far as I know

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

      You can use ziglang's build system. It can cross compile from any platform to any other. It can compile zig code (duh), as well as C and C++. It comes bundled with a bunch of platform specific headers as well.
      For example you can make a Linux binary that links to gnu libc on windows by just specifying your cross compile target.

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

    HELLO, good video! 💙🌼

  • @sleepyNovember_project
    @sleepyNovember_project 6 месяцев назад +1

    Cherno mentioned +1000xp

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

    how did you test if your program works on mac?

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

      To test on man you need someone with a mac to help you. If you want to port something with opengl on mac you need to use Opengl3.3 I think and set a special flag in glfw or something. Fortunatelly I don't plan porting on mac often

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

    Java and JNI make hard to port to android

  • @D---3
    @D---3 Год назад +2

    ho to webgl x android

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

      Never done that 😂😂 but probably railib is your best option

  • @AhmedDzairDev
    @AhmedDzairDev 2 месяца назад

    Very fast tutorial. I understand somethings but is not enough because it is not detailed

  • @arl-t8d
    @arl-t8d Год назад +1

    Who tf uses MacOS 💀