Engine Bugs - Quirks and Workarounds


(Mateos) #21

This is in the last changelog of ETGold, maybe you can ask daz2007 about it :slight_smile:


(acQu) #22

daz is free to give any information in this thread he wants. If he don’t want and rather do his own thing, i can’t do aynthing about it, i just collect information and i will not run after EVERYTHING. At least a small bit of contribution i can expect from the community, right ? (which there was actually, but not by him).

EDIT: other than that it is only a number to increase, so no big deal. But, there has been other things which could have been reported (i extra left the chance to do so) and there was no response…


(acQu) #23
svn co https://sdcebp.svn.sourceforge.net/svnroot/sdcebp sdcebp

I will update this rep with everything which seems to be valid to me. Due to lack of time this will not be done in the near future by me. If you want to do commits, pm me so that i can give you write access.


(dutchmeat) #24

@Bacon, I think a second posible cause could be that the snapshot buffer isn’t cleared properly when the client drops, causing the pk3 info to be invalid. But I’m not sure about that just yet.


(YourFather_CZ) #25

I’ve solved this issue by adding `vid_restart’ command into appropriate UI script of RECONNECT button.

It works like a charm now.


(Shanks) #26

16 bit mode + High intensity allows players to see through smoke. Recommended that 16 bit mode be removed to fix this from being exploited any further.


(Indloon) #27

Thanks for saying,now I“m gonna be covert ops:)


(Shanks) #28

Well it’s slightly more complicated than that. You need the absolute perfect settings for it to work. I’m not going to tell you exactly how to do it or even show you what it looks like :stuck_out_tongue:


(Indloon) #29

void Item_Paint(itemDef_t *item) {
    vec4_t red;
    menuDef_t *parent = (menuDef_t*)item->parent;
    red[0] = red[3] = 1;
    red[1] = red[2] = 0;

    if (item == NULL) {
        return;
    }
    
    ...

The ā€œitemā€ pointer is used before the ā€œitemā€ is compared to NULL.


(morsik) #30

Fixed, thanks: https://github.com/etlegacy/etlegacy/commit/352b1da1127df96a151322fe3b363f9449c8e5bd

Next time, please write issue on etlegacy.com (-;


(Indloon) #31

Here is a fix, it got posted by daz2007 before:
http://icculus.org/pipermail/quake3-commits/2011-February/001780.html
It fixes shader alpha issues in some cases.

Now lets talk about the Id Tech 3 rendering code, which is horrible.

Id Tech 3 uses vertex arrays to render everything.

The whole point of this technique is that while all the geometry data remains in the client memory (the system RAM), the number of calls is reduced.

You only give the server a couple of pointer to arrays of relevant data and then tell it ranges of data it should use to draw stuff.

I should also mention that all those shader modifier calculations are done by the CPU.
So, on modern systems a complex scene can get quite a lot of load on your CPU while the GPU will be almost idle.

Each shader stage all the elements in the scene bearing that shader must be redrawn again. Yes, you read that right - if you have, let’s say, a weapon with a 4-stage shader, it will be drawn 4 times. So, 4 times the memory consumption, 4 times the calculation time. See, power comes at the cost of performance. Of course, the engine tries to collapse multi-stage shaders into single-staged ones, but it isn’t always possible.

There is a also multiple duplication of data.

When, let’s say a player model, is supposed to be rendered into the scene, all of its triangle and vertex data is copied from a memory pool that contains the data loaded from the model file into the vertex array for rendering. And it’s like that with everything - the world brushes, patch meshes, static models, everything, and it’s done every single frame.

This was quite acceptable back in 1999, BUT for modern hardware it is not that acceptable.

Who is more interested of Id Tech 3 rendering, read more about it here:
http://fabiensanglard.net/quake3/renderer.php


(Dragonji) #32

[QUOTE=Indloon;403121]Who is more interested of Id Tech 3 rendering, read more about it here:
http://fabiensanglard.net/quake3/renderer.php[/QUOTE]
Great article!