How to create a truly blank empty project
I'm trying to create a truly "blank" project. Specifically, a C++ project targeting GearVR. However, I've been reading thru the docs and trying things out in the editor and I have not yet figured out how to do this.
What I'm trying to achieve is a simple app with:
My current best thinking is that the only thing I need is a single camera (with track hmd set to true). Maybe the default Pawn too. But other than that I should not need anything else. And I should be able to turn off things like global illumination and any lighting computations since I want unlit surfaces (mostly UMG widgets).
With this in mind, when starting Unreal, the option that resembles "blank" the closest is "basic code" under C++ templates. If I select that template however, the map that gets created already has a few objects in the outliner:
If I remove these objects (or if once the project is loaded I create a new map -- aka, all black), once I hit play, a bunch of objects get instantiated in the scene anyway:
Under Project Settings > Maps & Modes I cannot remove the HUD, Player, Game State, etc classes. And I don't understand as of now where all these objects are being instantiated.
Additionally, neither do I yet understand if setting my materials to unlit and setting all meshes to not cast nor receive shadows is enough to avoid lighting computations or if there is another way of turning lighting off.
The reason for all this is to make sure I am only using the necessary resources, in order to tax the mobile device the least possible.
asked Dec 01 '16 at 06:33 AM in Using UE4
It's been a while since I posted this and I now have a better understanding of the engine architecture.
Since no one gave an answer I'll give my own:
The engine relies on a gameplay framework. So in general you'll be building your game in the context of this framework.
The framework declares a bunch of classes that make up the structure of a typical UE game and provides default implementations of these. You can provide custom implementations too, but otherwise, at the very least your game will always use the framework's defaults. So thats' where the 'magic' comes from.
For example, when you start simulating or playing a level, you will always have:
The game mode in turn instantiates:
There's more classes than these but these are some of the core ones. And there is no way to opt out of using them. You can however, use your own implementation of these classes. And to do so, you first need to create a subclass of AGameModeBase, which allows you to then replace any of the above classes with your subclasses (i.e. under Maps & Modes in Project Settings or per level, thru the World panel).
answered Jun 03 '17 at 07:55 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here