GNU Abyss
kiwifarms.net
- Joined
- May 30, 2023
If 100MB of assets are taking 6-8 GB of memory to import, there's definitely Pajeetery at hand. Either they get put into memory over and over by multiple pieces of code or there's a misplaced memory allocation inside a loop where it should've been outside it. The guy said they started having problems with a large number of asset files, so it could be the latter.That one is interesting. I thought initially when I read it maybe it was just code written by people used to abusing memory overcommit (you'll see Linux/Unix apps occassionally malloc for way the fuck more memory than they actually need), which if you just ported to Windows would cause problems, since AFAIK Windows doesn't do overcommit, but it looks like it's actually using the memory.
I'm not a games programmer, but have done some scientific and industrial visualization software. I have no idea what that object format is (I'm only really familiar with wavefront), but one thing I've seen is that a lot of people just don't export normals on their objects (maybe for good reason?), and I could imagine if you're the sort of retard that doesn't think about memory at all (which is a huge percentage of modern developers), when it comes time to do shit like calculate your Gouraud normals (or whatever the kids do these days) and convert the object to a VBO (or dating myself, a display list), it would be easy for your object loader to rape the shit out the system, especially if your object format is retarded and you're not careful with allocations. I'm sure if it includes animations or trying to generate mipmaps, that only further complicates shit. Good 3D programming is kind of a dark art, and if you're a webshit developer or do street shitting GoF OO, it generally makes shit run like pure ass. Just a guess on my part, though.