JMelter said:
- Do I need to learn WinApi at all? or just the fundamental to create a window.
In general, you don't need a lot of the Window API stuff. You basically need to know about the message loop but that's typically covered in most DirectX tutorials anyway. Of course, it depends on what you ultimately want to do, but I wouldn't worry about it starting out.
- Is the webpage I mentioned before good to start with DirectX? Are there any other resource for free?
Your first question is which DirectX do you want to learn. DirectX 12 is the latest, but it is quite different from previous versions and it's somewhat lower level and you are required to manage more things yourself. Many people eschew it in favor of DirectX 11. This year I ported my code from 11 to 12 and it was quite a chore. I don't think DX12 is so hard on the face of it. The main problem is since it is low level, you have so many options for how you want to do things. Also while the documentation is out there, there is nothing I found that really gives you the big picture. I spent months wrapping my head around the whole thing and writing my own API. As for Documentation I used Frank Luna's book. It's actually not that great, but it got me started. The Direct X Discord server is verry good however, so I would ask people there for advice. In retrospect I do like 12 better than 11 now that I've got my act together. I think that's mainly because it seems to obfuscate things less, but to be fair, a lot of people will say it's a lot harder.
- Do you know any Youtube channel that is dedicated to teach DirectX from scratch?
Well there are a few DirectX game engine series on YT, but I didn't use any of them. Probably asking on Dischord is your best bet again for that.