RPGWatch Forums - View Single Post - Metahuman facial animation
View Single Post


April 21st, 2021, 00:37
Originally Posted by duerer View Post
And that is good Sir, the root of the problem. Most programmers simply ignore the power of well chosen algorithms, which is a big no-no.
Effective handling of large data is exactly the reason why certain algos and structs exist.
That's not what I mean I'm not saying I don't care about using the proper algorithm, which would be plain silly, I'm saying it's not the variable I'm discussing, assuming the correct choice has been made. So all other things being equal, I'm considering, as a typical example, the processing of large groups of data. The low-level processing. In other words, I'm not discussing higher-level functionality (overall scheduling, state machines, and so on).

There may be custom GC that are optimized for such or such applications, but in C++ it is up to the programmer to manage the memory, no need to guess what a black box will do or when. Moreover, it develops a more acute awareness of the memory usage.
Originally Posted by duerer View Post
Again, this is not the language's quality, rather the third-party window manager's. Qt is easier to use than WPF, but less flexible. If you love Qt, use it anywhere - even in c#, because it has a binding for c# as well (also available for python too!).
When you access the low-level bitmap, it doesn't matter that much, but the same comparison could surely be done with Qt on either side.

The fact is when you are using a higher-level approach, you trade performance and resources for programming efficiency because you leave that up to the compiler and pre-made, generic libraries, and it may be almost as good, but not in all cases. It was the same when going from assembler to C, from C to C++, and it is the same when jumping from C++ to C# or Java. Any benchmark will show that.

So to come back at the source of the discussion (somewhat OOT - sorry @Ripper!), when I said there was no comparison between the two in terms of performance, I wasn't discussing about high-level programming or network/file-based queries (which depends heavily on the hardware throughput), but about the more inner loops of intense processing and the real-time aspect of it. That usually doesn't concern the whole development team, indeed.

But the problem is larger than performance. Usually it's fine with a higher-level language, and since it's more comfortable, safer, quicker to program, and more importantly since the learning curve is not as steep - it's easy to hire developers!, the choice is usually obvious.
Redglyph is offline


Redglyph's Avatar


Join Date: Aug 2020
Location: Good old Europe
Posts: 1,571
Mentioned: 36 Post(s)