AAA VS Unity Indie Game Dev + Q&A

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
all right hello out there I think we're live now it's looking good anyway uh welcome everybody thanks for coming today I wanted to talk a lot about triple-a development versus Indy stuff working in unity and other engines and just take some questions and answer them see what I can do to help people out if you guys have questions there's a link in the description to a forum just put them in there don't put them in chat just because chat tends to scroll by so fast I can't keep up with it the forum makes it nice and easy for me to go through and just not miss people's questions and answer them I think I'll kick it off just by talking about the other stuff that I was going to talk about and then we'll dive into questions as they build up there are already some in there I figured that there will be a lot of them in there after I get done just talking a little bit about my experience doing triple-a stuff versus working on indie projects also I just wanted to mention that I do plan on doing a live stream sometime soon where we're gonna talk about high performance networking Kyle said he's gonna he'd be happy to come on some time and just clean clear some things up and talk about stuff he did mention that um I I mispronounced the network framework like multiple times and said Gina it's a net not a G so we'll be talking about that about how to put together high performance network stuff that'll be in hopefully the next stream whatever whenever he's free and available and we can get on there and do that and then also there will be another video coming up soon on state machines we'll do some advanced state machine stuff this would not be a live stream and then there will be one that I'm doing on tweening and queueing systems so if you if you're interested in that kind of stuff they're coming weather I guess whether you're interested or not they're coming but if you're interested hopefully that's exciting and good stuff and it'll be here relatively soon also if you just starting out watching it make sure you hit the like button subscribe hit the little bell and all the other things or just share it I think that's the best thing you do is share it and get more people in here more questions and and hopefully they'll ask things that other people don't think to ask and while getting answers to stuff anyway um let's just get going or to start again by talking about triple-a development versus indie development I've done quite a bit of both I actually started off my game development career working solely on Triple A games I think I mentioned it before but one of their Vanguard was the first actual triple-a game that I got to work on and it was a blast and I got to work on a couple of other games at the company and the experience was really interesting and really fun and at the time I didn't really know the differences between indie stuff and triple-a stuff in fact indie stuff was relatively small at the time there weren't a lot of indie companies and there wasn't a lot of like a big indie industry like there is now now there are way more indie companies that are smaller than there are Triple A companies out there at the time that wasn't really the case most of the small companies ended up being Triple A companies so when I guess there are some big differences though that I noticed when I was working in triple-a versus Indy stuff and I think starting off with just the the sheer team size everybody kind of noticed that in a triple-a project you're gonna have a relatively large team it's gonna be quite a bit bigger than an indie team in fact in my experience it's like five to ten times larger on a triple-a project and that's because there's a lot of funding and a lot of pressure to do something big and on to the very specific timeline with marketing goals and all this other stuff in mind so everybody scales up really fast and then the teams are just giant what that means as a programmer though is that your tasks end up being very specific so I did all my Triple A development just as a programmer I actually wanted to be a game designer when I started out but found out that programming was well it paid better it was a little bit more interesting and I was pretty good at it so that's kind of where I stumbled into it but when you're working on programming in a triple-a company you tend to be very specialized you tend to have very specialized roles for what you're doing I've mentioned this before that when I started off I was actually doing tools development and I started literally doing solely tools development in an India Company you're not really gonna find that you're not gonna find anybody who's generally just doing tools you'll probably find people who specialize a bit in tools and maybe one or two people work on the tools but they're also working heavily on the game and the server code or whatever you have for your type of game you know generally whatever your gameplay stuff is and you don't end up with quite as much siloing and specialization like you do in these bigger companies and the big ones it's just uh you know you've got this specialty you work on that thing and you're working on that thing maybe all the way through the game and I saw a lot of people do that where they would come in they would get one thing that they were working on like one subsystem and they would work on that subsystem for years and that was kind of their main thing that they did in India that's just not really an option partially because of the sizing now that's also why indie games can do some really employed games can do some really amazing things because you can have people who specialize solely in one thing and are amazing at it they're really really good at it and they don't have to do the things that they're not amazing at or not really good at with an indie company you generally have to do a bit of everything it's you know imagine like you're the sole developer on there you're doing all of it if you've got you know three or four programmers you can imagine that nobody can just do one thing and specialize in just one thing everybody's got to contribute all over the place and priorities change and a lot of time there's not a lot of work in a specific subset where with the triple a company there's always going to be a lot of things that that you can do just deepen your specialty if it's graphic stuff tool stuff networking stuff you could easily have just a single person or a single subset of people just working on that stuff the entire time another really big difference for me at least was the way that we'd get these tasks so when I was working on Vanguard and EverQuest 2 what would generally happen like the way that you would get your new task for whatever it was the week the month the quarter and a lot of these time these tasks ended up being very long was through some meeting process so what would generally happen is the producers and the leads would have a meeting with the design the design team which was I guess one of the leads or a set of the leads and they would come together and build out a plan for the thing that we're gonna do for the next three months or the night six months or sometimes even the next nine months depending on the project and where you were with that so they would come together figure out what this plan is and then start said they would kind of give it off to the different sub leads so like the programming lead the design lead and then those people would then figure out who was on the team was gonna work on what thing based on their specialties and they're just availability so we'd have these big tracking things where we'd track like who's uh who's working on what for how long how many weeks we estimate this project to be or how many weeks we estimate this single task to be and then that would all be in some big system driven by the production team which would be the ApS or the EP which the associate producers are executive producers so they would kind of set up the stuff and then you'd go to a meeting and you'd end up saying hey these are the tasks sometimes what would happen is we'd go into like a programming meeting with the full team and they'll lead or leads would say well we have this thing and this thing in this thing and we think that these people should work on it and then we would talk about it a little bit and then sometimes another person on the team would go oh no I can take that I'll do that I think that's really interesting I want to do it but I'd say most of the time it was very top-down driven it was these are the priorities these are the things we need and these are the people that are gonna work on it it was very much a more managed scenario when you're working in something like an indie team though it's I'd say very different usually there's a lot more direct communication it's like with the creative team and the producers between everybody and I think that's just a side effect of being smaller and needing to be more reactive and a bit more agile and the tasks also don't end up in being as long-term so you don't end up with these three-month and six-month plans where everything is broken down I've seen people try to do it on an indie team and it doesn't generally work because in indie teams everybody is communicating essentially with everybody else or at least with the people that they're working with directly all the time now in a triple-a company when it would work on design related features so a designer says hey I need this I need this new functionality need flying mount sir I need this new class functionality for this one class that we're building they would generally the designers would interact very directly with the programmer who was assigned to it but that was kind of about it there wasn't a lot of communication outside of that unless there was a very specific task now you could of course go back and forth and just talk to the designers and I highly recommended it for everybody who is doing it like make good friends with the designers and the people that you're working on and make that communication open but it's not as forced as with an indie company and I really personally prefer the forced communication that you get with an indie company because I feel like you have a better idea of what they want instead of everything coming through a dock although I totally agree docks are super important design docks are really important but instead of everything coming through a design doc and just getting communicated by a second or third person with indie companies you tends to be directly communicating with the designers on what it is that they want built and how it's gonna look and how you're gonna put that together another thing with communication 2 was in those big triple-a companies you don't tend to get to communicate with players as much which i think is kind of sad and I know that there are reasons for it it's just I I think essentially that people are worried that if your community if everybody in the company is communicating with the playerbase and you have a large player base it's easy for mixed messages to get out there and confusion and then get angry players and stuff but you also miss a lot of that direct feedback you don't I guess what I one of the things I found was that a lot of times in triple-a companies the people working on the games aren't even playing the games that they're working on they're not really interested in the game maybe they weren't interested in it for a while and then they stopped playing it in indie games that doesn't tend to be the case usually when people aren't interested in the game that they're working on an indie company they leave and they go find another game that they want to work on that they're interested in and I think it's important that no matter what you're working on you're playing the game and into it now of course there gonna be some cases where people are working on something that you know is totally designed for a different target audience maybe you're working on a game that's made for toddlers or something in that case I get it right you're not to be doing that but for most games if you're not working on if you're not playing the game that you're working on it's very easy to do the wrong thing and waste a lot of time on stuff oh one of the other things I guess there were two more things that were really big differences that I noted and that was with the bigger teams I think people underestimate what the producers do usually what happens is the associate producer so the APS tend to kind of keep the project running and keep things going the main producer will have this big big plan of what's going on and stuff but a lot of time the heavy lifting of keeping things going and keeping the project on task and making sure everything was going on right which is the job of the associate producers which is almost like a thankless job because they're going around and kind of writing you to make sure that you're doing the right things and that you're getting things done but it's a really important thing that they do and it's also kind of an interesting I'd say game career option for people who aren't really interested in programming but want to get into the industry because there's not a whole lot of competition for those positions from what I've seen and there's a lot of value and really a lot of influence on the game to like they don't necessarily have a lot of design influence but they have a lot of influence on making sure that the project actually gets done so if you're interested in game development but you don't think of yourself as a programmer or a designer or an artist you just kind of want to do something in the industry looking at those production types of jobs I think is a great option it's definitely something interesting to do and then the the final big difference that I wanted to talk about was with the triple-a companies they're almost always working on multiple projects the bigger companies have tons of projects and when you're working on something if it gets stale and it gets old and you're not really interested in it a lot of the time you'll have the ability or option to switch projects sometimes you might have to ask for it and be a little bit vocal about it but it's I've seen tons of people just switch from projects that they've kind of lost interest in over to something that they thought was a little bit new a little bit interesting and they could totally kind of revitalize themselves which kind of brings me into some of these questions that have popped up here so again if you guys have questions about this stuff or just general game development stuff there's a forum linked in the description so just make sure that you go put the question in there so that I see it and don't miss it if they're in chat they just tend to scroll by so fast that I miss them so put them into that forum I'm going to go through the forum and just start answering the questions as quick as I can and try to hit everybody's questions and also don't forget to hit the like button the subscribe button and a little bell and share this with all your friends and your grandma and everything else the more people that hit like the better because then more people come in we get more interesting questions and yeah it's just fun it makes it more exciting for me to anyway I'm gonna jump into some of the questions now and first I'm gonna take a drink then I'm gonna jump into the questions there's some actually some interesting ones down here okay this first one says it might not be applicable to this topic but I was wondering if you'd put game projects from courses you've taken into a portfolio as a very new developer with less than seven months experience who's looking for jobs it feels like a shame to forget about all of them as I got over 40 games that I made like that or should I create some new ones that to add to the single game that I've made on my own okay great so if you're looking for a job in game development and you don't have a portfolio you're just kind of crippling yourself so it's very important thing to do especially nowadays I think you could get away with not having a portfolio before I think that now it's such a big differentiator when people can just click through your resume and go directly to the link and also if you link your portfolio and your resume make sure that it works make sure that it works in the viewers and editors that people are using don't put it in a bad link that goes to a 404 or something else or just isn't a valid link make sure those are good but for the type of stuff that I put on there I don't know that I would necessarily just put game projects where you just followed the course and did exactly what the course did what I would do instead is take one or two of those that were interesting that you have some unique ideas for and can do a unique take on and then expand them out so say like whatever the game type is take a look at it and see if there's some new twist or feature or functionality that you can add that makes a I'd say a noticeable difference and makes it more fun or maybe it combines the two games together and into a fun way and put that up there instead say hey you know we started with this and I took this kind of core base game and made it into something really cool and really interesting that especially helped as a game designer but it also shows as a programmer slash developer that you know how to do things without just following instructions because if you can if all you can do is just follow instructions you like step by step and not create things kind of on your own the value is going to be dramatically lower than if you can just get in there and say hey I want to make this Plus this and kind of make a mash-up of these two things that's a lot more valuable and having that in your portfolio will be a lot better but also make sure that whatever is in your portfolio feels polished and fun don't put something boring there don't put something there where people have to read a lot or where people have to have some external knowledge of some specific genre or story or something else make sure that whatever it is can stand alone it's kind of stand there on its own and if you gave it to you know a kid under ten they could play it understand it and have a lot of fun with it and think that it was neat now if you're just doing more technical stuff then do technical demos in your portfolio but I would recommend overall just putting in fun little minigames they don't have to be anything giant and you should be able to have fun with them within the first 30 seconds or so if it's more than a minute if people aren't gonna keep playing because remember when people are going through hiring and looking at resumes and portfolios it's kind of a tiring not very exciting task that most people aren't interested in doing they want to get back to their work so you want to make sure that you can wow them really fast don't make them read through a bunch of stuff don't make them do a bunch of work to get in there and play it make sure that they can get into the fun right away let's see what was the next question how is crunch in a triple-a environment versus Indian vironment I always hear horror stories of what it's like in big game companies and how some of them end up having to sleep in the offices so they can work early the next day it's it's a good question I'd say surprisingly I've seen almost the opposite so in triple-a stuff generally people are working 9:00 to 5:00 some people work a bit more and sometimes people crunch a bit I haven't seen a whole lot of that personally and have generally just not done it I find that crunching is usually a side effect of bad planning and just lack of management it happens when the plan changes constantly or you know nobody is honest about how long things are gonna take and people just start making up these estimates for other things gonna take a week and it's really like a three month task and then nobody reacts and responds and adjusts the timeline and starts to cut things or change things or figure out ways to make it faster what happens is people just end up working longer and longer and longer and hacking things in it I've actually seen a lot more crunching though on the designer side than the programming side surprisingly most programmers I know don't end up crunching very much most designers I know tend up tend to be crunching a lot and I don't know exactly why that is not being a game designer but they always seem like they've got more work to do then they have time for and they also tend to be perfectionist who want to go in they'll do something and then they'll do it again and do it again and do it again until it looks exactly how they want and plays exactly how they want in indeed about indie environments though what I've seen is that programmers tend to be working quite a bit more because there's a lot more work to do and a lot less people to do it also there's a lot more accountability when you have a team of three four or five programmers you're a lot more accountable than you are when you've got a team of 20 or 30 programmers because there's a lot of things going on in a bigger team there are a lot of people who can come in and take over little parts of stuff and there are a lot of other just moving parts going on in there when a small company it's it's very very hard to hide the fact that something is following behind because that something could be a giant percent it could be 50% of what's planned and what's going on we're in a big company your thing that's falling behind may just be like one little bullet point on a giant list of things that are happening so I found kind of the opposite I've heard a lot of horror stories from people working in triple-a companies especially I think back when there was a lot less competition for companies so you couldn't just go work at another game company because there was one in your city and it made it so that sometimes people could be exploited or just overworked but I think that generally crunching again I feel like it's a sign of a lack of management not necessarily bad management but just not managing things properly and not being honest with yourselves about what's going on and where the project is people get this whole idea oh yeah we're releasing in three months but we still have nine months worth of stuff to do and we're not gonna say anything until we're a month away or whatever and we'll just keep pretending that it's gonna get better so I wouldn't worry too much about crunching if you if you're just starting out you might be doing it a little bit more as you get more and more established in the industry I think you can easily push back against it and again I haven't really had that problem where I ever was forced to crunch against my will there were times where there were things that I just wanted to work on and got really invested in and kept going and worked through the night but there was never a time when I had to stay in sleep in the office or anything like that um most people realize that when you're working too many hours your productivity doesn't go up you're not getting more done so I think I don't know what the ideal is but I've seen study is saying that you know around 30 hours a week is the most that you're gonna get of actually productive work when you start having people work longer and later you're actually making them less productive they're making more mistakes they're getting less done they're starting to you know it's hard to mentally focus on these things for a very long time and do a good job that's not another reason that I really like pair programming and mob programming because you can kind of get that relaxation and everybody understands where the project is and how things are going and things don't fall behind and just slip because everybody knows the status of stuff let's see let's go onto the next one says I'm currently working on a multiplayer game using photon pun 2 which is the photon Unity networking library and have a question about PvE enemies what a good way of handling this have all the enemy logic run on the master client and just update the position on their clients okay so for the movement not necessarily you generally don't want to be sending out the movement updates all from the master client or not by just updating the position you'll want to send out some data about where for NPC is especially they tend to go like from one spot to another you can just send out that position like that starting position the next ending position or sometimes even the full path along with some timestamp of where they are so that way you can just keep updating the timestamp from that main client that master client say hey like we're at server frame 300 and then the things should be able to figure out where it should be at server frame 300 instead of pushing out the positions because you're gonna end up just spamming positions you're gonna have a huge network load and latency problems so if it's just that I would say yeah I send out that these start positions and end positions and then that server frame time and then let the clients all handle it for each of the enemies but I mean I yeah I think that kind of answers that hopefully by the way don't forget if you have questions make sure that you just submit them here let me just kind of switch views real quick and show you guys this when I'm reading off of so the forum is right here it's linked in the description so you can just go in there and submit your questions and I'm just going through these the only reason I'm not screen-sharing them sometimes people like to put inappropriate stuff in there but if you've got questions just submit them in there and I'm gonna go through them just one after the other and read them off answer them as best I can and also again don't forget to hit like subscribe share and all that stuff we're only at like 40 likes out of 115 people so let's get that those numbers up and let's go on to the next question so let's see it says sometimes I feel excited to work and I feel like I'm doing a lot of work while suddenly I lose all interest in life get depressed being so low and feel like I'm not doing any work at all yeah yeah it's a rough one I mean that happens I think to most of us I would say all of us but there's probably some people out there who don't have this problem I get the same thing and I find that finding a short distraction tends to help for me it doesn't necessarily help for everybody but finding a short little distraction even if it's as simple as just going for a walk or going to the grocery store or something can can help me speed up a little bit now if it's more longer-term and it's not just like the day where you're just like I can't do anything this day and sometimes you just need to take a day off and thinking and recuperate another option that I like to do is starting to do some pair programming and just getting another developer in there and talking to other programmers and developers about what they're doing I find that it's really helpful to just kind of remote of eight give me new ideas and respawn also making sure that you're sharing what you're working on with other people and that other people are kind of getting some interest in it and you're getting some feedback on it I think if you work too much on your own in a silo and nobody ever sees what you're doing eventually you'll lose motivation for it it's happened to all of us but you've got to get out there and let people see what you're doing share it wherever if you can get friends or other developers to look in there I think that's best and then again the pairing and stuff like that tends to help a lot also just come join one of our meetups and share your stuff there maybe people can help motivate you there may I'll post the link to that your search for unity architecture meetup you see it on Meetup you can join up and come check it out and show your stuff off and hopefully everybody can help motivate a bit more okay so how'd it bring more discipline and work and monitor myself on the path to being in India as we handle our own project and nobody is above us to monitor or question us I like Trello for that so putting together a board of the stuff that you want to do for the week either on something like Trello or a just local whiteboard that you've got up with sticky notes or something and having some short-term tasks and goals so setting up goals that you want to do for the week along with goals that you want to do for the day so I'll set up all of the things that I want to get done for the week in a project and then I'll move them over to the stuff that I want to get done for the day when I begin the day and then just um making sure that those goals are actually somewhat rewarding and that they make sense to that I'm not just setting arbitrary goals that don't make sense or just doing whatever I feel like that day you really want to set up a small plan I don't like to plan too far out in advance because I think that then you just end up replanting over and over and over and adjusting the plan but I like to at least very least have a plan for the thing that I'm gonna do that week and then split that into little tasks for the day and if I don't make all the tasks for the day it's not the end of the world I'll just move them up to the next day next day I'll hit them and then we'll get them all done and that's I'd say the best advice I've got there just keeping it a little bit accountable also um I guess one other thing that works pretty well is if you have a group you know if you're working solo and you don't have anyone else you're working with set up a group of other people that are doing the same type of thing set up a little mastermind group find some people out there there are hundreds or thousands of people out there probably hundreds of thousands of people out there in the same boat and just find a group of three or four other people and meet once a week to talk about your progress and to talk about what kinds of issues you're running into and how things are going I find that if you have some some small external accountability from another group of friends or people that you'll eventually become friends with it can help a lot to make sure that you're getting things done just having that I don't want to show up to the call without my things done can kind of push you and motivate you all right let's see what the next question is for making my 3d game I start making it in pieces I find it a little hard to complete and assemble the pieces thanks for your help you're awesome oh thank you for that I'm not sure exactly how to answer this question I guess what I like to do instead of just making a lot of pieces is make it functional as fast as possible and started off making it make it work I guess like what was the the phrase Chris always said was make it work make it right and then make it fast so it kind of in that order so I'll get things functional get them working and then so that way I can kind of see how the pieces are gonna come together and how everything's gonna interact and then I'll start working on a little bit more cleanliness separating things out and refactoring while I'm doing it and then worry about performance right after that her once it's an issue a lot of time people work on little pieces and focus on performance of a little thing that's gonna get called once and not matter you want to watch out for that kind of stuff what's the right budget to spend on marketing an indie mobile game nowadays is 20 to 30 K enough or is it better to contact a publisher I don't know I know that the bigger mobile games spend you know more than that every day that's their daily budgets tend to be higher than that I don't know on the indie side how much they spend or how much that'll actually get you I've seen I've done that a bit where we spent a good amount of money on marketing and I saw it no gains like no no real noticeable improvement at all I think that in general it's better to build up a community of people along the way and not try to wait until the end and then do a big marketing push gonna get people interested waitlisting your game if it's on Steam or whatever it's on I guess on mobile you wanna get people ready and excited about the game long before it's out if you can and then go from there but when it comes to mobile I don't feel like I have enough experience marketing those to give you really good advice I just know that the budgets even years ago were know two to five times that daily it's kind of crazy the amount of money that goes into some of those marketing budgets but and I think that competing with them money-wise is gonna be really hard I think that you really have to build up an audience of fans and people that are out there sharing it that are generally genuinely interested in the game okay how can I apply a sticking property to a 3d object so that whenever I take the object in play mode in front of a plane it should stick to it oh okay well in play mode you just do it with something in the update so depending on exactly what you mean if you just mean like you've got an object and you want to stick to the ground well you can do something as simple as taking a ray cast from the position of that thing and usually what I do is Ray cast from a little bit above the position and shoot down a little bit find the point where it hits that plane and then move the object down to that position if you're doing it inside the editor though and it's not in play mode like for design time stuff you could also do that in the on what is it on inspector no on draw gizmos selected so that when you have the object and you're moving it around it can automatically snap down to the ground it's a nice easy trick I did a video on that and a blog post on it I can put the link in the description if you're interested but if you just search for it stick to ground you should you should find that and again for anybody who's just joining in if you have questions you want to ask them just submit them to the forum on the page there's in the description there's a forum just goes to this and it lets me read them off one after the other so that I can go through them and not have to try to catch them in chat and miss people's questions so you got something just submitted there I don't know if I'll get to all of them but I'm gonna try talking as fast as I can to go through them all also don't forget to hit like and subscribe and share and all that stuff so you can get at least up to 100 likes on this thing that'd be cool let's see let's go on to the next question you mentioned keeping several scenes loaded for UI how does the UI scene interact with your game scene oh so I've talked about this a little bit in the past and I still plan on doing a video on it sometime soon but in general for you is what I like to do now is have the UI be its own separate scene either one or two scenes sometimes it's like a one for the menu system and then another scene for the in-game UI now the way that it with the game scene is through some sort of binding so depending on the type of game I'll have a route game object for the the interface or maybe more than one and then these objects will bind up to game objects in the actual game scene so imagine I load up level one and I've got a player in there when my UI turns on it will get bound to that player either as say I mean the simplest way to do it is just find the player when the UI turns on and set it up to automatically bind to it like fine you could do a simple thing like find game object to type and then tell it to update all of its references based on that find the player find the inventory find the input system whatever the things are but you can also set up a scene management system when you get to loading a bunch of scenes you're gonna want to have some sort of a scene manager that's loading in your level and then once that level is done loading asynchronously you'll load in your UI and then that scene management system can say hey UI bind to this thing in the level it knows what the thing in the level is and it binds it up right there and that's generally the route that I would go is so that way the biggest benefit here is that you don't end up with a giant prefab for your UI which is usually kind of a pain to work with and you end up with an easy to work with UI scene it's just I find it a lot easier to work with a complete scene instead of a prefab for the UI and then I can pull it in and out and my UI could also be bound to test objects or other things so I don't necessarily have to bind it directly to the real thing I could bind it to something that I can unit test and run tests against the UI based on some fake or mock player or something like that let's see what was the next question here is it possible for a single dev to develop a triple a game like dirt for and under three to five years any triple a 3d projects made by a single person I don't know about a single person but maybe a small team you could get you know a team of a programmer artist and a designer or something and you could develop some stuff like that it just takes a reasonable scope you need to have not just some crazy giant scope for the amount of stuff that you want to do and experience right if you're just starting out not a chance right three to five years trying to develop a good single or a good triple-a project with the tiny team is very it's nearly impossible but if you've got a lot of experience and you know how to do it especially if you've built that kind of game before it's I'd say more possible the biggest things that tend to eat a lot of time when those Triple A games are the art the art pipeline making things look beautiful and then adding in all of the systems and a lot of time the scope form is just huge so you'd have to have a very tightly scoped game and something that the team or small you know the single person knows how to build yeah that said you could also build most of it and then release it and ramp it up and eventually it becomes like a a triple-a game right so how many productive work how many hours of productive work do you usually do per week is it the 30 hours per week how much variance is there I'd say probably about 30 hours of actual productive work not counting talking to people in meetings recording YouTube stuff I mean and those are somewhat productive too but the actual coding and stuff is all kind of in that about 30 hours of time there's still time just talking to people but I feel that once you get too much going on you just start to lose productivity now that's a I know people who work like hardcore 60 70 hours a week and feel productive and get things done the whole way along but you're gonna still I think everybody's gonna run into the problem where you eventually are just writing stuff that you want to delete writing things that aren't aren't as good and code kind of falls apart let me see oh no my questions are totally lost lost place on my questions I'm just gonna go through them again let me go through them an individual mode real quick so again if you guys have questions while I'm scrolling through here trying to figuring them out just drop them onto the forum the forum it's in the description and make sure you hit the like button when you do and if you don't have a question just like button and said okay I'm gonna I'm gonna go through and find the next question it started scrolling really fast when people put it in a bunch and I lost my place it's just funny because the whole intent was to not do that okay should an entry-level game developer look into getting into a triple-a position first or into an indie studio I'd say ideally you you want to get into a triple-a position if you can it's a lot harder to do there are a lot more indie Studios out there and getting into a triple-a position can be quite a bit harder but I think that the learning that you're gonna get from joining a triple-a company and the experience that you'll get there can go a long way because you're not having to figure out everything you're kind of learning from other pros and seeing what works what doesn't work and you have I guess a lot bigger team of people to pull from and to learn things from so I would say look at both try to get both and go with whatever you can get it when you're starting off again it's easier to get it in on an indie side but triple-a is probably more beneficial and when you're going into a triple-a position look for I always recommend people look for the tools positions - if you can get into those they're usually easier to do they're easier to get hired into there's less people applying for them and it's a good way to get into the company and get started let's see what do you think of using patreon for long-term funding for a game project I don't know I've never thought about that I think it would probably be pretty hard you would have to have something that people are really interested in getting into and playing and to support it but maybe it's possible it's not something that I think would be easy to do though but I mean if you need long-term funding and the funding isn't too much and you can keep the costs down really low it might work well also streaming your game development can go a long way just getting people in there and interested in what you're doing and it might go a long way with getting the patreon stuff up there too but I'm not sure how well that would work as like an actual funding source for anything that wasn't relatively small scale and small cost let me see what's the next question here oh if somebody asked as a solo indie dev when should I start marketing my game and how should I start marked going about marketing it I would say as soon as possible they start marketing it and talking to people about it as soon as you're working on it and don't wait don't um so once you have your idea and you've gotten started on development don't worry about it not being perfect at the beginning it's gonna be terrible when you start off right it's gonna be very simple blocky placeholder stuff start right away though get the idea out there the concept out there and listen to the feedback to look for feedback look for ways to make your game better everybody has this idea of a perfect game in their head there's always stuff that's missing and if you talk to other people talk to players and other developers you're gonna get a lot more ideas but also just get out there and market it right away don't try to wait until the end don't try to wait till you're halfway done do it for right from the beginning I'd say is there a particular reason or situation in which you would use private static methods for anyone who doesn't know a private static method would just be a method inside your class that can't be accessed outside the class and doesn't have any object related state so private just means that you can't access it from outside your class like you've got your player and your game manager can't read that private method or can't access that private method in the player only stuff inside the player code and the static keyword just means that well there's only one version of that method and it's not unique to the to the specific instance like you've got a say you had a rocket class if you had a static method in there that static method isn't gonna have a knowledge of like what rocket you're talking about when you call it it's gonna be something that is shared among all Rockets it's the same method now you could access a static variable or you could pass in a non-static instance of something in general though the main thing that you would use for a private static method or main thing you would use that for is doing some sort of data processing on something so you're passing something into it that the rocket needs to know about like figure out a path from here to here and then that method is returning something back out it's not usually adjusting state you could have it adjusting some static initialized variable or some other variable that's on there that's static that applies to all of the instances of the class which is another use for static stuff usually when it's applying to all instances of a thing like I know you could have like a cleanup method that cleans up all of them and it finds all of them and then does a cleanup on them but I would say most of the time it's usually stateless stuff where you're doing some sort of a calculation that only applies to that thing and then making it static doesn't make a huge difference it just kind of reminds people that hey this thing is stateless and it's it should never have stayed in it because then you're kind of doing something that this method wasn't intended for so is there a good website you know of for linking up with other game creators I don't know if there's a great website specifically there are lots of cool discord channels though so there's the I've got one and doesn't want to stop barking and hold on one second I gotta stop this dog all right sorry about that he was not gonna stop growling so yeah I don't know of any good specific websites but they're definitely I would say jump and do it one of the discord channels like I've got one that I can share I'll put it in the description after this is done but there's also a lot of other ones others the game dev League bra Keys has one that's pretty full of people Charles from infallible codes got one I would say jump into the discord channels and just start talking to people there and then look for meetups locally - it's a good way to meet other people if there are some in your area but I don't know of any really good websites specifically let's see next question how much of what you learned has come from reading programming books it's that's a really good one so there are I don't know if I could quantify it in a percent there's a good amount of stuff that came from reading books and that's generally around the solid principles in clean code so most of the game programming stuff that I've learned is really from experience some from books and reading and a lot from just practice and trial and error and talking to other developers but the things around code cleanliness refactoring and naming things well came from some very specific books really I don't have them up there but the clean code and code complete which are both amazing books they're not c-sharp based but yeah I don't think they need to be they talk a lot about how to write clean code that's reusable and good the other stuff I guess the other biggest place that I get information on programming stuff is video content so it's it used to be a lot of Pluralsight stuff I'd go through that and now there's also just there's so much on YouTube that it's easier to just go there and find exactly what I want I really love watching like Bob Martin videos they're great on that kind of stuff I've got another dog jingling around but yeah I'd say not a whole lot of it has come from books and when I started with unity though I did grab a unity book right from the beginning I went through the whole thing and it was it was a little bit helpful but it was as most books are when they get to be technical they tend to get outdated really fast because the engines changed so much the language has changed so much that by the time a book goes through the whole process of getting written edited published and then me finding it and buying it they tend to just be a little bit outdated and then also reading and writing code from paper tends to be not as easy and I don't think anybody else can hear the dogs but I can I have a hard time concentrating when they're over there growling and jingling around alright let's see what else we got here is it realistic to try for a remote position as your first programming job yeah definitely in fact I know some programmers who are some of the best programmers I know who've only ever worked in remote positions which is kind of surprising but it's definitely possible one of the key reasons that remote stuff is becoming so popular is just the cost right it's way cheaper to hire a developer to work remotely than it is to hire somebody to come in set up an office space for them pay for the office space set up whole computer system manage the network there if you can hire people the work remote and they can do a job right it's a huge huge savings you can get to people for the price of one now that said the other benefit I guess is that when you're working remote it's also very hard to distinguish work from non work so it's easy to see people working you know 10 12 16 hours a day sometimes when they're working remote stuff and that's because the the work that you're doing isn't so much based on the amount of time that you're spending in the office you're expected to just get the job done and do the things that you need to do not so much sit there and be there a lot of the time when people are in an office they'll find that hey you know they counted as I went to work and did my job if they sat there and did one hour worth of work and screwed around on Facebook all day it's very easy to do when you have an in-person job when you're working remote it's almost always results driven right so if you're gonna do your first remote position as a programming job just make sure that it's um something that you can accomplish and if you're struggling with it and having a hard time make sure that you're communicating that relatively early in getting help don't sit there and struggle and not get things done and because then it's gonna be harder to keep that job but as long as you're getting things done and you're you know you have some proof that you can get things done working remote I think that there's no reason you can't get your first programming job there like I said I know quite a few guys who've done exactly that and they're just um they're really good at what they do they also again don't tend to just work like a very strict schedule especially starting out if you're starting out your first remote job just expect that the amount of work that you do might be a bit more but you're also going to be learning a lot more because it's not it's not time spent at work it's actually time working you don't tend to just screw around on your remote position when you're working from home completely hey you're either working or you're not working and you know when you're not working and you don't count that let's go on to the next one what does triple a stand for slash mean um why do we use this term that's a good question I don't remember anymore yeah I'm not sure that's a really good question though and I feel like I should know the answer to that okay um okay so if somebody wants to know the differences I think that the question here is about what the differences are between how a Triple A versus India project is structured version controlled and built that's it's interesting ideally there shouldn't be any difference right the project should be in version control using whatever version control system you're using get still my favorite but here's SVN or perforce perforce is pretty popular in game still or even if you're using unity collaborate you should be using some version control system and you should be sent eventually using some build automate what I found in smaller teams is that build automation tends to get delayed it doesn't happen right away but if you have people who are very used to doing build automation systems then you might see that happen earlier too but with a triple-a company you're almost always going to have a complete build pipeline so that you commit things and the build happens and it goes out and everybody gets access to it and part of the reason there is that there are just a lot of other people out there that need to see it and if you're sitting there wasting time building on your system waiting for this big build process to go and you're not doing other stuff you're really just kind of you're slowing down everybody else and you're slowing down yourself now for project structure I haven't seen too much of a difference other than in the bigger projects the art is structured a little bit differently just because the art team will have their own kind of setup for how they like to do things and a lot of time they'll have their own version control system for it too and then they'll take the final things out of there and put them into the actual game project version control system all right let's go on to the next one let me take a drink first and ask for more like see if we can get up to 100 yet we're still at 81 so see if I can get more why take a sip oh I already answered that one let's see you answered that one that one all right next one up would you use Singleton's for a camera controller it depends on the game so depending on what type of game you're building a singleton could be totally fine for your camera controller this is just like having a singleton reference to the main camera controller it's kind of like having camera dot main but without that slow tag lookup which by the way if you don't know if you're using camera dot mean it does a search by tag and it's slow and you don't want to be doing that you want to cache that somewhere a single thing isn't okay used for that if the thing is bigger though and you might switch cameras or switch camera modes I wouldn't necessarily go with a singleton just for the single camera controller but you might have just the singleton instance that has a camera or a set of camera controllers or a camera control system that it's controlling and swapping in which which camera controller you're using but I think it depends a lot on just the specific project there what do you think about unity mirror networking it's not something that I've used yet um that's something that I want to talk about with Kyle though so I said before we'll be doing a live stream talking about just high-performance networking and unity hopefully in the next couple days or so if you guys are interested in that dude leave a comment down there in the bottom so that Kyle sees them all and he's more excited and motivated to want to jump on it quicker so anybody who's interested in networking just now say hey Kyle come come talk networking with us and he'll explain he knows all about all of the different networking systems and he's just amazing at making stuff fast and clean when it comes to networking so I don't know a whole lot about mirror myself he was and I think it'll be a really interesting chat so again if you guys want to know about networking stuff please just drop a comment down there and we'll talk all about it we're gonna go in-depth on how to make it fast how to make it right and how to do it with no garbage allocation and all of the cool little tricks that I think are really important to make a high-speed high-performance Network game so again just remember drop a comment down there and hit like so more people come and drop more comments down there about it and we'll talk all about networking in depth all right let's go on to the next one oh it's another one about networking stuff again drop a comment and Kyle will talk about all about it and if comments are not enabled that's the problem somebody said comments weren't enabled let me check that edit I don't know comments should be enabled hopefully I'm not sure if not then as soon as it ends just go drop a comment and they'll be up there okay so oh I answered this one already about UI stuff how do you go about adding mod support asset bundles and now with the addressable system is a good way to do it so you can set up you can set up code and bundles of stuff that unity can load in where they can do different mods either changing out data and it depends on what kind of modding you want if you want to allow them to control the code and stuff you can even do that in there you can let them create bundles that they can pull in and modify stuff I want to do a full video on mod support though and go into a couple different ways that you can do it because there's a lot of options there are some really simple things where you can just do data-driven stuff in but let players just change data in simple ways to mod stuff or even have in game support for it so I think I'll do a full video about that sometime soon but asset bundles and now with addressable is is a good place to look to start okay I started with unity then went to the Unreal 4 then back to unity then back to Unreal 4 I know both really good love unity more though but coding is my weakness blueprints in ue4 is why I keep coming back how close is a native blueprint system for unity I'm not sure but I heard that 2020 is when the visual scripting system for unity is coming I don't know how good that's going to be compared to the existing visual scripting systems that are available like playmaker and bolt but um I anticipate that over the next year or so it'll probably become pretty powerful and maybe become a default node based coding system for it so yeah I don't know exactly on a timeline or anything I don't have any secret info on that but I know that it is coming and if you're really interested in that kind of stuff I would go check out bolt because it's a nice visual scripting system that I've used before and it worked really well and it was pretty easy to get started with but again I do most of my code just in raw code I don't really like using visual editors just because find that it gets a little bit more confusing as the project's get bigger and harder but when for simple stuff it works ok or things where things aren't too complicated it works ok I mean you can definitely build out a full complex game in blueprints it's just I find it really hard to manage mentally when I'm looking through them compared to looking at code that's probably just a biased mind though cuz they've been doing code for so long what's the best design patterns to follow in a small mobile game same as Angry Bird slash candy crush which contains a lot of levels and UI mats I don't know about design patterns specifically there but definitely editor stuff you wanna for something like a candy crush you want to give yourself good editor tools so that it's easy for you to create and test those maps and I think that's kind of the core thing that I would look at first I don't know about like for design patterns it really comes down to individual specific problems there's not like a big overarching design pattern that you would use for either of those it's more just when it comes to building out the individual systems and the individual interactions but when you're building a game especially like candy crush any of those match games you and you want to have a lot of levels and maps you want to build in some good custom editor support so that it's easy for you to create levels easy for you to create Maps and then easy for you to test them as well so you're not having to go through and manually put this stuff in you don't want to be putting stuff into like a text file and then importing that in just make an editor in game where you can just Auto generate and then change things on the fly really quickly and easily so you can iterate as fast as possible all right what do we got next how do you apply for studios when you're sitting in a third world country that's a tough one I never done it myself but I would say you probably want to look for remote positions unless it's a play unless it's you're applying for somewhere that's got a an easy system to get over there and and start working in studio I know in the u.s. it's relatively hard to get people on visas working especially moving them in but working remotely as a contractor is dramatically easier so if you can find remote contract positions it's a good way to get started and then build up some of that experience without a good enough portfolio it'd be pretty hard to get a full time job through a visa I think in the US but he said I've never actually had to go through that process so I'm not really sure but I would say you definitely can look at contract positions and remote positions especially those remote contract ones because they tend to be way less strict on the requirements they just put you in as I'm not sure what the exact legal setup is for that but contracting outside is relatively easy compared also I've never worked on one of these sites but we've hired people on sites like up work where you can they kind of handle a lot of that for you and hire developers from all around the world to do game stuff and work on projects through there because they handle it and make it a little bit easier and there may be I don't know how many positions are on there but they're usually at least some positions on there that you can go in and apply for and at least get contract work and get the experience and then maybe convert those into full-time positions but um yeah I wish I had better advice on that hopefully maybe somebody in chat has some advice on this too because it's just not something that I've had to deal with them being in the u.s. it's been just kind of a made it a lot easier to be honest let's see what else we have answer that one how do you find the individual workloads in Indy versus Triple A games which do you prefer I find that in Indy game development the workload is definitely higher there's a lot more to do there's a lot of opportunity to just find tasks to do there's never a time when there's not something to do in triple-a games sometimes you'll finish up what you're doing and then there's a little bit of downtime between like when you finish this task and when the next task is ready for you to start working on it maybe the designers are figuring out what that's gonna look like how it's gonna go and setting up some design Docs the producers are planning things out when you're doing it an indie side that that's just never the case but when you're when you give to that downtime and Triple A games what I'd like to do is just jump into bug-fixing and that's usually what I see people do like okay I'm done with all my tasks I've got nothing else to do I'm just gonna go through this bug queue and see what I can find and what I can fix usually there's some stuff in there that's low priority and you just kind of go hit that stuff so the workload in India is definitely bigger and heavier and I think I generally prefer it I like to always have something to do that's important but it's fun either way okay this one says hey Jason love your videos since your YouTube channel is one of the best when it comes to unity development Thanks I like to ask what tips you have for aspiring content creators on unity development also what would be important to you if somebody wants to do a collaboration with you things I would say a couple things are important one is decent editing for audio quality one things I think I failed on horribly at the beginning was audio quality it was really bad there were a lot of times when things just or spikey sounded tinny and terrible and you could have like the best content the best advice on how to do something but if it's really irritating to the ears to hear it it's bad so I'd say invest in a good microphone and just a good system for that also a decent camera if you're going to be on screen and then some editing tools when I do my own stuff I like to just use Camtasia because it gives me a little cursor or call-outs and stuff and makes nice and easy for the other video so I have somebody edit my videos now which helps a bit too but when it comes to picking what types of content to build I'd say look at what's missing and what kinds of things people are asking that aren't getting answers and don't focus too much on really small little topics that only a you know a dozen people in the world are gonna care about because it's gonna be hard to get it out there and hard to have people watch it if there's only a couple things there's only a couple people that have this problem yeah don't do that and also just do it right away like don't wait don't don't sit around and go hey um I'll I'll I'll start doing content stuff when this happens or I'll start you know next year when I'm a little bit better or when I have this thing just start right away and just keep going and you're gonna get better if you look back at my first stuff it's um I'd say terrible and is you only get better by working on stuff and you know practicing so I'd say just get to it as quick as possible and if you want to collaborate on something just shoot me an email uh what does your daily schedule look like when do you wake up work train etc get up whenever my wife wakes up which is usually around like seven ish sometimes I can sleep past that and then I take shower and start answering emails first usually so most of the time that's the first thing I'll do I'll answer emails or play a quick game to wake up and then start recording I try to do the most important stuff early in the morning so I start recording any course related videos or any YouTube videos that I've planned out a lot of time what I'll do is I'll plan out the video the night before I'll go through practice it figure out what I want to do in there get all the code right and ready and then in the morning when I'm nice and fresh and I don't have bags under my eyes and I can talk and still have a voice that's when I get to recording and then after that I'll get into coding so that's when I start to do the bigger code projects working on just the s the the actual games that I'm working on and then yeah from there since I work remote and from home all the time now I just kind of that's the everyday schedule though it's not like there's a specific days or anything do pretty much seven days a week and if I feel like I need to take a day off or need to take a break I just go take a day off or take a break and go do whatever answer that one already would you consider it's data i/o account with prototypes a good portfolio when applying as a game developer thank you for your hard work on this channel so I would say hosting your games on itch dot IO is good having it just be your entire portfolio I wouldn't do I would say just put together a simple webpage you know you can get a web host for five bucks a year set something up where you're embedding those game prototypes either from itch or I still like to use Rocco's symbiote and embed those into your portfolio and make more about you and featuring and focusing on your stuff you don't want anybody else's stuff showing up there you don't want any confusion there either about like what's yours and what somebody else's so if you can just get it in there and really focus on one or two main things don't have like a dozen things in there that people have to figure out which one is the one to play put your best thing first and make sure that people are playing that and checking that out because if that you have five games in there and they pick one randomly and it's not the good one you're just kind of disqualifying yourself unintentionally or making it harder for yourself if people don't like the first one they may not even go to the second one so make sure that the best one is the first thing people see and they get in and play it right away I would say yeah definitely put it on your own page and make sure that it's focused about you and maybe even have a little tiny blurb about what the game is but I wouldn't write a bunch either because you don't want people to have to try to read all of that and understand that you want the game to really speak for itself or the prototype to speak for itself let's see what else we got here while contracting out as a programmer have you ever had to break out of a bad / unfair contract because the project lied about the scope or the work how do you do that that's a tough one I've never had to really break out of a contract because it was like that but I have seen a lot of contract positions where the scope isn't clear or where they dramatically underestimate the scope and I try to figure that out before even taking the thing on figure out exactly what you're gonna do and spell that out in the contract very explicitly say like these are the things these are the features these are the exact features and that's it and then a lot of the time what I'll do - or when I was doing a lot of contracting is people would give me their big giant wish list and I would give them you know two or three different options for things that we could do we could say hey at this rate we can do these two or three things and then we go up to this rate we can hit these five and if you want these it's going to be this much and spell it out really clearly on what you're going to do don't take a contract necessarily I mean unless you but don't take a contract that's a full scope project without knowing and spelling out exactly what's in there because people always have stuff in their head people always have these ideas in their head that they don't communicate and they just sometimes unintentionally assume that you're gonna know what they're thinking and assume that you're gonna realize that this one little line is actually like a three month thing that you have to build out so you want to spell out exactly what you're doing in there before that if you're in that situation though I don't know a good way around it generally when I do contract stuff too I like to just scope out the entire thing at a set price and figure that out so that it's not hourly because our I just not never been a big fan of long-term hourly contracting just don't like it generally I like to figure out like exactly what they want built and a price that I think is fair for that and then go from that and then I've got it really spelled out yeah I don't know if you have to break out of a contract though because of the project scope being wrong that's sounds unfun if I make a diagram of how my classes are organized are you interested in making an architectural review instead of a code review sure make the diagram send it over an email love to check it out what should be the self budget expectation of funding budget and realistic time frame for a full prototype in a full game if I want to make a big PC open-world game in unity that depends a lot on your experience making those kinds of games if you've never made a big open world game expected to take a very long time and the funding depends on how much of that you're going to be building yourself versus paying other people they do that's I guess a little bit too generic for me to give a really good estimate but big open world games tend to take a long time and be pretty expensive because it usually means there's a lot of content a lot of art in there and then a lot of technical problems when you say big an open world it generally means there's a lot going on a lot of problems that you have to solve and yeah without the experience level it's it's really hard to just kind of guess but I would SPECT a lot of time or a lot of money it's usually the case for most big games it's either take you a ton of time or a ton of money and you have to figure out where the balance is in between those money just speeds things up it doesn't really necessarily do anything else just makes it go faster because you can hire more people and it doesn't scale completely right adding on a hundred million dollars doesn't necessarily mean that your projects gonna go any faster than 50 million dollars you know just because you're putting more people in and every time you add a person the average of everybody is speed slows down a little bit because you get the communication overhead and the all the other side effects that come with having a lot of people on a team all right any tips with dealing with burnout currently I want to work but just too tired with no motivation at all find something that you're really passionate about to work on I mean if you're not super passionate about your projects and you're just not interested in your project it may just not be the right project but sometimes you just need a break too and you just have to relax and take a pause and do something else for a little while I've done that myself even just jumping back and forth between video game development and non game development I think I took maybe too many pauses doing that because I found that every time I did I wanted to get back into game development it felt like I get a little bit burned down on game dev and I go do something else do some web stuff have a lot of fun with it and then start to quickly miss game development so I know if I have any other really good tips other than just take care yourself and don't don't focus too much on one thing and not spend time doing other things either I also get other people in there if you can work with other people who are also motivated they can tend to help motivate you on what you're working on okay is it possible to make a huge triple a quality game like GTA 5 Metro Exodus or Witcher 3 why do these developers make their own engines I know it's typical newbie question that's not really a newbie question it's a good question so if you're asking if you can make those with unity yeah you definitely could there's nothing really stopping you especially now Unity's really I'd say one of the most advanced engines does all kinds of stuff you can do a lot with unity that you can't do with these custom engines the reason that people make their own engines though especially when you're looking at these you know sequels is that they've been working on these things since long before there were other options you know if you look back ten years ago there weren't very many game engine options you could get unreal it wasn't cheap and it was built around making a first-person shooter you obviously would built other games like Pan Guard was built on unreal so you could build other types of games on it but building your own engine made a lot of sense then because you could really customize it to do exactly what you wanted you could focus on I need this specific thing I need these big giant Maps or I need whatever type of functionality and you could build that or you can build your engine all around to that game nowadays I think that you just could there's nothing really stopping you from just doing all of these things in something like unreal or unity you just go in there and do it but the companies that already exist that have been doing these things they have pipelines around their engines they have a lot of internal experience and expertise around their own engines and their engines are built for exactly what they're making if they're making a totally new type of game they may switch to different engines and I've seen that a lot too where big companies they switch they make a new thing and they suddenly switch over to a different engine so the matrix and the main reason I think that people stick with them is just familiarity and the company is already there they have a pipeline they know what it's gonna take you know what changes they want to make and they have the people there who built the engine from scratch you know they know this stuff really well and can make those changes the downside of course if you're trying to go in and make your own engine from scratch right now is that there's a huge cost of building all that stuff up unless you have a very small very specific thing that you want to build making your own engine well it kind of distracts away from a lot of the game development side and making the game so it's possible I know some people do it some people really just love game engine - but personally I'd rather stick with one of the existing engines that has hundreds or thousands of developers working on the thing and gets constant updates and new features and functionality but their death they're definitely reasons that people do that still on their own engines by the way again if anybody has questions and you haven't asked them don't forget the link is in the description you can just go submit them on that form I see chat going by but I've never been able to keep up with it so I'm just going through them and reading the questions out of the form answering them as quick as I can and also remember to hit like subscribe share the bail thing and all the other stuff while you're in there tell everybody to come join and watch and ask more questions and right now I'm at question number 40 of 65 so I'll see if I can keep up and I don't know how much longer I'll go starting to get low on energy and breath but it go as long as I can't so how do you decide how many scenes have to make a complete game for example if I want to make Metroid vania like game do I make several scenes for several area or just make one scene in a big chunk area okay I think I understand the game so it's or the idea it's how to make like a big game with large scenes and probably with ideally you're wanting to not just load in between each scene so there are a couple ways to do this one of the coolest implementations of something like this and I saw was the inside talk from unite it's a the game was called inside and they talked about how they built their entire system out of scenes and prefabs that would load asynchronously as you went along the game I think that that's a really cool system for like kind of high end stuff if you want to do something simple I don't I don't know exactly how I recommend splitting them out really like it depends a lot on how how big the game is going to be you might want to just have multiple scenes loading and then what you can do is load them synchronously as people get closer to them so like you're in seeing one and seeing two is loaded and seeing two is this area over here and it's loaded asynchronously once you get into scene to scene three can start loading asynchronously and getting ready depending on if you're going back and forth you may have to manage that a bit better I said the inside demo shows like the best and most advanced way I've seen to do it and a lot of that is based around loading things slowly and asynchronously so that you're not dipping in frame rate and depends a lot on your specific requirements too but I wouldn't necessarily make like one giant scene because then you have slow loading times splitting things into smaller chunks is definitely better most of the time see what else we got here whoo this is a long one okay let me take another drink before I read this one all right whoo so he says I've been taking game dev in computer science courses at Community College for a year now and the sizable extra time I spend outside of class learning unity and programming has caused me to be pretty far ahead of the curve that I'm not surprised by at all my recent final project was a networked card game using photon pun - I hadn't had any prior networking experience three months ago and since then I researched a lot to keep workflows and project documentation that made it easy to work with another high achieving programmer that's awesome now we did excellent on the project but it pretty much cemented my remaining GED but courses weren't going to be teaching me much that I couldn't learn independently I ultimately want to produce games and currently have a knack for programming should I go for general computer science degree while developing my project management and game dev skills on the side or should I go ahead for a game dev associate and then the industry sooner as my tío enter the industry sooner as my teacher earnestly says I'm ambitious enough and cut out for it that's a tough one I don't know exactly like I never really feel comfortable telling people not to learn stuff I think in general a CSCS degree is going to be a little bit more valuable outside of game development neither one of them tends to be super valuable when it comes to getting a game deaf career most of the time people just care about what you can do people care a lot more about your senior portfolio and the kind of work that you can do and most of the time the college classes tend to be very very slow they don't they tend to teach too you know the median student they're not the high achieving students or even a lot of times trying to keep it so that the lowest the lowest level student can keep up and can learn and stay up to date they don't tend to go very fast and I think if you're that far ahead I would maybe even start just looking for jobs now like start trying to find jobs like as as much as learning is important I think that learning on the job is a great way to do it and from the CS stuff what you're really gonna get like the biggest things that people get out of CS degrees are the algorithms and data structures type stuff that's I'd say the biggest benefit that you'll get there I wouldn't necessarily recommend anybody just drop out and stop but I would say start looking for jobs and if you can get in somewhere and then you decide hey I'm learning more work and I don't necessarily need this then make that decision on your own but I wouldn't wait either like if you're doing that and you know it sounds like you figured out how to make a card game figure it out how to use networking stuff and did it all on your own it's the best kind of programming in my opinion and that's where I'd say like a lot of the all-star programmers that I meet are that's kind of where they've come from they know they went some of them went and got a degree but if you ask them like how much of what they do came from their degree they're gonna say like maybe 1% most of it is like the degree you got them into the door somewhere sometimes or a lot of times it did nothing for him I know a lot of people who got degrees and never use them I my degree I got is completely irrelevant to programming and game development doesn't help at all didn't matter at all never made a difference um it only makes a difference the places where it tends to make a difference at least in the u.s. are big giant corporations who have like these like generalized hiring systems but even in the the bigger tech companies that I don't think it's nearly as important anymore people really care about what you can do and whether or not you can pass these coding tests whether or not you can get the job done so I'd say go out there and start looking for a job right away don't don't wait too long don't sit around and wait you know and think like I have to go do this thing or I have to spend a bunch of money to give these jobs if you can do the job people will hire you and like that when I look at resumes I just skip right past the education part I don't care at all cuz I've met way too many people who had a master's in computer science and couldn't write a line of code I mean it's happened dozens of times where I like people who just like oh yeah I got a master's in CS and like they can't write a simple thing with a button that you can click on that pops up a window like the simplest stuff they can't it couldn't even read the code so it's yeah I just get past it and I look straight its straight for the portfolio and what they've actually done oh is it important to get a computer science degree from a really good university to be a triple-a game dev I think I just kind of answered that so I would say it's it's definitely not except it doesn't necessarily hurt there's not like a downside to it but you can you can definitely get that it's not going to get you the job on its own either you have to know how to do the game to have stuff you have to know how to code you have to be good at it getting a degree and then going in with no experience you're you're not gonna get the job over somebody who doesn't have the degree and can actually write the code and make the games by the way again anybody's watching and catching up if you're curious on how to ask questions there's a forum description just uh drop the question there and I'm going through them one after another just like this I'll show my desktop again real quick so I'm just going through them reading them off answering them as quick as I can trying to keep up I don't know that I'll get through all of them but I'm gonna get through as many as I can and I'll probably wrap this up in about another 40 minutes or so so just ask your questions hit the like button and the share button on your way in and out or just do that even if you don't have a question and I'll keep going and we'll go through these as quick as possible get back on cool it looks like we're back to streaming sorry the stream just totally dropped out that was my internet I don't know what's going on everything in my house just dropped off the internet for a second and just popped back on I just watched Google go hey I'm offline I'm back online okay cool okay so yeah I'll reread the question so I said from your experience what elements in the game benefit most from the unity job system I'm currently working on an RTS game so what I was mentioning is that the job system what I've seen people use it for most recently is anything that's processing a lot of data and slow in your game in an RTS if you're doing something super scalable where you're having hundreds of thousands or thousands of units it could be a really interesting way to do it I don't generally do much with the job system yet I'm still waiting on the ECS system to kind of get finalized and I just haven't had a project where there were a lot of uses for it tends to be in um some character controlling stuff or things where we have just a lot of objects that need to process some relatively complex data and need to read and write a lot of memory but yeah I don't know if I have a great example of it I do think an RTS could be a really interesting use case for it though because the game flow in the way that the game works um just kind of aligns well with the job system let me see what else we got here my code is very simplistic how to make it more sophisticated now I wouldn't say I would recommend aiming for sophisticated because a lot of the time what happens is people go for sophisticated and it just ends up being more complicated and confusing I'm going to switch back to camera mode but um what I would go for is trying to make it more clean and easier to follow so if you're finding that your code is not easy to follow or that you're having to scroll through and bounce around everywhere to try to figure out how things work start worth working on cleaning that up the easiest thing to do is just name stuff well I say easiest it's hard to name things well but the easiest thing to start with naming things well and then start to learn a little bit about design patterns but don't try to shove them into everything that you're doing also look into the solid principles it's not an easy thing to just kind of make a giant shift and make all your code following these solid principles but it's very easy to kind of get used to the idea of writing cleaner easier to understand easier to manage code if you start watching videos and talks about solid stuff I've got a set of videos up but I also recommend just go look at um Uncle Bob's videos they're great for that kind of stuff and one of the main guys around that stuff so go look at videos on clean code and refactoring and I think that that will help a lot more don't try to make things overly complex and don't try not to over engineer things try to keep them as simple as possible while working but also clean and easy to understand big goal of mine is always making the code so that any developer can come in read it and understand what it's doing and not be confused now I sometimes I fail at that miserably but when I do I try to go back and just refactor it and change it if I can't explain the code when I'm reading through it then I need I feel like I need to refactor it and make it so that I can't explain it and I can explain to people exactly how the things work so let's see what other hard skills do you think are important for becoming a good unity slash general developer except for knowing c-sharp and software architecture I would say render pipelines networking and creating tools anything else those are definitely a good one so I'm just render pipelines important networking can be important depending on the types of games you're working and tools creation I think is super important to save you a lot of time oh I just had something else and I totally lost it Oh understanding the animation system is another really big one understanding mekin the character controller systems for ant or the animation controller systems and animation overrides prefabs and UI systems as well I think those are all really important to understand and just get comfortable with and understand how you can make things extensible especially like in the animation system I find a lot of time people do it the hard way and they make it a lot harder on themselves than they need to they don't know about the overrides and everything else in there so today just kind of going through all those things and also the ones at us that are great again a render pipelines networking and tools creation definitely important ones well you have cheaper courses on udemy probably not on udemy I'll probably have some cheaper courses sometime in the future I don't know the ones I have right now are kind of expensive because they're they're just in-depth and complicated to take a lot of time so you deme I'd know some people who have courses on there but they're I don't know anybody who has udemy courses who is happy about it so that's one of the reasons I've been avoiding it anything that's mostly because they take like 90% of the money which makes it kind of hard to sustain and keep working on and support okay unless you is unity a good choice for UI based turn-based game I'm starting journey with game dev greetings Paul yes Paul I would say it's a great option for that the UI system is still somewhat new it's not that new though there's definitely no reason that I would use any other engine for it but I'm also very biased I've been using unity for a long time and I love the engine I'd say it's definitely a good option for that though if I was building a UI based turn or turn-based game I would definitely be doing it in unity what do you think about starting a Kickstarter campaign when should you start doing it so Kickstarter campaign it's been a while since I worked on one they're a ton of work getting it set up is a lot of work maintaining it and managing it is a lot of work don't expect it to be like a short-term thing it's something that you've got to invest like months into doing to get it right and to get it funded and it's probably just gotten harder I mean the last time I looked at this was like years ago and it wasn't easy then it was a lot of work then I would say starting a Kickstarter campaign probably after you've already generated a lot of buzz on the game so I get the game out there let people see it and let people know about it long before you get over to Kickstarter so that you have an easier time doing it but also just be ready to spend a lot of energy and effort getting that thing right and getting it funded through there so I said make sure you have a lot of people already lined up and already excited about the Kickstarter coming along before you do it is there a good guide on what skill level you should be at before looking for a game job game dev job I'm self-taught and in c-sharp my sequel PHP JavaScript and can do small projects but I'm not a pro by any means and I'm worried about being out of debt I would start right away I think that um a lot of the time people just wait and they get scared and they're worried that they're not qualified enough and almost every time I've talked to people who thought they weren't qualified enough they were more than qualified to get at least an entry-level programming job working on games I know a lot of people go in they know a little bit they don't know a lot and they learn a lot on the job I think the willingness to learn and the kind of passion and excitement goes a lot further than people expect um so I'd say if you're not sure you probably are fine you probably should just go in there and start applying now don't apply for senior jobs obviously don't apply for something like you want to go be the seat a senior dev on world of warcraft but go apply for you know all kinds of different stuff and go through the practice of interviewing right so if you're not sure go out apply some go to some interviews if you don't get the jobs ask them why talk to them and be friendly and just you know explain your situation and a lot of time people will explain to you what where you're lacking and things that you can study and get better at and then just go in and start studying those things if you're not getting them but I would say just get out there and try and no way too many people who've sat around and just been afraid too afraid to apply because they might get rejected but I mean if you don't apply you're not getting the job if you apply and you don't get the job and they don't hire you're still not getting the job you have nothing to lose by going out there and trying so just get out there and start applying and start trying as early as possible if you can make small projects that's probably enough to get at least your first job especially in smaller indie stuff there's always there are way more jobs out there for game developers and there are game developers available do you have okay how do you have to plan an indie game to complete the game instead of canceling it that's tough one um scope is I'd say the most important thing figure out the scope of the game and get get the core part done as quick as possible get the most important stuff done as quick as possible so that you're not struggling and you're not just not finishing things um you know depending on the scope of the game you may need to worry a lot about getting good architecture there if the game is short and it's something that you're gonna put together in three or six months it's much less of an issue but as projects get bigger and longer it's very easy to mess things up and turn your code into a mess make a project into a mess so I'd say you need to worry about architecture and keeping things clean if it's gonna get big but if it's something small just I yeah get the core stuff out and get it done as quick as possible I'm trying to think of like how to plan it out now when it comes just actual planning figure out I guess what those core systems are and set up you know at least a list of all of the core things that you want to do I mentioned earlier using something like Trello or a whiteboard with sticky notes and put all of your stuff in there and then move over the tasks that you're doing every week to make sure that they're you're staying on task and doing the right thing it's really easy when you're working on an indie game to just kind of go down a little rabbit hole and start working on the wrong thing because it's shiny its new it's interesting or you just want to make this one thing a little bit better and you really need to make sure that you're getting the core important stuff done and that's generally where people fail they'll plan something out and then they'll struggle with something and they'll sit and just keep working on this one little thing and never actually get to their game order they'll get distracted instead of finishing their core game loop that are adding achievements and adding all these other little systems because they heard that those were important and really what's important is your core name loop being fun and being interesting and exciting enough to keep people interested in playing it so get that part done and then work on the other things um that helps a little bit is it possible to get a programmer remote job in the US with three years of experience at Yui citizen with without a visa ask contractor definitely so getting a full time remote job without a visa I don't know that that's possible but getting a contract job where you're working as an external contractor or you have your own company that you're contracting through is much much easier in fact a lot of time for remote jobs people prefer that because they don't want you to be a full-time employee because there are a lot of costs and rules and regulations that come with that so if they can hire you through another company like upwork which I said I've never worked on up work but I've hired people through there to work as programmers that's definitely an easy way to go or having your own company just setting up whatever a country are in setting up a company that um that you can contract through so that they're paying your company and then you're paying yourself through your company it's a whole lot easier than going through the visa process at least from my understanding and I've never had to do it I've never had to hire anybody with a visa but everybody I've talked to generally prefers for remote stuff to go through some sort of contracting system where it's not an actual full-time job but you're still doing that essentially the job of a full-time job just through another howard tasks broken down in triple-a development oh I actually talked about this a little bit in the beginning do designers submit a feature request and then one dev works on it for a month and is broken into several small tasks and shared by multiple devs for example and inventory system so when inventory system is a little bit bigger depending on the type of game but generally what happens is the designers on a triple-a project will come together and they will plan out what it is that they want in there and then the lead designer will work with the producer and lead programmer or producers and lead programmers and they'll figure out with the order of when these things are going to happen and we know sometimes designers will want things that they don't realize are kind of reliant on something else to be done right so then that's where the lead programmer will come and go hey well we need to reorganize and reorient and do these things first but then the lead designer or the lead programmer will usually figure out who they think on the team is best for the the task or they may talk with the entire team in a meeting or something or individually and figure out who's gonna do the task sometimes it's a single person working on a thing sometimes it's two or more people working on a thing pairing or mobbing or something but a lot of the time it'll just be a single person and they'll get this task and it's often broken into like a full month or a lot of time it's like a two-week sprint and it'll be like and then you know these two weeks you're doing this thing and it's totally like an arbitrary made-up timeline that people use where they just you know pick like hey somehow things take two weeks I'm oh one second I think who's jingling all around my office okay but yeah that's generally and I talked a bit about this in the beginning too so if you're interested just bounce back to the beginning when we're done also get more likes in here would be awesome if you guys don't mind just hit the like button if you haven't hit it already hit the share and everything else while I'm taking a breath okay with a prototype with almost non-existent art but finished core gameplay be considered a good one for game designer slash gameplay programmer yes most of the time when you're applying as a game programmer or game designer people understand that you're not an artist and people aren't gonna worry about the art quality you know it doesn't mean that you want to have like totally terrible art just find something that it's okay and just explain people that it's place all their art or if you can make it very obvious that it's placeholder art that's not terrible you know just put a little cell shading on or something do a little bit of work on the art but not a lot and that's generally more than enough people for the most part understand that the game the gameplay and the design is not necessarily the art sometimes the game is all about art but most of the time the game is not so much art and the art comes later and the art gets swapped in constantly so as long as you're not you know applying to a single bike owner that doesn't know anything about code that's running the place you should be fine cuz yeah that's it all right next up um what do you think about unities new editor UI design I hated it for like two days and now I love it so I I was struggled with it for a second I was like I don't like this at all it's totally different everybody moved my cheese it's all weird now I'm totally used to it it didn't take long at all I think it's overall probably a good move and it's a good upgrade so I'm happy with it okay I'm starting to learn programming and my goal is to develop games what should I focus on what language and what advice may you share for beginners I would personally recommend just doing c-sharp in unity the other option of course is going with C++ and going in unreal I would say definitely go with one of those two don't pick anything else for your starting point because those are the two where all of the jobs are I think there are more jobs for unity development especially in the indie side and it's quite a bit easier to get into there when you get into unreal there are definitely jobs out there a lot of triple-a jobs out there but if you're just trying to start out and you really want to get in get in with c-sharp and unreal first it's a bit more sharp community sorry it's a bit more approachable and they're just a lot of positions out there and they're also just a lot of non game positions out there using the same stuff so even if you have a hard time finding game positions c-sharp in general is applicable all across programming you can do web stuff enterprise stuff and everything else you can also do all kinds of things in unity with whiskey sharp that are not game related to but if you want to get into games that's where I would recommend but I mean also again I'm very biased on it I'll have the engine been talking about it forever yeah that's basically what my whole channel is about yeah take that for what it is how to grow a beard like yours I just don't shave this literally just like I forget to shave I hate shaving and when I do shave I just use the trimmer Clippers coming down that's it I don't know drink a lot of milk how do you go about learning about building tools for unity I feel like there's almost no good material on tool building that is true I actually learned most of mine from trial and error it was a lot of we need this we need to figure out a way to do it and just go in there and dig in I don't know that there are any really great resources for building about it building tools for unity stuff or even outside of unity stuff a lot of the things that I built tool wise for games are not even in the engine like I'd say it's kind of 50/50 some of its no engine in engine stuff that I'm building like editor extensions editor tools build tools stuff like that and then a lot of it's also just outside the engine using even things like web frameworks or WPF recently which it's kind of already how does some experience in to build things that interact with data so when you're building a lot of heavily data-driven games a lot of time building the things in the engine isn't the best because you're recreating a lot of functionality that exists outside of places like you want to have searching filtering sorting grid editing and all that stuff putting those things into the engine tends to not be nearly as easy so it's about 5050 there but I don't know of any really great resources for building tools it's all just been trial and error and basically having a need and then figuring out how to solve that just by messing around and figuring out can you make a video about folder structure sure best ways to name folders and don't mix everything up in the process when a project gets bigger it becomes hard to find what I'm trying to find yeah there are a couple different approaches to this I think that'd be an interesting video though just talk about a couple different ways to do it um don't have a pin so leave a comment on the bottom of the video too so I don't forget but I'm gonna I'll try to remember to get one of those done soon and just talk about a couple different ways to do it um yep what's the best way to go about using webcam input as the controller and unity I'm not sure it's not something I've had to do last time I wanted to use a camera as a controller I was actually using a Kinect which was a lot of fun who set up connects and it was a VR game where you're playing like Avatar like the show not the movie but you're doing special moves and you're in be are using connects to throw fireballs at each other and block and do other kinds of cool moves there was a lot of fun because it just tracked to your skeleton relatively easily and it tracked it tracked gestures and stuff now I know you can do a lot of that with webcams now with um I think with OpenCV but I haven't had to use it personally so I would check out some of those plugins and see how well they work with that but I'm not sure what the best options are now I think connects are kind of dead I have like a drawer full of them and haven't pulled them out in years okay stardew valley and forager are both good examples of indie games what software is good to start studying and making an indie game as a newbie like me I'm using game maker studio at the moment yeah I think game maker is pretty cool for starting out especially if you want to be a game designer if your core goal is doing game design it's a great way to get in there and just start designing actual games and not having to worry about the coding if you want to do code stuff I would jump into unity just start learning that because you're not gonna at least from what I remember of game maker you're not gonna learn much about the programming pipeline type stuff but in unity you're kind of forced to do all of that so it's kind of it's a big jump in a big change but it depends a lot on what you want to do so if you want to do programming I jump over to unity and start making things just expect that it's gonna take longer to make the same kind of things that you make in game maker but you're gonna have more flexibility in the long run and be able to make more types of things but if you want to do design game makers a great option could just get started in there and you can make things that you can show off and it's probably a good way to get in with a portfolio of stuff and get a game out there that people can play ok we can't create triple-a games alone and for indie developer every idea we think of has already been made especially about hyper casual games it would be a copy and repetitive how can we get fresh ideas for a game I have no idea I'm terrible at coming up with game design I think game programming and game design are definitely very different skill sets the game designers I know or they're good or generally not programmers and the programmers I know almost all of them don't think of themself as good game designers they may have good game design ideas like things that would fit well into a game I think would be neat but they don't generally do great on the designing their own game there are some people out there that are amazing at both but most of us are good at one or the other and coming up with fresh game ideas is not something I would say I'm good at there are a lot of books out there though on how to come up with them our game design is one of them sitting right back there so maybe you go through a bunch of game design books and try to get some ideas a lot of the time people who are good at game design also don't just work on video game design they'll work on card games board games I'm physical stuff to get used to the process of figuring out what's fun there is a really good podcast though game design Zen Curtis did it I don't think he's still recording him but he's got a good number of episodes where he just talks about game design and how to make games interesting and fun and he's I said he's one of those guys that's into it's good at both I'm definitely not he's a programmer who can also design well I'm a programmer who can not design well okay know unity versus unreal war but do Indies tend to pick the engine for use based on type of game or do they mostly stay loyal to their tools even though they are just tools I learned my a long time ago and I still use it to have not had a reason to learn any other 3d package but I'm willing to if the industry moves forward and fast enough with workflow and pipelines your thoughts because you can code any engine but choose c-sharp so in my experience people tend to get used to things and they stick with them because they become very proficient in them for example if I jumped back over to Unreal which I haven't used professionally in many years I would not feel proficient and I would feel very slow in it it would take me a lot longer to accomplish the same tasks and I think that that's the case for anyone there are some reasons like specific game types that you might want to make a jump or if your work just you want to join a project and a team that's working in a specific toolset you might have to make that jump but a lot of the time what happens is people tend to get really good at what they're used to and then they stick with it because they're good at it which sounds like kind of like what you're doing there with Maya you've gotten really good with Maya and you never really had a reason to switch so I think until there's an external motivator most people don't switch they'd get good with something and then they stick with it for me the switch was a completely an external motivator I needed a new unreal I could make games and unreal but at the time we couldn't get a license for unreal and it didn't have deployment to the platforms that we wanted back then now of course you can go to wherever you want and you can get into it for free when I did this switch it was literally just because that had that not been the case this video would be about unreal right now right like if that had been an option for our mobile game when mobile first came out you're going straight to that now don't get me wrong didn't take him long to catch up by the time we released unreal was able to do the same things but when we started it off it just wasn't an option so we had the external motivator to switch and that's kind of what drove it and I find that that's the case for a lot of people without the external motivator people stick with what they're good at alright I'm gonna try to go faster cuz I'm gonna go in about ten minutes so I got a couple more questions by the way see if we can get up to 200 likes before the end of this it's only like not that many more numbers going up let's see I really liked the video explaining inversion of control with simple example about spells and a spell processor when you consider making more of these design pattern clean code plus simple practical example type videos definitely those are my favorite kind to do so I think I want to do some more that go over some of the same types of patterns with different examples and just better editing and better I guess better examples and better explanations of these things I'll probably end up redoing the entire solid series and a couple new beginner videos sometime soon where we'll go over some real-world examples of how to use different design patterns in games that have built into what types of code I can pull out also one thing that I think is gonna happen soon is we may start live streaming some actual triple a MMO development or you'll be able to see the code while we're writing it and while we're making decisions and refactoring and changing things up have a meeting about that tomorrow to figure out what what that's gonna look like for sure if it's gonna happen or not and when we'll get started on that so keep an eye out for that I think that would be a lot of fun and hopefully really valuable to people because they can see some of these patterns in real-world scenarios and what they look like for really code that needs to be super scalable do you have experience with the unity job system or other ways of multi-threading for what elements would you implement multi-threading I already answered this one a little bit back side I don't want to talk about it again because I got so many go through but I'm usually a job system I use for things where we need to do a lot of processing of the same type of data and it's very rare very very limited use so far I haven't run into many scenarios with it and it's mostly just cuz projects I'm working on and the state of things right now I left the comment on a two-year old video already but is there a solid way to move a cursor in unity and I'm able to make a virtual cursor that can click on UI buttons I'm not sure I understand what you mean can you just send me an email about that um there is sometimes to get a lot of comments on all videos and I just miss them and I really I couldn't keep up with all of them but just send me an email and I will check that out it's just a my name at unity3d college yeah I'll send it right over to me sorry for so many questions but I like your insight will there be a day when a small team can make Triple A games in less time I'm sure there will be a so because tools like Rivini are making life so much easier and faster Houdini is hard but not so is 3d after a while it's not yeah I think so I mean eventually ideally we get to like a Star Trek level where you just walk in and you tell the tell the system whatever you want to say hey make me this game and you walk in and you're in the Omaha low deck right and it's just your game there so III can't imagine that unless humanity doesn't falls apart or something that we won't eventually get there and things have gotten dramatically easier over just while I've been a programmer so I can't imagine it's not gonna get even easier if I'm creating a game for WebGL canvas based in j/s slash webassembly would you recommend building your own engine nope if so what engine would you use as an example to work from I would say gee building unity with the WebGL Roco on simmer dot IO has some good examples of how to hook everything together and make it nice and clean but they've also put a lot of stuff into the engine to just make that a lot simpler to to build out those games and deploy them see next up is it worth for a new person to get into programming to learn ECS or stick with standard Unity c-sharp information I want to get back into game development as a hobby after being out of using c-sharp for a few years I would not go for ECS yet in the future probably but maybe not for at least a year don't start with it as your first jump back into game development or unity stuff it's changing constantly a lot the documentation and tutorials out there are already outdated and they get outdated constantly it's it's changing very rapidly and most people I know are not using it right now to code their games they're using the standard stuff every game that's been built in unity so far is built on the standard stuff stick with that that's it of course ECS in the future could be a great thing but let's just wait and see oh just not as a getting back-end thing okay hi I'm doing a simple game simple hi I'm doing a simple starting game in unity as a side project during holidays in order to show that I've made some things on my own that's good idea I breezed through the programming part because I'm used to coding but the game still looks poor and has no models and animations besides basic unity cubes is it fair to ask a 3d modelling animation student to work on it without pay I have no money and my skills on the game are encoding and math so it'd be helpful and useful for the student the game is a simple spaceship game with weird physics and mechanics it has a simple spaceship before the player and around 20 enemy types that should have animations for every interaction I would cut the scope first don't expect somebody to make 20 and 20 things with six different animations on it cut the scope dramatically and then yeah you could probably find a artist to do it I wouldn't count on that though because I mean when you're getting people to do free volunteer stuff you cannot hold them accountable and if you don't get along well just expect things to fall apart don't expect the quality to be great another option is just looking for free art and assets on the asset store there's quite a bit of that out there you can also just reach out to artists on the asset store and explain the situation a lot of time they'll be willing to just hook you up with free copies of their stuff but there's no reason you couldn't get an artist to do it just gotta make sure that it's the right artist and you guys get along and I would say don't don't try to overload and overwhelm them with stuff because your interest in the project is gonna be 5 to 10 times more than their interest in the project you designed it you started the thing and you're just asking them to help join you for free it's going to be hard to keep them on task a lot of the time unless you find the perfect person so I'd say definitely give it a try they're probably artists who are interested in it don't try to talk him into it find somebody who's really interested into it and don't try to kind of convert or convince them to do it by the way we're only seven likes away from two hundred and three minutes away from three o'clock I'm trying to get through these questions as quick as possible I'm currently at uni for a game design and I don't feel like I'm learning anything are there good sources for learning the nuances of design yes there are lots of good books and videos out there grab art of game design is a good one got that I would say go through the books you may end up learning a lot more from the books than anything else and like I've mentioned before I've never known anybody who was hired to be a game designer because they went to game design school and I've never talked to a game designer who thought that that was a great path for doing stuff game programming tends to be a little bit different because programming is pretty general and you can learn the stuff I'm everywhere III I know at least one guy who went to game design school really loved it and had really good feedback on it but it was a very specific one with that guy teaching the course the guy who wrote the book they're teaching the courses so I'd say yeah get get books you can learn a lot from it get practice um I don't know like school a lot of it is about making money it's not so much about yeah I don't want to go bash it too much I'm gonna go on how would you implement character States and ECS I wouldn't right now I would skip that and it's been too long since I played with UCS to know I wanna do some more ECS stuff early 2020 but not anytime in the next month or two I'm a web dev with experience in JavaScript and PHP I love the idea of working on a game do you think it's worth trying to go into Unity game dev as a junior or just a web dev I personally way prefer working on game dev I know some people who just really like web stuff but um in my opinion like working on games is just a ton more fun because you get to see people look at your game and it's just sorry summer zest mimo its Jason at unity3d job college that's the email address but yeah working on games is just a lot more fun you get to show it to people people get excited you get to have a lot of fun with it and you get to experiment and I would say definitely go for go I does it go for it yeah go for it get in give all our practice first don't just go try to apply with zero experience because you're gonna need to understand c-sharp you need to understand the language a bit just do a couple little courses prototypes and then get out there and start applying right away because the programming side is going to translate relatively quick it should be easy to understand a lot of the patterns are the same there are some nuances and differences like you're handling updates and collisions and you're you're handling the loop that's kind of hidden in webdev manually which it has some positives and negatives but once you get used to it it's not it's not any more difficult and it's a lot more fun I think and I've done both a lot and I definitely would say I prefer gamedev over anything else is it better to learn other languages in case the company you want to work for is using that language um no I mean usually with a game company they're either using C++ or C sharp it's very rare that they're gonna be using anything else if they are using anything else it's probably some little tertiary app that's running some stupid perl script or something else that in the back um maybe a little bit of sequel if your work what you want to work on data-driven games but other than that I would say no just pick the language that you guys are working with and learn that for unity stuff at C sharp for unreal stuff at C++ and learn it with the engines don't try to go learn it outside the engine and then apply it because the patterns are very different when you get into the game engines a lot of the stuff is very similar but the way that you interact with the language is quite a bit different when you go into game engines I was wondering what the most requested specializations are to engage in programming in triple-a industry I'm often busy with graphics programming like direct access so when it comes to specializations they tend to be graphics work so exactly what you're talking about like shader writing and graphics programming or networking for certain types games Network specialization is pretty important and then the rest of it tends to be gameplay stuff where you're working on client and server gameplay code there's a little bit of specialization and data side too depending on the game type if it's like an MMO you're gonna have a good amount of data requirements there or if it's some kind of game is just heavily data driven where you're saving a lot of didd off it can be a decent specialty but most of the time most of the programmers are just more generalized gameplay programmers who have some some graphics programming skill some network programming skill but they're primarily focused on gameplay code architecture and adding features and functionality to the game how do you approach tasks of aligning an indie team around a game especially when development has been going on for a while the artist might want to go in one direction of a Dark RPG taking risk experimenting with weirdness while the game designer performs cleaner more sober style going for a low risk and not to alienate people that is a hard problem I'd say probably outside of my skill set where you're really dealing with managing people there and managing expectations and it can go really wrong really fast if you have multiple people on the team building different games I've seen it happen a lot where games kind of fall apart because you know one person's building this thing another person's building something completely different and whenever they have the opportunity to build the thing that they want it's a little bit different that's where they go and they don't end up working on the same thing together the best advice I can give and I don't know that it's great advice is having them work together live as much as possible have the artist and the designer working together but it's kind of hard with artists to defend it to go off and just do their own thing I wish I had better advice there but that's definitely more of a people management problem than anything and if they address it quickly because you don't want it going for too long because you're just gonna end up burning a lot of time and energy and you'll end up with the worst right instead of getting like the best of both you'll get the worst of both because it's not going to mesh together and it's going to be scary um what audio solution do / would you use for unity games inbuilt F mod Wis or other I don't know I Norma just use the call the default stuff I think it depends on the game specifically and I'm certainly not an audio engineer be honest I think most of us kind of ignore audio until the last second and kind of forget about it it's not something that crosses my mind enough to give a really good thoughtful answer to sorry what are good websites to sell a full-course sites like udemy or Skillshare also can you sell the same course on multiple platforms um I don't know I know a lot of people use teachable udemy I've heard bad things about mostly just on their cost structure the people I talk to developers who had thousands of people in their course and had made less than a thousand dollars right like where they were getting less than $1 per per sign up because few demo you puts it on sale for $10 and then takes $9 out of it and then they pay taxes on that last dollar and they're making less than a dollar a thing can you sell courses on multiple platforms I don't see why you couldn't I just I think that I don't know what the best options are I personally just go with MAO and stuff so that I don't have to worry about it in order to rely on anybody else just rely on keeping my own stuff step steady and stable and not have any external dependencies which isn't too hard do you do either you can set up a wordpress site with learn - and it'll let you set up all the course stuff if kind of manage it and do it all yourself but it's I think you have a little bit more control and that's we're just what I use on mine I practically lived in unity for the past year and I'm starting on my first small demo project for a portfolio demo for a portfolio project using get of course good do you think diversity of small polished portfolio demos in a variety of genres and especially throwing a demo made in another engine just to show the fact that you can adapt to software it would be a good plan um I don't know that it would help too much I mean if people are hiring you for an unreal job they care about what you've built an unreal if they're hiring you for a unity job they care about what you've built in unity they're not gonna care too much about what you've done in the other engine because it's hard for them to know whether or not those skills translate if you're not sure what you're gonna apply for then maybe but I would just say if you're working on unity and you've built some demos in there just get one really good one or two really good ones and use those as your as your portfolio focus I wouldn't worry about spreading yourself too thin or trying to do too many things unless you plan to apply for those specific jobs and say look at the jobs that you want and do the things in the stuff that they that they've asked for or that they're looking for did you try the new AI planner and m/l agents not yet what's your opinion about them don't have any yet I plan to do it sometime soon I played with ml agents that's the machine learning stuff I think it's really cool and interesting but I just haven't had time to jump back into it lately hello can you talk about how to approach architecture in the early planning stages such as potential use cases for dll's scriptable objects and/or ECS so I know some people who really love creating things into dll's I've never found a really good benefit from doing it so I generally don't use that instead I look for are the script assemblies and that's a script assembly definitions there now in unity and it gives you a lot of the same functionality and features without having to go to creating dll's and then compiling them and then re importing them and dealing with with the extra headache that it adds and then for scriptable objects they use them for very specific things but not as a general architecture and ECS I just hold off until until it's fully baked and fully out there out of alpha and beta and people are using it in a lot of real-world projects that's what I'm waiting for at least okay let's see I have a criminal history due to past problems with alcohol abuse but I've been clean for three years done rehab outpatient counseling see regular mental health specialist and I'm graduating with honors from college with an associates and computer science our game dev company's judgmental on your past or forgiving I'd say they're probably unless you have something that's going to show up in a criminal background check that scares them they're usually pretty chill I remember when I went to my first game dev job IIIi don't want to say too much about it but they're pretty forgiving and they're pretty calm about most of substances and other things it's not nearly as big of an issue as at some other places and also a lot of places just don't do a background check so I'd say unless you have something like violent and scary on there that have really freaked people out I wouldn't worry too much about it and even then like I said a lot of places aren't gonna run a background check if you're relatively calm and cool um shouldn't be too much of an issue and again mostly people care about whether or not you can get the job done and it wasn't and you're okay and fun to work with right that's it's the main stuff there I worked at a company that strongly discouraged the use of comments and code the rationale is if you felt you needed to comment the code you should either be naming variables better naming your methods better or braking methods into smaller sub methods based on their functionality you have a philosophy on this I 100% agree they are a hundred percent correct if you have to write a lot of comments in your code the code needs to be refitted to read it isn't easy to follow and it isn't easy to understand the only real use for comments in my opinion is explaining why you're doing something there's two different times that people put comments in theirs what they're doing they're explaining what it's doing or they're explaining why it's doing something that seems weird if you're explaining what you're doing you need to refactor your code you need to rename it change it make it cleaner and make it so that as I'm reading the code I can tell exactly what it's doing if it's confusing if you're putting these giant ternary operators and multiple conditionals on a line you're just confusing people and making it harder to read for no benefit at all so split the stuff out rename it make it clean but the one place again for comments where they do make sense is when you're doing something that you have to do that might not make since and you're trying to explain why it's doing this like this is doing something weird you know okay I know this looks weird this is the reason for it this is why sometimes it's because of some external dependency sometimes it's just because there's something going on that just you wouldn't Intuit from reading the code no matter how well written it is generally code that's full of comments as I was it generally it's full of lies because comments don't change with the code people refactor people fix code people change code people almost never changed the comments comments are just I'd say a sign of less clean code cleaner code should be easy to understand and easy to read and yeah I 100% agree with him hi I'm new to coding and interested in game development have started teaching myself c-sharp and plan to learn unity after a game or coding knowledge would unity be able to handle large-scale RTS while having decent good graphics yes wondering just wondering if long-term unity will do what I want or if I should focus on learning C++ for unreal you could definitely do that in unity there's absolutely no reason you can't do a large-scale RTS with beautiful graphics and tons of games actually plan on making one one day soon okay we make a video about animations and player rigs sometime soon I don't know exactly when but yeah I'd like to do that sometime soon hello you got any tips to create real time wash system for unity in which clean dirt is made oh with easy decal system I wish I did but I don't sorry trying to go through these really quick because I'm already way over my time who works more hours triple A's or India's India's generally I think I talked about that a bit at the beginning by the way if you're interested in that one of the first things I was talking about was those differences there so India's generally tended to work more in my experience how would you implement mirrors in unity camera render texture or a merrier mirror material a lot of time would go with our well it depends on the exact scenario if it's just yeah a depends it depends a lot on the game sorry both of them are possible options depending on how you've got things set up what you render pipe looks like and what the use of those mirrors is I mean most of the time it's gonna be some sort of a mirror material and rendering trick so not necessarily a render texture but if you want to do some weird stuff with it render texture can can be some interesting interesting things that I think are harder to do without hi Jason love your videos they helped me a whole bunch while studying it you need do you think you could cover photon I'd love to make digital turn-based board game but lack net called net code knowledge I mentioned earlier we're gonna do a stream on high performance networking in unity so if you guys are interested in that just make sure that you drop a comment down below so that Kyle sees it whenever comments become available on your just drop a comment and we're gonna do one and hopefully this week talking a lot about networking we'll probably talk about photon and a bunch of other network systems do you think steam is becoming too crowded for VR games to be published without a publisher no but I think that for VR games standout it needs to be interesting unique and polished it used to be very easy to have whatever you wanted on there there wasn't a lot of content the first VR game that I released I did in a weekend as a tutorial and published it and it sold great because there wasn't much on there I would say it I don't think you need a publisher but you definitely need to have something interesting and good on there what's more profitable sell large or small asset packs on the stores like the asset store um both so you want to sell small asset packs that have like introductory level stuff we have a couple things in there and then sell bigger packs where people can build out and finish their game most of the time people will want full packs that are themed that they can use to build stuff out they want you know they might grab one or two little things so I'd put like the one or two free or cheap things up there and then have a bigger asset pack or sets of asset packs that all match a theme because people want to build a game and they want to make it all match and look right so you want to have a bigger pack for everything but make sure that it's stuff that people are interested in too okay so I've really been struggling with the unity animator system do you have any advice for animating moving hit boxes or general practices for recycling animators like using sword swinging across multiple sword models so the sword model should probably just attach and not necessarily be part of the animation that should be separated from the animation you might have different types of animations for different types of swords like a two-hand sword I went handed a sword and a couple of different animations for those but I wouldn't have the sword in there have those as a child that's getting attached for hitboxes an easy thing you can do is just use the ragdoll generator and have it generate hip boxes for for your character automatically that move and animate with your character you'll have to tune them up and tighten them down and stuff but it's a good way to just throw together really fast hip boxes that are relatively close to accurate much better than a capsule and it's just under game object 3d object rigidbody go play with that it's really cool I did a video on that too and I'm using a lot of find objects of type and getcomponent but I'm told these are very slow and should be avoided what approach would you use suggesting that they are slow if you're doing them in in an update if you're doing them constantly what I like to do for these and what most people recommend is just use them in awake or start and find other thing that you need cash that locally and then use that locally cached version of it so like in your awake you do get component animator and assign that to an animate or underscore animator equals get component animator and then use that underscore animator don't call get component every time you want to access it just get it once cache it into a variable in your class and then use that cached instance alright I just hit 92 of 90 a few questions I'm sure my desktop has a lot of questions I'm really out of breath and and you take a little break so I just wanted to say thanks again everybody for coming and please if you don't mind on your way out just hit hit the share button hit the like button yeah send it to your grandma like said she'll be interested and go check it out or put it up on Facebook or whatever wherever you saw it just go share it please it'd be really helpful and again if you're interested in the networking stuff put put a comment in the video just so that Kyle sees how excited you guys are to talk to him about networking and just get cool interesting info on that we'll talk a lot about high performance networking with Annette and maybe I can get him to show off some of his cool demos if you guys have questions we'll do this again sometime in the next couple days on networking and non networking stuff so just keep an eye out be subscribed hit the little Bell thing and I'll see you then again thanks everybody for coming really appreciate it had a lot of fun hope you guys did
Info
Channel: Jason Weimann
Views: 20,490
Rating: undefined out of 5
Keywords:
Id: J8jKBpB1u3A
Channel Id: undefined
Length: 136min 45sec (8205 seconds)
Published: Sun Dec 15 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.