Vulkan1.1 tendra soporte a RayTracing proximamente

Imagen


Y asi como dice el titulo, la API grafica Vulkan tendra instrucciones para el tema de RayTracing, mientras que DXR es la API dedicada al RayTracing en el paquete de microsoft DirectX, Vulkan y OpenGL actualmente carecen del manejo.


Imagen

Asi que gente de EA [electronic Arts], asi como del grupo Khronos se ha dado a la tarea de agregar esta funcionalidad. Mientras tanto, nvidia a puesto a manera de pruebas la extension (VK_NVX_raytracing) para Vulkan, y esto con motivo de poder usar juegos que usen VULKAN en las nuevas tarjetas de video RTX.


https://www.khronos.org/news/tags/tag/Ray+Tracing
https://github.com/KhronosGroup/Vulkan-Docs/issues/686
https://www.reddit.com/r/vulkan/comment ... h_shaders/



.
Lo espectacular de esto es que el raytracing podría implementarse en mas sistemas operativos aparte de windows 10.
Claro en PC porque en sistemas con procesador ARM seria demasiado, pero si, ya con GNU/Linux y MacOSX se puede tener.
Q2VKPT, motor de Quake 2 rediseñado

Liberan esta version modificada del juego Quake 2 con soporte nativo a Ray Tracing con Vulkan.



Pagina oficial y descarga: http://brechpunkt.de/q2vkpt


VKPT and Q2VKPT were created by Christoph Schied as a spare-time project to validate the results of computer graphics research in an actual game. The project currently encompasses 12K lines of code and completely replaces the original Quake II graphics code. Initially, it was prototyped in OpenGL with contributions by Johannes Hanika (Experimental Ray Tracing, Shaders, GL/Vulkan Fixes),

The project is released as open source on GitHub, integrating our Vulkan path tracer into the Q2PRO client. The project was spawned by the need for fast-paced test content in computer graphics research, and was motivated by the first intriguing results of an experimental path tracing renderer in 2016.

Q2VKPT is the first playable game that is entirely raytraced and efficiently simulates fully dynamic lighting in real-time, with the same modern techniques as used in the movie industry (..). The recent release of GPUs with raytracing capabilities has opened up entirely new possibilities for the future of game graphics, yet making good use of raytracing is non-trivial. While some games have started to explore improvements in shadow and reflection rendering, Q2VKPT is the first project to implement an efficient unified solution for all types of light transport: direct, scattered, and reflected light


Imagen



Tambien, nueva version de la biblioteca de Vulkan con el soporte de RTX, sirve tanto para el hardware dedicado de las gefroce RTX, como para el hardware de las Radeon VEGA via shaders.

https://github.com/world8th/vRt

Requirements for testing application
Vulkan API 1.1.92 support
Vulkan Memory Allocator
C++17 capable compiler
GLSL to SPIR-V 1.3 compiler
CMake 3.12 or higher


Compatibility Confirmed
RX Vega 64 (Windows only)
RTX 2070 (Windows, Ubuntu, RTX On/Off)
GTX 1070 (early has supported)


Currently Incompatible...
AMDVLK in Linux
Mesa/RADV drivers



.
Minetras tanto RTG|AMD ya ha axctualizado su controlador de video Adrenalin con varias de las nuevas instrucciones de Vulkan.

https://www.amd.com/en/support/kb/relea ... win-19-3-2


Un equipo de nvidia ha metido mano al proyecto Q2VKPT para mejorar el apartado visual.

https://www.nvidia.com/en-us/geforce/ne ... eforce-rtx




Quake II RTX: Re-Engineering a Classic with Ray Tracing Effects on Vulkan.
By Andrew Burnes on March 18, 2019 | Featured Stories GDC 2019 GeForce RTX GPUs Ray Tracing

id Software’s Quake II launched in 1997, bringing gamers a new single-player campaign, a long-awaited, addictive multiplayer mode that we played for years on pitifully-slow 56K modems, and a jaw-dropping engine that supported 3DFX GPU acceleration out of the box. Colored lighting, dynamic visual effects, and much more, all running at a glorious 640x480, or perhaps 800x600 if you had top-of-the-line hardware.

Fast forward to 2001, when id Software made the Quake II engine open source, enabling anyone to legally release total conversions with complete engine overhauls. Ever since, fans have beavered away on their own personal projects, the latest of which is Q2VKPT.

Released in January, Q2VKPT was created by former NVIDIA intern Christoph Schied, a Ph.D. student at the Karlsruhe Institute of Technology in Germany. The “PT” in its name stands for Path Tracing, a compute-intensive ray tracing technique that unifies all lighting effects (shadows, reflections, et cetera) into a single ‘pure ray tracing algorithm’. With Ray Tracing being all the rage, word of a developer making a beautiful, real-time ray-traced version of Quake II made headlines around the world.

But path tracing has a downside: its random sampling algorithm introduces ‘noise’ that makes gameplay appear grainy and speckled, as seen in 2016’s Q2PT. To solve the problem, Christoph and his university colleagues built upon ideas originally conceived in 2016 during his NVIDIA internship, when he co-invented a fast way to remove said graininess by combining the results of multiple game frames, in a manner similar to that used by Temporal Anti-Aliasing.

“But what’s new with Quake II RTX compared to Q2VKPT?”, you ask. A lot. We’ve introduced real-time, controllable time of day lighting, with accurate sunlight and indirect illumination; refraction on water and glass; emissive, reflective and transparent surfaces; normal and roughness maps for added surface detail; particle and laser effects for weapons; procedural environment maps featuring mountains, sky and clouds, which are updated when the time of day is changed; a flare gun for illuminating dark corners where enemies lurk; an improved denoiser; SLI support (hands-up if you rolled with Voodoo 2 SLI back in the day); Quake 2 XP high-detail weapons, models and textures; optional NVIDIA Flow fire, smoke and particle effects, and much more!



.



.
Y para este 2020 Grupo Khronos recibe colaboracion de nvidia

En la Game Developers Conference [GDC] que se realizara en marzo de este 2020, habra una ponencia de nVidia y Khronos Group para hablar sobre Ray Tracing en tiempo real.

“Join us to hear about the latest developments in Vulkan around standardized ray tracing functionality; the working group will provide an update on the current state of the ray tracing efforts, what this means for the graphics industry, and how you’ll be able to take advantage of this technology.”

https://www.kitguru.net/components/grap ... pi-at-gdc/
Imagen
Liberan las especificaciones de Vulkan Ray Tracing

Por ahora solo son extensiones provisionales, pero ratifican el que la API grafica Vulkan da soporte pos software y hardware al tema de Ray Tracing y se convertiran al salir las extensiones ya finales, como un estandar en la industria.

Tomado del blog de Khronos Group
https://www.khronos.org/blog/ray-tracing-in-vulkan


Today, The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announces the ratification and public release of the Vulkan® Ray Tracing provisional extensions, creating the industry’s first open, cross-vendor, cross-platform standard for ray tracing acceleration. Primarily focused on meeting desktop market demand for both real-time and offline rendering, the release of Vulkan Ray Tracing as provisional extensions enables the developer community to provide feedback before the specifications are finalized. Comments and feedback will be collected through the Vulkan GitHub Issues Tracker and Khronos Developer Slack. Developers are also encouraged to share comments with their preferred hardware vendors. The specifications are available today on the Vulkan Registry.

Ray tracing is a rendering technique that realistically simulates how light rays intersect and interact with scene geometry, materials, and light sources to generate photorealistic imagery. It is widely used for film and other production rendering and is beginning to be practical for real-time applications and games. Vulkan Ray Tracing seamlessly integrates a coherent ray tracing framework into the Vulkan API, enabling a flexible merging of rasterization and ray tracing acceleration. Vulkan Ray Tracing is designed to be hardware agnostic and so can be accelerated on both existing GPU compute and dedicated ray tracing cores if available.

“There has been strong developer demand for a truly cross-platform ray tracing acceleration API and now Vulkan Ray Tracing is here to meet that industry need,” said Daniel Koch, senior graphics system software engineer at NVIDIA and Vulkan Ray Tracing task sub group chair at Khronos. “The overall architecture of Vulkan Ray Tracing will be familiar to users of existing proprietary ray tracing APIs, which enables straightforward porting of existing ray traced content, but this framework also introduces new functionality and implementation flexibility.”

Vulkan Ray Tracing consists of a number of Vulkan, SPIR-V, and GLSL extensions, some of which are optional. The primary VK_KHR_ray_tracing extension provides support for acceleration structure building and management, ray tracing shader stages and pipelines, and ray query intrinsics for all shader stages. VK_KHR_pipeline_library provides the ability to provide a set of shaders which can be efficiently linked into ray tracing pipelines. VK_KHR_deferred_host_operations enables intensive driver operations, including ray tracing pipeline compilation or CPU-based acceleration structure construction to be offloaded to application-managed CPU thread pools.

Vulkan Ray Tracing shaders are SPIR-V binaries which use two new extensions. The SPV_KHR_ray_tracing SPIR-V extension adds support for ray tracing shader stages and instructions; SPV_KHR_ray_query adds support for ray query shader instructions. Developers can generate those binaries in GLSL using two new GLSL extensions, GLSL_EXT_ray_tracing and GLSL_EXT_ray_query, which are supported in the open source glslang compiler. Engineers at Khronos member companies, including NVIDIA, have also added support for the SPIR-V extensions to DXC, Microsoft's open source HLSL compiler, enabling Vulkan Ray Tracing SPIR-V shaders to be authored in HLSL using the syntax defined by Microsoft, with minimal modifications.

Driver release updates and the status of Vulkan ecosystem components will be posted on the Vulkan Ray Tracing Provisional Release Tracker. A Vulkan SDK that includes support for Vulkan Ray Tracing will become available once all the necessary ecosystem components are upstreamed; check this link to watch for its availability. An introductory launch presentation on Vulkan Ray Tracing is here, and further technical details can be found in this blog post.

Industry Support for Vulkan Ray Tracing Provisional Specification

"Standardizing ray tracing in Vulkan is an important step towards making ray tracing available across a wide range of devices, as well as enabling developers to use this technology to its full advantage. AMD intends to provide support for all of the major features in this extension, including ray shading, ray queries, and CPU acceleration structure management. We will be working with developers to ensure great performance from our Vulkan Ray Tracing implementation; these efforts will help us to provide end users with even more visually stunning graphics on AMD Radeon™ GPUs,” said Andrej Zdravkovic, senior vice president, software development, AMD.

“EA is happy to see the release of the provisional ray tracing extension for Vulkan. Realtime ray tracing is already an important part of game development and it will continue to be in the future. Allowing ray queries from any shader stage is a great feature, which will both simplify integrations and open up the possibility for new techniques while multithreaded host-side building of acceleration structures has the potential to reduce latency and improve the performance of our upcoming game titles,” said Sebastian Tafuri, senior rendering engineer at Frostbite, EA.

“Epic Games has been an active member of the Vulkan Ray Tracing group from the beginning, and we are happy to see the ray tracing extension released to the public. We at Epic Games continue to wholeheartedly support Khronos's efforts on creating open standards to enhance the end-user experience,” said Yuriy O’Donnell, rendering engineer, Epic Games.

"Imagination Technologies are very happy to see ray tracing become a standard part of Vulkan, helping the overall ray tracing ecosystem to grow substantially due to Vulkan's wide reach across many platforms and devices," said Rys Sommefeldt, senior director of product, Ray Tracing and High Performance Graphics, Imagination Technologies. "We are very supportive of the standard, which will help us deliver the efficient, fast, and focused hardware solution we are developing for our customers."

"The Intel Xe architecture roadmap includes support for hardware accelerated ray tracing, and we're excited to work with Khronos to implement full support into Vulkan," said Joshua Barczak, graphics software architect at Intel.

“NVIDIA ships beta drivers today with support for the provisional standardized ray tracing functionality in Vulkan,” said Morgan McGuire, research director at NVIDIA. “Bringing accelerated ray tracing to the Vulkan cross-platform, open standard API is another significant step towards enabling the highest quality of visual realism for real-time games and applications everywhere.”

"We are very excited about having hardware ray tracing support baked into Vulkan. Vulkan Ray Tracing enables us to research high-end rendering solutions, while also having support for all supporting vendors and platforms with minimal overhead,” said Jules Urbach, CEO, OTOY.







.
Vulkan 1.2

Vulkan 1.2 estara presente en las GPUs Radeon NAVI [la serie 5000, como la 5700/5700X o la 5500]

Imagen

January 15, 2020 – 6:00 AM PT – Today, The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announces the release of the Vulkan® 1.2 specification for GPU acceleration. This release integrates 23 proven extensions into the core Vulkan API, bringing significant developer-requested access to new hardware functionality, improved application performance, and enhanced API usability. Multiple GPU vendors have certified conformant implementations, and significant open source tooling is expected during January 2020.

Vulkan continues to evolve by listening to developer needs, shipping new functionality as extensions, and then consolidating extensions that receive positive developer feedback into a unified core API specification. Carefully selected API features are made optional to enable market-focused implementations. Many Vulkan 1.2 features were requested by developers to meet critical needs in their engines and applications, including: timeline semaphores for easily managed synchronization; a formal memory model to precisely define the semantics of synchronization and memory operations in different threads; descriptor indexing to enable reuse of descriptor layouts by multiple shaders; deeper support for shaders written in HLSL, and more.

“Vulkan 1.2 brings together nearly two dozen high-priority features developed over the past two years into one, unified core Vulkan standard, setting a cutting-edge bar for functionality in the industry’s only open GPU API for cross-platform 3D and compute acceleration,” said Tom Olson, distinguished engineer at Arm, and Vulkan working group chair. “Khronos will continue delivering regular Vulkan ecosystem updates with this proven, developer-focused methodology to both meet the needs and expand the horizons of real-world applications.”

Khronos and the Vulkan community will support Vulkan 1.2 in a wide range of open source compilers, tools, and debuggers by the end of January 2020. This includes the RenderDoc frame capture and debugging tool, the Vulkan conformance test suite, and the Vulkan SDK with support for both the ‘GPU Assisted’ and ‘Best Practices’ validation layers.

All GPUs that support previous versions of Vulkan are capable of supporting Vulkan 1.2, ensuring its widespread availability. As of today, five GPU vendors have Vulkan 1.2 implementations passing the Khronos conformance tests: AMD, Arm, Imagination Technologies, Intel, NVIDIA, plus the open-source Mesa RADV driver for AMD. Driver release updates will be posted on the Vulkan Public Release Tracker along with the status of other Vulkan ecosystem components.

Vulkan is an open, royalty-free API for high-efficiency, cross-platform access to modern GPUs, with widespread adoption in leading engines, cutting-edge games, and demanding applications. Vulkan is supported in a diverse range of devices from Windows and Linux PCs, consoles, and the cloud, to mobile phones and embedded platforms, including the addition of Google’s Stadia in 2019.

Find more information on the Vulkan 1.2 specification and associated tests and tools at Khronos’ Vulkan Resource Page. Sample code can be found in the Vulkan Unified Samples Repository. Khronos welcomes feedback on Vulkan 1.2 from the developer community through Khronos Developer Slack and GitHub.



Industry Support for Vulkan 1.2
“AMD is excited to provide support for the Vulkan 1.2 specification in our upcoming Vulkan 1.2 supported driver for a broad range of AMD graphics hardware, including the AMD Radeon™ RX 5700 Series and AMD Radeon™ RX 5500 Series. Vulkan 1.2 brings many new features, including Dynamic Descriptor Indexing and finer type support for 16-bit and 8-bit types – and are designed to enable developers to better take advantage of modern GPU features and deliver richer graphics experiences to end users. We look forward to continued adoption of the Vulkan API and the new graphics experiences possible with the latest Vulkan 1.2 feature set,” said Andrej Zdravkovic, corporate vice president, Software Development, AMD.

“The new iteration of Vulkan API highlights the ongoing innovation the Khronos group continues to drive in the high-performance graphics space. Arm is already offering conformant Vulkan 1.2 implementations for the Bifrost and Valhall architectures of our Mali GPU, and we will continue to deliver optimized tools and technologies that make performance more accessible for developers designing for the next generation of immersive experiences,” said Pablo Fraile, director of developer ecosystems, client line of business, Arm.

“Stadia is thrilled to see the long-awaited features in Vulkan 1.2. Not only are they a game changer for Stadia but for the Vulkan ecosystem as a whole. Vulkan 1.2 brings remarkable improvements for HLSL support in Vulkan and the increased flexibility and performance gains will enable developers to take greater advantage of the GPU than ever before. Stadia can’t wait to see how developers leverage the new timeline semaphore, descriptor indexing, and finer type subgroup operations in graphics and compute for their next generation titles,” said Hai Nguyen, staff technical solutions engineer, Google Stadia.

“Imagination welcomes the launch of Vulkan 1.2. It’s a great update and will really benefit developers. Our latest GPU architecture – IMG A-Series – will fully support Vulkan 1.2 and will help developers achieve the best performance and power savings. Our best-in-class tools, such as PVRTune and PVRCarbon, are designed with Vulkan in mind, giving developers detailed information of profiling and debugging,” said Mark Butler, vice president of software engineering, Imagination Technologies.

“Intel is delighted by the release of Vulkan 1.2 and looks forward to seeing developers take advantage of it to deliver even richer visual computing experiences,” said Lisa Pearce, vice president, Intel Architecture, graphics and software, and director of the visual technologies team. “With the broadest installed base of PC graphics processors capable of supporting Vulkan 1.2, and with products based on our breakthrough Xe architecture coming shortly, we’re excited to play a key role in enabling next-generation visual computing experiences for millions of users.”

“NVIDIA’s Vulkan 1.2 drivers are available today with full functionality for both Windows and Linux,” said Dwight Diercks, senior vice president of software engineering, NVIDIA. “With Vulkan enabling mission-critical applications on NVIDIA GPUs across desktop, embedded and cloud platforms, we’re driving innovative functionality to fuel the growing momentum of this key open standard.”

“We are very excited about the new capabilities in Vulkan 1.2. The VMA and scheduling features allow us to implement next-generation graphical and computing solutions across a wide array of hardware for our Cider game engine,” said Brad Wardell, CEO of Stardock Entertainment.

https://www.khronos.org/news/press/khronos-group-releases-vulkan-1.2
Aparece OpenCL 3 el cual esta integrado; en parte, con Vulkan. Asi ayudara al tema de Ray Tracing, el cual, Khronos Group esta viendop ya de estandarizar para finales de este 2020.

https://www.khronos.org/files/opencl30- ... -guide.pdf
Grupo Khronos termina de definir las caracteristicas de RT en Vulkan

Imagen

https://www.khronos.org/blog/vulkan-ray ... on-release
Today, Khronos® has released the final versions of the set of Vulkan®, GLSL and SPIR-V extension specifications that seamlessly integrate ray tracing into the existing Vulkan framework. This is a significant milestone as it is the industry’s first open, cross-vendor, cross-platform standard for ray tracing acceleration - and can be deployed either using existing GPU compute or dedicated ray tracing cores. Vulkan Ray Tracing will be familiar to anyone who has used DirectX Raytracing (DXR) in DirectX 12, but also introduces advanced functionality such as the ability to load balance ray tracing setup operations onto the host CPU.
[..]


Extensiones dedicadas a Ray Tracing
Vulkan extension specifications

VK_KHR_acceleration_structure
VK_KHR_ray_tracing_pipeline
VK_KHR_ray_query
VK_KHR_pipeline_library
VK_KHR_deferred_host_operations

SPIR-V extensions specifications

SPV_KHR_ray_tracing
SPV_KHR_ray_query

GLSL extensions specifications

GLSL_EXT_ray_tracing
GLSL_EXT_ray_query
GLSL_EXT_ray_flags_primitive_culling



Comparaciones con DirectX_Ray_Tracing [aka DXR]
Imagen
Los ultimos controladores de video de RTG|AMD dan soporte a Vulkan 1.2 con las recientes extensiones para Ray Tracing.

Y asi es como la version beta del controlador de video Adrenalin 20.11.13 cuenta con las extensiones de RT de vulkan 1.2

Imagen
13 respuestas