Hacker News new | ask | show | jobs
by sdfaf 4769 days ago
>>but it looks like the next generation of indies will be learning the PS4/OpenGL toolchain instead.

Thank God! I really do not want to spend any time learning Microsoft specific frameworks/APIs. I'm already familiar OpenGL and I rather spend my time working on the game itself rather then having to learn new APIs.

4 comments

PS4 does not use OpenGL as it's graphics API, and doesn't even support PSGL (the higher level, OpenGL ES 1.1 like library that PS3 supported.) This is a rumor that's going to persist for the lifetime of the system.

That said most indies are moving to using Unity 3D, so as long as Unity support for PS4 is good and licensing costs aren't too high, the low level graphics API of PS4 won't matter.

Open source geeks like to spread the myth that Microsoft consoles are the only ones not supporting OpenGL.

Given that the games industry is very hostile to open source and very few geeks have access to console development kits, it is no wonder the myth persists.

You might enjoy Direct3D...imagine if people designed an API, documented it really well, and weren't crufty as fuck.

I've done a lot of time with OpenGL, but I won't pretend for a second that there aren't better things out there.

If you truly understand the OpenGL programmable pipeline you understand graphics programming in general and should have to spend little time picking up a new API. Just like how you should be able to learn a new programming language with ease if you have enough experience.

From Eurogamer.net:

Low-level access and the "wrapper" graphics API

In terms of rendering, there was some interesting news.

Norden pointed out one of the principal weaknesses of DirectX 11 and OpenGL - they need to service a vast array of different hardware. The advantage of PlayStation 4 is that it's a fixed hardware platform, meaning that the specifics of the tech can be addressed directly. (It's worth pointing out at this point that the next-gen Xbox has hardware-specific extensions on top of the standard DX11 API.)

"We can significantly enhance performance by bypassing a lot of the artificial DirectX limitations and bottlenecks that are imposed so DirectX can work across a wide range of hardware," he revealed.

The development environment is designed to be flexible enough to get code up and running quickly, but offering the option for the more adventurous developers to get more out of the platform. To that end, PlayStation 4 has two rendering APIs.

"One of them is the absolute low-level API, you're talking directly to the hardware. It's used to draw the static RAM buffers and feed them directly to the GPU," Norden shared. "It's much, much lower level than you're used to with DirectX or OpenGL but it's not quite at the driver level. It's very similar if you've programmed PS3 or PS Vita, very similar to those graphics libraries."

But on top of that Sony is also providing what it terms a "wrapper API" that more closely resembles the standard PC rendering APIs.

"The key is that it doesn't sacrifice the efficiency of the low-level API. It's actually a wrapper on top of the low-level API that does a lot of the mundane tasks that you don't want to have to do over and over."

The cool thing about the wrapper API is that while its task is to simplify development, Sony actually provides the source code for it so if there's anything that developers don't get on with, they can adapt it themselves to better suit their project.

http://www.eurogamer.net/articles/digitalfoundry-inside-play...

>>If you truly understand the OpenGL programmable pipeline you understand graphics programming in general and should have to spend little time picking up a new API. Just like how you should be able to learn a new programming language with ease if you have enough experience.

This is very true. However, I rather not spend anytime on this if I don't have to. What you are underestimating though are the quirkiness of the new API that could waste you hours and hours. i.e. Some graphics rendering may not look quite right because some unexpected limitations, etc. etc. Finding work-arounds for all those tiny quirks can be time consuming Time that you'd rather spend on the product itself.

Yes, we should never learn new things.
You are really missing the point. Read this:

http://www.joelonsoftware.com/articles/fog0000000339.html

Is a technique that Microsoft loves doing.

From the article:

>> The competition has no choice but to spend all their time porting and keeping up, time that they can't spend writing new features. Look closely at the software landscape. The companies that do well are the ones who rely least on big companies and don't have to spend all their cycles catching up and reimplementing and fixing bugs that crop up only on Windows XP. The companies who stumble are the ones who spend too much time reading tea leaves to figure out the future direction of Microsoft. People get worried about .NET and decide to rewrite their whole architecture for .NET because they think they have to. Microsoft is shooting at you, and it's just cover fire so that they can move forward and you can't, because this is how the game is played, Bubby. <<

Yeah, right, like if everyone else wasn't doing the same.