Direct3D 9 Comes To Linux, Implemented Over Mesa/Gallium3D 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."
simply... (Score:5, Interesting)
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... (Score:4, Informative)
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.
Catchup for those not following the subject (Score:5, Informative)
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
Re: (Score:2)
Further:
Positives:
- Since this turns "A video card driver" into "a low-level hardware driver" + "state machines", and no part is intensively Linux-only, then it could be used to build drivers on other platforms.
Negatives:
- Intel thinks it'll be slower than a more integrated driver like what they build already.
Re: (Score:2)
- Since this turns "A video card driver" into "a low-level hardware driver" + "state machines", and no part is intensively Linux-only, then it could be used to build drivers on other platforms.
Saddly, the only current mainstream back-end relies on Linux' DRI2 architecture, so de-facto Gallium is currently Linux-only, even if the architecture has been touted as- and designed from the beging as- cross platform.
Though, there is the LLVMpipe back-end (which instead runs on the CPU), and there are backend being developed for virtual machine (which forward the instructions from the guest's gallium to the host's gallium).
This could very soon be adapted to windows with the present DirectX 9 state tracker
Re: (Score:2)
Re: (Score:3)
Re: (Score:2)
But isn't it even worse with Gallium? Now you need to translate arguments between the D3D/OpenGL/whatever state machine and the low-level state machine, and then again when the low-level state machine actually speaks to the h
Re: (Score:2)
Moronix (Score:2)
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: (Score:3)
Re: (Score:1)
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.)
Moronix (Score:2)
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
game on! (Score:2)
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: (Score:2)
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: (Score:1)
"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.
Re: (Score:2)
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.
you say that but there was no alternative if you want to play DirectX 9 and 10 games on linux. the difference between the WINE project and Cedega is that Transgaming targeted specific DX9/DX10 games and fixed their codebase until everything in the game worked. games on WINE never had "good enough" support to play the large majority or games and it's still like that. Cedega has been gone for many years and WINE still hasnt caught up.
Re: (Score:2)
cedega only targeted some games but it ran waaaay more than that and certainly more than WINE. few games in the WINE DB actually work properly. there are very few "gold" status games and they all seem to vary from distro to distro.
and why would i muddle around with copying DLLs when it's works just fine with cedega? cedega also has better independent configuration options than even PlayOnLinux.
9? (Score:1)
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 (Score:2)
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 (Score:3)
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: (Score:2)
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: (Score:1)
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: (Score:2)
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?
Re: (Score:2)
Even if DirectX did those things, the proper way for Linux would be:
input: xf86-input-joystick or one of the many other input libraries.
audio: alsa or one of the many other audio libriares.
asset loading: libxml maybe? no idea.
saved games: just dump it as a file to the file system like most games already do.
networking: just use sockets like everyone else does.
No xf86 or alsa on Linux (Score:2)
switch to using native (i.e. non-microsoft) APIs
xf86-input-joystick [...] alsa
These APIs are not available on Windows. They are specific to Linux (or to UNIX in general). Or are you recommending making games exclusive to Linux instead of exclusive to Windows?
just use sockets
UNIX sockets work on UNIX, and Windows sockets work on Windows, but I thought key points of semantics differed between the two.
Re: (Score:2)
>> Or are you recommending making games exclusive to Linux instead of exclusive to Windows?
If you're planning to releasing a game on Linux, then yes there should be a version that uses Linux's APIs not Microsoft's.
A pile of #ifdefs for all but graphics (Score:2)
Re: (Score:2)
There are actually several different projects that do what you're asking.
Perhaps the most well-known one is SDL:
http://en.wikipedia.org/wiki/Simple_DirectMedia_Layer [wikipedia.org]
However if you were a large and/or commercial developer you probably would prefer to develop your own wrapper library rather than use such a project, as then you could have full control of it.
Win32 APIs for things other than graphics (Score:2)
You're saying that like Direct3D alone would solve it.
Windows games use Win32 APIs for things other than graphics. OpenGL is available on both Windows and UNIX, but a lot of the other APIs are available only on Windows or only on UNIX without some sort of translation layer like Wine or Cygwin.
Input and audio were moved out of DirectX
Only keyboard, mouse, and Xbox 360 Controller input were moved out of DirectX. One still needs DirectInput to read HID gamepads. And besides, when audio and keyboard, mouse, and Xbox 360 Controller input were moved out of DirectX, they were still moved to a Microsoft API.
"DirectX is at 11 now" (Score:5, Informative)
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: (Score:1)
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: (Score:1)
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.
ATI only? (Score:2)
So am I right in my understanding that this only benefits users with ATI GPUs?
Re: (Score:2)
no you are wrong
open-source Radeon and Nouveau drivers
Nouveau is the crap open source nvidia drivers
Well damn that's interesting... (Score:2)
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 Wind
Re: (Score:2, Informative)
1998 called.. They want their joke back.
http://slashdot.org/comments.pl?sid=3963145&cid=44259321 [slashdot.org]
Re: (Score:3)
... 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 (Score:2)
Re: Year of Linux on the desktop (Score:5, Funny)
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: (Score:2)
This has the added benefit that if anyone does call you that they will never try to contact you a second time.
Re: (Score:2)
Re: (Score:2, Insightful)
So what we have here is a library that provides access to GPU functionality from 12
Yeah, if DirectX 9 had been around and not evolved (Score:1)
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.
Co
Re: (Score:2)
Re:Yeah, if DirectX 9 had been around and not evol (Score:4, Informative)
Re:Yeah, if DirectX 9 had been around and not evol (Score:5, Insightful)
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: (Score:2)
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: (Score:2)
DX10 I would agree with. DX11 doesn't add that much that is noticeable.
Re:Yeah, if DirectX 9 had been around and not evol (Score:5, Insightful)
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: (Score:2)
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: (Score:2)
Yeah, and somehow knowing that will magically alter all the compiled code of decade-old games written by other people.
Re: (Score:2)
thats aimed at game devs not users,
Xbox 360 or Xbox One (Score:2)
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: (Score:1)
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: (Score:2)
Basically the targeting is for the graphics card, not the OS. Plenty of Windows 8 computers are using cards that are only DX9 capable, even if the DLLs are listed as DX11.1.
Re: (Score:1)
Year of Nothing on the Desktop (Score:2)
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.
Re: (Score:2, Interesting)
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! (Score:4, Interesting)
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: (Score:2)
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: (Score:3)
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: (Score:2)
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: (Score:2)
Or moved to the mobile platform.
Re: (Score:2)
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: (Score:2)
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: (Score:3)
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: (Score:2)
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: (Score:1)
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! (Score:5, Interesting)
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! (Score:2)
Re: (Score:2)
Not much, but those are the minority of games (how many games have you recently played with no mouse?).
I wanna be a minority (Score:2)
Re: (Score:1)
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: (Score:1)
"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: (Score:2)
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.c [youtube.com]
Re: (Score:1)
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: (Score:2)
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.
Let's try it flipped around:
if you're holding a page or more of reserve shields, you're are doing it wrong, or you suck and need that much protection because you don't know how to utilize your character skillset. I might hold two pages of loot and weapons, but never shields.
Translation: "IF U DONT PLAY LIKE ME U SUCK. L2P"
I encountered this for the first time yesterday, it was easily solved by closing and opening the menu again. How many times have I opened the menu and sold things? A lot. How many times has this happened? Once. Also, the scenarios listed are flawed and doesn't account for the simple act of: selling stuff to the vending machines after a run. Exactly where I encountered this event.
Re: (Score:1)
The original game's menu had all sorts of problems clicking on whatever was already highlighted by default, at least before patches. You had to mouse over the other option then click the first option to get it to recognize the click.
This lives on in 2 if you want to turn in a badass token for the first reward in the list. I have to click it twice or move the selection then click it to accept it.
The problem I have is when I'm trying to compare a weapon I want to sell and one of the alternate weapons I have
Re: (Score:2)
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?
Anything you use the control pad's analogue stick for can be done better and faster with a mouse.
Not all games use the analogue sticks though, most notably the three genre's you mentioned. These three genre's are so simple that the platform you play them on hardly matters, control schemes are so limited they are easily replicated on a touch screen (one of the worst game controllers in existence due to a complete lack of tactile feedback). Even fighting games which are the mainstay of the console can be e
Super Mario 64 with a mouse (Score:2)
Anything you use the control pad's analogue stick for can be done better and faster with a mouse.
How would Super Mario 64, where the Control Stick on the Nintendo 64 controller's center handle makes Mario face a direction and move at a given speed, have been controlled with a mouse?
control schemes [for fighters and platformers] are so limited they are easily replicated on a touch screen (one of the worst game controllers in existence due to a complete lack of tactile feedback)
In fact, there's so little feedback that the player can't even feel which button his thumb is over, which means he can't tell where to press for weak, medium, or strong punch or kick without looking away. So I don't see how a fighter could be done on a touch screen. Even platformers, with buttons to jump, use main tool, and
Re: (Score:2)
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: (Score:1)
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: (Score:2)
I'm fine with Skyrim, thanks.
Re: (Score:2)
You'll be fine, until you take an arrow to the knee.
Re: (Score:2)
You should have seen me at the height of my Linux hacking career... I was fearless and took too many risks. But that's what it was all about.
Re:Welcome to 2002! (Score:5, Insightful)
Good D3D9 support will bring games to linux
Re: (Score:2)
Good D3D9 support means companies will care even less about Linux and will continue to target Windows only.
Re: (Score:1)
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: (Score:2)
and if it was more direct to hardware, it would help linux, as it would be more OS agnostic. Then you also have 5 or 6 x86 CPU archectures X86 OS kernels seemlessly handle.
The operating system IS an abstraction layer. If it wasn't, you'd worse hardware fragmentation than android, and thats a far bigger problem than the marginal performance gain you'd think you'd get by writing optimzed code for one CPU family and ONE GPU family.
Re: (Score:2)
It means porting to linux will be easier, as you won't have to re-write the graphics backend to work on OpenGL.
Re: (Score:2)
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 contribu
Re:Welcome to 2002! (Score:4, Insightful)
Re: (Score:3)
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: (Score:1)
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 yo
Re: (Score:2)
So, not only do you mention two separate implementations, but you handily leave out the various extensions that are required for various cards to do the same thing.
Re: (Score:1)
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.
Re: (Score:1)
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.)
Re: (Score:2)
If they are bringing Direct 3D, why not all DirectX - something that includes sound as well, so that everything is taken care of in one package, and one doesn't have to struggle with Alsa, or PulseAudio or anything like it.
On a different note, this project - is it only on Linux, or available on the BSDs as well?
Re: (Score:2)
How is my post offtopic? I was clearly stating my emotion (subject) and opinion (content) to Linux being able to be used with a graphics API other than OpenGL.
Just because I didn't write a long rant exposing an approximation to why I think I feel that way, it doesn't mean the content isn't related to the article.