Valve cooking something big....

vickybat

I am the night...I am...
.

I would like to see whether they can find some way to run Windows games using something like Cedega. Valve could fork Wine and come up with their own variant that could be better. Then bye bye windows and DirectX.

Edit : Just realized that Wine probably needs Windows binaries.

Edit : They could fork Wine and make it compliant with Mantle.

No need for DirectX here. SteamOS has openGL libraries, co-developed by Nvidia.
With that and mantle, directx won't be an absolute requirement.

SteamOS is a completely different platform. No place for wine or directx here.
Games will be developed using open-gl and other non-directx api's like mantle for steamOs.

Imagine something like this -"Games for SteamOs" moniker in the retail copy of next "TombRaider".
 
OP
Desmond

Desmond

Destroy Erase Improve
Staff member
Admin
No need for DirectX here. SteamOS has openGL libraries, co-developed by Nvidia.
With that and mantle, directx won't be an absolute requirement.

SteamOS is a completely different platform. No place for wine or directx here.
Games will be developed using open-gl and other non-directx api's like mantle for steamOs.

Imagine something like this -"Games for SteamOs" moniker in the retail copy of next "TombRaider".

DirectX for games that don't natively support OpenGL or for older games. But then again, we can stream them from the PC.
 

cyborg47

Technomancer
So, could it be the death of directX then?, possibly :p

Though all I'm concerned about is the terrible performance of games on PCs, and it seems like Mantle is going to fix that.
 

vickybat

I am the night...I am...
DirectX for games that don't natively support OpenGL or for older games. But then again, we can stream them from the PC.

SteamOS is PC. You can install it on your system too.
Doing so will simply change your PC into a whole new platform. DirectX has no place here.


Games will be developed for SteamOS in mind. Think this as a direct competitor to windows in gaming. Its a formidable one too.
 
OP
Desmond

Desmond

Destroy Erase Improve
Staff member
Admin
If you have both, a PC and a SteamMachine, you can run Linux games (SteamOS games) on the SteamMachine and you can stream other games from your PC (via in-house sharing). It is not possible to run DirectX-only games on an OpenGL platform, as is the case of various older games or other DirectX exclusive games.
 
Last edited:

vickybat

I am the night...I am...
If you have both, a PC and a SteamMachine, you can run Linux games (SteamOS games) on the SteamMachine and you can stream other games from your PC (via in-house sharing). It is not possible to run DirectX-only games on an OpenGL platform, as is the case of various older games or other DirectX exclusive games.

You are a bit confused mate. Steammachine is a PC. period! Games will be made or ported to SteamOS using open-gl api's.
About the bold part, that's what describes conventional porting. You port games from one api to the other. SteamOS is more broad than simply a linux distro that plays games.
 
OP
Desmond

Desmond

Destroy Erase Improve
Staff member
Admin
You are a bit confused mate. Steammachine is a PC. period! Games will be made or ported to SteamOS using open-gl api's.
About the bold part, that's what describes conventional porting. You port games from one api to the other. SteamOS is more broad than simply a linux distro that plays games.

Isn't it a bit too early to judge it as such? It isn't even out yet. Also, whether a game will be ported or not depends upon the developers of the game. What about games by THQ? THQ is dead so who will port those games?
 

skeletor

Chosen of the Omnissiah
SteamOS is just another Linux distribution with Valve stuff preinstalled + Valve putting up their own interface. They're trying to turn your computer into a living room console/home theatre. That's it.

Install SteamOS on your computer and it becomes equivalent to a "SteamMachine". No need to buy a "SteamMachine" from Valve.

No need for DirectX here. SteamOS has openGL libraries, co-developed by Nvidia.
:confused:

You install nVidia's driver on a Linux machine having an nVidia GPU, you get nVidia's OpenGL libraries/implementation.

You install AMD's driver on a Linux machine having an AMD GPU, you get AMD's OpenGL libraries/implementation. You install SteamOS on a machine having an AMD GPU, you will NOT be using nVidia's OpenGL libraries/implementation.

You use xf86-video-ati (AMD's open source driver) or xf86-video-nouveau (reverse engineered open source driver for nVidia) or xf86-video-intel (Intel's official driver), you use MESA's libraries/implementation (called libgl).

Each company develops their OpenGL library/implementation for their own hardware.

Nothing is being "co-developed". nVidia isn't "co-developing" anything generic as in providing a libgl alternative for AMD, Intel. That's like them writing a driver for AMD cards. They're improving their own drivers, which every company does.
 

vickybat

I am the night...I am...
:confused:

You install nVidia's driver on a Linux machine having an nVidia GPU, you get nVidia's OpenGL libraries/implementation.

You install AMD's driver on a Linux machine having an AMD GPU, you get AMD's OpenGL libraries/implementation. You install SteamOS on a machine having an AMD GPU, you will NOT be using nVidia's OpenGL libraries/implementation.

You use xf86-video-ati (AMD's open source driver) or xf86-video-nouveau (reverse engineered open source driver for nVidia) or xf86-video-intel (Intel's official driver), you use MESA's libraries/implementation (called libgl).

Each company develops their OpenGL library/implementation for their own hardware.

Nothing is being "co-developed". nVidia isn't "co-developing" anything generic as in providing a libgl alternative for AMD, Intel. That's like them writing a driver for AMD cards. They're improving their own drivers, which every company does.

:confused:

I didn't quite get your point. Open-gl is generic isn't it?

What do you mean by open-gl implementation in this context? The open-gl api's are a high level abstraction supporting multiple graphics hardware including nvidia and amd.
What's so non- generic here?

Strengthening the driver is like strengthening a bridge for improved to and fro communication between the hardware and low/high level API's. Nvidia is definitely improving binary driver support
for SteamOS and also plans for supplying proper documentation of their gpu's to Nouveau, for improved open-source drivers. Linus Torvalds also gave a fair positive outlook to nvidia's efforts as seen and read here:

"I'm cautiously optimistic that this is a real shift in how Nvidia perceives Linux," the Linux creator said. "The actual docs released so far are fairly limited, and in themselves they wouldn't be a big thing, but if Nvidia really does follow up and start opening up more, that would certainly be great."

What i've heard is that they had worked on the open-gl api's too i.e implemented/modified some additional methods in the existing open-gl api package. I suppose they are generic.
This is my understanding. Could you please explain more briefly what you meant?
 

srkmish

Ambassador of Buzz
So, does this mean the death of windows? Poor windows , getting mauled by mac, android and now Steam OS. Soon it will be history
 

skeletor

Chosen of the Omnissiah
:confused:

I didn't quite get your point. Open-gl is generic isn't it?

What do you mean by open-gl implementation in this context? The open-gl api's are a high level abstraction supporting multiple graphics hardware including nvidia and amd.
What's so non- generic here?

It's actually the opposite.

The hardware/driver needs to support the API so that OpenGL calls can be understood by the hardware.

OpenGL doesn't support your card. Your card/driver supports OpenGL.

You can't really get a HD 4850 card to support OpenGL 4.x or support DirectX 11. Limited to OpenGL 3.3 and 9. (You still can upto some extent. Apple did it for Intel GMA GPUs. They wrote their own driver involing LLVM/Clang which broke down unsupported calls into simple calls and then used to run on the GPU. Sometimes the new version of OpenGL, subversions like 4.2, 4.3 aren't having dramatic changes. So, they also get supported overtime. Just like nVidia releasing a driver supporting OpenGL 4.4.)

The only thing non-generic is, that you don't know how drivers work. "co-developed by nVidia" - get rid of the easy-go fanboyism. :)

The Linux Graphics Stack | Clean Rinse
Now comes the fun part: modern hardware acceleration. I assume everybody already knows what OpenGL is. It’s not a library, there will never be one set of sources to a libGL.so. Each vendor is supposed to provide its own libGL.so. NVIDIA provides its own implementation of OpenGL and ships its own libGL.so, based on its implementations for Windows and OS X.

If you are running open-source drivers, your libGL.so implementation probably comes from Mesa. Mesa is many things, but one of the major things it provides that it is most famous for is its OpenGL implementation. It is an open-source implementation of the OpenGL API. Mesa itself has multiple backends for which it provides support.

What i've heard is that they had worked on the open-gl api's too i.e implemented/modified some additional methods in the existing open-gl api package. I suppose they are generic.
This is my understanding. Could you please explain more briefly what you meant?
There is no 'existing' generic OpenGL package/library from Khronos. nVidia provides its own OpenGL package/library/implementation. AMD provides its own. Mesa provides its own.
 

vickybat

I am the night...I am...
@ ico

Ok, i'm starting to get what you're saying.

Read the following taken from wiki page of open-gl:

OpenGL is an evolving API. New versions of the OpenGL specification are regularly released by the Khronos Group, each of which extends the API to support various new features. The details of each version are decided by consensus between the Group's members, including graphics card manufacturers, operating system designers, and general technology companies such as Mozilla and Google.

In addition to the features required by the core API, GPU vendors may provide additional functionality in the form of extensions. Extensions may introduce new functions and new constants, and may relax or remove restrictions on existing OpenGL functions. Vendors can use extensions to expose custom APIs without needing support from other vendors or the Khronos Group as a whole, which greatly increases the flexibility of OpenGL. All extensions are collected in, and defined by, the OpenGL Registry.

When i said "Co-developed", extensions is what i meant. The additional methods/functions that trigger draw calls for some extra functionality over previous versions.
Of-course you have to code the driver accordingly to use that extra set of extensions.

So here you are saying if Nvidia extends the open-gl api with a method, lets say "xyz" that supposedly arranges the vertices in a 3d shape. Now if AMD wants to do the same thing, it cannot call "xyz"
but write its own method "abc" that does the same thing and extend its own version of open-gl api and design its driver accordingly. Am i getting this right?
 
Last edited:

skeletor

Chosen of the Omnissiah
So here you are saying if Nvidia extends the open-gl api with a method, lets say "xyz" that supposedly arranges the vertices in a 3d shape. Now if AMD wants to do the same thing, it cannot call "xyz"
but write its own method "abc" that does the same thing and extend its own version of open-gl api and design its driver accordingly. Am i getting this right?
No, I'm not saying this. :)
 

skeletor

Chosen of the Omnissiah
What I'm saying is very clear. Any Linux distribution including SteamOS has nVidia's OpenGL libraries only and only if nVidia's driver is installed. Otherwise it doesn't.

"SteamOS has OpenGL librariers co-developed by nVidia" --> this makes no sense because nVidia has no hand in making a generic OpenGL library, like the Mesa guys do.
 

vickybat

I am the night...I am...
What I'm saying is very clear. Any Linux distribution including SteamOS has nVidia's OpenGL libraries only and only if nVidia's driver is installed. Otherwise it doesn't.

"SteamOS has OpenGL librariers co-developed by nVidia" --> this makes no sense because nVidia has no hand in making a generic OpenGL library, like the Mesa guys do.

So according to what you say, if AMD driver is installed along with supported hardware, then AMD's open-gl libraries are used. So you are saying there are multiple libraries for multiple vendors and each come into play when either's driver and supporting hardware are present?

You were right about the co-developed part. These are what nvidia has done according to their press release:

"Nvidia engineers embedded at Valve collaborated on improving driver performance for OpenGL; optimizing performance on Nvidia GPUs; helping to port Valve's award-winning content library to SteamOS; and tuning SteamOS to lower latency, or lag, between the controller and on-screen action," the company wrote in a press release. So potential hardware components likely would come by way of Nvidia as well -- though nothing is certain on that front.

So there has to be a common api. What i don't understand is "Nvidia's Open-GL". There is nothing like "Nvidia's DirectX" right?
 

skeletor

Chosen of the Omnissiah
So according to what you say, if AMD driver is installed along with supported hardware, then AMD's open-gl libraries are used. So you are saying there are multiple libraries for multiple vendors and each come into play when either's driver and supporting hardware are present?
yes.

So there has to be a common api. What i don't understand is "Nvidia's Open-GL". There is nothing like "Nvidia's DirectX" right?
Because providing D3D/DirectX libraries is Microsoft's job. They've taken the responsibility onto themselves. Driver only needs to listen D3D calls there. I don't know how Windows works anyway. Not even concerned with it.

But from what I know is, Microsoft hasn't taken any responsibility of shipping OpenGL libraries by default. So, drivers need to install those i.e. ship their own implementation. eg, atioglxx.dll, nvoglv32.dll. Microsoft only ships opengl32.dll in your Windows\system32 folder which only supports OpenGL 1.1 functions.

So, in Windows also it's upto the vendors to provide "their" OpenGL implementation.
 

vickybat

I am the night...I am...
Valve's Controller Has Been Tested. Here Are Some Impressions

The controller is nothing like what we are used to. Its very different and the feedback has been positive by game developers.
 
Top Bottom