summaryrefslogtreecommitdiff
path: root/src/renderer/tr_backend.c
AgeCommit message (Collapse)Author
2013-01-12From /dev/humancontroller: really fix the confusion with game entity and ↵Zack Middleton
refentity numbers for any natural number M, the following is logical as a whole: - the array size for refentities is M; - the refentity number limit is M-1, ie., each refentity number is in [0..M-1]; - the special number for the world is M. before r1429, the code was roughly the following: // constants related to the game, should not be used by the renderer // renderer stuff refEntity_t refEntities[MAX_ENTITIES]; int numRefEntities = 0; void addRefEntity(refEntity_t re) { if (numRefEntities >= ENTITYNUM_WORLD) return; // full refEntities[numRefEntities++] = re; } void render(int num) { if (num == ENTITYNUM_WORLD) renderWorld(); else renderRefEntity(refEntities[num]); } so before r1429, - the array size for refentities was 1023; - the refentity number limit was 1021, ie., each refentity number was in [0..1021]; and - the special number for the world entity was 1022. this was a small waste of memory, as the last array element wasn't used. r1429 changed if (numRefEntities >= ENTITYNUM_WORLD) to if (numRefEntities >= MAX_ENTITIES). this creates the following configuration: - the array size for refentities is 1023; - the refentity number limit is 1022, ie., each refentity number is in [0..1022]; and - the special number for the world entity is 1022. r1429 just makes things worse: it allows 1 more refentity to be added, but that entity doesn't get drawn anyway, as its number will be equal to the special number for the world. this is a small waste of not only memory, but also processing time. perhaps in XreaL, ENTITYNUM_WORLD is a game entity constant, and has nothing to do with refentities. a new REFENTITYNUM_WORLD constant should be added to denote the special number for the world, and that constant should be used in the renderer code in place of ENTITYNUM_WORLD. so define such a constant, and let it be equal to MAX_ENTITIES, which is 1023.
2013-01-12Fix (#5312) introduced by rev 2103Thilo Schulz
2013-01-10Bug 5094 - Code cleanup, patch by Zack Middleton and DevHC. Fixes ↵Thilo Schulz
unused-but-set gcc warnings
2013-01-10Fix menu corruption on IRIX (#5097), patch by Rainer CanavanThilo Schulz
2013-01-09Remove newlines from Com_Error calls, patch by DevHCThilo Schulz
2013-01-09Choose better alignment for heavy-duty rendering structures, patch by Matt ↵Thilo Schulz
Turner (#4981)
2013-01-03* Update copyright noticesTim Angus
2013-01-03* Merge ioq3-r1458Tim Angus
2013-01-03* Merge ioq3-r1423Tim Angus
+ IPv6 + VoIP + Stereo rendering + Other minor stuff
2006-01-05* Merged ioq3-460Tim Angus
- avi exporter - cl_autoRecordDemo - .asm dependencies
2005-12-10* s/Quake III Arena source code/Tremulous/Tim Angus
* De-quaked various bits and pieces * Integrated Tremulous into the ioq3 source * Relicensed Tremulous to be GPL * It compiles!!!!!!!!11111111!!!!1
2005-12-10* Copied ioq3 src to trunkTim Angus