Honestly? The answer is practice. You transfer your skills via practice. Find an engine or a development kit built with C++ and try to implement or modify some of those high level concepts using C++. Unreal is probably the biggest and most well-known off-the-shelf engine, but the Source engine is also freely available and utilizes C++. Find and try some of the tutorials similar to how you learned to use Unity. Then practice using C++ to implement some of these high-level concepts that you mentioned. Look things up online if you run into issues, but C++ isn’t that far off from C# so you should be able to figure things out.
Ultimately, learning to use a new programming language is a lot like learning to speak a new spoken language. The purpose of learning a language is so you can express your ideas using that language’s rules and vocabulary to those who understand it. You want to express your ideas to the compiler that speaks the C++ language. You do so by practicing expressing your ideas with the new language’s rules and vocabulary.
Got a burning question you want answered?