>> [MUSIC] I'm working currently at Unity.
I've been here for seven years now.
I work as a Developer Advocate,
which basically is helping developers in the world
to succeed at making games or operating games.
Yeah, I've been making games my entire career.
That's the only thing I know.
That's me, in a nutshell.
>> That's awesome. Can you tell me a little bit more
about what role you
take on making games and what your day-to-day is like at Unity?
>> Yeah absolutely. Before joining Unity,
I'm a programmer using C# most of the time,
I used to use XNA.
Not sure if you remember XNA.
>> I never used XNA.
>> But then I discovered Unity and I started using
Unity with C# and Visual Studio.
At Unity, I don't necessarily do coding eight hours a day,
what I do mostly is work on content and materials to help
people understand how to use the engine or use the Unity services.
My day-to-day is basically,
play around with new tech,
play games from our community. Yeah, it's pretty fun.
>> That sounds like a pretty good job.
>> It is. Yeah.
>> Cool. That sounds like fun.
To give you a little bit of background on myself,
I'm also a Game Developer. I'm an Indy.
I do all different parts of it,
including the programming, the art side.
I mostly work on first-person step 3D, more realistic.
I wanted to talk to you a little bit about some of the tools in
game development and how the ones from Microsoft,
like VS Code and Visual
Studio and how they integrate in with Unity.
I love doing actual code.
I know you can make games
with visual scripting and that kind of thing,
but I really like doing the coding side.
I know you said you use C# as
well of course, if you're using Unity.
Well, I guess there's visual scripting in
Unity now too. Have you tried that?
>> I haven't tried that.
I'm pretty excited about the possibilities of that,
particularly for people who don't know how to code or maybe
they feel like they don't want to learn
the syntax of coding and they just want to create something.
I think that's great. As you,
I still feel like I want to write
code and have control over those things.
But I used to be the same way with
Shader Graph and now after using Shader Graph,
I really don't want to go back to coding.
I just use the graph-based tool.
It's great to hear that you're also working in games,
that you work on all the sides of development.
You're also an artist, you also do those things.
>> Yeah. I've been doing all the different things.
Working via for the 3D stuff substance painter, that thing.
>> I wish I could do all those things because-
>> It's nice because when I need an asset, I can just go make it.
I don't have to look for it or wait on it.
With coding, I use VS Code.
I have tried Visual Studio.
I have heard that it's way better for debugging,
which I'll get to in a minute.
What editor do you usually use yourself?
>> I've been using Visual Studio ever since I can remember.
But even from the times of early days of Unity with mono,
I think it is MonoDevelop,
I preferred using Visual Studio.
I've used VS Code from time to time,
particularly when I'm on my Mac,
I tend to use VS Code just to see what's new,
but I usually use Visual Studio, not VS Code.
I think what I use it for is mostly just doing the coding,
having the IntelliSense and some debugging.
>> Yeah, for sure. I have tried a couple of
other engines and different languages within it and I
was not expecting it to give
any recommendations because I was so
new to it and I didn't really know what I was looking for it,
but I was using Tabnine which is similar to IntelliSense.
There's also Kite, which are
these AI-driven code completion tools.
I was using not too longer Lua.
I was trying to learn Lua.
It was finishing my code and
reminding me of the stuff and different ways of writing things.
It was really cool to see it work in
different languages outside of one that I'm more familiar with.
>> Yeah. Can I ask you
which other engines have you used for game making?
>> I tried Core a little bit. That was interesting.
I haven't yet tried Unreal and I haven't yet tried Godot.
I don't know I like Unity. I'm happy.
I don't like to try other engines.
It works well for the type of games I'm making.
It's also like I'm so familiar with
it now that I don't want to have to relearn anything.
I like it how it works.
I don't want to mess with it.
When you're coding and you're making games in Unity,
what type of extensions do you
use with either VS Code or Visual Studio that you like to use?
>> That's a good question.
Besides sometimes using the GitHub integration
and sound like shortcuts,
I don't think I have other extensions on Visual Studio.
Yeah, maybe you can recommend me some maybe.
>> I have mine. I have VS Code decked out.
I have lots of different code completion tools.
I have other C# and Unity extensions just to give me
little tips if I'm forgetting or if
I'm trying to remember something, it's there for me.
I have the Tabnine which will help me
remind what I've named things as well.
I also have a really fancy theme installed but it's
old or it's the SynthWave theme.
It's SynthWave vibe.
It glows, it's transparent.
It also has flames popping up as I type. It's amazing.
>> I've seen another one of that as you type also it has
some particle effects and you can configure those.
>> Yeah, that's what I've been using for the flames,
you could also have it.
>> That's the one.
>> Can you tell me a little more about how you would
set up debugging in Visual Studio,
with the breakpoints, whether you
edit in the editor and play mode or even.
I have only done a little bit about where you build a game,
and then you still have the editor open and you can
debug the actual build project as you have Unity open.
Can you tell me the best way to go about that.
>> It's a great and interesting question.
As part of my job, I don't really publish games.
I usually just work in the editor.
I attach the editor to Visual Studio at the breakpoints,
I inspect code,
I inspect the results within Visual Studio.
That's what I do from time to time.
I also do debugging with the build version of my game,
also connecting to Visual Studio.
Also part of the debugging experience I guess that I
have includes the provider other extensions
like Render Dog for inspecting the rendering of
the game depending on the platform
that I'm targeting I might use other stuff.
But yeah usually for code,
for memory is mostly Visual Studio and the Unity provider.
>> That's great. Thanks for going through that.
Do you have any tips,
while I've got you, for people who are new to Unity?
>> The most important tip for
anyone is our day should start small.
We shouldn't target in making something too big because
game making is not necessarily difficult as making I don't know,
as doing a heart transplant or something like that,
but definitely is not also extremely easy.
You will need to learn C#,
you will need to learn Unity,
and then you will need to learn Maya and Photoshop.
Suddenly you have to learn 10 different things at the same time,
if you want to have a 3D model.
I would recommend people to start
small making clone of an old game,
the Classic Tetris or Asteroids.
Otherwise, if you say,
I want to learn game making,
I think nobody ever learns everything needed to make games.
That'd be my advice.
Also keep trying at least allocate
one hour every day or as much time as you have,
continue working, continue creating.
I'm not sure if this happens to you Lana.
But if for any reason I'm on vacation and I
stop coding or I stop using Unity or whatever,
my brain gets a bit rusty and
takes me some time to go back into the mindset of okay,
this is what I was doing.
It's better to invest 30 minutes per day than
investing eight hours in
a single day per month or something like that.
>> Those are both really good tips.
Starting small as always.
Anyone who's made any game or
worked in it at all has always gives that tip,
because it's so easy to get ahead of yourself.
>> I've seen dream too big and
I start implementing something and I'm like, "No,
this is not going to take me the month that I was planning,
it's going to take me way more time."
>> My whole life, in some cases.
>> Let's not forget that.
>> Yeah for sure. Then the second tip was good as well.
Not too long I was spending a lot of time doing art,
working on characters and I didn't do any coding for a while.
It took me a minute to get back into it.
I think that's a great tip to
keep it up and not go too long without it.
>> You don't need to use everything,
but also get constant updates on what's going on.
Not only Unity, in the world of technology things move
so quickly that you have to be always up to date.
>> Speaking of, I wanted to ask you,
do you have any tips for people who use Unity regularly
to stay up to date and to keep up with new features.
I know there's a lot that have been added.
Since I've been so focused on my project,
I haven't really taken the time to learn
any new features do you have any tips to stay up to date?
>> Yeah. I would say before updating,
always evaluate the release notes
and learn if it makes sense for you to operate.
Because while we do our best to
make sure that we don't break anything,
there is always going to be something that might break.
One thing I'm going to say is try to always
stay with the latest LTS version,
the long-term support version.
Right now we have 2020 LTS.
Also if you are using any version control systems
such as GitHub or similar I would say well,
branch out, operate the project,
see if things are working,
if there are no regressions etc.
Then evaluate if you want to merge that branch.
>> That's definitely all good tips on that one as well.
Is there anything else you wanted to share or add that's on topic?
>> I would say definitely and I recommend
these to every person that I meet.
I would recommend everyone to learn how to make games
even if you're not interested in
making games as a professional career.
One, it's super fun,
two you learn about coding.
I will say, try it.
The tools are free and Unity is free.
Other engines are free.
The Visual Studio it's free.
I will always say
that if you want to get into these professionally,
also think about game making as a business.
Because it is important to have a monetization structure,
or at least something that will
bring money back to you unless you're a millionaire in that case,
yeah, don't listen to me,
but if not think about that since Day 1.
>> Yeah, great tips again.
I say the same thing I know I tried learning to code.
Well, I was doing web development.
I was trying different languages and just going through
and learning it is boring.
But once you start seeing things moving
around and you can interact with it,
is such a fun way to learn how to program
so definitely second that.
Coming up with a monetization strategy is
also a great tip that I don't think gets talked about a lot
because people are so interested in their vision
and the art side of it and completing the project
that the monetization is actually something that should be thought
about right off the beginning when you're coming up with the plan.
That's a great tip as well.
>> I don't want people to think that this is not an art or
that we don't want people to express themselves.
If it's just a hobby and you
have another job and you don't care about that,
then that's a different story.
But most of us we want to live out of
making games so it's important to think about them.
>> Yeah, absolutely. Well put.
Cool. Thank you so much.
It was a pleasure meeting you and it was a pleasure getting
to chat with you and we'll see you later.
>> Thank you.