Jump to content
The Dark Mod Forums

nbohr1more

Development Role
  • Posts

    12122
  • Joined

  • Last visited

  • Days Won

    198

Posts posted by nbohr1more

  1. Keep in mind that different Linux distros use different display architectures, some of which use GPU compositing.

    Some of the compositing based desktops hard-code vsync on regardless of driver setting.

    Conversely, some X11 based distros have notorious problems with vsync that can only be fixed by changing the default Window system or some other workaround.

  2. 14 hours ago, stgatilov said:

    Replaced in svn rev 16896.

    The 20 pixel padding was introduce conservatively before the font was changed.
    Merely applying the 16:9 vs 4:3 correction allows to reduce it to 15.
    But also the font is significantly smaller now.

    I tried to edit text in order to see maximum overflow.
    It seems that capital W is the widest letter in this font, and I can't get a significant overflow (see image below).


    So I have reduced padding from 20 to 10.

    Also I shifted everything to the right, so that now subtitle ring and text field are centered horizontally (instead of the background box being centered). This looks much better with frobhelper activated, because previously frobhelper and location ring center we not at the same X position.

    Finally, I have increased step between subtitles from 50 to 55 to avoid next subtitle box overlapping with previous subtitle location ring.

    These tweaks can still be changed, since they don't change anything regarding the text layout.
    Here is how it looks now (blue background shows the text box):

    newjob(2024-01-0712-52-11)(-375.6-320_8263.98).thumb.jpg.d249d0b71f3737baab45dae898239157.jpg

     

    My stance on this is still the same: if large empty boxes look ugly, then we can make several possible background boxes and make engine select the best one that text fits into. This way the decision of which box is OK can be made with the very same code that actually renders this text, instead of some external independent computation.

    There is no reason why smaller background box should be applied depending on verbosity, except that "it looks all non-story subtitles are small enough now". One exception is enough to break this idea.

    Alternatively, it is quite possible that we switch from background boxes to black outline around text. Both approaches works rather well, and without background we can forget about tweaking the background box.

     

    tdm_subtitles_message.gui 2.64 kB · 2 downloads

    Now that we have a solution to give text a black outline, I don't think there is any pressing need to make the background cap it's brightness below the text brightness. That said, I think the background still helps reduce the visual noise ( for example, if the text were rendering over stripes or dots of dark and light, brightly lit vegetation, etc ). I think we should have both the black outline and darkened background...  and the background alpha should be bumped to 0.6 so it's a smidge darker to handle the worse case areas.

    Example:

    tdm_subtitles_message.gui.txt

    tdm_subtitles_common.gui.txt

    • Like 1
  3. 6 hours ago, snatcher said:

    I get this consistent behavior when moving the mouse around.

    newjob-2024-01-05-10-38-53-66-76-1727-26

    newjob-2024-01-05-10-45-02-167-65-410-57

    can you confirm that your heatHaze_dark.fs file looks like:
     

    Spoiler


    /*****************************************************************************
    The Dark Mod GPL Source Code
    
    This file is part of the The Dark Mod Source Code, originally based
    on the Doom 3 GPL Source Code as published in 2011.
    
    The Dark Mod Source Code is free software: you can redistribute it
    and/or modify it under the terms of the GNU General Public License as
    published by the Free Software Foundation, either version 3 of the License,
    or (at your option) any later version. For details, see LICENSE.TXT.
    
    Project: The Dark Mod (http://www.thedarkmod.com/)
    
    ******************************************************************************/
    #version 140
    // !!ARBfp1.0
    
    in vec4 var_tc1;
    in vec4 var_tc2;
    out vec4 draw_Color;
    uniform sampler2D u_texture0;
    uniform sampler2D u_texture1;
    uniform vec4 u_scalePotToWindow;
    uniform vec4 u_scaleWindowToUnit;
    
    void main() {
        // OPTION ARB_precision_hint_fastest;
        
        // texture 0 is _currentRender
        // texture 1 is a normal map that we will use to deform texture 0
        //
        // env[0] is the 1.0 to _currentRender conversion
        // env[1] is the fragment.position to 0.0 - 1.0 conversion
        
        vec4 localNormal, R0;                                                                               //TEMP    localNormal, R0;
        
        vec4 subOne = vec4(-1, -1, -1, -1);                                                                 //PARAM    subOne = { -1, -1, -1, -1 };
        vec4 scaleTwo = vec4(2, 2, 2, 2);                                                                   //PARAM    scaleTwo = { 2, 2, 2, 2 };
        
        // load the filtered normal map and convert to -1 to 1 range
        localNormal = texture(u_texture1, var_tc1.xy);                                                      //TEX        localNormal, fragment.texcoord[1], texture[1], 2D;
    //    localNormal.x = localNormal.a;                                                                      //MOV        localNormal.x, localNormal.a;
        localNormal = (localNormal) * (scaleTwo) + (subOne);                                                //MAD        localNormal, localNormal, scaleTwo, subOne;
        localNormal.z = sqrt(max(0, 1-localNormal.x*localNormal.x-localNormal.y*localNormal.y));
        
        // calculate the screen texcoord in the 0.0 to 1.0 range
        R0 = (gl_FragCoord) * (u_scaleWindowToUnit);                                                        //MUL        R0, fragment.position, program.env[1];
        
        // offset by the scaled localNormal and clamp it to 0.0 - 1.0
        R0 = clamp((localNormal) * (var_tc2) + (R0), 0.0, 1.0);                                             //MAD_SAT    R0, localNormal, fragment.texcoord[2], R0;
        
        // scale by the screen non-power-of-two-adjust
        R0 = (R0) * (u_scalePotToWindow);                                                                   //MUL        R0, R0, program.env[0];
        
        // load the screen render
        //draw_Color.xyz = texture(u_texture0, R0.xy).xyz;                                                    //TEX        result.color.xyz, R0, texture[0], 2D;
        draw_Color = min( (texture(u_texture0, R0.xy)), vec4(0.2, 0.2, 0.2, 1.0));                      //TEX        result.color.xyz, R0, texture[0], 2D;
        
    }

     

  4. 7 hours ago, nbohr1more said:

    Hmm... the background image seems to be doing a naive relative attenuation. I wonder if we could configure a shader with a max rgb that is always some percentage darker than the text color

    min ( value, ( textcolor * 0.7 ))

    I'll see if I can locate where the behavior is defined.

    the definition is just using backcolor set to all black with 50% alpha

    should be able to create a material with a translucent filter effect and replace backcolor with background /material/path

    • Like 1
  5. According to UserBenchmark, the "Intel® HD Graphics 530" that comes with your i5-6500 is more powerful than the Geforce GT610. Most motherboards that support this CPU have both HDMI and Display Port. Yours only has VGA? Can you post a picture of the rear I\O ?

  6. I did a little testing of SVN 10610 and 10611 and haven't seen any light \ shadow problems thus far. I mostly play in shadow-map mode but I think the problems mostly impact stencil? ( haven't seen any issues in stencil mode either ).

    I think the reverted Doom 3 style frustum may have cured the light leaks above some shielded electric street lamps too. It also may have improved the appearance to lighting in the mission "Behind Closed Doors" ( noticed more shading variation on the walls of the large stairway at the start of the mission ). Could be placebo, gotta compare screenshots.

    • Like 2
  7. I think there was a quirk in the engine that treated pure 0 black as an artist error so a small uplift was added to ensure proper light response. This was more critical when the ambient had a Fresnel component.

    The DXT1 encoding was to save on storage. I think that's a silly rationale since a pure single color texture could technically be represented by a single pixel. No pressing need to compress that or even a 32x32 texture but I suppose if someone is obsessed with saving texture storage they could choose png or a better dxt version.

    TLDR; Transparent \ Blend textures should be fine with 0,0,0 color and single color textures don't need aggressive compression. _black should be fine for all such materials.

    • Like 1
  8. No worries.

    If you wanna try, it's not too difficult, especially with the v2 "presets".

    The tricky part is ensuring the location entity is inside the middle of an area and that location separators enclose the area.

    I've actually done this by editing the map file in a text editor and making the entities match locations of other entities like door handles for the separators and vases (etc) for the location. It's easier to do in DR if you are a DR veteran of course.

    https://wiki.thedarkmod.com/index.php?title=Setting_Reverb_Data_of_Rooms_(EAX)

    • Like 1
  9. Hmm...

    I might have a case that does not involve the penile animation issue...

    2.12 Beta - The Transaction
     

    Spoiler

    If you immediately head to the shop where the book buyer is located ( right alley, then forward, then first door on the right )

    and trigger the in-game cinematic. After the cinematic plays if you shoot the Revenant with a fire arrow then walk towards it TDM will crash.

    Sadly, I have yet to reproduce this while running in debug with symbols. Solid as a rock when debugging.

  10. 1 hour ago, Frost_Salamander said:

    Something's wrong with the wiki.  Going to anywhere but the home page returns something like this:

    MediaWiki internal error.
    
    Original exception: [521710f625297c8cef7aa5f4] 2023-12-19 13:47:30: Fatal exception of type "IntlException"
    
    Exception caught inside exception handler.
    
    Set $wgShowExceptionDetails = true; at the bottom of LocalSettings.php to show detailed debugging information.

    @taaaki

    Confirmed...

  11. 5 hours ago, JackFarmer said:

     

    2 hours ago, Frost_Salamander said:

    Here's mine.  I'm also on Windows 11 (RTX 3060Ti).

    I think it happens on pretty much all missions.  It happens on my WIP and I tried out a couple of older ones (Perilous Refuge and Penny Dreadful 3).

    Darkmod.cfg 14.55 kB · 0 downloads

    Try enabling Bloom in the Advanced Video settings.

    I can only reproduce this with Bloom Disabled.

    @stgatilov

    • Like 1
×
×
  • Create New...