As a creative I tend to stack a lot of projects on my plate. I find myself often bouncing from idea to idea as the motivation takes me. Whether that is learning new programs, technologies, and techniques, or suddenly having an idea in my mind that I just need to get out and make real. This can lead to major problems, like some projects have a higher priority than others, and they may not be the project you want to work on at the time. You might get several projects in and realize you never finished (and may never finish) one of your earlier ones. So what can be done about this, and what should I be doing? I'm definitely not the end all be all when it comes to this kind of thing. I struggle with motivation and project management just as much as if not more than the average creative; but I recognize this fault and I've been working on a few ways to combat it.
The first way I have begun practicing is creating a list of each goal I want to accomplish for the week. The important part, for me at least, is making sure this list is as specific as possible while not being too ambitious. Ensuring that your list is easily achievable for the week will help manage any stress and anxiety you might have about completing it. So far this has been the most motivating way for me to get things done.
The second step I've started is creating more deadlines. Even for projects that may not be very high priority. If you have a goal you want to complete, but its not imperative that it must be done within the same week as the rest of your list, add it anyway and give it a deadline. This is an ever shrinking reminder that you want to get this done. Keeping track of your progress on more important goals will help you find the time to fit in those lesser ones somewhere.
Third is have an accountabilibuddy. Talk about your goals, and pick a time to go over them with someone each week. It is a lot harder to put off something when you know somebody else will be checking your work. You not only want to prove to yourself that you can get your work done, but its rewarding to show someone else as well. This person may also have valuable suggestions on how you might better manage your workload, as having an outside perspective is always important with any kind of creative endeavour.
What about that inevitable monkey wrench? You know the one, it always comes sooner or later. Allow me to regale you with an anecdote from my very recent personal life. You may or may not know that I am currently going through programming classes, while simultaneously working on my own indie game, applying for internships, and also trying to find time for animation practice. There are a lot of goals I could potentially fit into one week with that kind of life, and for the most part I had that goal list set reasonably. That is until finals week started. Always sneaks up on me sooner than I realize. Suddenly my schooling, which already took a good 40-50% of my allocated goal time, has been turned up to 11 as I finish the final 2 weeks of classes. This has made it pretty easy to fall behind on the rest of my goals.
So what do I do in this situation? I'm still figuring that out for myself, but I can tell you that each step I listed is like a failsafe for the previous one. If my list was too ambitious for that week, I'll push back the tasks I didn't get done and add a deadline for when I WILL get it done. Having someone to talk to about it, whether that's for helping find a new way to manage those expectations, or just to help keep me from beating myself up over it, is a huge help. The final piece of advice I can give, and one that I've struggled with all my life, is don't be afraid to ask for help when you need it. I can't pretend I know what is best for you. I barely know what is best for myself. So in the end let me ask you for help now. Let me know that kind of techniques you use to stay on task and keep yourself motivated. Every perspective is worth hearing, and there is always more to learn!
So far my experience in Unreal Engine 4 has primarily been blueprinting. It is a visual programming language that is very user friendly and approachable for people who might not have much programming experience. That isn't to say you don't need to know how to program to use blueprinting. Although blueprints cover your bases as far as syntax and command compatibility, you still need to think like a programmer. You need to keep in mind the order of functions, logic, math, casting and every other staple any other language would require. Where blueprinting shines in my opinion though is in its simplification of the learning process.
Learning a new programming language and how it can be used within a game engine can be an extremely intimidating step. Unreal blueprints let you dive in and start fitting functions together like a sort of puzzle where all the pieces are somewhere in the box, you just need to find them and figure out where to place them. Transitioning to a completely text based programming workflow can seem very daunting at first, but after several years of developing games via blueprint and practicing various different programming languages in school, I think I'm ready to begin dipping my toes in and utilizing what I've learned in a more practical way. Starting by learning C++ for Unreal Engine.
Why learn C++ if I can do just about anything I want in blueprints anyway? Well both blueprinting and C++ have their strengths and weaknesses. The general consensus I've gathered from my research is its in my best interest to learn how to combine both. Blueprinting seems to be the favorite for rapid prototyping and getting things done quickly when there is a blueprint ready way to do something. C++ seems to be the favorite for iteration and more easily adjusting code that you know is going to need lots of tweaks and changes. I can easily see why this would be the case. Blueprints (especially large complex ones) can start to get messy, unwieldy, and difficult to read. I often spend a lot of my programing time moving nodes around and untangling wires so that their flow is readable and I don't get lost myself. I find jumping between sections of written code to be a much easier task when trying to suss out logic issues and mistakes.
So this is where my journey into C++ for unreal begins. If anyone has any experiences they wish to share on the subject, or any tips/tricks/suggestions, I'd love to hear them. What do you think about blueprints? Were there any resources that made learning C++ for unreal easier for you? Let me know!