I'm a beginner who has started working on programming and is currently using HTML and CSS as an introduction. By the way, it's humanities.

The goal is to engage in consumer game development on PS4 and Nintendo Switch in the future, but since we do not have a programmable PC, we are currently studying on a university PC is. So, I want to buy a PC, but I'd like to tell you because I don't know which is better, Mac or Windows.

I would like to be able to handle C ++ in the end, but I would like to know what kind of language learning (eg, wearing Java) is necessary to get there.

①Which PC do you recommend for future consumer game development, not for iOS or Windows?

② Ideal or efficient, essential learning process to acquire C ++

I would like to know about these two.
Please understand that the terminology may be misused due to lack of computer knowledge.
We are prepared for a strict opinion about the programming of the game.

  • Answer # 1


    ①Which PC do you recommend for future consumer game development, not for iOS or Windows?

    It ’s Windows. I haven't seen any places that are being developed using a Mac other than Mac/iOS apps. Perhaps the reason is that Windows is overwhelmingly cheaper if performance is comparable, so I think that every company uses Windows, but in short, it is Windows as a platform for game development (or commercial application development) Is common.


    ② Ideal or efficient, essential learning process to acquire C ++

    C ++ is very difficult, so you may want to start with C #. C # is less difficult than C ++.
    Moreover,"Unity", which uses a wide range of multi-platform game frameworks, uses C #, so if you're aiming for game development, there's no loss to remember. Unity is also widely used in consumer game development.
    Since C # was originally made with reference to C ++, I think that mastering C # will be less difficult than learning C ++ from scratch.

  • Answer # 2

    I don't think it's very good to worry about efficiency from the beginning.

    Starting withC ++seems to be a threshold, soUnityis recommended.
    What students who are aiming to become game programmers should do during their school days
    It ’s an old book, but "techniques you should remember before you become a game programmer"

    The most important point is to maintain motivation and complete the game.

  • Answer # 3



    ①Which PC do you recommend for future consumer game development, not for iOS or Windows?

    I think Windows is overwhelmingly considering the amount of information distribution for program development on Mac and Windows.
    However, if there is a situation where the SDK of the target consumer game console is only on the Mac, I think it is better to choose the Mac, so I think it is worth checking the information about that The (Since it is a world that is bound by a confidentiality agreement, information may be surprisingly scarce, but I don't think there is nothing at all.)


    ② Ideal or efficient, essential learning process to acquire C ++

    I think it is C language first. At that time, the C standard library has too much know-how to use. And most of that know-how is hardly useful when learning C ++ (except malloc/free), so I think it is efficient to keep the standard library to the minimum necessary and focus on the core functions of C language.

    Functions can use pointers and structures as a matter of course, the concept of memory (static memory, stack, heap), malloc/free and memory leaks, and how to avoid it, separate compilation I think it's good to learn the meaning of #include and the relationship between preprocessor and compiler. These can all be learned in C language.
    If you understand this far, I think it will be smooth if you move on to C ++.

    Miso before, but for those who know the basics of C language, we have released a lecture explaining many of the above using the C language compatible part of C ++. Please refer to it if you like.

  • Answer # 4

    Writing as a person who loves C ++ means that if you make a game, you should use Unity in C #.

    To learn C ++, I can say that it's a bad hoax to do it from C, and I'm sure that C ++ should be known when it comes to game programming. Seem.

  • Answer # 5

    If you learn a language that can be object-oriented, you will have no trouble later.
    Personally, there is no global variable (you can make a fake if you want to do it, but it is close to bad know-how), and either Java or C # with type is recommended.
    Either way is fine, but you will learn an object-oriented way of thinking in a natural way.
    If you do C, you can learn the basic way of writing, but if you have Java or C #, you will be able to do C ++ without much difficulty because the syntax is similar.
    The advantage of C is that you can learn about the concept of pointers. If you write a program in C, you cannot avoid pointers.
    So if you want to learn about pointers, use C, but otherwise, learn C # or Java.
    In order,
    C # or Java

    Learn about pointers in C

    C ++
    If you do this order, you will be able to write clean code that doesn't have strange habits.
    If you do it from C, you will get appropriate code that does not need to follow object-oriented, and since it does not compile for the time being, you may get a good habit if you use global variables, you should stop working first Is good.
    If you run Java on Windows, Mac, or Linux, you can code without using pointers, and the cost of learning is quite low.