Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

OK where do I start? C# ?

Discussion in 'Getting Started' started by stocode, May 21, 2023.

  1. stocode

    stocode

    Joined:
    May 21, 2023
    Posts:
    2
    A warm greeting, for educational purposes I want to create a simple game that I have in mind for a long time. I have no experience with these programs but I'm already studying the structure of the program in full immersion. Sure it's hard at the beginning and the instinct would be to give up but I'll try to move forward. My question at this point is very direct from what I see the fundamental part is the code and probably C# if I'm not mistaken. To study C# specific to unity where do I start? I would like to focus first of all on creating a character and giving him all the movements, the rest and the scene will come later. I have to give him the ability to move in any direction and grab onto and off structures, he must use weapons and know how to punch and defend himself. Where do I go to heal and where can I study all this but in a concrete way without wasting time? Thank you all
     
  2. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    4,019
    Unity has it's own learning portal: https://learn.unity.com/

    Of course there are numerous tutorials on just about everything from a number of people, most of it free. You just have to pick what seems most helpful to you.

    Do kill that thought about not wanting to waste time and/or trying to learn exactly what you need to know. That's just not how it's going to work out. Building a game is a complex process that requires a lot of knowledge and there's many ways to solve the same problem. That "waste" is part of the learning process.
     
    stocode and DragonCoder like this.
  3. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,001
    You're on the wrong website.
     
    stocode likes this.
  4. DragonCoder

    DragonCoder

    Joined:
    Jul 3, 2015
    Posts:
    1,459
    Do you have any coding experience at all?
    Since otherwise I fear if you approach this with a game that has this many mechanics like you described, that will end in frustration. That simply cannot be your first ever game, let alone software in general.
     
    stocode likes this.
  5. kdgalla

    kdgalla

    Joined:
    Mar 15, 2013
    Posts:
    4,355
    stocode likes this.
  6. stocode

    stocode

    Joined:
    May 21, 2023
    Posts:
    2
    I've always studied the indispensable to do what I needed and I've always succeeded, not complex things. I've had experience with vb net and python and some websites but always for the purpose I needed then I didn't delve into it. But every now and then I need to try again because it's really rewarding. Thank You
     
  7. BIGTIMEMASTER

    BIGTIMEMASTER

    Joined:
    Jun 1, 2017
    Posts:
    5,181
    there are probably a lot of "make a game" tutorials similar to whatever your idea is. I'd do all of those that I could find, then start working on your own. Whenever you feel like the way you are solving a problem is too much work - do some research to see if there's a better way.

    this way you avoid getting in a stasis where you are waiting on some magical day when you are "ready". You might get your game finished before you even feel like you know what you are doing.
     
  8. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,321
    Go to unity learn and work through tutorials.
     
  9. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,509
    C# used in Unity isn't a subset of C#, it's a specialisation. If you skip learning the basics then you're just asking for trouble.

    If you don't know how variables, statements, branches, loops, functions, and classes/instances all work then jumping to Unity- or game-dev-specific stuff is running before you can walk. I believe that the Unity Learn site covers those things, but haven't checked in a long time.
     
  10. dogzerx2

    dogzerx2

    Joined:
    Dec 27, 2009
    Posts:
    3,960
    Learn the absolute C# basics, and then jump right into Unity stuff. Because you can go on for a very long time learning C# and you're never truly "finished" with.

    And what you want is to learn as you go. So if you're doing some tutorial and you see something you haven't seen like Input.GetButtonDown("Fire 1") you can just go to https://docs.unity3d.com/ScriptReference/ and fill the gap. And you learn as you go.
     
    BrandyStarbrite and angrypenguin like this.
  11. MadeFromPolygons

    MadeFromPolygons

    Joined:
    Oct 5, 2013
    Posts:
    3,875
    Yeah, its crazy how many juniors I have worked with genuinely believe that the Garbage collector is a unity thing, and not a C# thing. The moment you start talking about the heap and large and small object heaps it just goes over their head.

    OP You have to learn c# if you want to use unity with code. You can sort of get by without knowing C# if using something like bolt, but to be honest you still will hit hurdles very quickly that you can only solve with the knowledge of how the code works.


    So just bite the bullet and learn regular C#, out of most languages its really not that bad.
     
    Ryiah likes this.
  12. AngryProgrammer

    AngryProgrammer

    Joined:
    Jun 4, 2019
    Posts:
    435
    My Unity 101:
    https://learn.unity.com/project/beginner-gameplay-scripting
    https://learn.unity.com/project/intermediate-gameplay-scripting
    https://learn.unity.com/pathway/junior-programmer
    https://docs.unity3d.com/ScriptReference/index.html

    It should be enough to understand basic concepts to make first own prototypes without copying and pasting code. The rest is working with the manual, getting experience from each project, and exchanging that experience with others. I realized the last point too late, and it's like a booster. After a year, or two you still can be surprised that you don't know everything.

    Of course, nobody stops you from being a generalist in all Unity parts. You can expand your earlier prototypes outside of primitive shapes, and add some 2D or 3D artist skills, etc. Set some goals, like a half year for training scripting.
     
    Macmilds likes this.
  13. RichAllen2023

    RichAllen2023

    Joined:
    Jul 19, 2016
    Posts:
    1,026
    Have a look on YouTube for tutorials, the official tute projects on here are at least 2 years out of date and mostly don't work.
     
  14. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,509
    I still use knowledge I developed far more than 2 years ago on a daily basis. A beginner really doesn't need to be messing with the stuff that's in flux.

    That being said, good tutorials tell you what version they're written and tested on, so do make sure you follow along with a matching version. Most projects don't use the latest.
     
  15. NakedUnicorns

    NakedUnicorns

    Joined:
    Feb 22, 2023
    Posts:
    11
    I would spend the first 2 - 4 weeks just learning the interface with just about no coding at all. Then when you feel 100% comfortable with using Unity, I would start with the C#