sawickiap / D3d12info

A Windows console tool that prints all the information about the GPU extracted using DXGI and Direct3D 12
MIT License
94 stars 7 forks source link

fixes and improvements #2

Closed didito closed 5 years ago

didito commented 5 years ago

built on

tested on:

also built against same Win SDK

sawickiap commented 5 years ago

Thank you very much for the extensive contribution. I will merge it soon when I find some time.

Looking at it briefly, I only dislike removing precompiled header. Why do this? It speeds up compilation in Visual Studio.

didito commented 5 years ago

Regarding PCH - multiple reasons really, but you could argue that it is personal preference based on how I learned to program.

First for a project of this size (one compilation unit for now) the benefits are negligible. And I really like the fact that this simple tool is only one compilation unit :)

Second I work a lot with command line and that way I can just quickly pass it to cl.exe or clang++.exe on windows or any other tool really. Because it is self contained and I don't need to remember PCH compiler arguments. This is even more appreciated when working on cross platform tools (which this is obviously not).

Generally I personally only use an opt-in approach with things like this. So only if there is a good enough reason to have it, do I enabled it (i.e. my build times are slow and impacting my work). Otherwise I consider it useless cruft that gets in the way of understanding or building it in other ways. Sadly MSFT keeps on coming up with different defaults in certain templates.

That being said, obviously feel free to ignore that part.

sawickiap commented 5 years ago

I'm sorry for the delay. This is my personal project that I develop outside of my normal work. I've merged your changes, although I don't agree with some of them. For the future, please prepare smaller, single fix instead of such big refactoring.

Few notes to respond to your comment:

The program is not going to have only single CPP file in the future.

I have quite different attitude than you. I like "templates and defaults", while I dislike console. I use Visual Studio as my main IDE/compiler/debugger and don't really care about portability to other compilers or operating systems as long as I don't have to.

didito commented 5 years ago

No worries about the delay. And it's ok to have different attitudes.

I hear you regarding sending smaller PRs. I tried being a good, clean and disciplined developer by making small atomic commits with good commit messages. But I could not group them into separate PRs. So I partly blame git's / GitHub's limited collaborative functionality.

And after all this was a clean up / minor fixes pass with minor, unrelated additions. When developing a single feature or fixing a single bug you can afford to have a more structured approach to commits. But I was also working on it in my free time and as you know graphics programmers like batching up work ;)

Thanks for accepting the PR.