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


April 20th, 2021, 20:45
Don't quite agree with you, but that is the beauty of a good dispute

Originally Posted by Redglyph View Post
I'm not too concerned by high-level code, or using the wrong algorithm, but rather by code that must handle a lot of objects repeatedly.
(emphasis by me)
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.
Imagine: your game simply want to manage, say, 10 thousand objects (hey, are you writing a Minecraft clone?), and you have a bottleneck -- while a well engineered server backend written in ASP.net (c#) can handle MILLIONS of requests effectively. So large data handling is not the language's limitation, rather the programmer's skill.

Originally Posted by Redglyph View Post
Take for example inventories that you display and close, which contain quite a lot of items. Each time you create and discard lists and all the objects needed to display them.
For this, you must have a decent dynamic object manager at hand.
Without this, in c# you will trash the garbage collector, in c++ you'll trash the memory and get constant processor cache misses.
So. . . it all depends on the object manager you want to use, and how well you use it - and not the language itself.
(Mind you, both Unreal and Unity has its own object manager, and each has its own limitations. If you disobey the limits, your code will be under-performing,no matter if it was written in c++ or c#)

Originally Posted by Redglyph View Post
The fluidity and responsiveness I could obtain with C++ and, for example, Qt, was so much better than a C# with Forms or WPF, even by using low-level bitmap widgets to draw the elements.
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!).

Hope you won't find this rant as a lecture, I'm just commenting this from experience. It took me about 15 years to realize this. . .
duerer is offline


Keeper of the Watch


Join Date: Mar 2008
Posts: 783
Mentioned: 8 Post(s)