A way of organizing and storing information so that it occupies as small an amount of memory as possible while still retaining its full usefulness.

learn more… | top users | synonyms

49
votes
5answers
10k views

Which image format is more memory-efficient: PNG, JPEG, or GIF?

Which image format is more efficient to save memory? PNG, JPEG, or GIF?
35
votes
8answers
16k views

How'd they do it: Millions of tiles in Terraria

I've been working up a game engine similar to Terraria, mostly as a challenge, and while I've figured out most of it, I can't really seem to wrap my head around how they handle the millions of ...
33
votes
2answers
2k views

How does a game without loading times work?

We're talking about an expansive game that is not divided in levels or checkpoints. A 3D adventure, for example.
21
votes
6answers
3k views

How to solve the big video memory requirements in 2d game

We are developing 2d game (Factorio) in allegro C/C++ and we are facing the problem with increasing video memory requirements as the game content increases. What we currently do is, that we gather ...
15
votes
3answers
2k views

Dynamic Memory Allocation and Memory Management

In an average game, there are hundreds or maybe thousands of objects in the scene. Is it completely correct to allocate memory for all objects, including gun shots (bullets), dynamically via default ...
14
votes
2answers
507 views

How do you prepare for out of memory conditions?

This can be easy for games with well defined scope, but the question is about sandbox games, where the player is allowed to create and build anything. Possible techniques: Use memory pools with ...
14
votes
3answers
1k views

Is there any documentation comparing/contrasting C++ standard library implementations?

(This is not game programming per se, but I'm certain if I asked this on SO I'd get told not to prematurely optimize, even though history tells us every large game ends up worrying about these ...
10
votes
3answers
3k views

Custom allocators used in game development

I have been researching creating my own allocator methods (that will support things such as a memory pool and profiling), however, as I continue my research I have been looking for how this was done ...
10
votes
2answers
590 views

Why is custom memory management needed for assets?

Pretty much all resources relating to game programming, especially 3D open-world games, talk about how you have to constantly be unloading and reloading assets to and from disk, system memory, and ...
10
votes
6answers
2k views

How much memory usage is too much in a Flash game?

I'm developing a Flash game, and I can appreciate that the memory usage is a little high for a Flash game (I think). Let's say 100+ MB. So how much is too much when talking about memory usage in ...
10
votes
2answers
1k views

'Zoning' up areas on a large tile map, as well as dungeons

My game is having a map like that of Minecraft, in the way it's pseudoinfinite and randomly generated. And big. Say the user has explored a 1000x1000 zone (2D here), so that's 1,000,000 tiles. ...
8
votes
6answers
4k views

Map with 20 million tiles makes game run out of memory, how do I avoid it?

While loading extra huge maps, the loading method throws out of memory exception where a new instance of map tile is created. I'd like to have whole map processed at least on server app (and on client ...
8
votes
1answer
811 views

How to benefit from cpu cache in a entity component system game engine?

I often read in the ECS game engine documentations that is a good architecture for using cpu cache wisely. But I can't figure how we can benefit from cpu cache. If components are saved in an array ...
8
votes
2answers
671 views

Efficient structure for representing a transform hierarchy

Can anyone suggest a memory efficient way to represent a tree of matrices, for example in a hierarchy model? I'm particularly keen to preserve data locality, and I suspect a structure-of-arrays ...
7
votes
2answers
3k views

Best memory allocation strategy for iOS?

I'm debating myself about memory allocation on iOS. I write most of my code in C++ and I really like using ObjectPools, FreeLists, etc. In order to pre-allocate a lot of the stuff that I'll be ...
6
votes
1answer
490 views

MMORPG game map in-memory storage techniques

For 2-3 years I've been interested into MMO development. I'm browsing some emulators source codes and open source projects. Usually I'm checking how the game server stores data about the 2D map. ...
6
votes
2answers
481 views

How to store 'dots and boxes' data?

I'm trying to explore a little as to how I could make a simple 'dots and boxes' game. The problem I'm facing is in what way to store which lines are allocated by who. The problem lies in the fact ...
5
votes
3answers
2k views

how to make blocks like “redstone” working in a minecraft-like game when the block is very far-away from your character

I'm working on a 2D minecraft-like game, I use chunks to save my world and each chunk has 128*128 blocks in it. And infinite chunks can create an infinite world. Memory should never be infinite and ...
4
votes
1answer
629 views

Storing large layered tilemap

My game consists largely of "sea" tiles with sections of tiles that form "islands". The sea tiles are all exactly the time. The map itself is pretty large and only going to get larger. I'm trying to ...
3
votes
2answers
405 views

What is the range of RAM consumption for the typical 3D character in a video game?

What is the average number of KB in memory for a 3D character? Granted, this will obviously be biased based on what game we're talking about. However, I am less interested in actual size in KB, and ...
3
votes
1answer
612 views

iOS custom memory allocator

I'm about to start writing an iOS game and I'm going to use mainly C++/C for the core gameplay logic. I really like pre-allocating everything in the game and try to avoid any dynamic allocations as ...
3
votes
1answer
562 views

Can glTexImage2D() use an already existing memory block?

Can I use glTexImage2D() and / or glTexSubImage2D() (or maybe there's some other method I don't know about) with an already existing block of memory, instead of always uploading the changed pixels? I ...
3
votes
1answer
177 views

Using allocators for different systems

I am going over the memory architecture for my game and even though I know my memory budgets may not be final, I at the point where I can start using them in a general sense. I know that I will need ...
3
votes
1answer
761 views

OpenGL FBO to OpenCV image

I am trying to figure out the best way to share an image between OpenGL and OpenCV libraries. I perform a render to texture on OpenGL, so I have and FBO/texture that then I want to pass it OpenCV, ...
2
votes
3answers
883 views

Creating addons for any game?

I want to be able to create addons for any game, the example I will use is League of Legends. With addons I mean, for example when my level integer changes I want to play a sound in the background. ...
2
votes
3answers
1k views

How to force a garbage collector swep on libgdx?

I found that you can control your memory usage on libgdx with: int javaHeap = Gdx.app.getJavaHeap(); int nativeHeap = Gdx.app.getNativeHeap(); But, How can I force a garbage collector cleanup? I ...
2
votes
2answers
711 views

How can I efficiently store tilemaps in work memory?

I've been working on different tile-based projects, but never really bothered with being efficient memory-wise. Each tile was represented by a tile class which would hold the following: X and Y ID ...
2
votes
2answers
144 views

Replicating no. of sprites without letting the app to slow down and crash

Is it possible that if I'm making a a simple drag-n-drop game, does making a new sprite via constructor with texture as a parameter makes the game slower and depletes more memory until it crashes or ...
2
votes
2answers
91 views

Why aren't resources such as Pixmap disposed on finalization in LibGDX?

I've been looking at the LibGDX framework, and certain classes such as Pixmap require to be disposed manually when you are no longer using them (call the dispose method). I'm wondering, since this is ...
2
votes
1answer
106 views

Rearranging array for memory efficiency

This is a question about a passage from this article: I suggest having every game object exist within a single giant array. This keeps game objects together in memory, and even though deletion ...
2
votes
1answer
203 views

glDeleteTextures - release data, but keep the texture ID?

In OpenGL, is it possible to release texture data, but keep the same texture id? I want to unload textures when they aren't needed, but load them again later when they are. There are a lot of objects ...
2
votes
2answers
256 views

Serverside memory efficiency and threading for a turn based game

Im programming on a turn based war-game for some years now (along with the engine) and Im having quite a hard time at figuring out what the games server architecture should look like, since most game ...
1
vote
1answer
424 views

Game-components and memory management

I'm stitching together the workings of a component based game engine, and as such have been deeply reading into many aspects of both game engine architecture and a fair amount of opinionated theory of ...
1
vote
2answers
452 views

Recommended formats to store bitmaps in memory?

I'm working with general purpose image rendering, and high-performance image processing, and so I need to know how to store bitmaps in-memory. (24bpp/32bpp, compressed/raw, etc) What is the "usual" ...
1
vote
4answers
147 views

How to get a large quantity of photographs in an app while being memory efficient??

There have been a lot of word games (apps) lately and some use graphics but others use photographs and I was hoping that someone could explain how these games manage to get so many photos in an app ...
1
vote
3answers
509 views

How to expose game data in the game without a singelton?

I'm quite new to cocos2d and games programming, and am currently I am writing a game that is currently in Prototype stage. Everything is going okay, but I've realized a potentially big problem and I ...
1
vote
3answers
269 views

How do I efficiently use 16 bit texture coordinates?

While loading a model I get a big array of 32 bit floating point texture coordinates. I just upload that to a single vertex buffer (along with other data, such as vertices, normals, etc.) and use it ...
1
vote
2answers
290 views

How to deal with large open worlds?

In most games the whole world is small enough to fit into memory, however there are games where this is not the case, how is this archived, how can the game still run fluid even though the world is so ...
1
vote
2answers
123 views

NPOT texture and video memory usage

I read in this QA that NPOT will take memory as much as next POT sized texture. It means it doesn't give any benefit than POT texture with proper management. (maybe even worse because NPOT should be ...
1
vote
1answer
79 views

Texture compression strategy for Android OpenGL ES that caters for alphas

I have a 2d Android game that is currently causing certain devices to run out of memory. I have a number of PNGs (about 10 MBs in total) that I use in the game at various times. At some points in the ...
1
vote
0answers
204 views

Why are png files so much larger in RAM than on disk? [closed]

I have images that take up 119 MB on disk, but when I load them into my game, they use 850 MB of RAM. Why is this? How can I decrease the amount of RAM they use? My images are high resolution PNG ...
1
vote
0answers
83 views

Replacement memory allocators - pros and cons [duplicate]

I am developing a hobby project to learn game engine development and to have a platform where I can test new ideas and have fun. Currently I have a quick-and-dirty multiplayer server and client using ...
1
vote
0answers
64 views

Another Question from the Image Efficiency for Memory Handling [closed]

At this topic, "Which image format is more memory-efficient: PNG, JPEG, or GIF?", one of the fellow Game Development community @Panda Pajama told about the complex concept about image memory handling ...
0
votes
4answers
988 views

How powerful is modern hardware for complex, intensive 2D graphics?

I am embarking on a massive (image quality, file size, high frame count) project. I am still working on the basic engine, but have a big question that I would like answered before I begin testing. (It ...
0
votes
2answers
238 views

What alternatives to large arrays do I have for level data?

So I'm going to store my levels in int[] arrays. Most levels are going to be 300*300*300. However, there will be about 24 levels and so that is 24 int arrays of size 300*300*300. However, that would ...
0
votes
2answers
237 views

How can I reuse objects going off left side of screen, by putting them offscreen on the right side?

I have an array of roughly 10,000 tiles over a 2d grid. When a tile goes off screen, I'd like to recycle it by disabling the renderer, repositioning it just before it comes on screen again, then turn ...
0
votes
1answer
102 views

What coding issues can be significant in damaging the performance of a game? [closed]

I have just finished a 2D game in Java that I've been working on for a while. I found that on some computers it runs fine, and on others (which are not particularly slow in general), the game runs a ...
0
votes
1answer
263 views

Is a HashTable the best way to store replay data in C#?

I'm looking to make a deterministic replay in my 2D game. I want to follow a similar approach to braid in storing the relevant information every frame (at 60 frames per second). I wanted to know what ...
0
votes
1answer
315 views

How many update and draw calls can a windows phone suppport

I'm making a Windows Phone game (XNA 4.0) which requires a lot of activity on the screen. It's working well for now. But what I am concerned about is that it uses a lot of sprites and many of them as ...
0
votes
1answer
376 views

How to resolve duplicate data in Entity Systems?

Whilst working on examples and upgrades for my C++ Entity System, something randomly caught the attention of my mind, by surprise: duplicate data. What I'm referring to is how an entity system that ...