Announcement

Collapse
No announcement yet.

Grand Theft Auto Running On Direct3D Natively On Linux Shows Gallium3D Potential

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

  • #21
    Originally posted by okias View Post
    Thank you, missed that one after rebase Fixed.
    my pleasure, btw
    for mesa master you need this patch change

    diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h
    index 58410cc..ad6f88e 100644
    --- a/src/gallium/include/pipe/p_defines.h
    +++ b/src/gallium/include/pipe/p_defines.h
    @@ -564,6 +564,8 @@ enum pipe_cap {
    PIPE_CAP_TGSI_VS_WINDOW_SPACE_POSITION = 99,
    PIPE_CAP_MAX_VERTEX_STREAMS = 100,
    PIPE_CAP_DRAW_INDIRECT = 101,
    + PIPE_CAP_RASTERIZER_LOWER_LEFT_ORIGIN = 102, //this doesnt exist in master
    + PIPE_CAP_DEVICE_MEMORY_SIZE = 103
    };

    #define PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_NV50 (1 << 0)
    --
    2.0.3

    almost got it to build against master

    Comment


    • #22
      This is so awesome! Gallium3D seems like the best way to go forward, it's so flexible compared to the old drivers. This could be the push needed to kill off the garbage proprietary drivers and get people using and supporting the open ones. AMD's Gallium3D driver is already very good for older Radeon cards like my HD5870. I need to go build this now. Anyone have a build guide of what all you need to build (including the custom Wine)? I really wish this D3D9 stuff would get mainlined into Mesa/Wine so that we can play more Windows games without glitchy or slow graphics. It could also be a help to developers porting D3D games to Linux if this was an official API because then they wouldn't have to go through the D3D to OpenGL rewrite process if D3D would run natively with no performance hit on Linux. There's really no reason we're exclusively tied to OpenGL on Linux after all, if another API exists and works with the drivers/X server then why not compile native games with it.

      Comment


      • #23
        Originally posted by jrch2k8 View Post
        my pleasure, btw
        for mesa master you need this patch change

        diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h
        index 58410cc..ad6f88e 100644
        --- a/src/gallium/include/pipe/p_defines.h
        +++ b/src/gallium/include/pipe/p_defines.h
        @@ -564,6 +564,8 @@ enum pipe_cap {
        PIPE_CAP_TGSI_VS_WINDOW_SPACE_POSITION = 99,
        PIPE_CAP_MAX_VERTEX_STREAMS = 100,
        PIPE_CAP_DRAW_INDIRECT = 101,
        + PIPE_CAP_RASTERIZER_LOWER_LEFT_ORIGIN = 102, //this doesnt exist in master
        + PIPE_CAP_DEVICE_MEMORY_SIZE = 103
        };

        #define PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_NV50 (1 << 0)
        --
        2.0.3

        almost got it to build against master
        it's there

        https://github.com/iXit/Mesa-3D/comm...6b939eddc3c489 (PIPE_CAP_RASTERIZER_LOWER_LEFT_ORIGIN) and https://github.com/iXit/Mesa-3D/comm...c5fc13ddc35295 (PIPE_CAP_DEVICE_MEMORY_SIZE).

        It works just fine. Check other commits, it's not just that big one, also few commits around are needed.

        Comment


        • #24
          I recommend the latest branches from okias who seems to be maintaining it at the moment if you know how to build it (I don't).

          I personally don't like wined3d - it compiles shaders on demand, which causes a lot of FPS stuttering while I'm playing/testing games and it doesn't look like it is going to be fixed anytime soon. This d3d gallium layer solves that issue nicely, because it just compiles shaders at loading time.

          Comment


          • #25
            Originally posted by okias View Post
            it's there

            https://github.com/iXit/Mesa-3D/comm...6b939eddc3c489 (PIPE_CAP_RASTERIZER_LOWER_LEFT_ORIGIN) and https://github.com/iXit/Mesa-3D/comm...c5fc13ddc35295 (PIPE_CAP_DEVICE_MEMORY_SIZE).

            It works just fine. Check other commits, it's not just that big one, also few commits around are needed.
            ohh sorry im not building against your tree but cherrypicking the patches and building again mesa master, i guess that is the detail

            update: after this going to try patch wine 1.7.23

            Comment


            • #26
              Anyway to get this working with oibaf drivers on Ubuntu? Like a convenient patch or PPA?

              Comment


              • #27
                btw if i can make this work i can post somewhere my modified PKGBUILD files and patches for ArchLinux users(don't have privileges for AUR)

                Comment


                • #28
                  Originally posted by jrch2k8 View Post
                  ohh sorry im not building against your tree but cherrypicking the patches and building again mesa master, i guess that is the detail

                  update: after this going to try patch wine 1.7.23
                  good luck, it could work. I'm stuck at 1.7.21 (Gentoo specific patches for .22+ missing, because maintainer has on vacation or something)

                  Originally posted by marek View Post
                  I recommend the latest branches from okias who seems to be maintaining it at the moment if you know how to build it (I don't).
                  If anyone wonder how it should be builded, it's exactly same as classic Mesa, only extra thing needed is passing "--enable-nine" to ./configure script. Otherwise it will build without gallium nine state tracker.

                  Originally posted by jrch2k8 View Post
                  btw if i can make this work i can post somewhere my modified PKGBUILD files and patches for ArchLinux users(don't have privileges for AUR)
                  Feel free join IRC channel #d3d9 on irc.freenode.net , I have feeling there is already someone from Arch Linux comunity. If you settle where will be PKGBUILD placed, I'll add link to wiki page.

                  Comment


                  • #29
                    Originally posted by Dukenukemx View Post
                    Anyway to get this working with oibaf drivers on Ubuntu? Like a convenient patch or PPA?
                    @Oibaf already answered on that in his topic:
                    Originally posted by oibaf View Post
                    I don't have time to look into this now. If someone is interested and has a working patch can post it here, I could eventually add it to the ppa.

                    Comment


                    • #30
                      ok it builded against master, on weekend ill send you the build files since i expect wine to give me headaches

                      Comment

                      Working...
                      X