Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
|
#include "precompiled.h"
#include "DeviceSelection.h"
#include "lib/code_annotation.h"
#include "lib/config2.h"
#include "renderer/backend/vulkan/Device.h"
#include "renderer/backend/vulkan/Utilities.h"
#include "scriptinterface/JSON.h"
#include "scriptinterface/Object.h"
#include "scriptinterface/ScriptInterface.h"
#include "scriptinterface/ScriptRequest.h"
#include <algorithm>
#include <limits>
#include <string>
#include <type_traits>
#include <vector>
Namespaces | |
namespace | Renderer |
namespace | Renderer::Backend |
namespace | Renderer::Backend::Vulkan |
namespace | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp} |
Macros | |
#define | REPORT_LIMITS_CONSTANT(NAME) |
#define | REPORT_DESCRIPTOR_INDEXING_CONSTANT(NAME) |
#define | REPORT_FEATURE(NAME) Script::SetProperty(rq, features, #NAME, static_cast<bool>(device.features.NAME)); |
#define | REPORT_DESCRIPTOR_INDEXING_FEATURE(NAME) Script::SetProperty(rq, features, #NAME, static_cast<bool>(device.descriptorIndexingFeatures.NAME)); |
#define | REPORT_SURFACE_CAPABILITIES_CONSTANT(NAME) |
Functions | |
std::vector< std::string > | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp}::GetPhysicalDeviceExtensions (VkPhysicalDevice device) |
uint32_t | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp}::GetDeviceTypeScore (const VkPhysicalDeviceType deviceType) |
VkDeviceSize | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp}::GetDeviceTotalMemory (const VkPhysicalDeviceMemoryProperties &memoryProperties) |
VkDeviceSize | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp}::GetHostTotalMemory (const VkPhysicalDeviceMemoryProperties &memoryProperties) |
SAvailablePhysicalDevice | Renderer::Backend::Vulkan::anonymous_namespace{DeviceSelection.cpp}::MakeAvailablePhysicalDevice (const uint32_t physicalDeviceIndex, VkPhysicalDevice physicalDevice, VkSurfaceKHR surface, const std::vector< const char * > &requiredDeviceExtensions) |
std::vector< SAvailablePhysicalDevice > | Renderer::Backend::Vulkan::GetAvailablePhysicalDevices (VkInstance instance, VkSurfaceKHR surface, const std::vector< const char * > &requiredDeviceExtensions) |
bool | Renderer::Backend::Vulkan::IsPhysicalDeviceUnsupported (const SAvailablePhysicalDevice &device) |
bool | Renderer::Backend::Vulkan::ComparePhysicalDevices (const SAvailablePhysicalDevice &device1, const SAvailablePhysicalDevice &device2) |
bool | Renderer::Backend::Vulkan::IsSurfaceFormatSupported (const VkSurfaceFormatKHR &surfaceFormat) |
void | Renderer::Backend::Vulkan::ReportAvailablePhysicalDevice (const SAvailablePhysicalDevice &device, const ScriptRequest &rq, JS::HandleValue settings) |
Report all desired information about the available physical device. More... | |
#define REPORT_DESCRIPTOR_INDEXING_CONSTANT | ( | NAME | ) |
#define REPORT_DESCRIPTOR_INDEXING_FEATURE | ( | NAME | ) | Script::SetProperty(rq, features, #NAME, static_cast<bool>(device.descriptorIndexingFeatures.NAME)); |
#define REPORT_FEATURE | ( | NAME | ) | Script::SetProperty(rq, features, #NAME, static_cast<bool>(device.features.NAME)); |
#define REPORT_LIMITS_CONSTANT | ( | NAME | ) |
#define REPORT_SURFACE_CAPABILITIES_CONSTANT | ( | NAME | ) |