Hi there, I’m trying unity engine and I’m loving it XD.
I love programming and JavaScript is really easy. However I’ve difficulties with scripting in fact I still need to acquire the “programmer’s mood”.
Do you have some suggestions to acquire it? :roll:
Suggestions, helps and so on would be appreciated =)
I moved your thread here to Gossip and out of Teaching as that other forum area is where folks can discuss delivering educational materials about Unity whereas yours is more from the “learning/motivation” end of things.
With that in mind, my suggestion for you is to envision some small scale tasks, projects you can achieve, complete and then build-upon in a series of steps. Why is that important? I think it’s important as a sense of achievement and accomplishment go a long way towards motivating me personally. As I took each of those first (small) steps I was given more confidence to take other (larger) steps, and as I built my skills I built that “mood” from the ground up. That’s my quick opinion, I’m sure others will chime in with theirs.
Movies work for me. Seriously, going out to the theater, popcorn, the whole thing. Especially in the summer.
I exist in two states-- focused and distracted. When I’m distracted, the movies help me clear my head, and then I can get focused again.
Also, along the lines of Higgy’s recommendation, think of the smallest thing that could possibly work, then take a small part of that and work on it. Just make something useful that you can see work. And then extend from there, a little bit at a time.
Its often hard, when you’re the designer, producer and responsible for all the code, to shift from the macro to the micro, but all the work has to be done a line of code at a time.
Start with your main character, maybe, don’t worry about the levels or whatever, just make a plane. Then make the character move. You don’t need the model for the character, I use circles and triangles and boxes initially. I get the camera to follow the character. Then I might work on a little bit of level design to implement a feature, then test that feature. Add abilities to your character. Then make the simplest possible enemy. etc. etc.
Use the iterative / always-ready-to-run-the-game nature of unity to your advantage in this way-- seeing things work helps keep the focus on making new things work.
I think one of the best things a programmer can ever do is to not program. Seriously, step back and just think. Spend a couple hours breaking a simple game into classes and methods on paper. Don’t go near the computer until you pretty much know the names of every method in your game.
After I have thought out a solid design, I’m brimming with programming anticipation.
It is really nice being able to program without any hickups or snags. You get this nice checklist of features to glide through, as each one gets checked, you are a concrete step closer to a complete project.
This is good for unlocking your creativity and it is also an essential programming skill.
I think that the two of you above hit on a very important point and that’s to “step away” at times. I know that in old school days (ahem) it was “step back from the chalkboard and look at the problem again”. Some times it takes a little defocusing to make everything clear again. See a movie, go to the park, do something on paper (design sketches, code flow, etc.) and away from the keyboard…
thank you guys, I’ll try watching a film or something else to “clear my mind”(XD) and\or I’ll “step back from the chalkboard and look at the problem again”
thank you =)
I join all the advices given here, and will add one that works really great for me :
Just make yourself want to play your game.
Really, just create your own reality.
Imagine yourself playing that game which would have all the best features you always wanted to experience.
Then, if you create excitement, even if it is based on dreams, all the worst burdens of programming will become something necessary for you to achieve that excitement.
And then you will have no problem to put your hands in the charcoal.
My advice… write out the details of what you want to create and flesh them out as much as possible before writing any actual code.
Most of the time, a lack of planning will usually result in you opening a new project, only to then stare vacantly at a blank screen for hours on end trying to figure out what you’re supposed to do next.
On the flip side of the coin, however, simply experimenting with small ideas in Unity can inspire even greater ideas as you see them in action.
Finally, if your game has an actual “story” to it, work out the details of your story and characters first, then code to make it happen. It’s better than getting frustrated in the middle of development because you overlooked some important detail.
My suggestion is to go on the wiki unity page. Pick a script there and rewrite it exactly the same, line by line. If there is a mistake the debugger will tell ya. You do that 1h per day. In months there will be a difference in you way of programming. It can become like a hubby.
It’s funny, but it’s true. Coffee definitely helps me program better and more enjoyably. The only downside is the having to hit the bathroom constantly.
I seriously recommend getting a work area where you have a coffee maker, exercise machine, computer, and bathroom all right by each other. The increased blood flow from exercising a little bit between writing every few lines of code really helps to get through the next few lines. The health benefits of the exercise also keep you out of the hospital, which ups your life productivity. I like using a Bowflex, but even a jump rope will do.
I also recommend eating a ton of flax meal. All essential nutrients will help you think better, but Omega-3 is especially important. You can get it from all kinds of sources, but buying your own flax seeds and grinding them every day is the most cost-effective method.
Also, drinking just coffee is a bad idea. Especially if you get a lot of oxalate otherwise in your diet, (which I do, for example, because almost all of my food is based on soy), you need to make sure that you don’t get calcium oxalate kidney stones. Kidney stones are a terrible barrier to productivity. If you do get a kidney stone from drinking so much coffee, just drink a ton of straight lemon or lime juice, and you should destroy it quickly. In order to prevent stones, though, drinking a ton of water mixed with lemon or lime juice should work nicely.
So really, to get in any productive mood, keeping your health up is very important. That, combined with having a clear goal for “what to program next”, gets me in the “programming mood”.
a truck-load of coke zero or any other beverage with lots and lots of caffein, but try to avoid tea. Tea makes me tired, can’t tell you why.
hours and hours of monotone music on good headphones, preferably closed ones (to shield you from environmental noise), to get yourself into a state of meditational concentration. I mean it! As nerdy as it sounds, but I can rise above myself when listening to the soundtracks of Star Trek. Preferably Star Trek 1, 2 and 11. 8) Pirates of the Carribean also works quite ok. - Sometimes I start working, put on this music on repeat, and “wake up” half a day later, realizing that I just did two days worth of work. It’s kind of like a hypnotic trance or something. It doesn’t work all the time, but when it does, it rocks!
try to avoid running TVs or anything else around you that may draw your concentration off your screen and work.
…and finally, as mentioned above, the mother of all hints:
if concentration fails and you are not longer able to see the sollution in front of your inner eye: Go and take a leak. Seriously. It is important enough to be mentioned multiple times: Change your perspective when you feel like you are faceing a dead end. Go take a leak, cook dinner, take your dog for a walk or whatever you feel like doing, as long as it takes you and your consciousness away from your work - and let your subconsciousness solve the problem for you. The solution will occure to you when it is ready, just like that.
Thank you all guys (some suggestions were really funny XD): I’ll try writing down what I should program: “how do I solve that problem?”.
However, I think I should keep studying with Deitel’s book “C++ How to Program” too…I stopped studying it at page 85 but it has 700 and more pages xD