Announcement

Collapse
No announcement yet.

Palette Blending.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Palette Blending.

    Ther was some confusion the other day when some were trying to get the screen to flash when hit in Qrack. This carries over to some other quake clients, like EngineX, joeQuake, ezQuake, etc. so I thought I'd just clarify it over here.

    If you want to see the screen with an opaque overlay of any kinda you must use GL_POLYBLEND period.

    Secondly, whether you want clear or opaque water(or lava/slime) this is controlled with the v_contentblend cvar. Where as in ProQuake just using gl_polyblend 1 will force water to be cloudy, when all u really want it to see when you are hurt.

    There are more console variable to fine tune settings depending on your needs:

    v_cshiftpercent {default 100} Global intensity for all the cshift levels.
    v_damagecshift {default 1} is the percentage of the intensity of the palette blending, (how clear vs opaque u want), for when you are hurt.

    v_dlightcshift [0|1] turns off or on the overlay blending if you have gl_flashblend 1

    v_pentcshift [0..1] percentage of the intensity for when u have PENT
    v_quadcshift [0..1] percentage of the intensity for when u have quad
    v_suitcshift [0..1] percentage of the intensity for when u have the biosuit
    v_ringcshift [0..1] percentage of the intensity for when u have ring of shadows

    In most cases you should leave GL_HWBLEND at 0.

    So, if you want the screen to overlay when you are hurt use
    gl_polyblend 1
    gl_cshiftpercent 100
    v_damageCshift 0.33

    if you want blending for powerups add these
    v_quadcshift
    v_pentCshift 0.33
    v_ringCshift 0.33
    v_suitCshift 0.33

    if you want clear liquids, use:
    v_contentBlend 0
    otherwise set it to 0.1 to 1.0 depending how clear you want it.

    Hope this helps.
    Last edited by R00k; 08-18-2011, 12:02 AM.
    www.quakeone.com/qrack | www.quakeone.com/cax| http://en.twitch.tv/sputnikutah

  • #2
    Cool stuff Rook!

    Comment


    • #3
      Are these GLquake related only,or are their equivilant DirectQ commands?
      Want to get into playing Quake again? Click here for the Multiplayer-Startup kit! laissez bon temps rouler!

      Comment


      • #4
        Those exact cvar names are specific to qrack, though many engines have similar cvars with the same names and behaviour.

        That is to say that DirectQ will only have those cvars if someone explicitly added them after it was forked from the vanilla source, but also that if mh did add them, they'll have the same names, hopefully.
        Some Game Thing

        Comment


        • #5
          I've noticed its harder to use gl_ cvar's in DirectQ
          Want to get into playing Quake again? Click here for the Multiplayer-Startup kit! laissez bon temps rouler!

          Comment


          • #6
            In DirectQ gl_polyblend can accept values other than 0 or 1. Give it a value of 0.5 to halve the intensity of the shift, give it a value of 2 to double the intensity, or whatever you like. Negative values have no effect, by the way, and are treated the same as 0. (As an aside - a lot of cvars that were previously either 0 or 1 in ID Quake have also been adjusted to behave in this manner, which I prefer to creating a second cvar to control the range/scale.)

            None of the other cvars exist, but consistency between clients is important to me, so I'll add them.

            Regarding the underwater blend - if your reason for switching it off is performance-related, don't bother in DirectQ because it's combined with the warp effect and so is effectively free (cost is 1 extra shader instruction, no fillrate, no overdraw, no extra blending used).

            Regarding the "gl_" cvars, they're a mixed bunch in DirectQ. Some of them make no sense in a D3D renderer - there is no equivalent of gl_finish, gl_ztrick fucks with your display, etc. Some of them are obsolete (gl_texsort is the main one that comes to mind). Some of them are used for controlling the video hardware so the "gl_" in the name has been replaced with "d3d_" so as to coexist more peacefully with other engines (same applies to some of the "vid_" cvars), and some actually do still exist and work the same way as before.
            Last edited by MH; 08-18-2011, 12:20 PM.
            IT LIVES! http://directq.blogspot.com/

            Comment

            Working...
            X