The Journey: Ep. 1 | Open Projects

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
♪ [MUSIC] ♪ [CIRO] All right. Here we go. [CHEMA] Hey. Hello, everyone. [AMEL] Hi, everyone! How's it going? I think I'm sending my audio as well. There we go. Now, it should be good. Welcome, everyone. Welcome to this first episode of Open Projects: The Journey. We called it The Journey because it's going to be a long journey, and we're going to tell you why in a second. My name is Ciro Continisio, and I'm the Head of Creator Advocacy for the EMEA region for games at Unity. And with me there's Chema and Amel. Hey, everyone. I'm Chema. I'm Creator Advocate in the EMEA region as well. [CIRO] Wait, Chema, one second. We'll have time to introduce ourselves. Okay. [AMEL LAUGHS] Actually, you want to introduce yourself? I'll give you the floor. Yeah, I can start. As I said, my name is Chema, it didn't change. [LAUGHS] I'm a Creator Advocate for the EMEA region. I started to work in the industry almost eight years ago, seven as a game developer and for the past year as an advocate. I think that the first version I used of the Editor was like 3.5 back in the day. [CIRO] That thing. The first version. [CHEMA] Yeah. [LAUGHS] Bragging. [CIRO] Yeah. I see. Amel, What about you? What version did you use? Well, I would say version 4 when I was still at university. My name is Amel, and I'm also a Creator Advocate for the EMEA region at Unity. I'm based here in Copenhagen in Denmark, and before joining Unity, I was a student at the Engineering School in Paris. I moved from Paris to Copenhagen to join Unity. I have a couple of experience working on Unity mainly when I was a student, so I hope that we have a lot of students here watching us today. And a special welcome for you all. [LAUGHS] My name is Ciro. As I said, I'm the Head of Creator Advocacy at Unity, so I manage EMEA in my team. A bit about me, I guess, I'm not going to say the version, I don't play this game. [LAUGHTER] But I was a game developer, an indie developer, before joining Unity. I made a couple of commercial games and I was also a tester in my previous life at Electronic Arts. But now what I do is, well, I used to do, and what we used to do as a team is we used to travel the world to talk about Unity, to present about new features, and to connect with the community, right? [CHEMA] Right, yeah. [LAUGHS] We used to do that. We used to do that. Yes. And because we don't do it anymore, we actually came up with this initiative that we're going to present today, which is the Open Projects, right? [CHEMA] Yes, exactly. [CIRO] What is Open Projects? Do people know in the chat? I can't see the chat, actually, but I'm curious to see. If you can put just a Yes or a No, if you already know what it is and you just came to see the updates, or you don't actually know. We're going to give you a small introduction. Yeah, we already got a few Yeses in the chat. Some people have no idea, which is also good because now they're going to know more about it. [LAUGHS] [CIRO] We're here for that. [AMEL] But I see a lot of Yes. [CHEMA] You're in the correct place. That's great. [LAUGHS] Shall I introduce the initiative? [AMEL AND CHEMA] Yeah. [CIRO] As I said, what's the point? The point is that we cannot travel anymore so we can't see you all in events. We used to go around Europe mainly, and then we went to all events, like GDC, Gamescom, and stuff, and connect with the community. Now, we can't do it anymore so we thought, "Okay, what can we do?" Obviously, the first thought is to stream online and do talks. But then we wanted to give it a small spin. So we came up with Open Projects. What is Open Projects? I'm going to start by showing a small video, which is concept art, while I explain what it is. Open Projects is an initiative where we, Unity, make a small game, starting with a first small game together with the community, with you, and we do it in an open-source way. It means that everything we make is open and is accessible and is downloadable, but also modifiable right now. We started Open Projects a couple of weeks ago, we did an announce trailer. And since then, people just jumped in straight away, there was a super, really good response from the community. At that time we opened up the doors for this first project, which you're seeing the concept art for on-screen, when we opened the doors, we really had just very little more than the concept art. We had a Unity project already set up but not much more, and I'll show you what we had because we're actually still in the first phases. I guess, the concept art that you're seeing on-screen, this is actually the main character right now that you're seeing. And I'm going to stop on it for a second. The first game is about this character, this pig character, which is like a chef, and he's a traveling chef, so he wants to go around the world and discover new recipes, new tastes, new flavors, and this traveling takes him everywhere. And then for the purpose of this demo, we're going to this island where the chef has landed and he's going to join a... Basically, the island is running a cooking festival and the chef is there to impress the local head chef, which runs the cooking festival. That's kind of like the story which is very short terms. Chema, Amel, do you want to add some more details? I'm actually looking at the chat to know if there are some questions. I think you covered almost everything, but do you want us to talk on how to get involved on the project? Yeah, of course. I meant about the story if you had some more details to add that I forgot. I don't think so. [LAUGHS] Not that I recall. For now, I think that the story is being reworked, if I understand. Exactly. That's a good point. Basically, we started with a story for this game, which was a very small draft, I would say, because we wanted to have something. But we presented it on the forums and already we have changed some details. We received some feedback, some good feedback and so we made some changes and the feedback was really correct. I invite you to go and read the feedback on the forums. There's a thread about that called Dialogue and Narrative, right? [AMEL AND CHEMA] Yeah. [CHEMA] That's the awesome thing with having something that is collaborative is that you have some insight that you couldn't see while doing it alone. But if you have some other people that contribute, you have another perspective on the matter. That was really nice to have. For us, it was kind of like an act of balance, I would say. At the beginning, I was really unsure on what to provide upfront, and what to let the community create instead. We really had to kind of walk this very thin line and say, "Okay, we give some story but at the same time we let people give feedback on the story." And the story thread, in particular, is exploding. [AMEL] Yeah. Definitely. [CHEMA] Yeah. Exactly. It slowed us down a little bit because now, we're reworking the story, we had to stop art production, we had to stop some programming tasks as well. But we're getting there. Yeah, we're getting there and having people that contribute, as I said, is like giving them the possibility to be included in the story more than just in the coding or in the end product. It's like being included in the story. I think it's really good. [AMEL] Yeah, totally. [CIRO] Yep, definitely. Chema, do you want to give us an introduction to the actual. I mean, I explained the story, but where does this project live? Actually, this is a great question. It's simple really. We tried to plan this project the same way you do in a game development project. The starting point was to create a roadmap for our project. To do so, we used Codecks, I don't know if you can open it, Ciro, for us to check. [CIRO] Of course. Sorry, one second. There we go. [LAUGHTER] It's a great project management tool. It's based on cards and decks, and it allows us to create a public and clear roadmap for everyone to follow. Each deck represents a part of the project. Some of the decks are for documentation, for example, the Readme and the Game design wiki, we can see those cards here. Also, Game flow and Game element are decks that contain micro-tasks that represent states for the game. For example, locations or menus. When we open them, we find cards that are Hero cards that contain sub-tasks. If we open, for example, the cards that are linked to a Hero card, we will see that it contains some sub-tasks. Some of them are done, so in green, and some of them are being done. If we click on the card, we can see the description on it. If we go for Up for discussion, for example, the Up for discussion deck contains ideas and topics that we'd like your input on. The first one, I think, is the Game title. If we click on the Game title, we can see a link to the thread. We can click on the link. [CIRO] Should I click it? Yeah, just to see a bit, to see where we are for the title. Yeah, exactly. [AMEL] This is my favorite thread. [CHEMA LAUGHS] Yeah, we have a lot of input on that. We can go back to the roadmap now. [CIRO] Mm-hm. [CHEMA LAUGHS] The other decks, for example, we have the Bugs, which contains. [CIRO] Sorry, just to mention, for example, the Game title we're also kind of stuck because we're still defining the story. That's why we haven't closed the discussion yet. [CHEMA] Yeah, exactly. Also, the other decks, for example, the decks that are in green, are the decks that contain tasks in the form of cards. If we open the deck for Code, we can find each card representing an action, a task that has a description with a link to the thread that represents it in the forum. It will also be assigned to someone, either to the community or to someone from the Unity team. You can see the blue icon is for the community, and the black icon is for someone from the Unity team. If a card is assigned, it will be in bronze, in the gold color. If it's already being worked on, it will be in blue. If you want to work on something that hasn't been assigned yet, you can look for something that is in gray, it has the gray bar on the bottom. And that means that this task hasn't been assigned to anyone so you can start to work on it, start a discussion on it on the thread or start to work on it... We will see later, how to start to work on that. [CIRO] I want to say one thing, Chema, I don't know if you wanted to say it after this, but the blue cards, the ones that have the community icon, that doesn't mean that you cannot work on this task because you know how it works with the assignment. [CHEMA] Yeah, of course. It can be assigned to someone, and if it's assigned, you can participate to the discussion and try to participate to the solution that is in the thread in the forums. I don't know if you want to add something else, Ciro, about this? [CIRO] No, I mean, you said it right. The way we see the participation to this project is not just to anonymously jump into a task and make it on your own. But it will be lovely if you could jump instead in the thread and have a discussion with the other members because it might be that maybe... Miscommunication kills projects. If you can communicate with the others, then it would amazing. As we were saying, the idea is that, basically, two or more people could actually work on the same task and kind of come up with different solutions, and then we have the very difficult task to choose which one to pull in. [LAUGHS] [CHEMA] Yeah, exactly. Yeah, and when a task is finished, the card becomes green, and it's repositioned in the release deck it belongs to. The last two decks, the ones with the number of the version contain the finished task, the finished card. As you can see here, I can treat them... [CIRO] This is the initial concept art. [LAUGHS] Yeah. It's the concept art and that contains all the cards that have been finished when we released the public reveal. [CIRO] And these are the ones that we're working right now, right? Yeah, exactly. Right now, the current Game flow is blocked. As you can see there is an icon in the Game flow. It means that there's a problem there, there's a block there. You can open it and we can find that this card is blocked because we are reworking the story. But for now, it contains the Game flow for the previous story that we have. If we open the link there... [CIRO] Just one second, Chema. One thing I want to mention, cards also have conversations. In the conversation, we will leave some notes about the cards. For example, this is telling you that this particular card is blocked because of, and then it links to other cards. You can also follow the evolution of some tasks. You will see cards that have conversations. That was a blocked one, but usually, they should have an icon. They should have an icon, yeah. [CIRO] Maybe they only have it in the private one. [CHEMA LAUGHS] [CIRO] You were saying the link. Yeah, so I was saying the link for the Game flow, you can open it and it will bring you to Miro. We are using Miro to represent the game flow. It represents the logical states as moments. I don't know if we opened the right link. [CIRO] It's a good question. Let's try. [LAUGHTER] If we open Miro and we go to our Game flow representation, we will see it has... Yeah, I think we should... [LAUGHS] [CIRO] I don't know. Seems like Miro is down. Miro decided it's not time to. [CHEMA] Ah, yeah. [LAUGHS] Awesome. Thank you, Miro. We will see you later maybe if it works. [CIRO] Oh, it's loading. [AMEL] Yes, it's working. [CHEMA] [LAUGHS] Nice. [AMEL] Now we'll see about Miro. [LAUGHS] Yeah. [LAUGHS] As I said, it contains the flow of the game. For example, you can have moments, you can have places of the game that you can see. For example, here, the game begins, then we have the initial cinematic, and then we go to tutorials, and it triggers something else, and something else, and we follow the logic until the end of it. We have, also, I think there's a UI flow here also in the top. [CIRO] Yes, it's here. Yeah. We can see the flow between the screens that we will have, but also I think there is another part in this Miro graph with the positions. [CIRO] The physical location, yeah. [CHEMA] The physical location. [CIRO] Basically, while this part here is more like the logic of the game, so it's kind of like the story, and in fact, you can see it has more or less a linear progression. It's not an MMO, right? [CHEMA] Yeah, exactly. [CIRO] But this one is the physical locations. And I want a precise, for example, this one would be Forest environment and this means that it's connected to this other environment. But I want to precise that because we're reworking the story, this structure is kind of old, right? We want to redo it from scratch once we have the story set in stone. Yeah, exactly. It could be one of the cards that you can create again. But we already have the card for the Game flow, and it's being reworked with the story right now. We can see another card again just to check the threads, the link to the threads, so let's open a card in the Code. The first one, yeah. Every card will have a link to a thread in the forums. The thread will be marked Official. That means that it's linked to a task, and everyone can contribute to the discussion, as we said, even if it's assigned, you can participate to the execution. This helps us gather all the information about the subject in the same place without having to go into separate threads. In addition to those threads that are marked Official and that are linked to cards, you can also find suggestions or queries or contributions that are not in the roadmap yet that we can add later and add the label Official to them later. Now, once we have this, once we have the thread, once we are discussing it, how do we contribute? [CIRO] One second, Chema. There's a question from the chat that I wanted to address right now. Somebody was asking, "In the case of audio, it's all assigned to someone in the Unity team." And they say, "Will that change?" And this kind of brings up the discussion on these very fundamental tasks, which I wanted to briefly mention. Yes, that will change. We want to open up every aspect of this game. The reason why audio is assigned to the Unity team and actually, let me share... this one. Also, you will notice in 3D and Shading, you have a bunch of 3D models, specifically for the main character, assigned to the Unity team, is because we wanted to kind of give a direction to the project. It's going to be very challenging if we opened it up from the very beginning, and then ten people want to make ten different characters or have a different idea of the graphics for the characters. Five people make different audio themes. We want to give a bit of direction to the project and then we're going to open up the contribution to these very fundamental things, like sound and graphics. That's the reason. [AMEL] Yeah. [CIRO] And then, other questions... [AMEL] Yeah, do we...? [CHEMA] Yeah. Is there any age restriction to the contribution? [CIRO] Good question. I don't know. [LAUGHTER] [CIRO] I think this goes with the age restriction around Unity. Unity does have an age restriction which is specified in the Unity Guidelines. When you download Unity, it has some guidelines for downloading, and I think that also applies to this project. The project in itself doesn't have any age restriction, but if you're creating a Unity account, then you have some which is specified in the guidelines. [CHEMA] Okay. Yeah. Shall we move on? [CHEMA] Yeah. Actually, I was about to ask Amel how to... I was about to ask Amel how to use GitHub and how to contribute. I think it's the time to, once you set up, as Chema mentioned, in Codecks, you choose the card you want to work on, and you also mention that in threads, so you can start discussion with other people that are interested also in the same task. We get to this interface, which is the GitHub repository of the project and where the project is actually open for everyone. Carol will put the link in the chat so you can access this. You can also access it from the threads or from Codecks. Here we have a preview of the Readme file. I just wanted to mention the Contribution Guidelines document that maybe Ciro can open quickly to give you an overview. Here, there is in details the Contribution Guidelines if you want to go through it, but I'm going to give a glance now, somehow how to actually contribute on the project. If you want to start now, what do you do? Let's go back to GitHub, and first thing that you need to do is to fork this repository. There is the fork on the top, on the right. [CIRO] What does fork mean? Fork means that you have your own copy. Instead of Unity Technologies on the top next to the Open Project, it will become your GitHub username next to the project. Here if you open your copy or the one you forked, it's going to be "ciro-unity" I believe, yeah, Open Project. Now, you can make any changes and then push them to your repository. For instance, let's modify the Readme file, something maybe easy to do now. Let's say like, "Hey, everyone, we're streaming now, it's live." [LAUGHS] [CIRO] "We're live!!!" Yes. And now you can choose the commit message, etc. You can use, of course, any GitHub tool that you use usually, like GitKraken or SourceTree, or there is also a desktop version of GitHub. Whatever tool you are using or command lines, feel free to use it. Now, we have this change. If we go to the commits of your Git repository, Ciro, we should see this appear as one of the latest changes. [CIRO] This one? [AMEL] Yeah. If you press Code on the top on the left to see the commits of your repository. All the commits of your GitHub repository. [CIRO] Ah, on Code, sorry. Here, you can see that you are actually ahead of the branch you have forked from, which is the one that we have in Unity. Let's say, you make this change and you're sure you want to show this to the rest of the people in the project, you can do what we call a pull request. Here, you are like asking us to merge the changes that you have made in your forked repository into our repository, which is accessible for everyone. You need to do pull request first. [CIRO] And of course, I need to sign in 75 times. [LAUGHTER] Yeah, this is quite like the usual. [CIRO] Which is the thing that I didn't want to do, but it's inevitable. Yeah, and now what you will do is you need to actually do the pull request and just wait, basically. But just to go through this comparing changes, as you can see, here you can choose from which branch of your Git repository you are sending your work to which other branch of the other Git repository, which is the Unity one. Here we are sending from master to master, but if for some reason you were working on another branch, for instance, the Scene-Loading or whatever other feature, it's totally flexible and you can choose the branch that you want. Let's commit it maybe from the master. [CIRO] You will notice here that sometimes it will tell you that you can't automatically merge if you make changes that also kind of overwrite what something else has written. But anyway, this is just a very simple example. I could potentially do it this way and then create a pull request. Now you just create the pull request, and you can see that you have some text already written for you. That's like a template that we created. That asks you some basic questions like, "What are you trying to achieve with this pull request? or "What issue did you try to solve?" All these kind of things. And it's super helpful for us to be able to decide why this pull request was useful. You can also put pictures, screenshots, links to the thread, for instance, that you have worked on, etc. Here, once you have this ready, you just press... Yeah, you generate your pull request and it is done. Now, you just wait, and I want to show you what happens actually behind the scenes. For us, Unity, what do we see? We see this list of pull requests, which you also can see. And let's take any other example, Ciro... [CIRO] These are changes that people sent, right? Yeah, these are all changes that people sent and want to merge into. [CIRO] We have 46 closed. And 17 currently. [AMEL] Still open. Yeah. Let's open one just to see. [CIRO] We need to take a look at at some point. [LAUGHS] [AMEL] Yeah, totally. I will mention why, actually, it takes a bit of time because every change you guys submit and we approve it in the repository, which is like the repository for everyone, everyone who clones the project or forks it, they will get this version. We always try to be as careful as possible to avoid having bugs later that will somehow impact all the users. That's why it takes some time, we're sorry, but this is how it works. And sometimes, as you said, we have a lot of different solutions and we need to somehow see which one fits better. As we said, it's always better to see if someone already started working and work with them in the threads so we can have one final solution. This is a good example of a state machine implementation. Here we have pictures, we have a description of what exactly we are trying to achieve. You can see also we have comments so other people, not only people from Unity, other people can comment on each other's pull requests and can actually give some feedbacks, suggestions, and the discussion is always open. This is one of the great things about the Open Project. "Looks great!!" It is. Everything looks great in the project. [CIRO] I'm very excited today. [AMEL] That's great. Yeah, very excited. [CIRO] And this is where we basically can approve it or not, or provide some feedback to you. And the discussion goes on until we then decide whether to merge it or close the pull request. Yeah, totally. We take some time to test this in the engine and make sure that everything works, etc. In the Contribution Guidelines, you can see more about what is allowed and what is not allowed. For instance, you can't add new packages or change the Unity version, etc. But all these, you can find details in the guideline. Also, I wanted to mention, if you want to see the different steps of the contribution in details, you can see the video that Dapper Dino, our friend, made, and it has a thread in the Unity Open Project. Yes, if you can show it quickly, Ciro, that would be great. You can see in details if you want to look into that. [CIRO] It's just called How To Contribute - Video Guide and it's pinned at the top. It's a really good video that guides you through the whole process in a very quick way. [AMEL] Totally, yeah. It shows you how to do everything from the commits, from everything. That's a really good way and more details than what I said now. You can watch it. Ciro, you might ask me a question: If I'm not a programmer, or I'm not a 3D artist, or I have no Assets to contribute, how can I...? [CIRO] Then what do you do? You can do something, actually, you can do a lot of things. Actually, even people now in the chat, they are helping. They are here to give ideas, to give feedback, and that's like, people are already contributing by doing this. But one thing I want to point is, for now, maybe we don't have a first version of the project yet, but probably in a few months, like two or three months, we'll have a first version, and you guys can test it and can see if there's any issues or something you find not comfortable in the gameplay. You don't have to have any technical knowledge or skills. You only need to test it and say, "I saw this issue or this problem." And then when you notice this, you can go to the GitHub, so if we show GitHub again, Ciro, you can find this tab called Issues. And let's open the first one. It's a good example actually. "Camera can clip..." Yes, this one. You can see this is an example of an issue where we show the behavior and how to actually reproduce it. We have a screenshot. This is perfect. This is a very good example of how to open the issue. Maybe let's try to open one, Ciro, now, if we go on the top. [CIRO] Do you want to create an issue, Amel? I want to create an issue now. [LAUGHS] Here, again, you can see that we have this text already made, which is the template that asks you a few questions, like what's the issue. "Amel causes trouble." [LAUGHS] And asking you how to reproduce it. You can put screenshots. You can give all the details that can help us reproduce it and make sure that we can solve this. If you go on the right, Ciro, there is also Labels. I love this one. Yeah, the Labels. You can decide which one, like it's a critical bug or it's minor, or if it's just an enhancement so we can know which tasks to prioritize or which issues to work on first and try to solve them first. [CIRO] By the way, actually, this template comes straight from my experience at EA when I was a tester. [AMEL] Oh. [CIRO] Certification tester. Yeah. I kind of reused those steps. One of the points of the bug reports at the time was that you want to be concise. You don't want to write a lot of details that are repeating the same thing over and over again because, obviously, you might have a lot of bugs to read, right? [AMEL] Mm-hm. [CIRO] Yeah. Yeah. This one goes straight to the point, which I really like. [CIRO] The three words were concise, precise, and standardized. Those were like three slogans for the bug reports. It's like pro tips from Ciro. I love this. [LAUGHS] [CIRO] Anyway, "Amel causes trouble": critical. Critical, of course. [LAUGHS] How can we reproduce this, Ciro? [CIRO] Somebody added an issue right now. [AMEL] Oh, that's great. [CIRO] "Rename default branch from 'master' to 'main'." [AMEL] Okay. [CIRO] We'll look at that later. [AMEL] Totally. [CIRO] This is how interactive this project is. This project is super interactive. I love this because sometimes you start working on something and then you see something pop up, I'm like, "Oh, I'm actually doing this with other people, and they see me and I see them," that's really great. Actually, I'm thinking we should probably get away from the GitHub before somebody writes some... [LAUGHTER] some very weird thing on-screen. You were too late. [LAUGHTER] Too late. [LAUGHS] Yeah, we can maybe check if we have any new questions in the chat. Yeah, I can see folks are super excited here. I think I have some questions. Someone asked about the version variations. I think we have something in the guidelines that we don't change the version, we use only one. [AMEL] LTS. [CIRO] That person is a genius. [AMEL] Yes. [LAUGHS] [CIRO] I'll tell you why. Because you gave me the chance to specify that. Or do you want to do it, any of you? I'll give you the full screen. [CHEMA] No, you can. [AMEL] Go on, Ciro. You volunteer. So yes, the version of this project is 2019.4 LTS, Long Term Support. It's going to be like that, it's not going to move, we're not going to update to 2020. The point is to stay on a stable version that is good for production because we want to simulate the experience of making a full game. We also want to simulate what a company would do, which is not like be on the latest beta, but stay a bit behind and take this more stable version. To be fair, some companies do use betas in production when they really want something which is like bleeding edge, like a new package or a new feature. But here we don't. Here, we're trying to do something which is kind of a classic in a way. So 2019.4 is perfect for us. Right now, we're on 2019.4.11, and there's a new patch that came out yesterday. We're going to upgrade the project soon, but please, don't upgrade the project, don't upgrade packages, we'll do it, otherwise, we'll have like a million PRs open. Yeah. [CHEMA] Yeah, exactly. I have another question. Someone asked, "What can I learn from this? What skills can I improve by this?" [CIRO] That's a good question. [CHEMA] It's a very good question. [CIRO] Do you want to answer, Chema? You can learn everything. [LAUGHS] Actually, Ciro, I think you have a better answer to this. [CIRO] Me? [CHEMA] Yeah. Sure. It is true, you can learn everything. What that means, I think it means that... you can take it as a programming. [CHEMA] The project. Exactly. [CIRO] Sorry? The project has a lot of different features that can be developed, and if you are interested by anything, you can develop this feature or the other feature. You can participate in other people that are developing, you can see the execution of other people, like Amel showed, you can see the PR of other people, and things like that. There are so many features to learn from this Open Project. We will have, I think, Ciro, one stream per two weeks with a new feature explained each time. Yes. I want to add that every aspect can be educational. Even the discussion that goes on the forum about why to choose one solution, why to choose another solution, and if you see it in real time, then you see it evolving, and you understand the reasoning behind these decisions. I want to say, and hope that in a couple of months we will have made some change to the project, and then maybe we will have reverted it. Sometimes we will take some decisions and for some reason, we will look back and say, "You know what? That wasn't the best decision," and we change it, which is something that happens in production sometimes. And obviously, it has a higher cost the further you go in the production. We will try to be very careful. But I think this is like a safe space to experiment in some way because this is not a commercial game so we don't have those restrictions and timelines that commercial games have. Hopefully, to answer that question, you're going to learn something from this and use it when you work on something commercial or your own project, your hobby project, whatever. There's many, many aspects to it. Yeah, exactly. Cool. One last question. Okay. There's a question about the initiative: "Are you planning to do more Open Projects?" [LAUGHS] Yes, but let's see how the first one goes. [AMEL] Yeah, if we survive the first one. [LAUGHS] If we survive it. The initiative is called Open Projects so it's plural. So yes, that's the idea. Also, want to touch on another aspect. Thank you for these questions. These questions are perfect. The reason why we're doing this project as well is because we believe that we can't really offer a tutorial which is higher level, like a more complex tutorial, without specializing it into one type of game. And this is the type of game we chose as the first game, but there's other types of games. My idea is to probably make a second game as a mobile game, that's the idea. And then a third game, and then we'll see, like VR. I'm not promising anything, we'll cut this one from YouTube. [LAUGHTER] We'll cut it in post-processing. [AMEL] Post-process. [LAUGHS] But yeah, that's the plan. Yeah, and for those who are asking about the Discord channel, there is a link, I think, that we can send you. I think there is a link in the thread. I'm not sure. Just correct me if I'm wrong. A link in the thread. Which thread? Or we will create the link in the thread. [LAUGHS] For the Discord channel. Yeah, we have a thread for the Discord channel so I believe they can find the link there, and I think also, Carol, yeah, she just put it in the chat, so you guys can find it in the chat now. Otherwise, I really suggest you to look at the forums, and if you take a look at this thread called News and updates, there's usually this kind of stuff, and exactly, Carol linked the Discord channel. Through this thread, we're going to give news every now and then. As you can see here, when we upgrade Unity, and milestones, and important events. Just keep an eye on it. [CHEMA] Yeah. Awesome. [AMEL] Yeah. We also have another question, Ciro. The question is, "Will there be documentation on the organization of code and Assets? I'm assuming pull requests will be rejected if they don't conform to some standard." And I believe we have a document for this, right? Yes, which is linked... Where is it linked? [AMEL] Yeah. [CHEMA] In the forums? Yeah, in the forums it's linked I believe so. Yeah, that's a good point. We need to link it in the Readme of the... Yeah, maybe we should add this as well in the Readme file for the Git repository. And yeah, it should be there. But it's also in the threads on the forum. Yeah, we will link it a bit everywhere, to be honest. We just made it so it's not very well-connected or visible. [AMEL] Mm-hm. [CHEMA] Yeah. Awesome. Now that we know everything about this, can we see the project, Ciro? Yeah, we want to have a glance at least. [LAUGHS] All right. Let me open Unity. Let's go here. The project looks like this. It's very unappealing, I will say, for now. [CHEMA LAUGHS] [AMEL] For now, yeah. [LAUGHS] Yeah, we're really working on the foundations. We are basically, again, laying the foundations, especially with code, and this is actually one of the first tasks that I started working on. It was the Character Controller. [LAUGHS] You can see the initial experiments with physics. It went really wrong, so that was literally the first task that I was working on. This is the project that you can download now. You'll see this scene which is kind of like a playground to test the Character Controller. If I press Play, going to give it some space, then you can start testing the Character Controller by moving around. There's ramps, there's little steps, and there's slopes so you can try to move up the mountain. You can't. And actually, this is one of the things that was contributed by the community already. There's also a bit of Cinemachine, you can move the camera closer. But again, it's very rudimentary. I understand that this doesn't look like the most appealing, but that's how games start. We're trying to get the foundations pretty correct. [CHEMA] Yeah, some people say you definitely need us artists so, yeah, I think so. [LAUGHS] [CIRO] Yeah, we do. Wait one second because I have a surprise for later. I just wanted to mention that, as I was saying, initially, the character could just walk up the mountain by jumping, and then one of the very first contributions we got was somebody fixed that bug. You will notice that if I'm walking up the mountain and I try to jump up like this, then the character will slide down and face the other way, so they implemented this interesting sliding mechanic into the Character Controller, which is quite cool. You see if I walk down here, at some point, you will start sliding down and that's why you don't have the ability to jump, and this prevents you from jumping up the mountain. Actually, I want to point out there's still one bug open that somebody reported, which talks about being able to get stuck on a surface like this. I'm trying to reproduce it right now, but I think it was fixed. The reason why I left that bug open is because, again, in line with the tradition as a tester, you don't just close bugs because you don't see them once. If you do that, then you forget about them, and they will pop out one second before the release, right? I prefer to leave a bug card open and kind of keep an eye on it, and maybe every now and then test the bug, and then if I really think it's fixed, then we'll mark that card as resolved. Actually, when I was working at EA, fun fact, the bugs had like a lifetime, and when the bug was open, and then you will test something and kind of close it, us, testers, we couldn't mark the bug as resolved. We would mark the bug as claim fixed. It's like we claim it's fixed. But it doesn't necessarily mean it is. And then they would run an extra round of QA and they would mark the bug as fixed verified, which was another state where QA has put the signature and said, "Yes, it is actually fixed." I'm trying to reproduce the bug and I can't do it. I'm pretty happy with the fix that we merged into the project. Nice. [AMEL] Looks nice. [CHEMA] Awesome. We can claim it as resolved now. I had a video, you're watching the video of, I think it's the fix that we implemented from one of the users, dstasio, and he created a very nice testing ground to check that the character would slide down. One of the very first contributions to the project. [CHEMA] Mm-hm. [AMEL] This looks great. Can we take just a question, Ciro, before we move to the next part? [CIRO] For sure. [AMEL] Yeah. We have a question: "Where could I get the Assets like the 3D models of the player and all?" Everything is in the Git repository so people should be able to get them because it's open for everyone. But just saying that these are not the final Assets so we're going to, of course, update them when we have the real final Assets. You can get this version, if you want, of the project, of course, but we will also update those 3D Assets for you all so you can have them. Actually, I don't know if anybody noticed, but those Assets are coming from... [CHEMA] The Karting game. [CIRO] The microgame, yeah. Karting Micrograme. [AMEL] I love that game. You have the tree and there's structures. [AMEL] Yeah, I use it a lot as well. I just put them in here as a placeholder as I was prototyping. [AMEL] Yeah. There's also another quick question: "Is it possible to contribute if I'm still learning C#? I already know programming, I'm just new to C# and Unity." Well, yes, I mean, the most important goal, I would say, of this project is to learn. If you want to learn, this is the opportunity, just jump into the boat with us and go on. Yeah, I also want to mention, there's a very interesting activity on GitHub in the pull requests where other members of the community are reviewing other people's code. Sometimes, we might not accept your PR, so your code doesn't make it into the game, but somebody else might give you a review of the code, so you learn also through that. It's a really interesting phenomenon. And I have to say, I'm really thankful to those users. I don't remember all the names and I don't want to make a list because then I forget somebody. [AMEL] Yeah, true. <i>@HyagoOliveira</i> is one that comes to my mind. He's been so active in the reviews, super nice, and super helpful to me and to us as well because he helps us get rid of a few wrong lines of code and mistakes that would have bitten us later on. Thank you so much for that everyone. Yeah, thank you, all. Cool. Do we want to see something more visually appealing? [CHEMA] Yes. I think so. [LAUGHS] [AMEL] I'd love to. I think that people want to see something that is better. [LAUGHTER] Something that is better. Yeah. Better than the graphic there. I think that some other graphics, do you have that, Ciro? Yes. I want to talk about the Toon Shading, which is like another front on which we started. Again, like Character Controller and then on the other hand, we're working on the shading of the project. [CHEMA] Awesome. [CIRO] The thing you're seeing here was me making some early experiments. And we're going for a toon look, cartoony look, some people call it ramped. People call it different ways and it's basically the idea of having the lighting as two or three shades. Instead of having a smooth transition from light to shadow, the transition is harsh and is like a painted line, which you usually see in some cartoons and especially manga. Right? [CHEMA] Yeah, exactly. Here, you're seeing a little demo of the things that I was doing. But I can show you directly in the project. Let me open... There's actually several parts to this technique, and I really wanted to give you a bit of an overview of what I'm doing. Part of it is... Let me see. Let me go in this Scene here. This is exactly the Scene that you were seeing in the video. It's kind of like my playground. Here I have this series of spheres, here to the left, which I think they're static. These ones are dynamic. And then you have a bunch of spheres casting static shadow on these ones. And then you have a series of lights. Basically, I was trying to simulate all lighting scenarios. You have mixed lights, you have some other lights, which are mixed with shadow, mixed with no shadows, and this is kind of like the testing ground. I was working on this Shader, which basically has, this is for the character, and as you can see, this is a dynamic object so if I move it, the lighting changes and the shadow follows. This is trying to replicate the style that we had in the... in the concept art. [CHEMA] In the concept art. Exactly. Thick black lines on the outline, lines on the inside, and then the shadows are like Toon, as I said. And what else? And then the black shadow on the ground. So this resembles... [CHEMA] That's so awesome. I want to show you very quickly. [CHEMA] It looks like it's drawn. Yeah. That's the concept art, right? [AMEL] Yeah. [CHEMA] Yeah, exactly. And then this is kind of the result. But actually, this model was a placeholder as well. You'll find it in the project right now. If you download the project, you'll find this model inside. By the way, it's not rigged yet. [CHEMA] Will we find also this Scene? Yeah. Everything is in there. [AMEL] We have a question in the chat, sorry to interrupt, but people are asking if you made this with Shader Graph. Maybe you want to answer them. Actually, I wanted to give a small demo. Let me give you a small demo of how we made it. If I select a character, and I open the Material, and I click Select Shader, I have here a CharacterToonV2. Actually, let me show you something else first. I did this process in steps. The thing that I was doing first was to try and recreate a Shader in Shader Graph that will allow me to control lighting. For that reason I created this first draft, which, as you can see, is called Custom Lighting. And this is not Toon yet, this is not a cartoony shader. This is just taking the lighting from the Scene and putting it in a pipeline where I have full control over what I'm doing with it. If you see here from the left, we have a Custom Function node, which harnesses the Main Light of the Scene, which is the Directional, and kind of sends this data off. The lighting model is a dot product so I'm working with the vectors and where the light hits the surface is white, where it kind of goes tangential, it's 0.5 and then on the other side is black, zero. And, again, I take these data and I send it off to this thing, which multiplies the shadows with the color of the light, which comes from the node we saw previously. Here we have some additional lights. This basically allows me to have all of these lights that you see here. The additional lights, which are not directional, and then we have real-time shadows on baked geometry, which means this character, the shadow that he's casting here on the plane. And then we have baked GI. And then finally, we go to the final node which is Unlit so this is not PBR material, it's not a PBR workflow, it's just kind of like flat shaded. But then because I do all of these transformations, I make it lit. This is kind of like the base thing that I started from. And then I kept working on it. And put, for example, an extra step in here. If this is the shadow that goes to this node, before I use this shadow, I transform it and I make it cartoony. If you open the CharacterToonV2... Three, two one, there we go. This is actually the Shader that we're seeing in the Scene. So it's not that complicated, although, I did use Subgraphs to get rid of a bit of the complications. Basically, the idea is the same. Here we have the main light contribution. Here we have the baked GI. Here we have the additional lights. And all of these are passed through a gradient. You see here Sample Gradient, Sample Gradient, Sample Gradient for the baked GI. Basically, I have several gradients that I'm sampling, and with those, I'm creating the custom look that I'm looking for. The main light, one gradient that goes from white here to a certain shade of gray here. Then we have the shadow on the ground, which goes from white here to black here so it just goes from black, white to black directly. You can see it here. Where is the shadow? Subtractive shadow ramping, there we go. This one, I can just say that this is this shade of gray, save, and now it's a gray and it's not a black. Now you have full control over the lighting. [AMEL] Interesting. [CIRO] Put it back, save. Go back and there we go, and so forth. And then you have the additional lights. I want to show you how cute it is when we actually... What did I do here? Point Light. For some reason, the gizmo has... decided to go crazy. But you can see how the Point Light comes in and creates an additional ramp on the character, and then you have the specular that comes in. The specular is this little spot here, which is also ramped. [AMEL] That looks great. Still working on it. Grab the project and give us some input. Play around with it and if you come up with a better solution, we'll take it. [AMEL] Yeah. [LAUGHS] Again, Open Projects, right? [CHEMA] Yeah, exactly. [AMEL] Also, Ciro, since we are talking about graphics, we have a good question here: Are we using a GRP or URP or none? We are actually using URP, the Universal Render Pipeline. This allows us, of course, to use a lot of tools like Shader Graph because they are compatible with the SRPs, and we didn't need to use a GRP for this project because the graphics that we have, we think that URP is just as sufficient for that, I guess. Do you have anything to add, Ciro, maybe on this aspect? [CIRO] Yes. [AMEL] Yes. [LAUGHS] And we have, "How long will this project take?" This is another question. We foresee a good six months of work. We think that we will be done in March. And when I say done, we're talking about... Let me put my big face on the screen. We are talking about kind of like, and don't get me wrong, this is not a full game, we specified it in many places. What we are aiming for here is kind of create a vertical slice. [AMEL] Vertical slice. [LAUGHS] [CIRO] I really love my... [AMEL] Yeah, I love this move. [LAUGHS] But they removed it from the trailer. But yeah, Ciro used to show this in the trailer, but unfortunately, it was cut, so I'm glad he did it live now. [LAUGHS] [CIRO] We will have a... I can do it here actually. A vertical slice, which you can see it as a small game demo. Like, imagine you're launching a Kickstarter campaign or you're creating something which you want to take to a game show and you want to show to publishers, that's what we're trying to create here. The finishing line, we hope to get there around March. By March, we. [CHEMA] And... yeah, sorry. Tell me, Chema. Tell me everyhing. [LAUGHS] The other question actually, to continue on what you said is, "Will we be publishing these games?" Yeah, that's the plan. Let's see. If it turns out terrible, I will personally block the publishing with my body. [CHEMA] Yeah. [LAUGHS] But also, with the same body, I will make sure that it doesn't, so yeah, we hope to do that. And then with that, we also want to credit everyone who contributes on the project. I'm actually maintaining a super long list of people who already jumped on the code, on the art, but also people who review code, and people who put issues in, you will all be credited. We plan to credit everyone who puts their contribution in the project. Because it's all important, right? [AMEL AND CHEMA] Yeah. Amel, you mentioned the QA before, so towards the end of the project, we will do a lot of QAing and some people will just download not even the GitHub project, they will download the executable and put an issue on GitHub, and we will credit everyone. Of course, totally. And I'm looking here, some people are also asking if we decided the title yet. Guys, you're not late to the party. You can still contribute. You can go to the thread and you can contribute and give your name suggestion because as we said earlier in the stream, we are still making sure to fix the final idea of the game and scenario so we will decide the name just afterward. Feel free to go to the thread and suggest a name for the game. And it's super honest, I don't even have an idea of what kind of title, seriously. I haven't thought about it, and I don't have a favorite. The only thing I would say is that I want the pig to be named Hamlet. Hamlet. [LAUGHTER] [CIRO] That's my request. [AMEL] Yeah, I saw that. [CIRO] And that's it. [LAUGHTER] Otherwise, I'm out. I will try to take this into consideration when we review it. [LAUGHTER] Ciro just disappeared and... [LAUGHS] It's like... come back again. [CHEMA] We should continue. I'll just show you a few extra things on the Toon Shading. So where are we? Oh yeah, the outline, actually. [AMEL] Yeah, that's a good point. The outline is also part of the Shading. As you can see, it's like an extra pass on top of the Toon Shading. And I had a different Scene to test it out. The outline is basically done by having the Universal Render Pipeline output an extra pass with a texture that shows depth and normals. And I don't have a way to show the texture right now, but you will see Settings > Graphics... here, that the Renderer used in the pipeline, as you can see here, it has a Depths Normal Feature, which is like a new pass, which is outputting this texture. And I want to thank Alexander Ameye who made a fantastic tutorial about it on his website. I took a bit of that. This is also an open contribution. And, of course, he put it open as well. I didn't steal. Not this time. With that texture, then we can create this Outline. And if you see here, the Shader actually has two values. One is called Depth Sensitivity, and one is called Normals Sensitivity so you can individually control how much the depth and the normals affect the creation of this Outline. For example, if I were to go all in with the depth, you will notice that places where the depth changes, for example, the band on the head of the pig, create a black line. If I do the opposite, normals, then you will see the change only where the normals differ a lot. For instance, here on the attachment of the nose, you see a line. If I go with the depth, you see no line because this is not a big change in depth. But if you play with a bit of both, then you get some really nice result. We will need to tweak these a bit further. When you use this one, you combine it with the other Shader. If I go back to the Scene, Toon Shading, and I find the pig, in the Shader that I showed you before, which is the final version, here, again, I have the Outline contribution, which is multiplied on top of the Toon Shading, and that's the result that you get, right? [CHEMA] Mm-hm. [CIRO] And finally. Chema, tell me. [CHEMA] Yeah, and. Actually, I wanted to remind everyone that they can find this project in the GitHub if they want to play around with the values, see the Shader, or anything. Good. [CHEMA LAUGHS] And finally, I want to show you one final thing, which is some Assets which just came out from the Asset Pipeline. We're working with some artists to create some initial Assets. Again, we want to define the look, we want to define the direction. Once we have this direction, we can start accepting contributions on the art. One of the things I'm asking the artists to do, and they really hate me for that, is like simplify. Like, let's have only albedo so that people can just make a model and paint the texture, and then put it in the project. They don't need to go through any complicated pipeline. That's my request. And as you can see, we have these little rocks, we have this tree, which we're still working on, and they also sport a Toon Shading. They also have some extra details. [CHEMA] That looks really awesome. And then we have the pig, and you will notice that this is actually like the final version. You like it? [CHEMA] Yeah. [LAUGHS] [AMEL] It's so cute. I love it. [LAUGHS] The other one was a bit... It was okay. I think it was nice, but the other one was actually done very quickly. If I copy it and I put it in here, you can see the two cousins next to each other. [AMEL] Mm-hm. [CHEMA] Mm-hm. There we go. This was the original one, which was pretty nice, but it was more flat. [CHEMA] Yeah, it was lacking some details. Yeah. This is the final one, which has a bit more extra details, extra shading, so it's really nice. Again, it just came in so we're still rigging it, but I will push this to the repository pretty soon, and then you can grab it from the Assets. So yeah, this is the protagonist, this is the background. As you can see, it has no lines. It could have lines, but it has no lines. And now it's not working. Ah, yes. Outline Thickness. [CHEMA] Awesome. That's the idea. Yeah? [CHEMA] Awesome. What are the next steps now? The next steps... Let me think. Shall we show the roadmap? Yeah, we could. The next steps, I think, let me just give an intro, I guess. I would say, again, we've been working on the basics, on the Character Controller, on the style, we have art Assets coming in, finally, so I think the next few steps for us is going to be starting for real on the art, and, again, opening it to the community. I'm going to soon push these Assets to the repo. Sorry for the delay. And I'll update you on the forums about that, and then you can start to take them and dissect them, and start contributing and making your own additions to the game because we have a certain set of Assets coming in, but we would need more. It would be nice to have more. And I was thinking, actually, one thing that we didn't think about, because this is more or less like a cooking game as well, a set of kitchen utensils would be super cool. [CHEMA LAUGHS] [AMEL] Yeah. Like pots and frying pans, I think they're going to be super useful to decorate the environment since we have a cooking festival going on in the game. And again, if you want to know what I'm talking about, I'm talking about the story, which is accessible on the roadmap here. Ciro, so we see now the roadmap, right? What are you going to do now is show us the current state, and then maybe talk about what's coming up next, right? Yeah. Sorry, I wasn't showing the roadmap. I'm showing it now. So as I was saying, the next steps are these. We have next steps on the Code as well. We are working on deciding what to do about the State Machine. We have, actually, five or six PRs in flight about the State Machine. Super good contributions. They're very complex so they're taking me a while to figure out. But we have Proryanator, Neonage, kcastagnini also made one, there's a few of them. Now we need to kind of decide which one to take in and it's proving to be a bit challenging because we really need to make sure that it works, that it's a bit future-proof. But we'll do that. [CHEMA] Yeah, it's maintainable. Yeah, we'll do that, and then we'll start connecting the pieces, and we'll unlock more programming tasks. But I do have some tasks that I can unlock right now. Should I do it? [CHEMA] Oh, yes, please. [LAUGHS] Other cards to add. [AMEL] Showing your cards. That's great. [LAUGHS] Just give me one second. While you are doing this, we have a question: "Are we going to implement Dialogue for characters?" Yes, and there's a card there, tasks for it. You can find them, I think, in, I don't remember the correct deck, but I think it's Dialogue and Narrative. I think it's Design and Narrative. Yes. Design, sorry, yes. There are some dialogues. There's already a thread open for that. But don't forget, the dialogues are inherently connected to the story. Because we're reworking the story, we haven't started dialogues yet. But I think we have a good draft for the story now. You can actually go in and create some mayhem, I guess. [CHEMA] [LAUGHS] Yeah. I'll show you very quickly the private part of Codecks, which is this one. You see this is the public one that you see, and then this is the private, like the backend that I use. Now, I'm going to unlock a few tasks. To do that, I basically hid them here in the... as what do you call them... archived cards. I'm going to take and unarchive them. One, Audio system. I'm going to unarchive these ones. [AMEL] Whiteboxing, yes. [CIRO] One, two, and three. Whiteboxing, we're going to work on that next. Now that we have a vague idea of the environment, we can start whiteboxing some stuff. And then I wanted to also start working and discussing about skyboxes. I'm going to unlock these ones, and then this is a bit explorative, it's about the icons for the inventory, like what should they be. I'll unarchive this one as well. And then the Game logo, I archived this before so I'm just going to unlock it again. This is a bit of a long-term task, I would say. If we don't have the title, we are not going to be able to create a logo, but we can start making experiments on the art style. And then what do we have next? The UI Wireframing, Chema, this is your specialty, right? Yeah, I'm happy to do this as soon as possible, actually. I want to start working on that. Do we have a thread for it? [CIRO] Yes. [CHEMA] Oh, okay. [CIRO] I created it so it's linked here. Yeah, I'll discuss it with the community and see what they're expecting and things like that. [CIRO] And I think that's it. [CHEMA] Also, I think, it's... I don't know if we said it or not, but I think it's good if we say that we don't assign the cards to a person, we don't assign a task to a person, we assign it to the community if one of the community wants to partcipate on it. We don't say like, "You have to do it." It's just that if someone wants to contribute to it, we say that it's assigned to the community, and we start a thread for it for everyone that wants to work on that. [CIRO] Yeah. Very good point. Yeah, it's something to keep in mind. We can't accept everybody's contribution. We will have to choose at the end, but we encourage making a few variations. And that's actually why I always point out, number one, discuss, so instead of making it first, you bring your discussion. Number two, make small things because then you can see if they make sense. In some way, you also have a bigger chance to get in if you make a smaller thing. If you make a huge thing, then I and the team, Chema, Amel, we need to think about it for a while. The smaller you make something, the easier it is for us to approve it. It's not any kind of threat that I'm doing or something. It's just, that's the way it is, that's the way this project works. It's unfortunate, but we need to read into every single PR and contribution. And we have a question: "What is the license on all the code written and art created? If I see code or shaders I like, can I take it and reuse it?" Yes, you can because this project is provided. You find the license here in the repo. If you go here, you will notice there is actually just a regular Apache License 2.0, so it's a classic open-source license. And here you can see all the permissions and the limitations. Basically, what this is saying is, yes, you can use it for what you want, even for commercial work. You can't trademark it, so you can't trademark what we made. And you just... I don't remember what this is. But yeah, go read it, it's all written in here. Anyway, it's an unmodified Apache 2.0 License, which if you contribute something to the project, your something also becomes open source like this. Everybody else can also use it. It's like you give it me, I give it to you kind of thing. [AMEL] Great. [CHEMA] Yeah. We have another question: "Can we vote for contributions?" "Can we vote for contributions?" What does this mean? When you see pull requests, for instance, you can comment that or you can put a thumbs up if you want. As we showed earlier in the pull requests, let's open an example and you can see, you can react to each other's comments on pull requests, you can put some comments. Somehow you can vote if you want, like if you approve the idea, feel free to mention that, or if you have things to suggest or modify, you can do this as well, I guess. I would say it's also good to do it in the forums. In official discussions you can always do that. And by the way, I unlocked the cards but I didn't unlock the threads. [AMEL] Let's do it. [CIRO] Shall I do it right now? [CHEMA] Big reveal. [LAUGHS] [CIRO] This is all mine? Yes. [AMEL] Now it works. [LAUGHS] [CIRO] Approve Threads. Done. [AMEL] And you're good to go. [CIRO] Now, we can discuss. [AMEL] Press F5 to refresh. [LAUGHS] Press F to refresh, yeah. Cool. I think we're getting close to the end. Now, it's really the time for questions. If you have questions, some final questions on the project. I think we are answering the questions, I mean, throughout the presentation. I don't think that we have anyone. People are saying hello. Hi, everyone! [AMEL] Hi. "Can I participate as UX/UI designer?" I think you can if there's a card for it, yeah. I literally just unlocked the card. Where is this? In Design and Narrative. It's actually behind the tag, but you can see it here, UI Wireframing, so that's one way to participate on the conception of the UI. You're going to be challenging Chema. [AMEL] Yeah. [CHEMA] [LAUGHS] Exactly, yeah. [CIRO] You're going to be challenging this person. [LAUGHS] Hi. No, we're not going to be challenging each other, we're going to be working with each other, we're going to be contributing in the same task. I also see a question... I'm anticipating Amel. No, you did it. [CHEMA LAUGHS] "Will it be totally single player?" Was that the question you also were referring to? [CIRO] Yeah, so Rahul is asking "Will this game be totally single player?" Yes, it will be. We didn't want to complicate things too much. It would be super challenging to make a multiplayer game, because if you think about it, every time you want to try it, you will have to kind of spin up a server or have some players. For this first edition, we wanted to keep things simple, and we wanted something that you can literally, like in the middle of the night, I mean, it's never night everywhere, but you can just download and play on your own machine from start to finish. Even if you're new to the game, you just download the project or the executable, and I don't know why I have Amel on-screen as I'm talking. [LAUGHTER] And you test the whole thing from start to finish. In the future, let's talk, let's have a chat. [LAUGHS] Let's get to the end of this project, and then we can talk about the next steps and the next projects. Will be cool to make a multiplayer game, for sure. Yeah. Awesome. So yeah, if we have other questions. Yeah, the project is made in URP. I think we discussed it when we showed the Shader Graph. Yes. If you want to know which packages we're using, if you're curious, let's see, how do I show you this? I can show you the Editor, actually. Where is my Package Manager? [CHEMA LAUGHS] ♪ <i>Give me the packages</i> ♪ This one. Come on. Do you see my screen? Ah, there we go. I see it now. We are using Addressables, we still need to implement it for Asset loading, making builds faster. We're using Cinemachine, of course. It's an action-adventure, you want a camera that feels nice. We're using the new Input System. And actually, I have it here, I haven't used it for the demo, but the game supports gamepads and we want to make it like a central way of controlling the game. Awesome. That will be with the new input system? [CIRO] Yes. [CHEMA] Oh, great. Then we have Polybrush; ProBuilder and ProGrids to model things and whitebox; Settings Manager; TextMeshPro, of course, for the UI; we have Timeline because we're going to make plenty of cutscenes; and yes, URP, and that's it. And then we have the integration with the two... how do you call it? ID to make code editing better. [CHEMA] Awesome. [AMEL] Yes. This looks great. Great. Thank you, Ciro, showing us the Package Manager and all the packages that we are using. I think that one of the things in the contribution is that people don't need to upgrade the packages, and don't need to add packages, and we should take care of that just so that we don't have a lot of pull requests, push requests? I don't know. [LAUGHS] I'm not the one to talk about GitHub. [LAUGHS] Pull request. If for some reason we need to upgrade any version of a package, we will definitely announce this and we will do it from our side. Anyway, we are, again, on 19.4 so we're not chasing updates. We want to upgrade only if it makes sense, and if it doesn't break anything, and if it brings us some kind of improvement in performance or bug fix. But I don't think we will have a lot of issues upgrading things. That's the nice thing of staying on LTS. If we get to a point next year when it's like March and 2020 LTS is out, let's talk about it. Maybe we want to upgrade the game. But I would say let's focus on finishing it and wrapping it up, and then we'll talk about bringing it to a newer version, which will unlock like a playground to test everything that's new in 2020.4. [AMEL] Definitely. [CHEMA] Yeah. We still have a lot of people. That's nice. [LAUGHS] Wow, how many? I'm not sure about the number. [LAUGHS] No worries. I was just curious. Any more questions? We're getting towards the end. We don't have much more to show for now in terms of the project. Yeah, we remind you that we will be here in two weeks. We will have another livestream. We will talk about another feature, and we will show the steps that we've already finished and the new steps that we will do. Yeah. The road is still long. That's why this show is called The Journey. It's not Open Projects: The Instant or Open Projects: The Day. It's The Journey so it's going to take a while, which is the beauty of it, I think. Going back to one of the first questions that somebody asked at the very beginning, "What can I learn from this thing?" You could potentially not touch anything on the project and still learn from the whole journey and see how it goes. Just browse the forums and see the drama. [LAUGHS] [AMEL] Yeah. [CHEMA LAUGHS] We will give an update every two weeks through this livestream so if you just come for every two weeks, you can see what are the progress that we made. Or just watch this thing, exactly. That is a good point. You don't like to read? [LAUGHTER] We will vocalize it for you. Vocalize it for you and keep the best of the two weeks. [LAUGHS] [LAUGHTER] Nice. Yes. I guess we don't have any final questions. "Is it 2D or 3D?" It is 3D. It's 3D, yes. With the Toon Shading like we've shown earlier. I'll put some more concept art in the meantime as we take the question, even if it has just my dirty face on-screen. Now it has you as well. [CHEMA LAUGHS] Let's play. [CHEMA] Awesome. That looks so cute. And by the way, this is the chef. This is the... oops Come back. This is the resident chef of the town that you're trying to impress with your cooking skills. And this bunny here is the Bard Hare, which is one of your companions. You're going to fight these little critters in the forest as you're looking for ingredients and plants. And then this is an old concept art for alternative characters. This was an old concept art for enemies and Zelda-style enemies. And again, old concept art for the critters. When I saw old, I mean, just the first version, but some of these evolved into the second version. [CHEMA] Yeah. [CIRO] Cool. No more questions? I think people are asking about the name. You can contribute to the name in the thread. We are looking for the title right now. I remind everyone about that. Yeah, I think we don't have any other questions. I guess. And of course, if you have any question, you can ask it as well in the forum on the threads, so feel free. This is not the end of the questions. You can still ask. [CIRO] Actually, we're going to keep the stream going for another maybe 10 minutes, and then you can still hang out in the chat. We're going to actually answer some questions in the chat as well. But we're going to just turn off the cameras and start chilling, I guess. Somebody's asking, Code Monkey's asking if we will accept contributions made with Bolt. We're deciding about Bolt. Could be that we introduce Bolt. The other thing I want to say is if we don't upgrade the package, please don't contribute things with introducing Bolt into the project. We will make the decision and then once we decide that we have Bolt, yes, we will accept contributions with Bolt. And I think the doubt here is that things with Bolt are a bit hard to compare because when you look at the comparison view, and the comparison between two versions on GitHub, you don't immediately see what the code is doing because it's in the State Machine so you need to pull the code and check what's being done. While with code, you just immediately see like, "Okay, this line changed. They're doing this." That's I think where the question is coming from. There's a thread on the forums. It's called State Machine, I think. Go make your arguments against or for Bolt in there because that's where the discussion is happening. Can we start a thread for that? Do you think it's possible to do that? You want to start the thread for? To discuss either Bolt or not Bolt? I think it depends on like... [CHEMA LAUGHS] It's as easy as this. [LAUGHS] Do you want to create a new thread? [CHEMA] I don't know. I was wondering. [AMEL] ...trying to achieve. If it becomes easier to use Bolt, for instance, for State Machine or any other feature, feel free to just say that in the thread of that feature, and maybe we can decide if, for some reason, we need to integrate that, right? Yeah. People can create the thread themselves and start a discussion. It's fine. We're not shutting down any thread. The only thing we ask you is, if you want to create a thread for a task, make sure that there's not one already. And when I say one already, I mean the ones that have the Official tag. How do you know that? You go on Codecks, you open a card, and then you see if there's a forum thread linked here. If there's a forum thread, that's going to send you to the Official thread. [CHEMA] Mm-hm. [AMEL] Yes. Cool. We're three minutes from an hour and a half. Do we still have people watching us or am I speaking to myself and you? [CHEMA] I think we still have. [AMEL] People are actually watching which is great. [CIRO] Okay. I don't know if you still have questions, but I think we can start wrapping up. Can you actually hear the music? [CHEMA] I had 750... You had what? Yeah, I'm lagging. [LAUGHS] No, it's okay. I saw the stream speed going down. Okay, I think we're going to wind down, I guess. Yeah, okay. We'll still be there in the chat and as we said, you can still find us in the forums. Totally. Okay. Maybe it's the time to wrap up and say thank you all for joining us. That was really nice. [CIRO] Thanks from Amel. [LAUGHS] Yeah. Goodbye, everyone. [CIRO] Thanks from Chema. Thank you, everyone. And from me. Goodbye, everyone. Thanks for joining. It was super cool to stay together for such a long time. And again, we remind you, in two weeks, we're going to be live again. Same channel, same place, Open Projects: The Journey, Episode Two. [AMEL] Yes. [CIRO] Bye-bye! [CHEMA] Bye. [AMEL] Bye. ♪ [MUSIC] ♪
Info
Channel: Unity
Views: 55,411
Rating: undefined out of 5
Keywords: Unity3d, Unity, Game Development, Game Dev, Game Engine, Open Projects, open source, Chop Chop, game architecture, complete project, development process, gamedev, chat, chill, livestream, open-source, relaxed, c#, advanced gamedev techniques, gamedev tips, development tips, programming tips, advanced programming, patterns, gamedev patterns, game dev patterns, unity patterns
Id: O4N4s6BKNH0
Channel Id: undefined
Length: 101min 3sec (6063 seconds)
Published: Tue Oct 13 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.