It's time to apologize lol. Btw the video I'm referencing was set to private a while ago cuz I thought I was right but I was a dummy. ► Enroll in my 3D workshop, free!: www.fulltimegamedev.com/opt-in-15-minute-3D-game ► Learn how to become a full time game dev, free: www.fulltimegamedev.com/opt-in-how-to-make-six-figures ► Make your game instantly beautiful with my free workbook: www.fulltimegamedev.com/opt-in-instant-beauty-color-workbook ► Get my 2D game kit, free: www.fulltimegamedev.com/opt-in-2D-game-kit ► Join my 2D character workshop, free: www.fulltimegamedev.com/opt-in-2d-character-art-workshop ► Wishlist Twisted Tower: store.steampowered.com/app/1575990/Twisted_Tower/ ► Learn how to make money as a RU-vidr: www.fulltimegamedev.com/opt-in-indie-game-income-workshop
Hi, Thomas! I've been developing my game for VR for a little over a year. I heard you mention Probuilder and thought I'd mention that those meshes are also poorly optimized. In case you haven't yet, you should consider exporting them as an FBX and using a non Probuilder asset for your final product. Keep up the hard work!
I'd wholeheartedly recommend Bakery over Unity's built in lighting system. Not only does it look infinitely better but the bake time goes from hours to minutes. it also completely works with light probes so it really can be a drop in replacement for Unity's baked lighting. I believe there is also a realtime lighting addon for Bakery too.
@@michaorzechowski4948 Bakery Preview Realtime is just a tool to see what the bake will look like, in "real time".. I have not found any great realtime tools. Kronnect has an asset called Radiant Global Illumination which fakes RT lighting with a post processing effect. The little I tried it in an indoor setting I wasn't extremely impressed but I need to give it some extra effort, I think. Bakery and Magic Light probe is definitely the way to go if your level is static. Mine is procedurally generated and mobile, so I either go with no lights and get the game done, or spend a bunch of time trying to make scenarios where lights come into play and then setup the generator to use those textures instead. A lot of work.
@@michaorzechowski4948 Yes. By "not amazing," I mean that the RT preview isn't entirely accurate. Even with the preview, you have to do your bakes, run the game and tweak for disparities. It does have it's uses though.
What he meant is that the assets are out there. You don't have to make everything from scratch. The most time consuming part about achieving a style is creating the assets.
@@andrewhabroad I totally understand what he meant, just couldn't help myself not to mock that phrase, given the topic of this video :D But anyway - realising that making a 3D FPS is not easy doesn't automatically means that you already see the rabbit hole's end.
@@frostreaper1607 Programs like Substance Painter are designed to help you work easier, but the quality demanded by AAA studios is also higher, than in times, when 3D models were textured in photoshop with UV outlines on the background (which sometimes is still the case btw). It tooks some skill and time to make good textures. Applying smart materials is not texturing, it's a pre-junior artist approach and definitely wont let you have Wolfenstein quality assets.
@@nekronavt +1. Nevermind lighting, fog and other atmospheric qualities you need to make outside of popping static meshs into a world> AND remembering that sound plays a major part in how it feels so you need to implement all those atmospheric sounds but in a way that sounds natural depending on the players position. Heck it would be tricky enough to make the original Wolf3D wolfenstein with an entire environment made out of sprites
@@NaudVanDalen You still have to bake the lighting, but I think Unreal does more of the heavy lifting for you compared to Unity. I'm not an expert though so I could be wrong
@@NaudVanDalen If you use Lumen, you don't have to. If you don't use Lumen, baking the lighting is one click away and it doesn't take as long, but of course it depends on the size of the map. Generally 5 minutes is the average wait time with it taking longer when you make an executable of the game with highest lighting quality possible.
Glad to hear your take on 3D has changed. I’ve been following your journey since I purchased your 2D course and oddly enough I remember when you said 3D was easy. I also remember feeling upset with that comment. I had been struggling in 3D in my journey with Unreal, idk why it made me feel less than everyone else and thinking game development wasn’t for me. Though with time I found my peace and strength to continue my journey, I’m happy to see your progress and your growth as a 3D dev. On a positive note, I’m glad you returned with father I’ve been waiting for it’s release for some time, hopefully we see it soon. Last note. Regarding the name change I think Happy Hotel is a nice name, I’m not sure if it’s taken but the name itself has a catchy ring to it best wishes on your journey and looking forward to future updates.
I think that when it comes to 3D, it's easy to see the HUGE amount of purchasable assets and models and have the level building click as a more advanced form of legos, and conclude that's easier. And in some ways it is, but what's not as obvious is that people's expectations for a 3D game are WAY higher than they are for a 2D game. Similar to the expectations on live action superhero movies vs cartoons - you can have one or two gameplay mechanics in a 5 hour long short story in a 2D game like Neversong (which I finished last month, great job btw) and people will love it, but that same content in 3D doesn't feel rich and complete enough. So you need a longer story with more maps and more gameplay mechanics to make a 3D game than a 2D game to get to the same level of player satisfaction. Not to mention that the more realistic your art style, the more realistic folks expect the gameplay. Zelda or Mario in 3D is allowed to have some wonky physics or impossible jumps, but do the same thing in Last of Us or Red Dead Redemption 2 and folks won't go for it. (Why the lowpoly/stylized option has more benefits than just performance) When it comes to speeding up workflows - I don't know Unity as well as Unreal Engine, but there are ways of using Python scripts to script repeatable actions in the Unreal Engine or Unity editors for doing things like placing objects procedurally and whatnot. That may be something to look into for things like placing the reflection probes at specific places in the map and stuff like that. Regarding your question about Unreal Engine vs Unity for 3D - I have a bit more experience with Unreal Engine than Unity for that, and what I've seen so far, Unreal Engine does handle more things "for free out of the box" like a player controller and stuff like that which you often have to buy in Unity. Unreal Engine also has tools for splitting up large maps into dynamic smaller maps so you can do larger open world games where things are loading/unloading as you run around a lot easier out of the box as well, but most of that could just be my preference - if you like what you're using then great. Cheers
Even having the assets is not a good point, because if you built a game only out of assets, you're just going to have a generic game without any personality.
@@AmodeusR I woudn't say that, being able to make good use of assets is VERY important and honestly most concept art is done with kitbashing anyway. It's a matter of using what'cha got, but as he says at a point you're gonna need stuff you don't have, and creativity can only take you so far. So it's not about personality, it's about being EXTREMELY sure that what you're getting works for your needs. Cuz you don't need to model another barrel, there's 150000 packs of cool barrels, it's fine. The asset store's great, but it can be a trap, you go to it to solve problems you already have, not to maybe solve problems you might have in the future. that way leads to Bad Times.
What's even the point of high end games? If it fulfills 90% of the player's expectations (life changing) while looking amazing and costing 100 million dollars, people are gonna think it's worse than a 2D game made in 2 days by one person that fulfills 200% of the player's expectations (nothing special).
@@plagiats Very talented? I would dispute that. He can't code, used visual scripting plugins for the entire game, used entirely assets from the asset store, and created an extremely janky and buggy game with terrible animations that only sold well due to the fact it had a nice story and the asset packs he used looked really nice in screenshots. I'm not saying it's objectively a bad game, it's not my cup of tea but other people liked it, and i'm not dissing the guy for making it, or for his skill level, but he is not what i would call 'very talented' when it comes to game development. I think this steam review hit the nail on the head: "feels like someone wanted to make art but realized they had to make a game too, and game development wasnt their strong suit"
They didn't have to go and 'fix' anything. They just chose to port to a platform they originally had no designs to target, as part of the porting process they had to also port/adjust the assets. Nothing was actually broken about them tho.
I solo developed and released an FPS this year and I can confirm that EVERYTHING Thomas just mentioned is correct. If anything he's downplaying just how complex the process is. Anyone considering it really needs to understand what they're getting themselves into. Once you move into a 3D space the complexity of the process grows exponentially. And you've gotta manage all this technical complexity without forgetting to design a game that is actually *fun* for people to play... 0_0
A useful rule of thumb is that for every engine feature that adds an additional category of asset, the development cost of a scene correspondingly goes up. Thus, designing for a single-screen game with looping background music(which can have a static background, a hardcoded collision setup, and one prerecorded track), is simpler than doing the same for a scrolling tilemap game with environmental sound(because now there's a tileset, tilemap data, a camera, and a whole bunch of triggers, volumes and material assignments for ambience). Likewise, a game that uses keyframe animation is easier to plan than one that deforms meshes, but the cost of making a rig can pay off if you have a lot of animations per model or are retargeting that animation data. By the time you get to doing 3D, you have meshes, textures, materials, lighting, etc. It's hard to keep control over these more complex assets, and scope creep can sneak in really easily simply by deciding to show something representationally(e.g., opening a door) instead of abstracting it into a piece of UI or a scene change. With AAA budgets there's a presumption to what's taking place: designing towards maximizing the *hardware* budget means pushing as much as possible through the engine, which means that the art pipeline is dragged along to keep up with what the engine can do(because that's what, historically, has created great trailers and screenshots). But we're well aware with this generation of hardware that it isn't the constraint on the experiential aspects of most games anymore; the new Last of Us and the old Last of Us are hard to tell apart at a glance. Embracing retro looks, Nintendo-style art direction with more stylization, targeted use and occasional reuse of assets, or proceduralism in the art style(e.g. No Man's Sky) tends to be the way to get to something appealing while keeping the development cost sustainable. But there isn't a magic way to remove the effort once you've committed to having an asset exist: either you make the asset by hand, or you make it procedurally and then your asset is the configuration data. Even if it's "just" a piece of text, that's still a way of adding scope. Machine learning AI will probably make it less insane to work with so much detail in the future because it lets things stay flexible throughout the process; ideally, you just hand it a greybox and a finished example and say "populate it like that". But even then, there's still going to be some ways to blow up the scope.
Ask somebody who is used unity and unreal. The pipeline is a lot easier to make an FPS for unreal. However a lot of the issues you'll having appeal more to do with how you set up your pipeline. I would focus on level design with the bare minimum of visual fidelity until you know how all the mechanics will can play then worry about baking and rendering if you're working on a team and one of you is an artist and the other one is a programmer. Split it up so you only have to worry about the lighting and the shading at the end that's going to be the most time consuming. Also you can set the lights to be animated. Around the emission spot so they just have the appearance of emitting light without them actually emitting light. And just have the closest one a mid light and then bake. It doesn't matter if the light behind you will you cannot see is visibly fasting light or not you can set it up through a raycast function so just shoots out from your main point of view and then even deviated by a few lights to change the effect so there's no glaring differences but it's been a while since I've had to mess around with unity Rader engine
Hey Thomas, I'm proud to be apart of the GameDev community especially yours throughout the years. I especially have gained an idea for my very first game idea I'm slowly putting into action of a simple fun arcadish style game to help me get my feet wet with for the taste of the action. Starting out nice and small and putting my big adventure game project pushed back until I gain more experience. :)
Thanks for talking about this. There are so many tutorials to create games and the indie market is getting flooded with games that are not made right because people do not understand this. I am a programmer and I try to tell people this is really hard. Sure you can make something but to make it work well too and have everything, is very difficult. I am glad to see people who have an audience, talk about these issues.
for last 3 month i'm working as technical artist intern , every day i learn new stuff about light baking and optimization ...., sometimes its really hard , never imagined these kind of features in my games!
Awesome video, Thomas! You put a lot of thought into these and it shows. Lots of great points. I completely dropped Unity for Unreal because of shaders and lighting. I tried migrating an existing project to URP, Unity's DEFAULT material bombed right out of the gate, and I realized I needed to escape while I still had most of my hair. Never looked back.
a big subconscious issue with realistic graphics is that things that look like real life will remind you of real life..but we all play games to escape reality.
This was a great video. It’s been a while since I’ve seen a video of yours that felt like YOU. Also your Shooter looks fantastic, gives me a Kino Der Toten mixed with this robot wave shooter that I used to played. It looks amazing, loving the lighting and look.
I am beginning to understand why it takes Bethesda so long to make each game. Not that I thought it shouldn't have before, but doing all of this for the whole world where multiple types of enemies can spawn in each area. Good lord.
You haven't even scratched the surface of what makes 3D game design particularly difficult--good, deep, game design that holds a player's attention past when the novelty of the game wears off. This is nightmare level difficult. All the economics, engineering, and art concerns you go over in this video are valid (and to me the idea of trying to make a game that looks cohesive and interesting without paying a dedicated team of artists a salary is ludicrous, but I don't work in indie games and I guess the realities of funding are different), but all of these things are table stakes of game dev. If you don't have them, you don't get a chance to be successful. But if you do have them, congratulations, you've finished the tutorial. Now the real difficulty begins: what is fun? What is noticeable? What is motivating? (Things can be not fun but motivating) What pacing do you want, what's your balance of forward looking vs reactive gameplay elements, what resource loops make sense, what emotions does your enemy design attempt to elicit and so on. It's really fun but also so much more difficult than anyone who hasn't tried it could possibly imagine. Source: I do this for a living ;P
Bennet Foddy said it the best when he said, that "People have been predicting for years now that games would soon be made out of prefabricated objects, bought in a store and assembled into a world. And for the most part, that hasn't happened, because the objects in the stores are trash. Not to mean they look bad or that they're badly made (although a lot of them are). But to mean they're trash in the way that food becomes trash as soon as you put it in the sink. Things are made to be consumed and used in a certain context, and once the moment is gone they transform into garbage. In the context of technology those moments pass by in seconds." Your game is going to succeed precisely because you took that "risk" your game can't look like any of the other ones made from asset store objects, because none of the other ones got to have a stylistically coherent style. Congratulations, your game is shaping out to be great!
IIRC, for the gun clipping thing, there's a trick where you disable depth test on the shader somehow and perhaps modify the gun/hands' rendering order to be the last always. That way they always render on top of everything. That said I'm not sure it was the full solution, I only remember the concept. But supposedly, using multiple cameras means you lose any effects from other objects in scene since you basically render them in isolation and composite them on top of main camera result (meaning cleared depth buffer, thus no effects stemming from depth buffer data). Not to mention any post effects that would incur cost if done twice for the second camera.
There are several options available for assets that go through and optimize your scene objects, grouping meshes together and optimizing their geometry. If you make a building out of many objects they can combine them into one mesh, remove internal faces and vertices that can't be seen, optimize geometry for lower polycount and more, at the click of a button, they're not always perfect, but they tend to do an extremely good job in the vast majority of cases. The usage of tools like that are expected when you deal with these modular asset packs, they're designed to be placed and then merged. Similarly there are tools for automatically generating light probes. There are better lightmap options available that run faster, bake faster, and look better than the build in Unity lightmapping. Because these are common things that need to be done in so many games, people have spent large amounts of time creating ways to make the process easier. Knowing what tools are out there to speedup your workflow is important so you spend less time bashing your head against the wall. Definitely agree on the realism vs stylized difficulty. A realistic asset will go pretty well with just about any other realistic asset so it's not difficult to build a consistent look out of disparate parts. But since stylized assets are stylized, they look different than assets in other styles, so good luck.
One word: Tooling. If you do manually what can be somewhat automatic, you'll be in a world of pain. It's absolutely fine to build your building from "bricks", if you also have a baking tool, that will turn it into a single mesh for you, for example.
Great video Thomas, as usual! Thank you for sharing the story and lessons learnt. I found myself in this exact mindset - I also felt a few times making 3d game will be much easier 2d. I am so happy I haven't decided to give it a try though haha. Good luck with further endeavors! I am sure you will surprise us very soon with another hit game!
I went and started on making a 3d VR game with a similar mindset (only I straight up abandoned any focus on making the graphics any good due to the sheer amount of work to make assets). What was really surprising to me is the SHEER AMOUNT OF TIME SPENT OUTSIDE OF PROGRAMMING. The stuff for polish -> textures, modeling, animation, musics, sound effects. I didn't even bother messing with light baking, but its all very very tedious. And the cameras. For the VR game I'm still working on, I have a camera for the skybox, a camera for the targeting boxes, a camera for the cockpit (its like an x-wing simulator), a camera for the targeting computer (like I said, x-wing), a camera for the UI. Effectively that's 6 cameras to manage! I'm going to finish this game eventually, but when I started the project, I was targeting the Quest 1. By the time it's finished, the Quest 3 will already be out and the expectations for visual fidelity will be roughly on part with games made for the playstation 3 by that time!
The problem with the asset store as that if you slap together a bunch of premade assets, (1) your game lacks a unique identity because those assets are being used in a bunch of other games and you could be using multiple assets that don't mesh well artistically, (2) you're beholden to however each asset creator decided to structure those assets, meaning you inherit all of the asset's problems and limitations
Hey Thomas, just a thought I had. You said it yourself, you shouldn't tie yourself down to an identity. Art and setting may be your forte, but that also doesn't mean you can't keep an open and experimenting mind if gameplay does need enhancing. Push your limits and take a little risk! Life is all about that constant struggle. It doesn't have to be a weakness but maybe just not your strongest skill as of right now. Maybe that sounds like the same thing, but I think the positive outlook helps us think differently. Anyways, good luck on the journey. I wish you good vibes and big gains.
Also you don't technically need a second camera if you rae using URP or HDRP. URP has camera layers but you can also create separate forward renderer that will render objects on specific layers always in front. HDRP is more limited in that regard, you can use custom passes to render things on top, but can't doo stuff like changing objects FOV relative to camera... as far as i'm aware of
Camera layers can't give a correct shadow result . Like you want the first person hands always on top, and you want the envirnoment can cast correct shadows on the first person hands(hands sample shadow map by depth correctly ) . So they all need to be in the same light layer. Otherwise the shadowmaps aren't right. Or you can have every environment object to have a duplicated copy set as "cast shadow only" and in the layer of the FPS hands. But it would make the level management more complicated. HDRP offical samples have an example with custom pass, the idea is to nuke the depth buffer of where your FPS hands will cover, then draw the FPS hands so they can be drawn on top (because the depth in the back is already gone). But the example doesn't do every good, the real depth is still the origin one, if you try to get the final depth texture, it's still the old depth. So a lot post processing effect can be wrong with it. I still haven't find a way to do with that example. FPV addon(First Person View 3) can have the FPS hands and environments rendered in just one camera, shadows are correct, post processing still working correct. FPS hands FOV can also be modified seperately. It's probably the only out of box FPS hands solution right now.
Kinda surprised, as someone who has mapped on an off for two decades for various FPS/engines all these things are pretty standard. Have never made a game but all these things are pretty normal. UE is probably better but optimisation is important. For a cohesive look you can use "quality" models and materials and then screw with the mats for a stylized look rather than the models themselves. Could also decimate and screw with high res models in blender. (obv not suggesting for you thomas, but anyone else reading it might be an optoin). Does low poly stylized really make it stand out all that much - it is quite done at this point.
Just gotta say that I really appreciate all of your videos, and especially how frequently you upload them. Your channel has kinda become some sort of all-in-one place for everything regarding gamedev to me, and I just think need to thank you for that! Keep up the good work and good luck for your projects :)
The reason indie games are so popular is that style, when you see it being different from AAA, you know it's going to be something more than just a product
It's only harder when you use an existing engine to do it. Anyone can whip up an FPS game super quick and dirty - you don't need to make an engine. You can also employ simple libraries that do things, like a library for rendering PBR materials (if you want). You can describe your worlds however you want - there's no rule that says it has to be UV texturemapped triangle meshes! When you're working within the expectations of an existing engine you can't just skip a bunch of stuff like you can when you write something from scratch. You can also use whatever language you want when you code a game from scratch - use the simplest highest level language that lets you draw as quickly as possible, or go as low-level as you want if you want some crazy FX that can't be achieved without low-level optimization and integration.
I've been working on something I'm super excited about. It's an FPS but it is going to be unlike anything out there currently, which is why I wanted to make the game. I do use some marketplace assets but they are only for sounds and particle effects, the rest is all my own blender models from scratch and Houdini creations. It took me more than a year to grasp Houdini to a level where I can generate and re-generate entire maps including interactable objects, enemies and the works. Spending the time to properly learn Houdini was well worth it as if I do have optimization issues I can regenerate a map with not too many adjustments and increase/decrease assets easily to tweak how many I have in a map
1) yes UE is a little easier but harder in other ways , where you heave to learn all the nitty gritty stuff of blueprints. 2) for 3D "road to vostok"s first development video regarding lighting and baking I found greatly helpful.
The problem is Unity is great at helping you with beginner issues. Unreal, on the other hand, is great at solving more advanced problems - from a better post proc system to automatic LOD, better shadows, better lights, a more performant engine,...
@@TheAndrejP Learning c++ teaches you to be an obsessive compulsive control freak with respect to memory management; it also forces you to work with pointers. c++ is rougher to learn.
I think, for each game use the engine meant for this game, for 2D Unity or Godot, for FPS Unreal. Unity started as a 3D engine but they switched focus to 2D mobile games. Another remark why I prefer Unreal: Epic is a company that does games, all the engineering struggles you passed through they passed through and they are continuously making tools/fixes for them. Unity is like offering tools for car manufacturers to do a car but Unity themselves do not know how to build a car.
Unreal Engine is absolutely easier to use but only once you've gone through it's steep learning curve. Once you learn it, it's kinda frightening how loose the workflow is. It's definitely an engine for creatives.
Probably has a lot to do with epic actually using their own engine. In still baffled how much stuff you have to manually, painstakingly do in Unity that is one click in Unreal.
Even after getting over the steep learning curve, you still have a lot of disadvantages if you know little about C++. Blueprints has advantages, but some things are a lot more tedius to do then just getting knee deep into the code.
@@SleepyMatt-zzz yeah but you can still make a complete game in BP only, there has been plenty of BP only Indies. It does limit you on what you can achieve but it is a very solid starting point for anyone trying to make and publish a game. I'm probably biased having used Unreal professionally for years.
@@SleepyMatt-zzz - I hate to sound like an unreasonable advocate for unreal but, "A lot of disadvantages" is a bit of a stretch. What features is the BP system missing that prevents solo devs from executing? I feel like most devs who complain about the blueprint system often have a huge wall of spaghetti and aren't very optimistic about optimizing/organizing their BP's. I would really like to know the actual disadvantages other than the fact that BP systems are indirect C++ execution in the editor. In my experience, I feel like there is a lot of good things to say about the BP system. It's pretty darn solid when we make it work right and plan for efficiency. Artists finally have a chance to see the code flow without having to monitor over proper syntax (which I hate) giving homage to creativity and experimentation.
This entire video is proving the point that just because you’re good at one kind of art, you are not automatically good at another kind of art. I look forward to Thomas’ next game, where he learns enough about the tech to understand why the deferred rendering model might have helped him (considering the bonkers number of light probes he used).
I've been programming a game from scratch, and my problems are completely different than what's described in this video. Here everything is about the assets. Choosing the right asset for the scene. Arranging assets in the scene. Changing asset properties, etc. In my own engine, the toughest problem(so far) was 3D rotation. I had to learn what quaternions are for before I managed to get it right. The other tough areas I foresee are movement with any physics whatsoever, and collisions.
lighting doesn't have to be baked to look good. It really depends on your game's style and the engine you are working in. Unreal engine allows pretty much all lighting to be dynamically calculated and reflections work out of the box with no probes
All that baking is one of the reasons you don't use production assets until most things in the game are nailed down. Greybox everything, worry about final details when your gameplay feels good.
Oh the irony that I get an ad for a game dev course to learn to make "incredible" games in one week, without knowing art, programming or game theory haha
when you see father, you know it's farther you're looking at, that's why you want it stylised, you don't want it to get confused with someone else's game
God damn, you look like Tom Keen from the Blacklist (portrayed by Ryan Eggold) that first opening shot with the brown frame glasses hahaha. Great video by the way!
i'm actually really curious about a setup for the flying enemy. I assumed a two double meshes were enough, but i'm more curious about the enemies chaning their height + moving around
"measure twice cut once" is such an old and universal saying that still holds up today for every job. I think a lot of devs especially don't think about this. I have seen so many people these days just assume especially with high level tools that you can always just shoehorn non-glamorous things like security into an app on the back end or save states etc. But then those things wind up costing more in money and resources (real and virtual) in the long run. Of course starting out you don't know what you don't know, but generally the more prep and research you do (to a point) helps mitigate a lot of extra work down the road...
I think you're basically right to warn people. I have the impression that Unity in particular motivates a lot of people to start with such a project (because the beginning is so easy), and at the same time causes a lot of people to fail (because the goal is so unrealistic). however, it suprises me that there are a few more projects in the UnrealKosmos that located in the 3D world and developed by 1-2-man teams in impressive quality (Arcadian Rift, project feline...). I'm almost convinced that 3D and Unity are a bad combo if you don't just want to play around with it like a sandboxing.....
I used to be in the game industry, but gave up on it since it's such a mess to make games. But that was 20 years ago. Today, watching this video, my first reaction is that the tools (Unity) seem inadequate. As a programmer I want to make everything I write as useful and efficient as possible. Those last steps you do for a level for instance, is something I would try to do away with, automate and whatnot.
lol sounds kind of familiar, and then I decided to make it co-op. I mean to be honest, it sounds like a horrible idea to tackle multiplayer right away, but I actually learned A LOT about where code/blueprints should be to make sense. Like when replication is demanded, you simply cannot be writing pretty much any code in the widget classes like they do in the RU-vid tutorials.
You made an excellent point about optimizing your models. It really only takes a single complex model with terrible optimization to destroy the project. I can't tell you how many times my newly fashioned models cause extreme loading times within the editor. Once the models were re-designed, the issues vanished.
I definitely agree about a realistic style being easier to implement than stylized when it comes to 3D. For many reasons beyond just asset packs. This is one way how I plan to set my work apart though. The drawback is less time on all the other aspects of game dev *sigh* as goes life. Good luck TB! Also to everyone else!
I've been there this year and changed my chess game from multiplayer and ai matches to puzzles. And I pulled a lot of ideas out to use em for future successors instead of my first one.
Nothing wrong with this method of building games, but wow it's hard to even imagine development outside of a programming / tooling-first mindset. I'm essentially watching this video with existential dread at the thought that people take the default unity approach and manage to scale it up all the way to sizeable 3d releases without stepping back to re-evaluate and parameterize literally everything. Imo - never have your physical level and your layout / design be one and the same, with a similar mindset applying to nearly every component of gamedev. Still, best of luck!
I just recently decided to scrap my 3 year project trying to make a fps mage game, which started out as a project for my studies but stretched into a colossal task which I continued to work on long after graduating and its comforting to see I'm not the only one with dreams of grandure that committed far too much time to a project that I had no hope of completing. I was working solo the whole time and I'm only really trained as a programmer so its been a nightmare trying to make this game a reality and you've outlined perfectly just why that is, the initial look of the game is only about 40% of what makes these types of games fun and playable and there's a damn good reason the only great 3d games generally have a team of at very least 20 - 50 people working on them for years.
I have a B.S in Game Design, and you are absolutely correct about the hook, your game needs to get players attention. From attending college, I learned that the scope, Game Design Document (GDD), and your skill set are very crucial in game development. But most importantly is gameplay (Game Design) will make or break your game. The game must engage the players for it to be successful. Best of luck on your next projects.
I'm working with Unreal and I feel it can make your life a little bit easier for 3D with Lumens and nanite but at the end you will face the same FPS challenges. I think you should stay with one game engine and master it.
The thing with Unreal is it has better built in tools for the tasks you come across in 3D games. Automatic LOD vs. manually redoing meshes, a better system for baking lights, a better system for shadows etc.
@@TheAndrejP You are right about the 3D tools for Unreal. I think if someone has no experience yet with any game engine, Unreal it's a good investment of your time, there is so much stuff coming out of Epic and the pipeline is loaded with crazy features. But if someone has already invested many hours and years in Unity, switching to Unreal may not be a wise choice. I think it's hard to transfer knowledge between game engines and may not be worth it.
Thats why you gotta do the graphics **last**. Make sure the core mechanics, gameplay, level design (with simple one colored shapes like qubes etc) are well set before doing any polish. How do you know its done? With playtesting, by yourself and getting feedback from others whether its fun or not (ignoring the bad graphics of course). Because otherwise you see whats happening, you're double/triple working, because you're doing polish alongside development, which a good development team doesn't do (as GTA leaks show, and valve development footage shows, horizon until dawn early footage shows etc..). I'm not an expert, but I think it's a trap that many beginner/intermediate developers fall into. Because it's easy to enter that rabbit hole.
I'm making a first person shooter , a survival horror , 60 fps is like how could I forget to make sure it does not drop to 30 fps , now I have to back track 😖
I think I'm gonna stick to slapping sprites in a room with 2D games. I did optimize my "game" to go from 100 fps to 300-1500 fps by deactivating objects of different areas and that already took hours to make. It could probably be even 5-10 times faster after compiling it because GameMaker is way slower than you'd expect for simple 2D games when not compiling them. You'd never get away with an interpreted language in decent looking 3D games. It would run so slow!
Thanks for telling your story. Frustration and headaches are always part of making anything. As an Unreal user myself I've been so aggravated I wanted to uninstall and load up a different engine : ). Documentation is light (getting better), 3rd party videos skip steps.... "It's not working and I can't figure out why!" Conquering those obstacles though, that's the sweetest feeling in the world. Actually some the most creative and immersive game experiences come from climbing the wall. Keep grinding.
One thing that's easier is a very simple 3D game versus a 2D game that's supposed to look a little 3D by using a bird's-eye view perspective. Simulating 3D bounding boxes is really annoying. I had to change all the bounding boxes every time I attack because I have to hit the enemy's face instead of its feet. With 3D, all of these annoying calculations are already done because the height is actually real. Of course I'm not comparing a simple pixel art 2D game to a AAA game. Of course that's way more difficult to make. Impossible actually for one person or a small team. Another thing is that each animation and each skin is made once, so 10 skins and 10 animations versus 100 combinations of skins and animations in a 2D game. Although that's only if the skin is basically a 3D version of a simple 2D sprite. Not a high quality AAA model.
Unreal, is the same. Your scene tanks in frames if you put way too many lights or foliage or anything really heavy in the scene. it just now got decent with UE5 but you still want to do all your optimization task
That's why you make your own assets and VFX and lighting and everything else. Using other people's assets should be like a criminal offense to quality because they have to have, for instance the same texel density as all your other assets in the UVs otherwise you're going to have choppy textures and shadowing. You can fix this easily though. I've committed to becoming a pro 3d artist but the biggest problem is you have to understand what makes games fun before you make one on your own, looking good is one thing, making it fun is another.
Really like how you dove directly into the details of what makes it hard to make 3d games, and the entire video was very meaty with details and examples of your experiences. Very nice
This is secretly an Ad for Unreal Engine. Some of these lessons are cross Engine. Its very good to have the awareness of these concepts regardless of Engine, so you have a point of research to see how your engine handles these problems.
My biggest takeaways from this video: 1) Learn best practices for optimization in Unity. Sloppy (unoptimized) development will compound over time and sabotage your game. 2) Come up with a unique style and hook for your game. Don't just try to copy existing AAA properties.
This has been the most insightful and useful video I have seen on development yet, and THANK GOD because I just started my journey LOL you have saved me from I'm sure a lot of headaches and let downs.
Unreal 5's Nanite and Lumen really are changing everything. All the optimization you need, at least for a static environment, is done for you, either at runtime or at asset import time. Sure it's not quite ready for mobile devices yet, but it's totally changed the game for PC & Consoles and it looks like the shape of things to come. Unity is going to have some serious catching up to do.
Let’s also talk about how 50 Cent brought the idea of selling shoes online, before stockX and GOAT was a thing. 50 been giving his son game on how to be a entrepreneur but his son chose different routes, 50 even tried to offer him money to get started. As 50 mentioned in his book he works hard for his money and that he his not going be giving it out to someone who doesn’t want to work.
It might be worth it to build stylized assets off of realistic ones since you kinda just apply your own style to all of them in more or less the same way (obviously it's still an incredible amount of work)
About Unreal vs Unity. I would say it's a lot easier to get started in Unity because of a very clean C# API and because they at least used to have nice beginner friendly tutorials. Unreal, on the other hand, has a far better shadows system, a much faster and simpler way to bake lighting, apart from actually having a good real time GI, and as far as model optimization goes, it has a great built in automatic LOD system so you can do in minutes what may take you redoing a bunch of models in Unity. So Unreal helps you more where you really do need help, in my opinion. On top of that it's a more performance oriented system, so performance issues don't arise as fast as they do in Unity.