Jump to content

Vulkan API


Vegatoxi

Recommended Posts

42 minutes ago, xiej said:

Nothing. Most likely, the developers will continue to use Unity(Which uses Direct3D), instead of having to write a brand new game engine in Vulkan.

Unity has OpenGL support? One of the main bullet points for release 5.3 was updating OpenGL support to v4.5

Edited by NoMrBond
Link to comment
Share on other sites

When Unity Technologies adds Vulkan support to the Unity3D game engine we'll be able to use it :)

Though it'll probably not be the default, much like D3D11 or OpenGL has to be forced on Windows we'll likely have a -force-vulkan switch to begin with.

Unity has deferred work on Vulkan support so far but now it is released this should change and we should see information on the Unity website when they decide to officially support it.

Link to comment
Share on other sites

With any luck Unity and in turn KSP will support it. But unless KSP gets more graphically demanding (which it might come 1.2) I doubt it's going to matter for anyone with not-potato hardware, even on Linux where the only option now is OpenGL.

Link to comment
Share on other sites

its going to take at least 5 years for everyone to tech up to start making it a viable platform. hardware requirements are probibly too cutting edge for most of the gaming market.

looks like nvidia support goes all the way back to kepler, and im using a maxwell based gtx750ti. so im supported. current forceware has beta drivers.

Edited by Nuke
Link to comment
Share on other sites

Well overdue. OpenGL needed a replacement. I'm hearing great things about Vulkan from our graphics team, so I have no doubts that it will be making waves in game industry. And yeah, Unity is very likely to start switching to Vulkan soon enough, given how much it can do for their cross-platform support. But it can take quite a while for it to become the primary API for their engine.

Anyways, exciting news.

Link to comment
Share on other sites

15 hours ago, gpisic said:

I don't think it will take 5 years, hell Croteam adapted their game The Talos Principle already in record time and you can try out Vulkan with it since the release day.

i tried to run some of the demos but i guess only one version of forceware supports the beta drivers, and id have to backtrack driver versions to try it out. i really dont want to do that.

im sure a lot of people have the hardware to run vulkan, but a lot of game studios wont even touch it unless a large part of their intended demographic has support for the api. multiplatform engines (like unity and others) might be the first to support it, as they already have an abstraction layer in place to pick and choose apis. new cutting edge engines will definitely have support to be future proof. but uptake will be slow as it has always been. for example there are still some pretty impressive texture formats that my hardware supports (for years, i have obsolete rigs that supported them), but ive yet to see a commercial product use them (mobile devices are ironically ahead of pc in terms of texture formats, while pc is stuck with those 90's dxt formats for legacy support, phones use all kinds of cool formats, like astc, that look much better).

 

Edited by Nuke
Link to comment
Share on other sites

  • 9 months later...
On 12/15/2016 at 11:49 AM, xcaliber219 said:

Hey, sorry to bump an old post, but I just saw news that the Unity 5.6 beta supports Vulkan!!!

Here's to hoping for an eventual Kerbal update to Unity with Vulkan!  Let's see how much more the modders can fit in when that hits!  :-p

I just read about the 5.6 beta Vulkan support as well and immediately thought "man, I hope Squad builds Vulkan support in with the next major version of KSP." It could have large benefits for CPU performance, not just GPU, which makes the idea even more appealing. I would love an official comment on this!

Link to comment
Share on other sites

  • 3 months later...

Unity has now integrated Vulkan API support in their latest release:

https://blogs.unity3d.com/2017/03/31/5-6-is-now-available-and-completes-the-unity-5-cycle/

 

Quote

Vulkan support
Vulkan support brings increased speed while reducing driver overhead and CPU workload; this leaves the CPU free to do additional computation or rendering and saves on battery life for mobile platforms.

 

It is needless to say that this bears a huge potential for a performance boost.

KSP 1.2 changed Unity from 5.2 to 5.4 so it seems possible to get another update to 5.6. There is no way that this is coming in 1.3 but there might be a chance to get it in 1.4. Here's hoping ;-)

Link to comment
Share on other sites

Indeed, this is a big thing. However, since it is freshly implemented, there could still be some issues. I expect Squad will make an experimential Unity 5.6 build and compare performances / check for issues.

This update also brings graphical performance improvements, freeing CPU up more for physics. Which means bigger ships/stations in KSP at smoother FPS!

Another thing: TextMesh Pro is now free and will soon be integrated into Unity. I can picture someone sighing dejectedly after having gone through significant effort of getting TMP to work properly.

 

Link to comment
Share on other sites

  • 4 weeks later...

Hi,

i think there are a few programmers here, so maybe this is not the completely wrong place to ask.

For one who has too much time and learns c++, trying to bide time, maybe with a little graphics stuff, what would you recommend, OpenGL or Vulkan ? I take it these two have completely different approaches, OpenGL being the more versatile and powerful, Vulkan more basic and apparently an answer to mobile contraptions.

I should decide because i don't want to do two different things (limited brain mass). OpenGL seems to have stopped evolving 2015, is that a bad sign ? Both seemingly have little object orientation. I will surely always stay on pc, mobiles scare me.

If someone of you has chosen in the recent past, what was it what were the criteria ?

cheers

gb

Edit (i always edit): i am fascinated by OpenGLs GLSL and the parallel computation power it could bring to a program ...

Edited by Green Baron
Link to comment
Share on other sites

 

45 minutes ago, Green Baron said:

OpenGL seems to have stopped evolving 2015

Since Vulkan is the direct successor to OpenGL...

Edited by Elthy
Link to comment
Share on other sites

Vulkan is a pain in the ass for a newcomer to graphics programming.

I can understand why OpenGL has so many followers, and it won't change in the near future.

To draw a simple object on screen you need +/- 50 lines of code, including shaders, in OpenGL. And several 100 in Vulkan, without shaders. You must fill out stacks of structs, do your memory management, check every devices abilities.... It is a mess. Vulkan fits perfectly in the age of bureaucracy.

I don't see Vulkan as a successor. Khronos is not explicit about it. If you just want to program a game, use OpenGL.

Edit: there is for example no error checking in Vulkan. If there wasn't an API (LunarG) for it i don't think many people would touch it. eeek ... :-)

Edited by Green Baron
Link to comment
Share on other sites

a graphics api needs to provide good performance for those that want to use it. this is probibly a requirement of engine wizzards more so than something that is easy for everyone. when i use opengl im pretty much using an ancient version of it, because for me i dont need to do anything more than render polygons. but when you are making a commercial product like a game engine you need to compete with the tech curve, you need to support all the features of your competitors and more, and you got to do it without costing too much performance. you usually have an engine wizzard like john carmack designing the thing, and those types tend to want as much low level control as possible over the api. querying your device capabilities is a good idea whenever you use an api like this, so you dont try to initialize something that doesnt exist. and memory management is just a thing a programmer has to deal with. being able to manage memory is what separates the script kiddies from the programmers, if you want performance you cant let the interpreter manage everything for you, you got to chuck that interpreter out the window and learn how malloc() works.

Link to comment
Share on other sites

Yeah, i understand the why they made Vulkan the way it is. Partly i think it is because of the mobile devices that lack the power of a pc. You can must choose exactly the functionality you need for your task, and nothing in excess. But on a pc that's a little annoying. I feel a bit like in the 2000s when they asked you those silly idiotic questions about the contents of your luggage and the background of your grand parents at the airport :-)

Yes, i want to draw something, in that window, with the resolution specified, in colour. In this tutorial 1100 lines of code. No event handling, just draw. How much would that be in OpenGL ? 100 ? Including event handling like resize and escape to close ?

 

It is just, really inspiring things where done with OpenGL when the shader pipeline was invented. I think of Outerra and Proland. So, i hoped for a step forward in terms of usability to a broader mass of aspiring wanna-be programmers. I am not afraid of malloc and free (though their time is over as well), with memory management i mean taking care that all your objects clean up nicely behind them. Which in the case of Vulkan means that you either have another overhead cleaning up at the end of each action or you write your own functionality e. g. a wrapper that you pass a function call to for the destruction of your objects. The same tutorial offers such a solution and my still limited knowledge makes me sit awestruck when i look t it.

I thought it was easier, but i am just scratching the surface :-)

 

Link to comment
Share on other sites

kind of why i got turned off to opengles. seems it was generally regarded as being free of legacy cruft. but its that cruft that made opengl approachable in the first place. didnt know vulkan was replacing es as well. ive considered learning how to use it but then i just end up working on my software renderer instead.

Link to comment
Share on other sites

  • 4 months later...

This topic is still actual. I just found out through experimentation, that KSP has some rendering bottleneck, which is probably attributed to how OpenGL pipeline works.

Having low fps on Mun base, I first played with physics delta, reducing it to 0.03, which doubled the framerate but was still below 25 fps.

So I continued experiments and I used UbioZur Welding mod to weld construction modules and batteries into blocks.
And during that, I discovered that many individual parts, even when welded into one big part and working flawlessly as I also had console debug open to be sure, still cause immediate fps drop in VAB/SPH.

Since I also use Ven's Stock Revamp, I thought that this is a mere result of high-er quality textures and higher polygon count per part, and its time to return to Stock+PorkJet Revamp.
However, after repeating the very same welding using plain stock parts, I still got the very same fps drop in the exact moment when these part are rendered on screen.

So, looking forward to Vulkan version on Linux. Until then, just have to be sure to use and weld as minimum part count as possible by current science progress.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...