ye i know unity quite well but i just find it hard to start? if u know what i mean? i fall of quite easily and start doing something and create something fine but then i abandon it?.
i feel like i am missing some things here and there but in general should i be worried? that the graphics is utterly crap? or should i focus on the very core itself? mechanics, the engine ?
Okay, you might need to step back when you post somethingand rework your wording and sentences a little bit... it is hard to understand what your exact questions are here.
Anyway, trying to answer the way I understand it:
"Unity is too hard to learn" - Well, yes, as said, its quite a steep learning curve at the beginning to get started in a modern 3D engine. Its more than just some C# basics and some graphics theory together... there is a whole bunch of additional, more advanced topics you shouldn't shy away from, like 3D Math, Physics and so on, that COULD overload you at the beginning.
The good thing is, none of this is mandatory. If you try to find a very basic beginners tutorial, you will be introduced to most basic functions step by step, without having to worry about more advanced topics.
Physics seem to hard to understand? Just leave it away, you don't need physics for basic games.
3D is way to complicated? How about getting a 2D tutorial and keeping things 2D for now?
"I am missing knowledge" - Of course you are. I am doing game development as a hobby for over 6 years now and I still feel like a beginner often. There is just too much to learn for a single lifetime if you want to know all, in all parts of game development. That is why there are usually many different specialist working at larger studios... for programming alone, you might have AI programmers, gameplay programmers, graphics programmers, interface or tool programmers...
Don't feel bad about it. And don't think you need to go back studying theory for another 5 years before you are trying to put all that in practice again.
Just do it ((tm) Nike) ... really, learn as you go. You try to achieve something, you run into a roadblock, you research the topic, you make mistakes along the way, you find a solution that works. That is the ideal way to learn something. a) you at least tried to solve the problem yourself, thus analyzing the problem yourself, b) you make mistakes along the way, which get imprinted in your brain way better than any advices from teachers or books, c) if you happen to at least get part of the solution right yourself, you get a healthy morale boost.
And along the way, you have learned a thousand little things like "where is the build button in Unity", "how do I rebuild a lightmap in Unity", and so on.
"I don't know what to concentrate on" - Well, what do YOU want to concentrate on? What are YOUR longterm goals?
If you want to learn EVERYTHING there is, you will of course have a hard time focusing, and will find that not even 10 years are enough to really master everything. It MIGHT be a good idea to get more knowledgeable about multiple topics IF you plan to go the Indie route later, working on your own or in a small team.
No matter if you will later work with freelancers for your graphics for example, having the basic skills needed to fix small errors made by freelancers will save you a lot of time and money when deadlines are nearing.
If your plan is to get a job in the industry, then you should really try to concentrate at some point. Additional knowledge never hurts (after all, you will be working in a Team, and even as lowly programmer you will have an easier time if what the artists are talking about is not just gibberish to you... and if you at some point climb the ladder, you will most probably interface with other disciplines even more often)...
But: you will work as a specialist in many Studios. In most actually, besides the smallest one. That means, you need to find your passion, and get really good in it to be attractive to future employers.
Now, about your specific question: Do you want to work as an engine programmer? If yes, then maybe it does make sense to build your own engine. In any other case, less so (though as said, additional knowledge never hurts).
Are you interested in becoming a graphics programmer, or want to become an artist? If no, then do not care too much about graphics. If you are not an artist natural, or have the ability to work with an artist, you will either have to live with ugly programmer art, or with stock art from the internet. None of both is particularly bad, as long as what you create now is just for your portfolio.
A finished game in a portfolio looks awesome anyway... people will only look if the graphics shine if you are looking for employment as an artist, or MAYBE a graphics programmer (nice art is not the graphics programmers job, but it never hurts to have nice art to make your clever shaders shine).
If you really feel overwhelmed using an engine, go back several steps and work from scratch. Just remember, you are now doing a lot of tasks that the engine would take care of, so you need to reduce your scope several notches. Think pong instead of super mario bros.....