I’m new to the Unreal Engine (and game development as a whole) and I’m well aware that I’ve got much to learn. As this is my first post to the forum, I suppose that I can start now, I’ve no reason to wait exclusively for my classes to start in college.
I’ve had a very ambitious idea for a video game project in my head for a long time now (probably at least a year at this point) that I do plan on bringing to life at some point even if I’ve got to go to hell and back. For this future project, I’ve settled on using the Unreal engine because I’ve really fallen in love with its capability over other free to use engines like Unity. You’ll get some details of this project just because I’m curious if all the things I want to do can be done in Unreal but of course I don’t want to give it away and have someone steal the idea. I must also mention that I’m aware of the fact that undertaking the development of a large game is an extensive task, with or without a pre-existing game engine. This game is not an immediate project, it is an ultimate goal of mine that I want to do at some point. I’m aware that it’ll take a while for me to do, but I don’t care much; it may very well turn out to be just a hobby and not a viable career path. I’m very creative and love to build, create and design. I’ll have built dozens of other, smaller and much simpler games as I learn and prepare.
With the questions below, I more or less want to know if such is possible using the Unreal engine. Feel free to also give me a basic idea of how something like it could be done (you don’t have to bother with an in-depth explanation because I’m not going to be at this in the near future and I’ll probably have the fine details figured out by the time I’m ready to start building the game).
1: The first thing I’m wondering about is how the Unreal engine can simulate liquid physics. There is a scene in my game that involves, let’s just say, large bodies of rushing water and I’m curious to know how Unreal would simulate this; for example, would it be done in real time when the player ultimately encounters the scene or would it be pre-rendered so the player’s computer doesn’t have to struggle with running the simulation?
2: Another major feature of the game I want to have included is the ability for the player to create two characters: the character they play as and the companion that follows them throughout the events of the game. At the very least, I want the player to be able to customize the protagonist’s and their companion’s faces and gender, but ideally I would like the player to be able to customize the characters’ physical builds, clothing and even their race (as I would like the game’s lore to feature a number of alien species). I’d also want the player to be able to change what clothes are equipped during the game.
3: How might Unreal render extremely large objects, such as a skyscraper in excess of 3,000 feet and up to 9,000 feet? I had an idea that I could do some clever skyboxing and rendering to make a building to appear extremely tall even though the model isn’t so big.
4: How much easier is building a linear game than an open-world game? Ideally, I would want the game to be open-world, but there are a number of reasons why I think I would avoid that route. Think of a linear game as being something like Mass Effect or Call of Duty games (where there’s no huge world the player can explore at their leisure) and I think we all know what an open-world game is, games like Skyrim or Grand Theft Auto, where they have large worlds the player can explore at their leisure.
5: NPC conversation options and multiple story endings. Ideally, I would like to include a feature similar to the interactive storytelling feature we’ve come to love in games like Mass Effect, where you’re allowed to choose your conversation options when talking to NPCs. Of course, if I did do something like this I wouldn’t have it at the same depth as Mass Effect. What I would do is have a number of options in conversation the player could choose, and they would have an effect on what the NPC thinks of the player. There might be some minor changes in the game based on these options, but ultimately I’ll use them to choose which game ending the player gets. For example, I thought that I could have the game count up points in a number of categories for conversation options (such as counting how many times the player said something nice or aggressive) and choose a pre-built ending based on how many points in the categories there are. Could something like this be possible in Unreal?
6: If I’m not mistaken, someone could use the Unreal engine to develop a game with very little, if any knowledge of a programming language. I; however, intend on having knowledge of at least a couple of programming languages - specifically C++ so I could have control over various functions of the game. How well does code written and compiled in something like Microsoft Visual Studio play with Unreal, and are there other programming languages that would be recommended for fine-tuning your game’s details? I started learning C++ a while back, but lost the plot and haven’t followed tutorials for a while but I do have some very basic knowledge of programming with C++ which I learned exclusively on my own. In school, I am learning a blend of HTML, CSS and PHP (which happens to be quite similar to C++) and will be learning others (like JavaScript and MySQL) further on in the course. Though I’m almost certain those web languages are not useful in Unreal, I do have some coding experience and will be gaining more of it, either in class or of my own volition.
7: Does Unreal allow you to model objects within the application, and if so, how detailed, complex and functional can objects be? How does it compare to something like Blender 3D or Maya? If Unreal does not allow you to build your own 3D objects and assets within the engine application, what external programs would you use? I would much rather use free software like Blender because I have no budget (which for the record, I’m aware can hamper my efforts).
8: You know how visualizations in Windows Media Player and iTunes flash, pulse and change colour according to the beat of a song? Can something similar be done with the light emitting from objects in a game using Unreal?
9: This question is far less important, and I’m more or less just curious. I’m almost certain the game will remain Windows-only and if I do end up porting it to other systems, it would only be to Linux and/or macOS. If I were to port the game to Xbox One and/or PlayStation 4, what kind of licensing would I need? Would I need proprietary hardware designed to develop games on those systems, like the PlayStation 2 TOOL for the PlayStation 2? Porting the game to iOS and/or Android would be out of the question, since I’m almost certain iOS and Android devices wouldn’t be powerful enough to run such a game I have in mind.
There are a number of ways I plan on learning game development with Unreal. For starters, the class I’m taking in college will teach me a number of things, including game development, though to what extent I’m not entirely sure (though from what I hear graduates of the program do sometimes go into game development as a career but it’s an extremely broad course). We’re also learning graphic design, film, video and photography (including CGI, VFX, motion graphics, photo manipulation and compositing), web development (front and back end), audio mastering and production, 3D modelling and a number of other things. Like I said, it’s a very broad course where fortunately, all fields of study fall into my personal interests. Secondly, I’ve been able to grasp and learn various things on my own. For example, my skill in using video editing software is almost entirely self-taught and I’m pretty familiar with how software like Adobe Premiere and Sony Vegas work so I am able to learn on my own if I’m interested enough.