Re: Mirillis Action! 1.24.2 With Loader Free Download

0 views
Skip to first unread message
Message has been deleted

Phillipp Schneeberger

unread,
Jul 12, 2024, 4:57:07 PM7/12/24
to critomambour

Mirillis Action Portable also excels in capturing gameplay footage. It features a dedicated game recording mode that optimizes system resources to ensure minimal impact on gaming performance. Users can record their gameplay in real-time, capturing every detail and action with minimal lag or frame drops. The software also supports recording in the popular MP4 format, ensuring compatibility with various video editing and sharing platforms.

Mirillis Action! 1.24.2 with Loader free download


Download https://ssurll.com/2yU4Q2



The application sits on one end of, and interfaces directly with, theloader. On the other end of the loader from the application are the ICDs, whichcontrol the Vulkan-capable hardware. An important point to remember is thatVulkan-capable hardware can be graphics-based, compute-based, or both. Betweenthe application and the ICDs the loader can inject a number of optionallayers that provide special functionality.

The loader is responsible for working with the various layers as well assupporting multiple GPUs and their drivers. Any Vulkan function maywind up calling into a diverse set of modules: loader, layers, and ICDs.The loader is critical to managing the proper dispatching of Vulkanfunctions to the appropriate set of layers and ICDs. The Vulkan objectmodel allows the loader to insert layers into a call chain so that the layerscan process Vulkan functions prior to the ICD being called.

Vulkan uses an object model to control the scope of a particular action oroperation. The object to be acted on is always the first parameter of a Vulkancall and is a dispatchable object (see Vulkan specification section 2.3 ObjectModel). Under the covers, the dispatchable object handle is a pointer to astructure, which in turn, contains a pointer to a dispatch table maintained bythe loader. This dispatch table contains pointers to the Vulkan functionsappropriate to that object.

The loader library on Windows, Linux, Android, and macOS will export all core Vulkanand all appropriate Window System Interface (WSI) extensions. This is done tomake it simpler to get started with Vulkan development. When an applicationlinks directly to the loader library in this way, the Vulkan calls are simpletrampoline functions that jump to the appropriate dispatch table entry for theobject they are given.

The loader is ordinarily distributed as a dynamic library (.dll on Windows or.so on Linux or .dylib on macOS) which gets installed to the system pathfor dynamic libraries.Linking to the dynamic library is generally the preferred method of linking tothe loader, as doing so allows the loader to be updated for bug fixes andimprovements. Furthermore, the dynamic library is generally installed to Windowssystems as part of driver installation and is generally provided on Linuxthrough the system package manager. This means that applications can usuallyexpect a copy of the loader to be present on a system. If applications want tobe completely sure that a loader is present, they can include a loader orruntime installer with their application.

NOTE: There are some Device functions which still require the loader tointercept them with a trampoline and terminator. There are very few ofthese, but they are typically functions which the loader wraps with its owndata. In those cases, even the Device call chain will continue to look like theInstance call chain. One example of a Device function requiring a terminatoris vkCreateSwapchainKHR. For that function, the loader needs to potentiallyconvert the KHR_surface object into an ICD-specific KHR_surface object prior topassing down the rest of the function's information to the ICD.

The Vulkan loader library will be distributed in various ways including VulkanSDKs, OS package distributions and Independent Hardware Vendor (IHV) driverpackages. These details are beyond the scope of this document. However, the nameand versioning of the Vulkan loader library is specified so an app can link tothe correct Vulkan ABI library version. Vulkan versioning is such that ABIbackward compatibility is guaranteed for all versions with the same majornumber (e.g. 1.0 and 1.1). On Windows, the loader library encodes the ABIversion in its name such that multiple ABI incompatible versions of the loadercan peacefully coexist on a given system. The Vulkan loader library file name isvulkan-.dll. For example, for Vulkan version 1.X on Windows thelibrary filename is vulkan-1.dll. And this library file can typically be foundin the windows\system32 directory (on 64-bit Windows installs, the 32-bitversion of the loader with the same name can be found in the windows\sysWOW64directory).

Developers may need to use special, pre-production layers, without modifying thesystem-installed layers. You can direct the loader to look for layers in aspecific folder by defining the "VK_LAYER_PATH" environment variable. Thiswill override the mechanism used for finding system-installed layers. Becauselayers of interest may exist in several distinct folders on a system, thisenvironment variable can contains several paths separated by the operatingspecific path separator. On Windows, each separate folder should be separatedin the list using a semi-colon. On Linux and macOS, each folder name should be separatedusing a colon.

Extensions are optional functionality provided by a layer, the loader or anICD. Extensions can modify the behavior of the Vulkan API and need to bespecified and registered with Khronos. These extensions can be createdby an Independent Hardware Vendor (IHV) to expose new hardware functionality,or by a layer writer to expose some internal feature, or by the loader toimprove functional behavior. Information about various extensions can befound in the Vulkan Spec, and vulkan.h header file.

With the ability to expand Vulkan so easily, extensions will be created that theloader knows nothing about. If the extension is a device extension, the loaderwill pass the unknown entry point down the device call chain ending with theappropriate ICD entry points. The same thing will happen if the extension isan instance extension which takes a physical device parameter as its firstcomponent. However, for all other instance extensions the loader will fail toload it.

Because the device call-chain does not normally pass through the loaderterminator, this is not a problem for device extensions. Additionally,since a physical device is associated with one ICD, we can use a genericterminator pointing to one ICD. This is because both of these extensionsterminate directly in the ICD they are associated with.

Is this a big problem?
No! Most extension functionality only affects either a physical or logicaldevice and not an instance. Thus, the overwhelming majority of extensionsshould be supported with direct loader support.

For each value in these keys which has DWORD data set to 0, the loader opensthe JSON manifest file specified by the name of the value. Each name must be afull pathname to the manifest file. Additionally, the HKEY_CURRENT_USER locationswill only be searched if an application does not have administrative privileges.This is done to ensure that an application with administrative privileges does notrun layers that did not need administrator access to install.

Additionally, the loader will scan through registry keys specific to DisplayAdapters and all Software Components associated with these adapters for thelocations of JSON manifest files. These keys are located in device keyscreated during driver installation and contain configuration informationfor base settings, including Vulkan, OpenGL, and Direct3D ICD location.

This function allows the loader and layer to agree on an interface version to use.The "loaderLayerInterfaceVersion" field is both an input and output parameter."loaderLayerInterfaceVersion" is filled in by the loader with the desired latestinterface version supported by the loader (typically the latest). The layer receivesthis and returns back the version it desires in the same field. Because it issetting up the interface version between the loader and layer, this should bethe first call made by a loader to the layer (even prior to any calls tovkGetInstanceProcAddr).

If the loader receives a VK_ERROR_INITIALIZATION_FAILED error instead ofVK_SUCCESS, then the loader will treat the layer as unusable and will not loadit for use. In this case, the application will not see the layer duringenumeration. Note that the loader is currently backwards compatible with alllayer interface versions, so a layer should not be able to request a versionolder than what the loader supports.

Meta-layers are a special kind of layer which is only available through thedesktop loader. While normal layers are associated with one particular library,a meta-layer is actually a collection layer which contains an ordered list ofother layers (called component layers).

If an implicit meta-layer was found on the system with the name VK_LAYER_LUNARG_override,the loader uses it as an 'override' layer. This is used to selectively enable and disableother layers from being loaded. It can be applied globally or to a specific applicationor applications. Disabling layers and specifying the application requires the layer manifest have the following keys:

The loader supports layers wrapping any Vulkan object, including dispatchableobjects. For functions that return object handles, each layer does not touchthe value passed down the call chain. This is because lower items may need touse the original value. However, when the value is returned from alower-level layer (possibly the ICD), the layer saves the handle and returnsits own handle to the layer above it (possibly the application). When a layerreceives a Vulkan function using something that it previously returned a handlefor, the layer is required to unwrap the handle and pass along the saved handleto the layer below it. This means that the layer must intercept every Vulkanfunction which uses the object in question, and wrap or unwrap the object, asappropriate. This includes adding support for all extensions with functionsusing any object the layer wraps.

aa06259810
Reply all
Reply to author
Forward
0 new messages