![]() ![]() There are old rail tracks crossing the area here and huge airlock doors that can be opened for objectives for Minecart Mischief. ContributionĬauldron should be very easy to extend, should you want to contribute to Cauldron, you can open a pull request.Abandoned Mining Site is an open area sparsely populated with crystalisks, threshers, and a few varkids. Please feel free to open an issue for bug reports. Please bear in mind that in order to keep Cauldron simple we are only covering the most frequently used features (for now). ![]() This would make Cauldron ideal for learning Vulkan if you're coming from DirectX12, or vice versa. FrameworkWindows - creates a window, processes windows message pumpĬauldron was originally written using DX12 and later on ported to Vulkan using the same structure.Swapchain - handles resizing, fullscreen/windowed modes, etc.ExtValidation - enables the validation layer.ExtFreeSync2 - enables FreeSync extension.ExtDebugMarkers - sets up the debug markers.InstanceVK - creates an instance and enables the validation layer.Axis - draws the coordinate axis of a matrix.Wireframe - draws a wireframe cube (used for rendering bounding boxes and light/camera frustums).PostProcPS/PS - draws a 2D quad using a custom shader, used by the post processing passes.GLTF* - loads and renders the model using a certain technique.CommandListRing - allocates a number of command buffers from a ring buffer and returns a ready-to-use command buffer.UploadHeap - system memory buffer that holds the texture data to be uploaded to video memory via DMA.ResourceViewHeaps - holds the Descriptor Sets.Same as before but allocation happens in a ring fashion. DynamicBufferRing - holds constant buffers and also vertices and indices.It creates a huge buffer and then suballocates chunks from it in a linear fashion. StaticBufferPool - holds vertices and indices for static geometry.Texture loaders - can load DDS, PNG, JPG and any other file supported by the WIC subsystem.The main features could be grouped in 4 categories: build/DX12/src/DX12/ directory will contain the compiled static library Framework_DX12.lib for DX12 (similar for VK) under the selected configuration (Debug/Release) folder.Įvery feature in Cauldron has been implemented in a single file using C++11.Simply build the solution file for the desired API.build/VK and build/DX12 folders will contain the Cauldron_*.sln files.Run the GenerateSolutions.bat file in the build directory.Note: more info on the rendering backends can be found in the Readme of their respective folders. common : Common code used by both DX12/VK.media : Builtin textures and other data.stb : stb_image.h and stb_image_write.h from stb.json : Library for adding JSON support w/ C++ syntax.imgui : Graphical User Interface library.VulkanMemoryAllocator : Helper library for memory management with Vulkan applications.AGS : AMD helper library for querying GPU info.build : Build scripts & generated solution files/folders.VK extensions can be enabled from the app side.Multithreading loading & creation of resources.Dynamic buffers for VB/IB/CB using a ring buffer.Static buffers for VB/IB/CB with suballocation support.MIP Map generation for powers-of-two textures.Texture Loaders for DDS (including the BCn formats), JPEG and PNG formats.Configurable GBuffer, supported techniques:.Specular-Glossiness ( KHR_materials_pbrSpecularGlossiness).Baking skinning into buffers (DX12 only).Animation for cameras, objects, skeletons and lights.glTFSample, a simple demo app to show off Cauldron's features.TressFX, a library that simulates and renders realistic hair and fur.FidelityFX-FSR2 Super Resolution 2.0 (FSR2).FidelityFX-CAS Contrast Adaptive Sharpenening (CAS).FidelityFX-ParallelSort GPU-based optimised sorting.FidelityFX-VariableShading Variable Rate Shading (VRS).FidelityFX-CACAO Combined Adaptive Compute Ambient Occlusion (CACAO).FidelityFX-LPM Luma Preserving Mapper (LPM).FidelityFX-SSSR Stochastic Screen Space Reflections (SSSR).FidelityFX-SPD Single Pass Downsampler (SPD).To see it in action check projects below. A simple framework for rapid prototyping on Vulkan or DirectX12.Ĭauldron was developed by AMD and is used internally to develop prototypes, demos and SDK samples.Ĭauldron is compiled as a static library. ![]()
0 Comments
Leave a Reply. |