Új hozzászólás Aktív témák

  • Frakk

    tag

    Helló!
    Úgy láttam nincs ilyen téma, úgyhogy nyitottam egy topicot.
    Az a gondom, hogy OpenGLben ködöt szeretnék csinálni. Illetve az már sikerült is, csak nem úgy ahogy szeretném:

    GLfloat fogColor[4]= {0.50, 0.50, 0.80, 1}; // Fog Color

    glFogi(GL_FOG_MODE, GL_LINEAR); // Fog Mode
    glFogfv(GL_FOG_COLOR, fogColor); // Set Fog Color
    glFogf(GL_FOG_DENSITY, 0.5); // How Dense Will The Fog Be
    glHint(GL_FOG_HINT, GL_NICEST); // Fog Hint Value
    glFogf(GL_FOG_START, 0); // Fog Start Depth
    glFogf(GL_FOG_END, 5); // Fog End Depth
    glEnable(GL_FOG);

    Ezzel a kóddal ugyan lesz köd, de nem a pixelek távolsága, hanem a z koordinátájuk szerint számít, ami ugye nem valóságos eredményt ad, és ez (főleg szélesebb látószögeknél) elég idegesítő. Na én megpróbáltam utánnanézni googlen es azt találtam, hogy ha ezt a sort beírom a kód elé:

    glFogi(0x855A, 0x855B);

    akkor távolság szerint fogja számítani. Úgy is lett, csakhogy így meg most nem minden pixelre végzi el a műveletet, hanem csak vertexekre, ezér a túl nagy polygonokra nem használható. Nem tudja vki, hogy lehet megcsinálni, hogy pixelenként, és távolságszerint számoljon?

Új hozzászólás Aktív témák