• MorphOS Developer
    bigfoot
    Posts: 508 from 2003/4/11
    Quote:

    Cowcat wrote:
    Quote:

    Fixing that at least makes the ARB2 renderer in Doom 3 look a lot better, although I think there are still some issues that need fixing.



    @Bigfoot It means that you have D3 with the ARB2 render working ?


    Sort of. I mean, it runs, it renders, but there are definitely issues with shadows around the start area at least, and it's also very, very slow.

    issues: Besides a bunch of those, yep maybe going in-out a scene with some cubemap used as for example the skymap view through a window, you notice the lag/overhead there.

    @MoerBoer:

    Could be anything. Going back to r_usedrawinteraction0 option fixes the crash with ARB renderer ?

    Those "WARNING:" here and there "could" happen randomly, besides the tinygl changes. Try from cold reboots a couple of times.

    However, for BigFoot again:

    Quote:

    Cowcat wrote:
    Some of the TexGenfv uses have only one of their parameters enabled as I do in draw_arb.cpp

    Code:
    GL_SelectTexture( 2 );
    qglEnable( GL_TEXTURE_GEN_S );
    qglTexGenfv( GL_S, GL_OBJECT_PLANE, din->lightProjection[3].ToFloatPtr() );
    .
    .
    qglDisable( GL_TEXTURE_GEN_S );


    But for old ATI drivers (in the old id Doom3 sources) they did this:

    Code:
    GL_SelectTexture( 2 );

    qglEnable( GL_TEXTURE_GEN_S );
    qglEnable( GL_TEXTURE_GEN_T );
    qglEnable( GL_TEXTURE_GEN_Q );

    qglTexGenfv( GL_S, GL_OBJECT_PLANE, din->lightProjection[3].ToFloatPtr() );

    idVec4 plane;
    plane[0] = 0;
    plane[1] = 0;
    plane[2] = 0;
    plane[3] = 0.5;
    qglTexGenfv( GL_T, GL_OBJECT_PLANE, plane.ToFloatPtr() );

    plane[0] = 0;
    plane[1] = 0;
    plane[2] = 0;
    plane[3] = 1;
    qglTexGenfv( GL_Q, GL_OBJECT_PLANE, plane.ToFloatPtr() );

    .
    .
    qglDisable( GL_TEXTURE_GEN_S );
    qglDisable( GL_TEXTURE_GEN_T );
    qglDisable( GL_TEXTURE_GEN_Q );



    It was an old workaround but has tinygl these missing parameters sorted out ?. Code like this is scattered here and there.


    When the new fixed-function-as-shaders pipeline is active, ie for R300 and newer currently, then all texgen options, without limitations, should be working.

    Quote:

    Cowcat wrote:
    My principal issues for morphos D3 is the lag/overhead when you confront enemies as framerate goes really down ( some kind of cycle than happens in fight ). I think new tinygl kinda fixes that a little bit when shooting is done or enemy fire balls are throwed at you but still a lot of overhead: Seen some videos of Potato Doom3 for old PC's or AOS4 and really not an overhead is showed there.


    I will definitely work on some Doom 3 related optimisations in the future, so don't worry, this won't be forgotten.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »28.12.22 - 07:06
    Profile Visit Website