
Vulkan Tutorial - Bambo
https://vulkan-tutorial.com/Introduction
======
shmerl
Very interesting, thanks for posting. I'll take a closer look. Unlike some
other tutorials, it offers Linux example.

------
datenwolf
Yes, very good work, indeed. I sidebar-ed it in the Vulkan subreddit.

------
legulere
> the advantage of being fully cross-platform

I would scratch the fully, it's not on iOS or macOS

~~~
pjmlp
Neither on any Android < Android N, or any console produced by Sony, Nintendo
and Microsoft.

~~~
zanny
Sony and Nintendo have both announced Vulkan support on their next console
iterations.

~~~
maccard
Sony historically supported OpenGL too, and approximately 0 games ever shipped
with it.

~~~
vardump
Vulkan could very well be a different story, it doesn't have OpenGL's
shortcomings.

~~~
pjmlp
The PS4 API is already much better than Vulkan.

~~~
pcwalton
Can you describe how, specifically?

~~~
pjmlp
Here is a NDA free presentation I can point to.

[http://develop.scee.net/wp-
content/uploads/2014/11/ParisGC20...](http://develop.scee.net/wp-
content/uploads/2014/11/ParisGC2013Final.pdf)

Starts on slide 32 for the graphics part.

~~~
pcwalton
As I suspected, all of the features that I can see described here are in
Vulkan. In particular, the first couple of slides pretty much identically
resemble Vulkan's "elevator pitch".

The presentation is from 2014, so when they claim "better than DirectX",
they're referring to pre-DX12. It certainly doesn't back up your claim that
it's "much better" than Vulkan.

~~~
pjmlp
I can only give you what isn't under NDA.

Like another user has commented, the PS4 low level API is like Assembly in
terms of hardware control, whereas the higher level, is is similar to Vulkan
in API surface, is a bit more like C in terms of control.

Another area where the PS4 APIs are better is infrastructure, meaning
graphical debuggers, libraries and OS integration.

Also the amount of production code experience that both Sony and licensed
developers have with the whole stack.

So why would Sony throw all this away, just to make some Reddit and HN users
happy, that wouldn't anyway make games for the PS4?

~~~
pcwalton
> Like another user has commented, the PS4 low level API is like Assembly in
> terms of hardware control, whereas the higher level, is is similar to Vulkan
> in API surface, is a bit more like C in terms of control.

And as I've argued here, that isn't a plus. I don't believe that game
developers are producing better GPU assembly than an optimizing backend can.

> Another area where the PS4 APIs are better is infrastructure, meaning
> graphical debuggers, libraries and OS integration.

That isn't part of the API. That's part of the tooling.

> Also the amount of production code experience that both Sony and licensed
> developers have with the whole stack.

That isn't part of the API either.

> So why would Sony throw all this away, just to make some Reddit and HN users
> happy, that wouldn't anyway make games for the PS4?

Er, nobody is talking about "throwing all of this away". I'm simply
questioning your claim that Vulkan is worse than what Sony created for the
PS4.

------
musha68k
Thanks for that very promising tutorial, I am looking forward to read/work
through it on my next day off!

------
nothis
Jesus christ.

I understand that Vulkan is very, very niche but as someone who doesn't know
much more than the basics of maybe setting up an OpenGL window to draw
anything, the "drawing a triangle part" just seems insane!

I knew this is some hardcore, hardware-level stuff usually only ever touched
by rendering engine programmers but I figured, if I had some super special
niche case that could be sped up by Vulkan, I could maybe "give it a try". But
this? 800 lines of code to draw a triangle! I never knew the difference to
OpenGl was _this_ extreme!

~~~
jackmott
When I put my head into C++ head space, 800 lines seems like no big deal.

Isn't it about that to open a window that you can draw on in windows from
first principles too?

Not that this is an acceptable situation, it just is.

~~~
jra101
It's only ~50 lines of code to create a window:

[http://pastebin.com/drrRJ6Kd](http://pastebin.com/drrRJ6Kd)

------
Bambo
All credit to the original author, [https://while.io/](https://while.io/)

------
HugoDaniel
Is testing and debugging still a problem ? How many years until they get it
right ?

