News for hackers. Stuff that matters.
Re:Why you should use OpenGL and not DirectX by AshleysBrain on Thursday December 05, 2013 @06:49AM (#6853924)
Isn't mobile and the web the decider these days? Article is from 2010, but consider if you want to develop 3D on any of these platforms:

iOS - OpenGL ES

Android - OpenGL ES

Mac - OpenGL

Linux - OpenGL

HTML5 - WebGL (based on OpenGL ES) - even in IE!

Emerging platforms like Tizen, Firefox OS - OpenGL ES/WebGL

DirectX is just for Windows and Windows Phone. Isn't it getting to the point where the bother of having to write a DirectX port might cause developers to skip the Windows platforms, or stick to OpenGL on Windows desktop? Windows isn't as overwhelmingly important as it used to be, and couldn't the fact that DirectX is different start to work against MS? Imagine if Blackberry came out with their own custom 3D API - wouldn't that only serve to hurt them?

Re:Why you should use OpenGL and not DirectX by moep on Thursday December 05, 2013 @08:28AM (#6854229)
My hope is that the SteamOS/Steam Machines movement will finally tip the scales in favor of OpenGL. A "killer app" that is fully OpenGL optimised with a delayed or worse performing DirectX port would seal the deal. If only Valve had more franchis3s...
Re:Why you should use OpenGL and not DirectX by chadwickthebold on Thursday December 05, 2013 @10:36AM (#6854876)
I'd be willing to bet serious money that if Valve released HL Ep.3 with the Steam Box next holiday season, they could upgrade their mattress stuffing from $20s to $100s. Even if they released Windows and Linux versions simultaneously, they would absolutely kill it.
Re:Why you should use OpenGL and not DirectX by pjmlp on Thursday December 05, 2013 @07:25AM (#6854038)
Game consoles - proprietary 3D APIs

OpenGL != OpenGL ES != WebGL, yes they are all based on the same concepts, but require separate code paths and different shader versions.

Re:Why you should use OpenGL and not DirectX by rpedela on Thursday December 05, 2013 @09:10AM (#6854414)
On Linux (I assume Mac too but haven't tried), you can force yourself to OpenGL ES. In fact, I would recommend it. The nice thing about OpenGL ES is that there is only one main way to do things so it is a lot harder to use something slow like glBegin().
Re:Why you should use OpenGL and not DirectX by CodeWithCoffee on Thursday December 05, 2013 @09:00AM (#6854367)
> OpenGL != OpenGL ES != WebGL

Whilst technically true, WebGL is designed to have API compatibility with OpenGL ES (2), which in turn is based off of OpenGL (2). OpenGL ES 3 and WebGL 2 are beginning to emerge and are based off of OpenGL 3. In my experience shaders that work with WebGL will also work with OpenGL ES 2 and OpenGL 2.1. Equivalent versions tend to use the same concepts. On the other hand, code written for desktop (v3+) won't work on mobile, because the desktop version is one version ahead of mobile (and I imagind that it will be for several more versions).

Re:Why you should use OpenGL and not DirectX by jcromartie on Thursday December 05, 2013 @10:30AM (#6854839)
You can more-or-less program to the OpenGL ES API under full desktop OpenGL, since ES is a subset of the full API.
Re:Why you should use OpenGL and not DirectX by laumars on Thursday December 05, 2013 @09:18AM (#6854447)
> Game consoles - proprietary 3D APIs

Back in the day that was true, but I don't think that's the case these days. Xbox is obviously DirectX. Wii was OpenGL, and I think Sony used OpenGL as well.

Re:Why you should use OpenGL and not DirectX by rblstr on Thursday December 05, 2013 @09:43AM (#6854571)
Sony have some shitty support for OpenGL. Any developer worth his salt used Sony's API.

Wii had its own API too, though closer to OpenGL, still wasn't OpenGL.

I'm a huge fan of OpenGL, but evangelists have been spreading misinformation about OpenGL just as much as they accuse DirectX as.

Re:Why you should use OpenGL and not DirectX by pjmlp on Thursday December 05, 2013 @09:59AM (#6854658)
I really don't get how OpenGL support for consoles became such a urban legend.

Anyone that cares about graphics programming on game consoles knows how broken or non existent such support is.

Re:Why you should use OpenGL and not DirectX by jcromartie on Thursday December 05, 2013 @10:34AM (#6854860)
It's because console development is a fairly secretive process. The SDKs are all kept under a fairly tight lid, and unless you either work with it yourself or personally know someone who is willing to spill the beans, you cannot get a good idea of the process.
Re:Why you should use OpenGL and not DirectX by pjmlp on Thursday December 05, 2013 @10:52AM (#6854992)
True, but that is no reason to start spreading the falsehood that OpenGL is everywhere used on consoles, as many FOSS advocates do.

Specially when enough information is actually publicly available for anyone that cares about game development, in online forums, games magazines, conferences and game courses.

Re:Why you should use OpenGL and not DirectX by laumars on Thursday December 05, 2013 @10:59AM (#6855055)
To be fair, the reason I though the Wii supported OpenGL was because that's what I thought I read from Nintendo when I was seriously considering writing some homebrew games for my Wii.

As to why and where I gained this misinformation I don't know. But somewhere along the line I've gotten my wires crossed.

Re:Why you should use OpenGL and not DirectX by panzi on Thursday December 05, 2013 @06:06PM (#6858068)
Maybe the homebrew libs (libogc) support OpenGL? I doubt that you can use to original Nintendo SDK to write homebrew.
Re:Why you should use OpenGL and not DirectX by pandaman on Thursday December 05, 2013 @11:59PM (#6859472)
With the game programming being secretive and so many people only being able to discuss it anonymously there should be a way to separate insiders from people who like to pretend to be one on the internet. "PS2/3/4 OpenGL" is one shibboleth we can use for this purpose.
Re:Why you should use OpenGL and not DirectX by pjmlp on Friday December 06, 2013 @02:08AM (#6859858)
The funny thing is that for the PS you don't even need to be an insider, as Sony makes many of their papers freely available.
Re:Why you should use OpenGL and not DirectX by Xixi on Thursday December 05, 2013 @12:32PM (#6855711)
Keep in mind that DirectX and OpenGL are first and foremost abstraction layer on top of the GPU. Consoles have a fixed hardware, so you can skip a large part of these and write code directly for the GPU.

I don't know how much still holds for the XBox One, but for instance the XBox 360 version of DirectX is very different from the PC version: it's much closer to the metal and exposes pretty much all the GPU functionalities.

Here is a thread talking about XBox 360 dev: http://beyond3d.com/showthread.php?t=62049

Re:Why you should use OpenGL and not DirectX by EpicEng on Thursday December 05, 2013 @03:25PM (#6856950)
Yeah, if all you care about is candy crush and the random pay to win adventure game. No one is playing "real" games on tablets or phones, nor will they be anytime in the foreseeable future.
Re:Why you should use OpenGL and not DirectX by MBCook on Thursday December 05, 2013 @04:39PM (#6857465)
> No one is playing "real" games on tablets or phones, nor will they be anytime in the foreseeable future.

Could you explain that? I've played some pretty great games on my iPhone/iPad over the last few years. There certainly are games that could stand up to the average PC release (remember BattleField 7 and Call of Duty 18 are not average). Many are at least easily comparable to games of the 16 bit era.

A sample from my purchased apps list: Battleheart, Beat Sneak Bandit, Brainsss, Device 6, Fieldrunners, Edge, Game Dev Story, Girls Like Robots, One Tap Hero, Punch Quest, The Room, Slayin, Spider, Spy Mouse, Star Command, Supermagical, Tiny Heroes, Tiny Thief, Waking Marks, and Zenbound.

This doesn't include 'tiny' games, ports, digital version of boardgames, etc.

Re:Why you should use OpenGL and not DirectX by EpicEng on Thursday December 05, 2013 @05:06PM (#6857660)
All of your examples are casual games.

WoW, Rift, Guild Wars, SC, competitive FPS's, Witcher style RPG's, Elder Scrolls, etc. these are not games you will be playing on a tablet. There exists a clear divide between casual and serious gamers.

I don't mean to imply that there's anything wrong or inherently inferior about the more casual side of things, just that they really are two very different markets.

Re:Why you should use OpenGL and not DirectX by tripplethrendo on Thursday December 05, 2013 @06:44PM (#6858246)
You can play WoW and Guild Wars 2 on a Mac. Doesn't that mean they are OpenGL?
Re:Why you should use OpenGL and not DirectX by ahomescu1 on Thursday December 05, 2013 @08:23PM (#6858760)
Guild Wars 2 uses Wine internally to run the Windows GW2 client (I used to play it, and I'd occasionally get Wine errors).
Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:53AM (#6859819)
WoW uses OpenGL and it runs like crap on a mac.
Re:Why you should use OpenGL and not DirectX by sliverstorm on Thursday December 05, 2013 @06:32PM (#6858187)
Unfortunately there's no good word for the market your parent is talking about. "real" games, "hardcore" games, all have negative connotations, but your parent is contrasting lightweight games to heavyweight games. Angry Birds to Bioshock.
Re:Why you should use OpenGL and not DirectX by MBCook on Thursday December 05, 2013 @07:05PM (#6858333)
I think that's the issue here too. I would divide things in three. Casual games are often quick or pick-up-and-play. Angry birds, Bejeweled, even things like Peggle or Plants vs Zombies. Most flash/FaceBook games fit in here.

Then there are the hardcore games. Eve Online, World of Warcraft, Call of Duty, Grand Theft Auto, Street Fighter 4, etc. These games often require lots of skill or dedication, and are often big budget titles.

But there is a ton of stuff in between. Games that you might be able to play fast but are very difficult (like Spelunky), that the player can choose how to play (Minecraft or Terraria), that just aren't designed to be highly competitive and difficult (Sly Cooper series, maybe Ratchet and Clank series), aren't hardcore ultra-deep sims (SimCity, Game Dev Story), and many sports games (Madden, NBA2k, etc).

Some people go really deep on some games and play them in a 'hardcore' way. The lines aren't easy as I know many people think World of Warcraft has been dumbed-down throughout the expansions to where it may not be 'hardcore' for many people.

But that's my general taxonomy. Casual, 'normal', hardcore.

Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:54AM (#6859823)
Sure, there is a lot of overlap too. It's just that one extreme that I don't see being satisfied by mobile devices any time soon (if ever).
Re:Why you should use OpenGL and not DirectX by Tmmrn on Friday December 06, 2013 @03:16AM (#6860037)
Android != tablets or phones.

Thanks to android being open source people can take it and build ...stuff.. with it. I'm sure you have heard of it: http://en.wikipedia.org/wiki/Ouya

And while it's very low-end, there is still stuff like http://www.youtube.com/watch?v=ldwU96PGOyM which might not be a "real" game but it seems pretty close.

Now imagine the next generation of android consoles with OpenGL ES 3.0 and more powerful GPUs.

Re:Why you should use OpenGL and not DirectX by sliverstorm on Thursday December 05, 2013 @04:28PM (#6857393)
It might sound like a snide way to put it, but there is a clear dividing line;

OpenGL dominates casual platforms.

DirectX dominates "traditional gaming" platforms.

Re:Why you should use OpenGL and not DirectX by peterashford on Thursday December 05, 2013 @05:12PM (#6857702)
So the PS2/3/4 are "casual" and not "traditional gaming" platforms?
Re:Why you should use OpenGL and not DirectX by Tuna-Fish on Friday December 06, 2013 @09:23AM (#6861111)
None of then really support OpenGL though.

While they had OGL implementations, all of them basically require you to write against a low-level proprietary api to be competitive with other games on the platform.

Re:Why you should use OpenGL and not DirectX by EpicEng on Thursday December 05, 2013 @05:52PM (#6857989)
I believe the parent is concerned with PC games, not Console. It's not like most console producers are concerned with cross platform anyway (at least, not until perhaps now, we'll see).
Re:Why you should use OpenGL and not DirectX by bcoates on Thursday December 05, 2013 @08:50PM (#6858857)
I installed TF2 on my work tablet yesterday, it worked just fine. Civ 5 and X-Com are great on it. Is that "real" enough?
Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:52AM (#6859814)
No. Like I have said more than once now, I'm talking about games with complex control schemes that require quick reactions.
Re:Why you should use OpenGL and not DirectX by driverdan on Thursday December 05, 2013 @05:16PM (#6857730)
iOS XCOM is a great game, is far more expensive than most iOS games, and is has been very successful.
Re:Why you should use OpenGL and not DirectX by EpicEng on Thursday December 05, 2013 @06:11PM (#6858093)
It's not about good and bad, it's the difference between a game like WoW and a game I can play on a touchpad. Very different. The lack of horsepower is an obvious issue, but do you know how many keybinds I have in a game like wow? About 30-40. How about the precision of a mouse and keyboard vs a touchscreen? Screen size (lack of)? Some games are just too complex for these sorts of input devices and there's really no benefit to running them on a portable device. I'm not raiding while outside having a smoke.
Re:Why you should use OpenGL and not DirectX by nl on Friday December 06, 2013 @01:35AM (#6859754)
Like to put some money on that?

I'd bet money that in two years time 2 out of the top 5 "real" games will be available on iOS and/or Android. (Not entirely sure how we are defining "real" games, though).

Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:49AM (#6859803)
I would. It's simply not practical to play games on mobile devices that require more complex input devices which allow for many discrete inputs and more precise control. I don't know, perhaps someone much smarter than I will figure something amazing out, but I doubt it.

And I shouldn't have used the term "real". I'm talking about games like WoW. Many (many) buttons that need to be pressed quickly in response to your opponent (not talking about LFR obviously...).

Re:Why you should use OpenGL and not DirectX by kazagistar on Friday December 06, 2013 @02:05AM (#6859849)
WoW is a terrible example due to the latency mitigation factors built into the game: you can only cast spells every so often, and then you have a global cool down between spells. You could totally do it on an ipad or some such if the control scheme was a bit better optimized for it.
Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:20PM (#6862593)
Those aren't latency mitigation factors, but ok...

So, essentially, your argument is that control schemes should be dumbed down so that they play on mobile? Yeah, that will go over well.

Re:Why you should use OpenGL and not DirectX by nl on Friday December 06, 2013 @04:15AM (#6860212)
You don't think you are taking your experience of the current control scheme of WoW and projecting it as a limitation of the platform?

I'd note that it's pretty hard to do tilt-control on a PC...

And there are already plenty of actions games on iOS that work well (and need to be more responsive than WoW).

Re:Why you should use OpenGL and not DirectX by EpicEng on Friday December 06, 2013 @01:19PM (#6862580)
Who needs tilt control? WoW is just an example. Any game that has a complex control scheme and requires quick reactions is simply not suitable to mobile devices. I'm not sure you actually play any of the games I am talking about.
Re:Why you should use OpenGL and not DirectX by nl on Saturday December 07, 2013 @01:51AM (#6865768)
Mobile (or rather touch screens) actually enable richer control schemes than a keyboard. You may not be happy with anything available as yet, but that doesn't make it impossible.

Anyway, iOS controller support means the touch screen isn't the only input device.

Re:Why you should use OpenGL and not DirectX by rpedela on Thursday December 05, 2013 @08:51AM (#6854336)
Isn't PS4 OpenGL as well?
Re:Why you should use OpenGL and not DirectX by pjmlp on Thursday December 05, 2013 @10:15AM (#6854751)
No. The PS3 had OpenGL ES 1.0 with Cg as shading language, but almost any developer worth his/her salt was using LibGCM.

With PhyreEngine being used as main prototype engine.

Lots of nice technical documents available at http://develop.scee.net/publications

PS4 API is called GNM, http://www.eurogamer.net/articles/digitalfoundry-how-the-cre...