<ASAP> Please provide a "PURE C++" Sample Game with "ALL the basics".

I dont know about you, but I am not having any troubles figuring out the flow or finding examples on how to do a certain function ie. search the code, there usually an example somewhere on how to do something you want to do. If you dont feel comfortable looking through the code, maybe you should start with blueprints.

Looks like a thread just asking by one Sample with most basic game systems done trough C++ to Epic become a community judgement about my skills on looking in the documentation and samples. :frowning:

Well… Open Challenge that can serve us as example! :rolleyes:
You can get a Singleton sample implementation from the ShooterGame (It’s the GameKing as I said).

Now, putting all you on my shoes… Please point where I can look for how to implement a FStreamableManager getting the same behaviour as on the doc:

https://docs.unrealengine.com/latest/INT/Programming/Assets/AsyncLoading/index.html

You pointed to the link of the example: https://docs.unrealengine.com/latest/INT/Programming/Assets/AsyncLoading/index.html what more do you need? It shows you various ways to use it.

Implement = Declare, initialize…
The page covers usage. :smiley:

From that same link:
[FONT=Courier New]FStreamableManager& Streamable = UGameGlobals::Get().StreamableManager;

PS. On a side note, keep an eye on the Unreal Tournament development, you will get an insight on how Epic approaches situations when it comes to development.

Could you please point where in the sample or on the entire docs can I get the GameGlobals.h and GameGlobals.cpp to look at?

As I said, the Streamable is created and initialized on something that doesn’t appears on the link.

…and yes, I’ll be tuned :smiley:

On another sidenote: Notice that if we had a sample as I have asked for I could simply be looking at it, and getting not just this answer but a lot more instead of be here discussing. :smiley:

No, the other way arround would be band engine design. Why? Because you would have to make hard references to all you assets, which makes it a pain in the *** for Artist to work with your project.
The Bare Minimum of BP Usage comes from keeping Asset References like Meshes, Materials etc. in them, because your content creators can exchange them in the Editor.

You have the full SourceCode at your hand. GameGlobals.h and GameGlobals.cpp are included aswell, one might assume.

I dont get the point of this whole purposal really. There are plenty of examples allready, Shooter Game is one of them.

PS: Learning the BP Part of UE4 helped me alot to learn the C++ part aswell, since a lot of Components are the same and are being used similar.

In blueprints you can right-click the nodes and “Goto Code Definition”. You can see what that node actually does in code. Requires that you have built the editor yourself, which I assume you have.

Reading over the source has indeed helped me greatly, but wow there is so much. Thinking it’s really not so much an issue of us NOT being able to find things out, this is more of a request of constant improvement on sample material. Like, all of the demos have so much in them, excellent stuff really, maybe it’s just a bit of an overload. Well, in fairness, it’s my take, maybe not the OP’s so don’t mean to speak for anyone else really.

So many of us come from so many different backgrounds, like myself. See I took C in college in the early-mid 90’s, cranking out code using the Watcom compiler cause back then word was that the Quake guys used it. So, mostly spent my time making crappy demos. But a video game career didn’t pan out, so business development was my path. Anyway, after so many years of VB and the .NET side of things, it’s taking some time to drag my perspective back to C. I think this is one reason the Unity system is still going to gain so many followers, they’ve got years of people answering so many dumb questions that it covers all backgrounds. (As a general note to all, we should consider the forums outside general discussion to be a knowledge repository. Each dumb question answered simply increases search result hits for future viewers. No need for e-peen)

But I digress. A super simplified demo even with really obvious notes to the effect of “This is a class initializer, it always looks like this and you must put it right here” or “If you put this in your custom class, it’ll do the thing every tick”…well that may only take the average person a bit of searching and reading to understand, it simply aligns all backgrounds into a single starting point. Leveling the variations in backgrounds sort of way. Anyway, while I am probably completely off from what the OP is requesting, eh, it’s my take on it. Some people are art people just looking for some background info, some are AI people, or level builders, and some are do it alls.

P.S. Spent about 6 months on Objective-C not far back and was wrapping my head around MVC. I started to get into this on the Visual Studio side, but didn’t have much need for the older business style software maintenance. (i.e. not a lot of new software starting to use the model) There are times when I feel like UE4 with blueprints is like this, but have not seen it mentioned nor would I be knowledgeable enough to claim it so. Maybe it just feels that way, but it does represent my struggle to visualize how all the parts connect with each other. If I could look at it like MVC or something like it, probably would stem a lot of head banging over why we need code and blueprints. Food for thought.

Edit: Perhaps we could simplify much by introducing ArnoldC as a programming option in UE4??? https://.com/lhartikk/ArnoldC

As others have pointed out, even if we are doing all the game logic in C++, we often use a BP to hook up assets, because it’s easier to do and allows artists to modify it afterwards. In more recent templates (e.g. Rolling, Flying) I actually moved to 100% C++, not even using BPs to assign the mesh, just to make it really clear how to do everything in C++! Also all our sample games (shooter, strategy, platformer, vehicle) are written using C++ for most of the gameplay logic, so hopefully those are useful reference. I’m not sure videos are the best way to explain C++ programming (unlike Blueprints, which are more visual), but we are certainly still trying to work out the best way to explain everything - we will keep working on it!

If I may just publicly express my gratitude for what is out demo wise. Creating these must be no small undertaking, but you know the , always wanting more. :slight_smile: Agreed about videos and code, but hard for me to see anything being effective (except for demos) than a good book. So I’d wager the demo requests will be high until then. I know sometimes I need to replace my glowy computer screen with paper from time to time.

Perhaps there might be a method of partnering with notable members of the community that might be willing to supply some demonstrations? Perhaps an Epic official low key demo may not be PR friendly, without all the excellent effects, but if it came from elsewhere… Well, not that the community couldn’t do this on their own, but the community could need some prodding and newcomers a visible place to find such demos.

+1 For this :slight_smile:

OK, I gave in.

#JamesG: Thank you by your clarifications, I’ve seen yesterday that there is a Gameplay Programming Reference Card on @Trello, it will certainly become as good as the old UScript Programming Reference and so I’ll probably have a lot less troubles on transition, I imagine that this can help more people (188 votes), but I don’t know how much time this will take (I know you’ll do the better) and as some people said, it’s being counterproductive needing do a search on 9K+ files, and after need to dissecate 100+ possible answers to sometimes figure that what you need is not there.

By some answers, looks like clearly I’m not a programmer on the same expertise level from the community members that posted here, so, while I thought that some sample would help me and other people on averagely the same level, I think that newbie coders are minority here, and so, from now on I’ll talk by the only one that is noob here: me.

Getting to the frustrating 1GB+, 8hs downloads just to get “part” from what I need to study, is not being nice, because this I suggested an “all basics in one C++” demo. By watching Epic Code quality most things are pretty well commented so, would be a nice “palliative” to haste some things until the official reference to come.

The documentation on its current state doesn’t helps a dumb like me too much, if you get the sample doc I have pointed out (Async Load Assets) looks like the author is “assuming” I do have previous knowledge on your C++ framework, as example when I did read:

"…I would suggest putting it in some sort of global game singleton object, such as one specified using GameSingletonClassName in DefaultEngine.ini. Then, you can pass your StringAssetReference into it and start a load…"

My reaction was not “Hmmm… Ok! Makes sense!” but instead “Singlewhat? oO”.

After a lot of “googling” I just discover that this term was related to a single instance control class that we use to keep track from the game flow, I used such technique on my old GameInfo UScript to also hold the StateMachine. So, after **“Oh! He was talking about this.” ** began the challenge of create such class on C++ U4 compliant, after get all possible LNK error codes on VS I began to watch for an U4 Singleton example, looked at downloaded projects opening the DefaultEngine.ini and the Project Engine Settings that by documentation “would” be the place to check for these class names, but none of then give me a tip. When searching on forums and hub you find TONS of references about BPs, but the worst part is that these things returns on the search until if you also inserts C++ on your search string.

I did assumed your docs as absolute truth (if the project uses a singleton, it needs be pointed there), so came to hub and here, after made my “useless to some” request, they said to download the Shooter demo…
1.5GB, 8hs, and so the class that should be pointed there, is not, but… Wow! After open the project and do a search I found the right implementation of a Singleton Class (GameKing)!

Notice that I just wanted to take a look on 2 files, 11KB to watch a “safe and right implemented Singleton sample”. :frowning:

Now I’m struggling to get the FStreamableManager to work as described on the docs, also studying the ConstructorHelpers that wraps StaticLoads and so on… trying to figure out how to make the things I need.

I thank to the ones that understood my difficulty and would also benefit from such thing, maybe I was really precipitate on made the request and should be just lacking some more downloads&findsonVS, anyway, until if not, I’ll keep my doubts and just wait until the official reference release.

Best wishes and thank you all by your time.

Well hey, I’m a noob coder as well, I just don’t try to tackle crazy things like sans-blueprint games. I’m just sticking with the basic gameplay logic, and after I get really good with that I can move on to more advanced things.

As for learning, I definitely agree that the documentation is lacking; while a lot of functions have a good description in the docs, many have non-existent or redundant descriptions. When that happens, I usually just try it out to see what it does, and if THAT doesn’t help me, I ask on the forums/answerhub.

I think the problem here is that you are trying to do very complicated stuff that pretty much nobody here can do either. So, nobody can explain the functions to you :frowning: Do you really, really need your content references to be hard-coded in C++? It seems like it’s causing you a lot of problems :slight_smile: