Newb here new to game programming. My only programming experience is in an academic setting where I did C++ console programming for mathematical/engineering problem-solving. So I know all the basics like if-then/switch conditional statements, for/while loops, objects, classes, pass-by-reference method, etc.
I'd like to continue building on my C++ skills by trying to make simple mobile games for Android or iOS. What would be the easiest way to do that? I've been told SDL 2.0 is great but others have told me to try Unreal Engine.
is there even mobile games in unreal(excluding fortnite). serious question because i dont play mobile games.
Zachary Walker
Bump
Matthew Cox
for C++ no not really. your search is pretty narrow game engine + mobile + C++ only other one I really know about is SDL, it's good but is it better? about equal from what I've seen being produced.
Unity has C++ for android native plugins but no idea about it
Evan Wood
Unity has put a lot more effort into optimizing for lower-end iOS and Android devices. You can build a big shiny awesome game in Unreal, but it's unlikely to run on older devices due to memory requirements.
Jayden Allen
that said half the internet is filled with unreal android/ios tutorials esp on jewtubes not to mention webassembly exists
Kayden Fisher
Yeah go ahead and use SDL2 if you want to take a month to get a triangle drawn to the screen. If you are just starting out use an existing engine (Unity). C# syntax is similar to C++
Ryan Miller
>Yeah go ahead and use SDL2 if you want to take a month to get a triangle drawn to the screen.
What about Unreal Engine 4?
Nathaniel Nguyen
Unity and UE4 are the most popular so they have pretty good documentation and the most tutorials, so either would be okay. Don't pick based on language only though just try both and see which you like. it's nothing to "learn" another language at a scripting level
Jonathan Robinson
>Unity has C++ for android native plugins but no idea about it I think you're talking about il2cpp
Jacob Edwards
Unreal's C++ is extremely easy to use because they have macros to handle all the memory stuff. Anything that you declare a UPROPERTY gets garbage collected automatically. It's so fucking easy to use it's ridiculous.
Evan Gomez
You might want to look at urho3d. It's an engine that is MIT licensed with lots of features. Not AAA stuff but decent. Documentation is poor but there are lots of examples, high code quality, and core devs are highly active on the forums.
Jason Carter
That sounds absolutely retarded. C++ already has garbage collection.
Andrew Turner
just use godot engine, its cross-platform coding and exporting and code is similar to python so its easy when u coded before it also supports C#
Thomas Rivera
GC support is implementation-dependent
Juan Garcia
>GC support is implementation-dependent If you are using an implementation of C++ without the C++11 features such as smart pointers, then you are probably doing something stupid.
Asher Ward
If you just want to improve C++ and don't plan produce anything useful, then go with SDL. If you want to learn something that would make you somewhat employable, learn Unreal. But you won't improve C++ much, since most of the time you'll be learning the engine itself. If you want to make something for mobile with the least amount of effort (and make yourself somewhat employable too), learn Unity.
>I think you're talking about il2cpp Yes and no. With introduction of il2cpp C++ is kind of default for plugins in Unity right now.
Jayden Price
I'm who you replied to, I have no idea what I was talking about with unity I just know it had C++ for android via something
Samuel Morales
>C++ already has garbage collection it has a "garbage collector", only for some things
Shut the fuck up retard. That post is old as fuck and no longer accurate.
Yes. Look into "smart pointers". They were added in the 2011 standard.
Wyatt Butler
>That post is old as fuck and no longer accurate smart pointers are not garbage collection, zoomer
Owen Watson
Which is faster to make 2D cross-platform mobile games with? Godot or Unity?
Elijah Peterson
Godot is lighter and faster overall. Setting up cross-platform compilation is easy on both engines.
Tyler Wilson
Smart pointers are not garbage collection, they are reference counted pointer and thus significantly slower. Not to say they aren't useful, if you just want memory safety and don't care too much (or aren't using dozens of them) you'll be fine.
>>C++ already has garbage collection. Sort of, you can link against the boehm garbage collector library and overload new/delete/malloc/free (or make your own other allocators) and get garbage collection. I wouldn't say it "has" garbage collection though.
Adrian Fisher
How do you think garbage collection works?
Colton Thompson
>t. brainlet
Michael Ramirez
learn what garbage collection is, then come back
Nathaniel Robinson
It's the automatic deallocation of memory which is allocated on the heap. Smart pointers provide that functionality. Now fuck off retard.
Jose Lee
SDL is not a fucking game engine, it just provides cross-platform window creation, input, basic 2d drawing, basic sound mixing. The important thing is that they are all cross-platform, so you can just use sdl for gathering window&context creation and input and write a whole functional game engine on it.
Carter Ramirez
It depends on what you consider as garbage collection. Reference counting doesn't remove circular references. As such I think of it as a different category from garbage collection even though technically it is a form of garbage collection.