Hey guys, i want to start making a game via Unity, but i feel like John Snow and dont know anything, so ive started reading a RTS Unity guide, well it works but only as long as i copy n paste the Code the Blogger gives, so i wanted to learn some coding first/parallel, but dont know excactly where to start. So ive started reading Javascripttutorials, but dont even know if thats the right thing to do. So i guess some advice would be nice how to get started with unity and coding, because most tutorials i find are more of a "Well you do excactly this now" without really teaching something.
First: better learn C# instead of JS, its faster Every object in unity, that you can find in scene or in hierarchy window are GameObject's In project window you see assets, source files. You can save GameObjects to files by creating prefabs from them. Then you can use it many times (trees, buildings, enemys, bullets) Everything in unity is based on components. You can see them in Inspector window. Every GameObject have Transform "component" that define wher this GameObject is in scene. Script need to be added to GameObject to work, it will be a component of this object. Just drag it on object in hierarchy window. This is basic of unity developement. I will write more when I will return to home from work (about 3h)
Do yourself a favour and do the unity tutorials on the actual website first, I've started and it is quite handy and explanatory
for the best start, am i supposed to start off with C# or straight with unity? It seems kind of senseless to try doing something with unity without knowing coding, thats why i went for JS in the first place And Oz, when u make another post dont forget to keep it nice and simple xD i have like literally zero experience with game devolopment (since i dont think RPK Maker counts = D)
Sorry, I was writing it from phone. Yes, I think you should start with C# (CS), don't waste time on JavaScript (JS). You can't do anything in Unity without coding. You can try to make levels or animations, but it will not "work", this will not be a game. First you need to decide what do you want to do. It's always better to make something, than just clicking and testing. Something that you want to achieve, some steps. They you can start to search how to make every element of it. But you will still needs to know basics of how unity works, and how to work with it. I wrote this in my first post, but you also should check some video tutorials. Check youtube for more of them. You need to always search for tutorials or posts on unity forum. Youtube and google is great for that. There are so many users of Unity, that there should be at least one answer for every question "how to make XXXX in unity"
Well go by codeacademy or khanacademy for some beginners coding. Doesn't really matter what language you use because it is all the same structure but just different syntax. For example, I learned java, but now I have been using a program which requires Basic coding, and it is almost identical barring a couple of syntactical differences.
Ah right, does it matter what tutorial? I kinda found a c# tutorial which is kinda nice, i dont know how much of knowledge i need to actually start getting serious in unity, i guess doing it parallel is the way. The problems with the Videos i found is, that it goes in a "Now you have do to it this way" kindasorta, without real explanation, just being able to copy excactly what he does. Mby its wanted too much, but in the end i want to write my own code, and not, like, asking "how do i do this" and copying what people throw at me. How much time do people usually need to get a good grasp on something like c#? There was a really fun JS tutorial, which after every part it gave me the chance to test what i did in an extra window, but after like 5 hours of progress i managed to "Make this button change a text" ~~
Re: Coding Asking if you should learn C# before learning Unity is akin to saying "I want to learn to swim before I hop in the water". You can read books on generic programming, but the best way to learn is to do. Often, the initial learning people do for coding is copying someone else's code and learning how it works. Picking it apart line by line, etc. There are also beginning programming guides for Unity, which teach you C# in the context of learning Unity. Best of both worlds. If you want to go a Dietel & Dietel approach, you can, and there's certainly no harm in it, but at least for me, I always found learning a new language easiest by hopping into some tutorials, starting to understand the code, and as you learn that, you'll start to learn how to write your own. All that said, understanding core concepts like data structures and algorithms is a good idea, and isn't necessarily something just tutorials will teach you. That's when a solid C# book can help. I would reiterate that C# is the better language, but.. there are a lot more tutorials out there with JavaScript (including a lot of stuff you can learn on CodeAcademy and similar sites). Once you understand the basics of coding, learning another language becomes much easier. Find what works for you. But I agree with Ozone - learning C# and learning Unity don't need to be separate tasks. You may even find you learn faster learning both at the same time.
Also, I read an article awhile back, have no idea the source anymore. But basically there are two ways of learning to code- using existing code and then working backwards. You can do this by deleting specific lines or bits and seeing what breaks. Then try editing in your own bit. Another is starting from the ground up, by learning all the basics like the logic structure and looping and decision statements and all that and then getting into the actual code. Each approach has it's benefits and drawbacks you just need to find what works for you. Remember as well there is the API documentation which shows what each function and method does(obviously not including your own functions) which will help your understanding