Download

How hard is unreal engine c++?

No, I’ve argued that, what is happening, is no different from a town crier in the town square 200 years ago seeing what everybody’s up to. Or, you know, the nosy lady down the street who always sits by her window. The EFF argument is that “the town crier and nosy lady should not be allowed to talk about or act on what they see of what goes on around them,” which is a fine argument if that’s what you want, but I don’t share it.

Anyway, use duckduckgo through a VPN if you want – the one thing you shouldn’t do is ignore the power of search engines. And, if there’s questions with no answers, that means you need to make a better question. How to break down your current roadblock into different questions, and research yourself to go to the next step, or work around the roadblock, is a necessary engineering skill.

Of course it would be better if every question got a quick answer by someone who had a real clue! That’d be amazing! This is why people go to schools – there are teachers and peers in the same situation, and lots of reference material, and they can often actually help with the answers, and when you go off the tracks, at least point you in the right direction. If you’re looking to learn, you could do a lot worse than finding a good school that teaches the thing you need.

I don’t think anyone would argue that point. However, here’s a practical question. As discussions on the Forums / Answerhub trail-off, and the UE community splits across multiple platforms in order to get problems solved… Think Discord, Reddit, Polycount, YouTube, Twitter, Twitch, Github, Daz3D, StackOverflow and so on… How do you ensure search engines actually scour those sources to help devs find the right or best answers?

Discord seems to have turned into a walled garden. You used to be able to consume info on there without signing up, but that’s been blocked for a while (Twitter too). There are no Discord answers showing up in any search results I’ve ever seen, compared to Stack or Polycount or Github or Reddit. So how useful or comprehensive is web search when it omits many channels, and yet the area or question is quite specialized, such as UE game dev? :wink:

Town crier vs nosy lady? All very quaint dude. :grinning: Consider this. You apply for a job at Epic as a UE C++ programmer. Despite advancing deep into the interview screening process you suddenly get rejected without any real explanation (generic reasons like insufficient experience). Later you hear of a lawsuit against Epic. It turns out Epic were buying datasets including people’s Uber scores + Medical search results from Google, which were then de-anonymized thanks to help from TransUnion / Experian / Equifax / Palantir and so on.

So now you know an algorithm rejected you (you scored badly when data-sets were mixed with interview performance metrics). But none of this was made clear / transparent. That seems a long way from a nosy lady in a small town. The lady could ofc put in a bad word for you at a local firm. But there’s something about the invisibility / lack of accountability of secret algos and de-anonymized datasets, that seems far more destructive / damaging. And that’s just job hiring. What about other more personal aspects of people’s lives? :wink:

Consider this: You walk outside, and some guy jumps out at you from behind a corner, beats you up, and takes your wallet?

I’m much more worried about what actually happens. And, as I said, if you don’t like Google, don’t use Google, and then there are no search results to sell (although, generally, they only sell de-personalized results, i e, audience classification.)

Yes, and you would never know.

I can’t tell you how and what to think – some people are afraid of the dark, some people don’t like flying, and some people don’t eat cilantro, and that’s OK. I can suggest what actually happens in the real world, as a counterpoint to some of the more speculative fear mongering :slight_smile:

No. that was about LITERALLY stealing people’s data / Breaching privacy laws.

And FB is still doing this with impunity.
At the moment, “algorithms” scan your posted comments/content even when they are shared Privately for what FB likes to call “hate speech”. They then have some actual human review the scanned content. Effectively breaching ANY expectation of privacy one might have from replying to a friend in a comment that is only visible BY friends.
They haven’t gotten pinged for this just yet, but a large class action is sure to be coming.

Either way, how did this go from Coding C++ to whatever dystopian future China is in currently, due to the lack of balls required to burn the commies to the ground?
How in the hell did they go from Genghis Khan to “Communism is great” anyway? :laughing:

The most scandalous part about that was that the tech didn’t actually work. “Machine learning” snake oil, purified.

When those in power take too much for too long, those without power won’t actually lie down and die in a ditch, they will rise up with pitchforks and torches.
Exactly where that bar lies, varies over time and by population/location. But, for someone with a lot to lose, “paying something to retain the peace” may be the better choice compared to “fomenting bloody revolt,” at least if you look at the various revolutions in the past.

They hyped their capabilities to earn more coin for sure. But with ever greater / more invasive datasets they’ll eventually nail it… So you have to wonder what evil villain VC 's like Peter Thiel (who Musk once called a sociopath) have in store for us after Facebook / Palantir / ClearviewAI and so on. Thiel has absolute disdain for consumers and governments, and yet the consumer side or defensive team is feeble / weak. I guess we’ll find out sometime. :thinking:

vs.

You need to have a very good understanding of Object Oriented Programming (OOP) to be able to work in Unreal, period. It is absolutely built 100% on that concept, although I think there’s a lot of people out there who have a very good understanding of Unreal, and have no idea that they actually 100% know OOP. :smiley:

You also basically cannot work in C++ without some form of OOP concepts. OOP is pretty much completely out of favor with Javascript programmers, and the support for it in PHP is absolutely terrible, and has been for quite a long time, despite some people’s claims that PHP is amazing at it. Those people either don’t understand PHP or don’t understand OOP.

But, what’s even more important, is flat out experience. Spend time getting to know things in the game. Follow tutorials, and learn how things in the engine work. You’ll get the rest of it.

1 Like

It’s 2021. Can you call yourself a programmer if you don’t understand OOP???

They must be idiots. Everything in JS is basically an object. Down to the array structures.
So either you herd wrong, or you should unfriend a bunch of people.

I think you have poor understanding of PHP if you think it’s terrible at it.
It’s not great, but even in php almost everything coming in is an object of some sort.
Many are just directly accessible and native too. Like $SERVER to name a variable that’s basically the equivalent of an object.

Everything’s an object in Javascript, but as far as i’m aware, declarative programming has taken the javascript world by storm. OOP as we used it in C++ is mostly unnecessary in JS. And given that the object inheritance is totally different between C++ and JS, i don’t know that even if you do know how it all works in JS means it translates well to C++

Last I used PHP was 5.0, and it was awful. People I know who use PHP to this day, tell me that it never got any better at it. ::shrug::

OOP was possible in php.4 already. It got a bit better, but its not the main use of the language for sure, so its not very crucial or practical.
Like everything some things work, some don’t.

An oop approach to a CMS means you create a page object with variables and derive other objects form it.

In practice, on websites nothing is that static and the data that changes comes in from a database.

Ergo, there’s almost no need to “think” of a page as an object.
Doesn’t mean that people haven’t coded an object without realizing it in the end.

That said, mysql access is done via an object that you access functions for via → (instead of .).

Somewhat similar with JS, except not really.
Any time you mess with the DOM you are acting and interacting with strongly typed objects - almost like you do in c++.
All Dom objects tend to have their own definitions and functions to call.

The only real difference is that you don’t need to ever create a header file and instantiate variables. It’s all essentially done for you.

This doesn’t stop you from creating a custom object with custom properties. In fact, things run a lot smoother.
To the point you can re make a browser based arkanoid clone with billions of spawning cubes (divs) and have it run way faster than unreal ever would the way they have left it crippled for the past soon to be 2 years, and counting.

Last thing, don’t p*ss on php. It’s mostly C++.
To the point you can actually encode all php pages and develop a server-side c++ executable that converts it securely (so clients are unable to steal source code without major workarounds).

Arguably, it’s not as powerful as other things. But you know what? LAMP is far better than anything else. And it scales way better too.

The only reason C# and m$ azure still exist is that they are a fracking vanity plate since you have to actually hire an engineer to code a website with it.

Also, while on this topic, the memory footprint difference between mysql ans ms sql is ridiculous.

Tell me where in 2021 have you ever even herd of a piece of software that must keep a whole database in RAM to be able to access it.
Nowhere that’s where. Unless you have to set up a mssql server.

there’s tons of tutorials for blueprint on youtube, and almost none for c++ of UE. this is a big concern for me too.

unity and c# has tons of tutorials for it, so depending on how tough UE is to code for I might switch over to that one. I am planning to try both engines out and see how they compare. everyone has been saying how the UE documentation is horrible, and couple this with no tutorials for c++ …

There are some c++ tutorials, but how does it help you to see those on YouTube?

It’s much better if you pull the old wiki out of a search and just follow the advice and tutorials people like Rama used to share on it once upon a time.

Realistically, the only way you’ll ever learn something is to either take apart something else.
Or to attempt to do it, fail at it, and do it yet again… by the 10th re-do or so, you usually have things down.

It’s time consuming. Sure.
So are other engines though.

1 Like

Quoted for truth.

100%, I worked in many different engines in my career, we don’t have tutorials all over the net, we are told, to learn it in a week or days… when I STARTED in the 80-90’s, we had trial and error, I still do alot on trial and error if its new to me, sure, I check docs, if they are around, I may search around… one thing I learned when teaching others, that there is a lot of BAD info out there and people teaching others bad habits…

Now as far as learning a language, you don’t need to learn Unreal… You can TAKE any C++ resources and learn it… Sure API will be a small problem, but if you understand what your doing its a small problem… Now every single person I got to move from BIAS Unity, and C#, people are always like, there is not enough resources to learn C++ and Unreal… That is nonsense… C++ is widely used in this industry and for good reason… So plenty of resources… .Today’s programmers have it GOOD, due to resources, compared to us old timers…

This may seem weird, but if you’re new to game programming, I’d suggest you learn Unity first.
Unreal is great but it offers A LOT. A bit overwhelming for new developers I’d say.

Unity is fairly barebones. You get a game engine and that’s pretty much it. You don’t have to worry about anything. You can just mess about and see what works. It is also extremely well documented; this will help you understand basic game programming concepts. Not to mention there’s a lot of free material on YouTube for it.

With Unreal, you have to understand how Unreal works on a lower level before you can really do anything in it, otherwise, you’re going to get a lot of unexpected results. But in order to understand how Unreal works on a lower level, you kinda need to already know quite a bit of intermediate or even advanced game programming concepts.

I have made entire gui apps from scratch using C++ and QT api, and so knowing c++ isn’t the problem for me, i’m not an expert at c++ theres still a lot i don’t know, i didn’t learn templates at all, stuff like that. BUT knowing c++ doesn’t tell me anything about how the game engine works. How does knowing c++ tell me I need to use an “actor component” with my “actors”, especially when the c++ way would be to just subclass it…

how am i meant to know what an actor even is or what it’s for without reading some documents? That’s not C++ related at all and you need to know it to do anything. how would you know that you need to write UCLASS and all those other special little words that aren’t part of the c++ spec without reading about it first?

the api documentation is next to worthless, it doesn’t say what any of these functions are for or how they relate to other parts of the api. i found a handful of tutorials made by epic, and a few more in books and on youtube but there isn’t much.

“ALL YOU NEED IS C++ KNOWLEDGE AND YOU’LL BE ABLE TO PROGRAM UE”!!!
Sorry I’m not buying it, that’s bogus, you guys aren’t being honest about this.

I think you are the one overthinking stuff.

Like any other coding thing. You either pick one apart that’s working to see how things are done, or you open the header and read the functions that come with a specific item.

NOT that you are wrong about the documentation, mind you.
But if you need hand holding to code stuff I don’t think you can call yourself a programmer, and you definitely cannot call yourself a professional.

The engine is an API.
How do you use an API without documentation? You read the header files…
It’s sure not a road block nor an insurmountable obstacle.

Individual API function documentation may be, but there’s plenty of documentation throughout the Epic site.

Have you read all the pages here? Programming with C++ | Unreal Engine Documentation

If you are super comfortable with programming and have some familiarity with game engines already, go straight to C++ IMHO.

Afaik you only “need” to use a minimal amount of blueprints for setting up skeletal animations, callbacks from UMG UI, and inside the material editor. I’ve shipped 4 commercial projects with almost no blueprints except where required.

We went pure C++ from the start because you used to not even be able to “diff” blueprints. Though I think you can now? I couldn’t fathom not being able to diff every repo check-in for exactly what changed. :dizzy_face: