Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Direct3D 9 Comes To Linux, Implemented Over Mesa/Gallium3D

Soulskill posted about a year ago | from the and-so-soon dept.

Graphics 138

An anonymous reader writes "Picking up the code from a failed Direct3D 10/11 implementation for Linux, a working Direct3D 9 state tracker has been implemented for Linux. The Direct3D 9 support works with open-source Linux GPU hardware drivers via Mesa's Gallium3D and can run games for the open-source Radeon and Nouveau drivers without simply converting the Direct3D commands into OpenGL. Unlike the experimental D3D10/11 code from the past, this D3D9 state tracker is already running games like Skyrim, Civilization 5, Anno 1404, and StarCraft 2. With Linux games not natively targeting D3D, Wine was modified for using this native Direct3D implementation."

cancel ×

138 comments

Sorry! There are no comments related to the filter you selected.

\o/ (-1, Offtopic)

gigaherz (2653757) | about a year ago | (#44306689)

Wheee!

The zealots (-1)

Anonymous Coward | about a year ago | (#44306709)

will shit themselves.

Year of Linux on the desktop (-1, Troll)

Fab774 (2977619) | about a year ago | (#44306717)

Then 2014 may be the year of Linux on the desktop, right?

Re:Year of Linux on the desktop (-1)

Anonymous Coward | about a year ago | (#44306739)

What an original joke!!!!

Re:Year of Linux on the desktop (2, Informative)

Anonymous Coward | about a year ago | (#44306749)

1998 called.. They want their joke back.

http://slashdot.org/comments.pl?sid=3963145&cid=44259321 [slashdot.org]

Re:Year of Linux on the desktop (2)

Zemran (3101) | about a year ago | (#44306791)

... and did you tell them about the tsunami while they were on the phone? If not, then all those deaths are now your fault!

Re: Year of Linux on the desktop (1)

tepples (727027) | about a year ago | (#44306883)

It's pretty hard to warn people about a future disaster if they're leaving a voice mail.

Re: Year of Linux on the desktop (4, Funny)

Alranor (472986) | about a year ago | (#44306899)

Which is why my outgoing voicemail message includes a list of all of the major disasters from the last decade. Just in case somebody from the past decides to call me.

Re: Year of Linux on the desktop (-1, Offtopic)

Chrisq (894406) | about a year ago | (#44308493)

Which is why my outgoing voicemail message includes a list of all of the major disasters from the last decade. Just in case somebody from the past decides to call me.

Which is why my outgoing voicemail message includes a list of all of the major disasters from the last decade. Just in case somebody from the past decides to call me.

Better than the Muslim's voicemail message which recommends that everyone go to the top floor of the world trade centre on 09/11/2001 to avoid the tsunami!

Re: Year of Linux on the desktop (0)

Anonymous Coward | about a year ago | (#44309291)

Please don't stereotype like that. Most Muslims would not condone the actions of Al Qaeda on 9/11.

Re:Year of Linux on the desktop (1)

quadrox (1174915) | about a year ago | (#44307243)

that woosh you might be hearing is not a tsunami...

Re:Year of Linux on the desktop (0)

Anonymous Coward | about a year ago | (#44307435)

I think you hear a whoosh so loud that a tsunami is a silent event in comparison.

Re:Year of Linux on the desktop (2, Insightful)

robthebloke (1308483) | about a year ago | (#44306937)

Well, if you're programming for windows, and XP is a target for potential users, then you'd be programming in OpenGL right now (because it's the only way to get tesselation and compute shaders on XP). If you're targetting Windows 7 or above, you'll be using D3D11. If you had even so much considered the remote possibility of ever going cross platform, at any point in the future, then you'd already be using OpenGL (or GLES).
So what we have here is a library that provides access to GPU functionality from 12 years ago. This might be great if you have the source to a 12 year old game laying about, but for everyone else, this is a completely pointless development in the world of linux.....

Yeah, if DirectX 9 had been around and not evolved (1)

Anonymous Coward | about a year ago | (#44307049)

since 2001, you might be right.

Except it wasn't, and it HAS (DX 8.1 was I believe the XP release version. I've had to install since, and have some games that broke when DX 9.0a or b came out.).

Additionally what this is talking about is the hardware interfacing necessary for *ALL* directx 9 support on a bunch of current-gen AAA games now playing almost 2x faster thanks to shaving a whole layer of API indirection out of the average rendercycle, so in fact it *IS* a huge deal, especially for gamers on linux.

Combined with a variety of OTHER gallium related fixes going on (Notably the LLVMPIPE and R600 sb shader backend), we may be rapidly seeing a much larger shift to linux than the past would lead us to suspect.

Re:Yeah, if DirectX 9 had been around and not evol (1)

robthebloke (1308483) | about a year ago | (#44307093)

Ok, so Direct3D9 is *only* 10.5 years old. My point still stands though. If you really want the latest shiny graphics in your games, you still need to use D3D11 or OpenGL 4. Being able to run a current gen game using D3D9 is not quite as exciting as being able to run a current gen game using D3D11.

Re:Yeah, if DirectX 9 had been around and not evol (4, Informative)

the_cosmocat (1009803) | about a year ago | (#44307181)

You are only taking information that goes the cynical sens you want to give to your comment. Perhaps you should take the date of february 2007. The date of the release of the Direct3D 10 sdk. And then, taking into account some transition months to use this sdk, you see that games using this version is *only* 6 years old (And I'm pretty sure that games using this version was out 1 or 2 years after!). So, for those that are not fanatics and don't absolutely need the LAST games, that should be a first good step!

Re:Yeah, if DirectX 9 had been around and not evol (4, Insightful)

dywolf (2673597) | about a year ago | (#44307499)

combined that with D9 BEING probably the longest lasting of them, many games, including new, still support it natively due to the large number of cards still out there that arent D11 compatible. with cards 5 and 6 years old still running games, even new ones, more than acceptably, the constant pressure to upgrade to the newest shiny constanly is lagely absent. and that would leave a huge market untapped if they didnt support it. its much different than a few years before when cards had a much shorter lifecycle, and you could expect your market to be upgrading every year.

(frankly I cant see a whole helluva lot of difference between 9 and 11 when playing, if the devs did their job right, unless I pause the game and actually look for the differences. When running and gunning, its not really noticable unless the devs were lazy. even crysis3 can be made to work with 9, and it still looks beautiful)

Re:Yeah, if DirectX 9 had been around and not evol (1)

dywolf (2673597) | about a year ago | (#44307513)

addendum: point being, with such a large installed base of cards that run 9, and games that run 9, getting 9 running more efficiently on linux is a big boon to linux gaming.

Re:Yeah, if DirectX 9 had been around and not evol (0)

Anonymous Coward | about a year ago | (#44310617)

The reason you can't see much, if any, difference between Direct3D9 and Direct3D10/Direct3D11 is because game developers are wasting their time implementing the exact same thing across multiple Direct3D versions. There are things one can do with modest Direct3D10 and Direct3D11 hardware which to replicate in Direct3D9, even on the same hardware, would be horrendously slow.

It's a case of new features not being utilized for anything near what they can really do because they are afraid of leaving users that refuse to upgrade past Windows XP out of their product. I don't understand it at all when the alternative to Direct3D is OpenGL which allows you to use the latest features your graphics card supports on even the oldest OS as long as a working driver is present.

I honestly laughed my ass off when you said "if the devs did their job right". If the devs really did their job right you would see a massive jump in quality going from Direct3D9 to Direct3D11. But no they didn't do their job right, they just did it good enough to port features of their implementation to the new API, lazy shit.

Re:Yeah, if DirectX 9 had been around and not evol (0)

Anonymous Coward | about a year ago | (#44307593)

Not to mention that DX11 can do many things 2x+ than DX9. Not all things as in you will get 2x the FPS, but a decent amount of features that will keep your FPS from dipping as often during complex scenes.

DX9 needs to stop being used and everyone needs to switch to DX11 or even better, OpenGL4.

Re:Yeah, if DirectX 9 had been around and not evol (4, Insightful)

0123456 (636235) | about a year ago | (#44308597)

DX9 needs to stop being used and everyone needs to switch to DX11 or even better, OpenGL4.

If Microsoft had ported DX10 and DX11 to XP, rather than using them as a club to beat XP users into switching to Vista, everyone already would have.

Re:Yeah, if DirectX 9 had been around and not evol (0)

Anonymous Coward | about a year ago | (#44308987)

If you really want the latest shiny graphics in your games

The average person doesn't have the hardware, never mind the software, for this, and they don't really tend to care.

Re:Yeah, if DirectX 9 had been around and not evol (0)

Anonymous Coward | about a year ago | (#44309905)

Ok, so Direct3D9 is *only* 10.5 years old.

Wow, you really think the other AC was being a pedant about 1.5 years?

Protip: DirectX9 was last updated in June of 2010.

Re:Year of Linux on the desktop (1)

Mike Frett (2811077) | about a year ago | (#44307549)

It's silly anyway, why in the hell would you want to lock yourself into an API (DX) that only works on one platform and could be pulled from under you at any time. And some devs complain about the difficulty of porting their game to Linux/Mac, well hey, if you had used a Cross-Platform API and Engine to begin with you wouldn't be having that problem DUH.

Ignorance and stupidity will be the death of this world I swear....

Re:Year of Linux on the desktop (1)

mwvdlee (775178) | about a year ago | (#44308127)

Yeah, and somehow knowing that will magically alter all the compiled code of decade-old games written by other people.

Re:Year of Linux on the desktop (1)

lister king of smeg (2481612) | about a year ago | (#44309117)

thats aimed at game devs not users,

Xbox 360 or Xbox One (1)

tepples (727027) | about a year ago | (#44310101)

why in the hell would you want to lock yourself into an API (DX) that only works on one platform and could be pulled from under you at any time.

Because if you want to port to Xbox 360 or Xbox One, it's the only API available to you. For some genres, a port to an Xbox platform is more lucrative than a port to GNU/Linux or OS X.

Re:Year of Linux on the desktop (1)

fast turtle (1118037) | about a year ago | (#44308353)

Says you. My two main games are Guildwars and Total Annihilation and both of them are from Win95 era though GW has finally moved upstream enough that they've dropped support for Win9x from the client. For me, this sounds like a decent performance improvement that actually benefits me as both run well on Wine 1.4

Re:Year of Linux on the desktop (0)

Anonymous Coward | about a year ago | (#44309305)

It is not about one giant leap into the Linux desktop domination. It is more about the steps required to get there of which this is one. Microsoft has now, through its own actions, pushed many people that I know personnaly over to Linux. They are the number one catalyst to cause the year of the Linux Desktop.

Re:Year of Linux on the desktop (1)

Jeff Flanagan (2981883) | about a year ago | (#44307319)

All we have to do is put some desks in the server rooms to accomplish that. Linux is very popular where most of the computing is actually done.

Year of Nothing on the Desktop (1)

Valdrax (32670) | about a year ago | (#44310559)

Who cares? Linux (counting Android and other systems) is doing quite well everywhere else, and between servers, laptops, phones, tablets, and dedicated gaming consoles, who even needs a desktop anymore? The slump in PC sales suggests the answer is "no one." (Thank you, Windows 8!)

If 2014 is the Year of Nothing on the Desktop, then Linux can count itself a winner.

simply... (4, Interesting)

wonkey_monkey (2592601) | about a year ago | (#44306719)

can run games for the open-source Radeon and Nouveau drivers without simply converting the Direct3D commands into OpenGL.

Presumably "simply" isn't the right adjective, because it implies that converting from Direct3D to OpenGL is the better way of doing things - what's the problem with converting Direct3D commands to OpenGL? Slow?

Re:simply... (3, Informative)

Tx (96709) | about a year ago | (#44306753)

The last line of the TFA implies that it's a performance issue; "It will be interesting to see if this Direct3D 9 state tracker takes off for Linux and whether Wine developers will optionally support it for better performance.". It would have been nice to have some more info on why this is worth doing though, it seems to be one of those articles written for people who already follow the subject, rather than casual readers.

Re:simply... (0)

Anonymous Coward | about a year ago | (#44306801)

This is Slashdot! In theory, all articles should be written for those who follow the subject rather than casual eaders. Of course, in practice...

Catchup for those not following the subject (4, Informative)

DrYak (748999) | about a year ago | (#44307241)

it seems to be one of those articles written for people who already follow the subject, rather than casual readers.

Yup, indeed, it's just a small quick news on phoronix.

For the others:
- Mesa is the opensource 3d graphics driver used on Linux for opensource drivers.
(- the closed sourc drivers uses their own sauce instead)

- the old classic mesa is just a plain big monolith exposing OpenGL (that's what Intel provide for their official opensource drivers.
- the modern Gallium3D Mesa is a modular architecture for 3D API (that's what is used by modern opensrouce drivers, like the reverse engineered Nouveau for Nvidia, or the AMD-sponsored Radeon driver).

The idea of the Gallium3D modular design:
- on one side you have low-level drivers handling the hardware (or the CPU in the case of the LLVMpipe software driver) and exposing the basic GPU functionnality.
- on the other side you have "state tracker" high-level interfaces speaking the various API (OpenGL, OpenCL, etc.)
This make the whole development much faster and help code reuse.
- If a new hardware comes, you only develop a new low-level drivers exposing the functionnality of this new GPU. And bam! you get automagically support for any API for which you provide the necessary functionnality. No need to write a complete new OpenGL driver from scratch.
(That's how most of the newer opensource drivers, like all the new GPU for ARM SoC are implemented or are going to be implemented)

-If you want an additionnal API, you only develop a state-tracker, the high level part of Gallium which speaks the API. And bam! you get automagically support for any hardware whose low-level provide enough functionnality. No need to write a full Direct3D stack for each single available hardware, just write a generic stack for Gallium.
That's what is being done regarding DX3D9 in this news.

Up until now, the way 3D worked for Windows software running under Wine, is that wine has a layer that intercepts all DX3D calls and retranslate them into OpenGL then sends those to the running OS (to Linux or Mac OS X).
It works, but it's difficult, and it's slow: this translation layer comes at a cost. Even more so because OpenGL and DX3D do not function in the same way, so implementing some stuff requires quite a complicated translation.

Now this Gallium stack is much more direct, it receives Direct3D calls and directly execute them using the low-level functionnality exposed by a hardware layer. It doesn't need to go throug a complex intermediate translation step.

The advantages of this approach are:
- It's much faster that way, because we directly call hardware function, instead of having to map to concept from another API (openGL) which doesn't work the same way.
- It's quick to develop, specially because Gallium has already support for most of the needed functionnality to provide Direct3D 9 (unlike an older Direct3D 10/11 driver which were attempted earlier).
- For older Radeon hardware, the opensource driver is what AMD recommand, they are stable enough, fast enough, and still maintained. So you're probably getting near native spead when running windows software on linux through wine, instead of slow down due to the opengl translation layer of wine.

The problems of this approach are:
- It only works with Gallium.
- Intel official opensource driver don't use it (but there are attempts by 3rd parties to make gallium drivers)
- AMD official drivers for current modern hardware is the closed-source catalyst (their own different stack).
So either you get fast up-to-date Catalyst drivers, which only speak OpenGL and you have to put through with the wine translation layer. So you lose performance.
Or you use experimental not-yet stable opensource drivers, which are gallium and thus do speak Direct3D 9, but they aren't perfected yet and are slower than Catalyst. So you lose performance too (albeit at a different level)
(At least, on the radeon side, AMD is collaborating a lot and releasing specs and paying developpers, and even designing the current generation of GPU with opensource in mind, so this is bound to change in the future).
- nvidia does only provide binary drivers and does not collaborate for their desktop GPUs (only for ARM SoC Tegra). So it's openGL only.
the opensource gallium driver is completely done by pure reverse engineering, and thus its performance is random. So it's not necessarily worth it.

- Gallium only exists on Linux (and is in the process of being ported to a few BSDs).
- Thus all this effort are mostly Linux-only.
- Mac OS X user WILL NOT BENEFIT from it (no the rest of BSD users, nore Solaris, nor whatever other POSIX compatible OS you come up with, nor ReactOS windows-clone).

In the past, Wine developpers weren't that much interested by the previous attempt at Direct3D 10/11, mainly because it's only targeting a single OS and only a subset of opensource drivers.
Also the other difficulties were because Direct3D 10/11 doesnt map that good to what was available in Gallium at the time and required more maintenance (this is different now, much more easy with Direct3D 9).

What we are waiting now on Phoronix:
the next news, featuring a bench mark.
- Comparing direct3d vs. translation layer, to see how much speed is gained by avoiding the later.
- Comparing it with the binray drivers, to see if slower but direct gives better result thant proprietary but translated.

Re:simply... (1)

pipatron (966506) | about a year ago | (#44306765)

It might also have issues with things "lost in translation", but that's just a guess, I know nothing about it.

Re:simply... (2)

Gaygirlie (1657131) | about a year ago | (#44306951)

Presumably "simply" isn't the right adjective, because it implies that converting from Direct3D to OpenGL is the better way of doing things

No, it only implies simplicity and simplicity in and of itself does pose no implied quality -- something can be done simply, but it may still be the inferior choice in the long run as opposed to a more complex solution.

- what's the problem with converting Direct3D commands to OpenGL? Slow?

To put it short: yes. The arguments passed to D3D functions, for example, may be of different formats, number and lengths than those passed to OpenGL and therefore will require translation in the middle, ie. several extra steps. Obviously having to do extra steps in-between will result in a performance hit.

Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44306759)

We're on D3D11 now people.

Re:Welcome to 2002! (2, Interesting)

Anonymous Coward | about a year ago | (#44306779)

Which nobody gives a damn about because it requires Windows version Whatever to run, and offers no real benefits besides some tweaks to tessellation, which engine writers don't require anyway because they don't want to shoot themselves in the foot by requiring clients to run Windows version Whatever. Unless the 2002 you came from had Skyrim and SC2, I think you're missing the point.

Re:Welcome to 2002! (3, Interesting)

damnbunni (1215350) | about a year ago | (#44307029)

Do you not play games that are even vaguely modern? Some games offer both DX9 and DX10/11 renderers. The 10/11 renderer generally looks a lot nicer.

And the 11 renderer is usually faster than the 9 renderer. So since DX11 games - or the same game with a DX11 engine as well as a DX9 engine - both look better and run faster than DX9 games, I give a damn about it.

'Windows version whatever'? Let's look at the latest Steam Hardware/Software Survey. Granted, that only reflects Steam users but that's a huge sample size.

49.52% are running DirectX 11 hardware on a Windows that supports it.

25.04% are running DirectX 10 hardware on a Windows that would support 11 if their hardware did.

21.08% are running DirectX 10 capable hardware on Windows XP.

And the rest are running DirectX 9 or 8 hardware.

The only people who would need 'windows version whatever' are those with DX10 hardware and Windows XP. Sure, 20% of the market isn't nothing, and there ARE games that require DirectX 10/11.

Quite a few upcoming games only support DirectX 10 and 11 - ARMA 3, Battlefield 4, Dragon Age Inquisiton, Mirror's Edge 2, the next Need for Speed. and so one. A number of releases in the last year or two only support 10/11 also.

Presumably Activision, 2K Games, EA, and Sega don't feel dropping DirectX 9 support is 'shooting themselves in the foot' because they've all done it in recent big releases.

Re:Welcome to 2002! (1)

drinkypoo (153816) | about a year ago | (#44307067)

Do you not play games that are even vaguely modern?

Not me, I'm still playing the old games because they new ones are shit, like in the case of Civ IV or Simcity IV.

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44307137)

You clearly are quite out of touch since those games listed are not even the latest versions in those franchises.

Re:Welcome to 2002! (1)

drinkypoo (153816) | about a year ago | (#44307195)

You clearly are quite out of touch since those games listed are not even the latest versions in those franchises.

Sorry, my sentence was a little backwards, but those are the windows games I'm playing. I also have an Xbox 360 which I bought used, and whose optical drive I have replaced. I bought it on the theory that it hasn't RROD'd yet even though it's old. SFSG.

Re:Welcome to 2002! (2)

damnbunni (1215350) | about a year ago | (#44307197)

Sure, there are some crappy new games.

But there are piles and piles and piles of shitty old games, too.

The percentage of good games to crap games has stayed remarkably consistent since I started playing them in the '70s.

Re:Welcome to 2002! (1)

gmack (197796) | about a year ago | (#44307865)

The problem with the way you phrase that is you have no category for genres that have been dropped. These days everything has been pretty much reduced to sports, FPS or MMORPG and if you don't like any of those there will be fewer games to play.

Re:Welcome to 2002! (1)

KingMotley (944240) | about a year ago | (#44309201)

Or moved to the mobile platform.

Re:Welcome to 2002! (1)

drinkypoo (153816) | about a year ago | (#44309465)

Sure, there are some crappy new games.
But there are piles and piles and piles of shitty old games, too.

Those games are irrelevant because I'm not playing them.

Re:Welcome to 2002! (2)

loonycyborg (1262242) | about a year ago | (#44308235)

And the 11 renderer is usually faster than the 9 renderer. So since DX11 games - or the same game with a DX11 engine as well as a DX9 engine - both look better and run faster than DX9 games

The differences are too little to be noticeable to untrained eye. This is why devs aren't in any hurry to leave DX9.

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44309017)

Except they are. Every new game where graphics are an emphasis has moved on from DX9, and so are the engines. UE4 is supposedly dropping DX9, Frostbite (you know, that one that EVERY non-sports EA game is now using) dropped DX9, and various other games have been mentioned already.

The only reason DX9 is still used is because a team doesn't want to learn a new API, or because management said they want maximum coverage.

Re:Welcome to 2002! (1)

TemporalBeing (803363) | about a year ago | (#44310713)

Except they are. Every new game where graphics are an emphasis has moved on from DX9, and so are the engines.

You own comment reflects the issue. Not every games puts an emphasis on graphics, and IMHO the ones that suck at game play try to emphasize graphics to distract the buyers in order to keep sales going. While having something look good is nice, having better game play is required.

Re:Welcome to 2002! (1)

fast turtle (1118037) | about a year ago | (#44308559)

Nope. My latest game is Win95 compatible. I don't bother buying anything newer because of the god damn DRM (digital restrictions manager) that's included. I also don't see why my game needs an always on Net connection for single player mode. Sure Guildwars does but then it's an online game without any subscription fee (WoW, C2D and others need not apply).

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44306789)

Yep. DirectX 9, just like OpenGL 1, is all about the legacy fixed-function hardware and belongs the old world of 3D graphics.

Re:Welcome to 2002! (3, Insightful)

Hsien-Ko (1090623) | about a year ago | (#44306795)

DX9 is rather like OpenGL 2.0 really, with large emphasis on HLSL. The "all about legacy fixed function" DirectX is DX7.

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44307121)

DX9 supports both a fixed function pipeline and HLSL. DX10+ is HLSL only.

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44308703)

either way, its about 7 years too late and pretty silly: doesnt wine already do this... plus your hardware acceleration has to work through these open source drivers in opengl, which do not support my nv8600 GTS apparently. why dont we work on getting opengl properly implemented before we start hacking DX support? k thx.

Re:Welcome to 2002! (5, Interesting)

bfandreas (603438) | about a year ago | (#44306815)

We're on D3D11 now people.

We're de-facto still stuck on DirectX9 due to the current console generation. Most games are half-arsed ports. And if they tack on new features for the PC version then it is bound to go horribly wrong likeit did for Rage and Arkham City.
But we are relatively safe since in most cases they don't even bother with proper mouse control in menu screens and leave us stuck with an FOV that's suitable for a TV screen that's a couple of meters away.
Yesteryears games brought to you today by the same people who invented safe points, two-weapon-limits and platform exclusives.

Re: Welcome to 2002! (1)

tepples (727027) | about a year ago | (#44306915)

Mouse control in menus is fine if the game itself is controlled with a mouse, such as FPS or RTS. But some games are played with the keyboard only or with a USB gamepad, such as platformers, fighting games, and falling block games. What advantage does mouse control in menus or in the game bring for those genres?

Re: Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44307245)

Mouse control in menus is fine if the game itself is controlled with a mouse, such as FPS or RTS. But some games are played with the keyboard only or with a USB gamepad, such as platformers, fighting games, and falling block games. What advantage does mouse control in menus or in the game bring for those genres?

Other than being a lot faster? Using controller buttons to get through menu options is little better than hitting Tab over and over.

Re: Welcome to 2002! (1)

tepples (727027) | about a year ago | (#44308451)

Other than being a lot faster?

If you're spending a lot of time tweaking complicated things in the menu, I can see how a mouse might help. But for something quick, how exactly is it "faster" to put down the gamepad and pick up a mouse to navigate the menu and then vice versa to when returning to the game?

Re: Welcome to 2002! (1)

ericloewe (2129490) | about a year ago | (#44307269)

Not much, but those are the minority of games (how many games have you recently played with no mouse?).

I wanna be a minority (1)

tepples (727027) | about a year ago | (#44308577)

You claim that video games in genres that don't benefit from a mouse "are the minority of games". By minority do you mean 49% or 1%? As for recently played titles that aren't FPS/RTS, let's see: Super Smash Bros. Brawl, Sonic 4 Episodes, Sonic Generations, Giana Sisters, PiX Bros., FHBG, Streemerz, or anything else whose controls involve moving in a direction, jumping, and attacking. Yes, I'm aware that some of these are first-party console games and therefore not a perfect match for a discussion about menu controls in PC games, but that doesn't rule out a PC game in the same genre. For example, instead of Brawl, choose Street Fighter IV. Why put away your MadCatz Sanwa joystick and pick up a mouse to select your character? And even on consoles whose controllers have a mouse equivalent, like the Wii Remote, some games ignore the pointing feature, such as Brawl, because the menus are built not to need it.

Re: Welcome to 2002! (1)

Qzukk (229616) | about a year ago | (#44308179)

Mouse control in menus is fine

His point is that it wasn't fine. Try the PC port of Saint's Row 2 and using whatever fucked up keymap they came up with to navigate menus (I think it was ctrl and shift) not even the arrow keys much less wasd. Borderlands's menu is all sorts of jacked up (doesn't work well with mouse OR keyboard) Borderlands 2's menu is better but still flakes out if you forget to move the pointer off the inventory while trying to scroll it.

Re: Welcome to 2002! (1)

Khyber (864651) | about a year ago | (#44309435)

"Borderlands' menu is all sorts of jacked up (doesn't work well with mouse OR keyboard)"

I've never had a problem with this unless I was running Borderlands on a shitty PC.

"Borderlands 2's menu is better but still flakes out if you forget to move the pointer off the inventory while trying to scroll it."

Never encountered this problem.

Re: Welcome to 2002! (1)

Wildclaw (15718) | about a year ago | (#44310455)

Never encountered this problem.

I can only assume that you either haven't upgraded your inventory size or barely keep any stuff in your inventory and only use it to collect loot.

Because if you actually try to scroll in your inventory with any kind of frequency in borderlands 2 (like if you have a page or more of reserve weapons), then you will often end up with a reverse Y coordinate bug where holding the mouse over the item at the top of the inventory will select the item at the bottom of the inventory and vice versa.

http://www.youtube.com/watch?v=vWu4SK69_M8 [youtube.com]

(the first 20 or so seconds shows what I am talking about)

Re: Welcome to 2002! (1)

Khyber (864651) | about a year ago | (#44310719)

Never had that happen, and also, if you're holding a page or more of reserve weapons, you are doing it wrong, or you suck and need that much weaponry because you don't know how to utilize your character skillset. I might hold two pages of loot and shields, but never weapons.

Re:Welcome to 2002! (1)

Anonymous Coward | about a year ago | (#44306817)

Someone didn't read the article. A D3D11 state tracker was implemented years ago, but it wasn't merged with WINE because at the time DX10/11 was already working through a translation layer.

Re:Welcome to 2002! (1)

someone1234 (830754) | about a year ago | (#44306867)

I'm fine with Skyrim, thanks.

Re:Welcome to 2002! (1)

ArcadeMan (2766669) | about a year ago | (#44307465)

You'll be fine, until you take an arrow to the knee.

Re:Welcome to 2002! (0)

Anonymous Coward | about a year ago | (#44306909)

We're on D3D11 now people.

Same guy released a D3D10/11 last year, and no one cared.
Most game engines target D3D9 as a design goal and add D3D10/11 as a feature. Also, the AMD open source drivers at the time were incomplete while the Nvidia ones are still mostly only good for the legacy hardware. However, just last week the AMD open drivers were given a substantial code contribution that put them on par with the closed blob. And the Nvidia drivers have seen some mild improvements with a lot of whispers going around about an official FOSS release.

Re:Welcome to 2002! (2)

robthebloke (1308483) | about a year ago | (#44307041)

Most game engines target D3D9 as a design goal

Rarely does that happen. You typically target a thin hardware wrapper that abstracts D3D9 / PS3 / Wii / 360 / iOS, and then build your rendering code off that. This will typically leave you in a situation where (as much as possible) porting from one platform to another is just a case of re-writing shaders. That's the ideal situation anyway. YMMV.

Re:Welcome to 2002! (1)

Khyber (864651) | about a year ago | (#44309513)

YMMV to a degree that it's impossible to port to certain platforms, especially those with limited GPU VRAM.

This is why OGL/OGLES is superior. Either your hardware supports it or doesn't. With D3D, you have to first run it through a software abstraction layer. This is why OGL games (until recently) have always performed better then their D3D counterparts (hell, even the EXPERIMENTAL OGL renderer for UT99 was near-flawless and didn't produce the light-shaking glitch D3D did, at about 50% extra FPS) because you didn't need the additional OS overhead on the CPU.

So you target STANDARDS. OGL/OGLES is a universal standard, even Apple supports it.

Re:Welcome to 2002! (4, Insightful)

davydagger (2566757) | about a year ago | (#44306985)

but there are a whole host catalog of games that use D3D9, in fact I think the vast majority still do, and many popular titles have D3D9 support still.

Good D3D9 support will bring games to linux

Re:Welcome to 2002! (1)

ArcadeMan (2766669) | about a year ago | (#44307493)

Good D3D9 support will bring games to linux

Good D3D9 support means companies will care even less about Linux and will continue to target Windows only.

Re:Welcome to 2002! (1)

Khyber (864651) | about a year ago | (#44309529)

Good, that means more incentive to get a functional (and hopefully direct-to-hardware) translation go-between (hopefully loaded directly into the GPU so the calls are all re-routed in hardware instead of a shit-slow software abstraction layer.)

Re:Welcome to 2002! (1)

Valdrax (32670) | about a year ago | (#44310773)

Okay, cool. Why don't we just not bother implementing D3D9 until we have the full D3D11 stack. I mean, it's not like it's a good idea to bite off a project in reasonable pieces or to release code that's complete enough for many games to run on itself to get it out in the field, being tested and building a userbase. 'Cause if it can't play the latest shiny thing, it's USELESS.

Nah, let's just stick the project in development hell until everyone who might use it and most of the developers who would contribute to it lose interest in it and it withers on the vine like so many other OSS projects to recreate some piece of commercial software.

Moronix (1)

Gothmolly (148874) | about a year ago | (#44306829)

The closing line:

"It will be interesting to see if this Direct3D 9 state tracker takes off for Linux and whether Wine developers will optionally support it for better performance."

What is this, a high school paper? Need to fill space much?

Re:Moronix (2)

Gaygirlie (1657131) | about a year ago | (#44306963)

What is this, a high school paper?

No, a high-school paper would imply at least some sort of quality control.

Re:Moronix (1)

Khyber (864651) | about a year ago | (#44309543)

I guess you haven't read Twilight or Fifty Shades of Grey - both written on a high-school level (and TBH I could write better furry smut than the both of those combined in book and movie form could ever hope to achieve.)

Re:Moronix (0)

Anonymous Coward | about a year ago | (#44307147)

What is this, a high school paper? Need to fill space much?

That's mostly harmless. If you want to see a much better space filler, look here [phoronix.com] . Moronix indeed.

Welp (0)

Anonymous Coward | about a year ago | (#44306851)

Sounds like I'm going to have to find a new book to place under my monitor now.

Moronix (1)

abies (607076) | about a year ago | (#44307123)

Ohhh, it is phoronix, not moronix... they could have chosen better font for logo...

Anyway, I'm confused with the benefits here. From TFA

[...]
The Direct3D 10/11 state tracker excitement was ultimately shortlived as the upstream Wine development community wasn't interested in adding support for it since it's a Linux-only solution and at that it's *limited to those using Gallium3D*, which is basically the open-source *Radeon and Nouveau (NVIDIA) users*
[...]
Direct3D 9 state tracker can work so that the graphics API is natively implemented for the hardware *Gallium3D drivers*
[...]

So old one died because it was working only on Gallium3D and nobody wanted to use it because of that, but new one is also targeting Gallium3D, but it will be successful, because it has not died yet due to Gallium3D dependency?

game on! (1)

Gravis Zero (934156) | about a year ago | (#44307387)

finally i can play those new games that came out... three to 11 years ago. [wikipedia.org]

oh a serious note, progress is always good. it's really too bad transgamming killed cedega but didnt release any DX code. i really liked cedega and yes, paid the subscription fee for it.

Re:game on! (1)

isorox (205688) | about a year ago | (#44307885)

finally i can play those new games that came out... three to 11 years ago. [wikipedia.org]

oh a serious note, progress is always good. it's really too bad transgamming killed cedega but didnt release any DX code. i really liked cedega and yes, paid the subscription fee for it.

Excellent, there have been very few games I've played in the last 13 years. My "current" CD collection includes Unreal Tournament and Klingon Honor Guard. Not that I've played them for years of course.

I do play occasional things I my ithingy, usually ticket to ride.

Re:game on! (1)

Khyber (864651) | about a year ago | (#44309573)

"i really liked cedega and yes, paid the subscription fee for it."

That was your problem and the problem in general with the company. When you target a typically free software environment, you'd better offer your stuff for free or eventually someone else will come along and release a free alternative. And while said alternative might not be the best, it's free, and is 'good enough' that it will gain more support.

9? (1)

Anonymous Coward | about a year ago | (#44307613)

but Direct3D goes to eleven...

next thing you know, we'll finally catch up to Windows 3.11 for workgroups.....oh wait

By the tone of these comments above (1)

Provocateur (133110) | about a year ago | (#44307913)

This is Microsoft's strategy to finally push XP off a cliff, and get longtime XP users to upgrade to something bett...well to something, at least.

This is a step backward (2)

JustNiz (692889) | about a year ago | (#44307977)

Firstly, claiming that this is running natively is hardly accurate. Its running under WINE. Yeah I know Wine Is Not an Emulator blah blah, but running anything under WINE is a very hit-or-miss experience, certainly not what you would assume when someone says its running natively.

What we REALLY need is for developers to switch from using any Microsoft-proprietary APIs at all. Technology such as this enables other developers to continue to backslide on change and continue down a bad Microsoft road as a (bad) way to get things onto Linux. That isn't the solution that anybody wants (except Microsoft because they know trying to run through copied Microsoft APIs shoots Linux in the foot so performance comparisons etc. cant even be a fair fight to begin with).
The only right way (and the only thing that should e called "Native" ) is to switch to using native (i.e. non-microsoft) APIs such as OpenGL. That is the only good approach. everything else will always be a compromised mess.

Re:This is a step backward (1)

lister king of smeg (2481612) | about a year ago | (#44309191)

much of that is due to the horrible support for direct x. this fix a lot of that problem. i wonder if react os will use this.

Re:This is a step backward (1)

nhat11 (1608159) | about a year ago | (#44310643)

Someday it might evolved into something more open but currently it works well and the majority of users are running windows. My only worry is fragmentation and having to buy multiple devices just to play a game I want to play.

Re:This is a step backward (1)

tepples (727027) | about a year ago | (#44310707)

The only right way (and the only thing that should e called "Native" ) is to switch to using native (i.e. non-microsoft) APIs such as OpenGL.

OpenGL for graphics and what for input, audio, asset loading, saved games, and networking?

The next DirectX to be released in 5.... 4..... 3 (0)

Anonymous Coward | about a year ago | (#44308269)

Wait for it.... A new (incompatible) version will be released any day now. It will have huge sweeping changes and more undocumented little gremlins to keep those open source folks at bay....

Remember boys and girls, MS doesn't sell an OS they sell a gaming platform. Anyone who intrudes upon that turf will be met with swift incompatibility!

Re:The next DirectX to be released in 5.... 4..... (1)

Khyber (864651) | about a year ago | (#44309589)

Are you stupid? This is talking about DX 9. It's stuck at 9.0c version with some patches from..... 2008 at the earliest?

Not about DX 11.whatthefuckever.

"DirectX is at 11 now" (4, Informative)

voss (52565) | about a year ago | (#44308411)

How many people still like to play games that are 5..7...10 years old. A lot of people

Even relatively modern games like Civ 5 and WOW are quite happy with direct x 9.

Re:"DirectX is at 11 now" (1)

Rob Bos (3399) | about a year ago | (#44309009)

Nail on the head. What about old games makes them bad? If anything, the time filter eliminates the bad ones.

And for those of us who've always gamed on Linux, being a few years behind is fine with me. I get new-to-me games cheaper. :)

So, better DX9 layer? Huzzah, my existing games run a little bit better, and maybe it opens up some new ones! That's a little exciting.

Re:"DirectX is at 11 now" (1)

Khyber (864651) | about a year ago | (#44309607)

I'm still playing Battletoads on my NES, because most games simply don't offer that challenge that I'm used to.

The gaming industry has dumbed down a LOT. Where we should have had complex games with intuitive interfaces, bean-counters vs creative types, bean-counters always win, unless said bean-counters are also the developers and programmers.

Can I have open 3D drivers? (0)

Anonymous Coward | about a year ago | (#44308491)

Since this is an article about Linux and 3D graphics.

Who should I vote for with my dollar this year? I don't mind having to dualboot with windows to actually play (don't want to much stinky closed source programs on my linux), but I want to go with the best effort.

Nvidia were given the finger earlier, did they improve their dual-GPU system support, or is AMD still leading for open-source support? Do they both ship stub drivers with a blob, and is Intel's last generation any good to run, say, SupCom or Skyrim with a constant decent framerate, fullscreen on low settings? (Links are welcome)

Re:Can I have open 3D drivers? (1)

Khyber (864651) | about a year ago | (#44309639)

Dual-GPU is for bleeding-edge people, despite being around since 3Dfx days. Linux won't target that unless it's for super-computer cluster-style stuff, at least for now.

Although 3Dfx SLI works just fine under Linux and has for years - AMD and nVidia use different implementations, vastly different (as in no rasterops making a GPU render every other line, which effectively forces a vsync to display a frame.)

ATI only? (1)

JustNiz (692889) | about a year ago | (#44309817)

So am I right in my understanding that this only benefits users with ATI GPUs?

What does this even mean? (0)

Anonymous Coward | about a year ago | (#44310197)

The hardware from AMD, Nvidia and now Intel is NOT DX9 or OpenGL whatever- it is a general programmable shader based processing system of proprietary design. The layer of PC software that most closely controls the GPU hardware is NOT anything to do with DX9 or OpenGL or OpenGL ES. The DX or OpenGL layer TRANSLATES concepts from these APIs to the memory and streaming low level functions of the real hardware drivers.

The real problem is this- performance. GPUs are used because they are very fast. Getting DX9 working on a Linux box, and not caring that it is hundreds of times slower than the same hardware running under Windows is cretinous. And it will be hundreds of times slower in all but the simplest paths. Don't be fooled by self-serving benchmarks.

The future is Linux games designed for Linux. This means supporting OpenGL ES2.0 and ES3.0 Companies like AMD, Nvidia and Intel can actually craft first class ES drivers under Linux, and ES3.0 can be considered a perfect replacement for DX9, and better.

Wanna play Dx9 games? here's a clue- make a dual boot to XP, and go game in that environment. Wanna encourage first quality Linux games? Here's a clue- support games written using ES2.0 and ES3.0.

Microsoft has announced the DirectX project is over. The phenomenal success of ARM devices means that OpenGL ES3.0 will eventually be the dominant GPU API. ES3.0 and beyond can run just as happily under Windows. DX, on the other hand, can ONLY ever run happily under Windows. One GPU API can be great everywhere. One GPU API is only great on a dying platform. Doesn't take a genius to figure out which is going to be the winner.

Well damn that's interesting... (1)

Mashiki (184564) | about a year ago | (#44310941)

Poor DX support is really the only thing that's been holding me back on dumping windows for the last 5-8 years(every year is the year of the linux desktop right?) But, with this, and with any luck DX10/11 eventually, it may very well be enough to push 'nix in whatever flavor into the mainstream market and out of the realm of geeks. And yes, I know there's the oddball non-geek who's using it, or have had someone set it up for them. This on the otherhand if done right will take a major bite out of the Windows market.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>