My attempt at the obstacle course :)

That makes a lot of sense actually to come back round to Brackey’s videos after the course, as he’s bound to have lots of other golden nuggets of Unity wisdom within them which will also come in handy :slightly_smiling_face:
I really love the structure of the Unity course so far with Rick, Ben & Sam. I like the way they strip away all the completed stuff and present each concept in such a way that’s fun to learn. If I’m watching videos with too much talking and little enthusiasm, I’m out, lol :laughing: another nice thing is the time for each video - Just the right amount so you’re not learning too much at once :slightly_smiling_face:

I hear you man. I much prefer to have a good understanding on how something works before resorting to using a pre made plugin to do the task. You get so much more control over things when you can do it yourself. There’s nothing worse than when you’re using a plugin which lacks a necessary feature. That being said however, plugins like Rewire are great when they solve a problem which, although you could do it yourself, it may take a bit longer so it’s nicer to just use a plugin at that point :slightly_smiling_face: I’ll definitely check out Rewired though, it sounds like a great choice for implementing multi-platform controls :+1:

I’m definitely up for the collaboration thing too man, Slack sounds like a good choice :slightly_smiling_face: it would be good to tackle issues together and share progress etc :slightly_smiling_face: :+1: I had a look and it looks like currently, there isn’t anything we can use on gamedev.tv but I like Slack anyways. Haha, I remember the conversations with Slackbot too, lol

Great attempt! It’s looking good!

2 Likes

Hey thank you man, I appreciate that :+1: I definitely want to revisit it at some point in the near future and improve on it I think but hopefully it’s good enough for now :slightly_smiling_face:

Hello everyone, sorry for interrupting your amazing conversation, I just want to throw a little tip.

That is quite accurate, I just want to add something that is good to know. Classes are not necessarily components, the two can be unrelated, keep that in mind because later you’ll encounter classes that are not attached to objects (and still work in the game), or scripts with multiple classes in them, this is far more advance but you’ll get the hang of it as you go, just keep it in mind so you don’t have a hard time understanding this later on.

1 Like

Ah brilliant, I was unaware of that one :slightly_smiling_face: definitely something I’ll bear in mind moving forward, thankyou @Yee Would that have something to do with being able to call other classes from within your class and so on? If so, that sounds like it could be really handy in terms of keeping things organised etc.

You could certainly use it that way, but I couldn’t figure out a scenario where that would be useful. I wrote some ways people use them, just keep in mind that this is advanced stuff. Keep reading at your own risk, especially if you are curious, you might end up in a very, very deep rabbit hole.

Classes that don’t inherit from Monobehaviour (which is the class that turns a script into an attachable component), can be used in several ways and you have already encountered some of them:

  • Create your own structs. To put it simply, structs are “complex variables” that can hold many types of information, you have encountered them in the form of Vector2 and Vector3, these are 2 or 3 floats put together, but you could create one that holds a string, and 2 floats, or whatever you want. For detailed information click here.

  • Creating your own libraries. As far as I’m aware, you cannot directly expand the Math class, at least not in an easy way, but you can create your own Math class that contains formulas not included in Unity’s or System’s math class. This helps you avoid writing the same code every time you start a new project, classic libraries include Math, Sound, UI, and so on, things most games out there have.

  • Sealed classes are great for something called the singleton pattern, which allows you to create a class that any class can access without attaching it to an object in the scene. Really, really powerful stuff, but a lot of people consider this bad practice, so it’s not used very often.

  • There are other sorts of classes that do not inherit from Monobehaviour that are “exclusive to Unity”, they can be used to create something called a Finite State Machine, this inherits from StateMachineBehaviour, this allows you to create really cool AI systems.

There are many other ways classes can be used, they are quite versatile, you’ll get the hang of which, how, and when to use them as you keep experimenting and getting more experienced, also, don’t use them just for the sake of it, if the project you are working on is simple, then keep it simple.

1 Like

This is really good advice and very useful thank you. I’ve heard of the singleton pattern being pretty useful for keeping track of game state throughout different scenes etc, which does sound like it may come in handy :slightly_smiling_face:

Thanks again for the pointers there, I will definitely make note of these to come back to them at a later time, as you’re absolutely right, I could see myself going right down a rabbit hole easily with these, lol.
Thanks again man!

1 Like

Glad you find this useful, if you need anything don’t hesitate to contact me here on the forums.

1 Like

Thank you very much @Yee I’ll be sure to do that :slightly_smiling_face: :+1:

1 Like

@Yee Hey Yee, lots of good information there, thank you. It’s helpful and I will definitely keep these things in mind as the knowledge increases. I have a feeling it will take awhile to make these connections. I think this is part of my confusion though, not being able to see the larger picture of how things work in C# first. Somedays I wonder if it is a good idea to take a course in C#.

1 Like

@Dan_Miller

Nice one Dan, just joined the channel now, see you there buddy :slightly_smiling_face:

1 Like

Privacy & Terms