How to learn from sample projects?

I’m trying to learn UE4 by looking at several sample projects - some supposedly simple and others a little more complex, but I’m having trouble working out what the flow of the project is - where it actually starts and how to follow it’s logic so as to reach the end of the project without missing anything that’s happening in between.

I have a few sample projects submitted by the community and a few from Epic themselves but when I open them I have no idea how to “dissect” them to see how they’re put together.

In a traditional program, written in some specific programming language, you’ve got a start point and from there you can read the code as a series of logical steps that lead on from one another - but these UE projects are a bit of a mystery when it comes to seeing the big picture of what’s happening and following the logic.

Is there any easy way to get a handle on what’s going on? Maybe someone can tell me how best to “look” at these examples to get the most out of them and to understand at least what the overall flow is.

I’ve watched several tutorial videos that explain things like getting around in the UI, how to place objects in the scene and how to make simple things happen like opening doors and turning on lights - but none of these tutorials explain how the various pieces link up in the right sequence to get the end result. It’s like looking at the world through a pinhole and only seeing small bits at a time and trying to mentally put these pieces together to form the big picture - and I’m failing at it. I’m not sure if I’m explaining it very well - hopefully I am.

Any help/advice appreciated.

I normally go straight for Actor on there own and not linked to a C++ thats not UE4 base IE CoinpickUp –> Actor.UE4Base

Ie i used the time pickup from sidescroller sample and recreated that logic for my own game… as the timer is hardwired into the C++ and not 100% on that side… still 75% on BP side

If you want a skype or vid chat about lemme know… i can direct what ive done… Still green in this area but gotten alot of knowledge and assets from this…

Best way to learn the engine from scratch, especially from a blueprint point of view is to think of a very simple idea. Example

  1. I want to make a character open a door if I walk up to a door and press e
  2. Create a new project with the first person or third person (or even top down), with starter content
  3. Press play and run around with the player (try having the player blueprint open and with debug mode on), watch as things activate.
  4. Add a “Event E” and hook it up to a print node. Press play and press E
  5. Create a door or find one in the start content (tutorial videos help)
  6. Create a tick event in the door actor and have it open and close the door.
  7. Add sphere or volume around door
  8. Add interaction where player standing in the sphere executes a print in the door actor
  9. Then add the interaction and the logic for having E open the door when standing in the volume

This may not be the way to do it, but a: you learn about how to move around the engine, b: what blueprints can do, c: discover your limitations when working with the engine, d: gives you a logically topic to search for (makes learning easier).

Trying to watch videos or follow the samples is pointless at the start because you have no basis for comparison. You need to blindly step into the world and then learn what it does rather than learn what the world does before you’ve even experienced it.

Hope that helps, if you want any help throw me a message.

@Zedrophobe

What you say is all good advice, to a point. I suppose I’m looking for whatever roadmap the original project designer used to create his master piece in order to follow it step by step and absorb the process/es he went through then string everything together rather than just guessing.

In traditional programming terms, I think I’m searching for what might equate to the flow-chart that the designer probably followed (or equivalent). Does that make sense?

Doing as you suggest would certainly reinforce my understanding of the various components that make up a project, but wouldn’t reveal how a sample project I already have works from start to end.

Many projects have stream recorded videos dissecting them or wiki articles, check that out.

The only thing you will gain from following the sample project however is how they created the various components of their sample. But you may find that there have been more efficient workflows since then, you yourself may even find a more efficient workflow or solution for the same sample. Try to recreate it but from scratch, when you are stuck then search/ask for assistance, you may find you stumble across the full answer when you’ve discovered the question you needed to ask all along.

I followed lots of videos and samples, even downloading some of the simpler ones. My real pet peeve with the engine is how hard it can be to follow official samples. Or how to correctly setup specific event/functions, but these can be quickly fixed by sharing your work.

I’ve created lots of things and shared them with the community (read videos or pictures), as an example; I had no knowledge of instance static meshes, since then everything I do takes into account this very grey area in the engine explanations or samples. Some of the samples are null and void when viewed from the most recent engine version.

What is/are the sample(s) if I may ask, maybe someone has found what you are after.

There’s no one or two particular examples that bother me, they all do in roughly the same measure. The most frustrating thing is knowing you have the solution right in front of you and you’re not seeing it.

I would just play with the Engine, break it, do whatever you want with it as if you were a child playing with toys. Open a sample project and don’t be afraid to break it, try what you don’t know and have fun! There is a lot of Getting Started videos on youtube but i personally find this the best way to learn any new software.