| 93 | // <- |
| 94 | |
| 95 | void RenderSystem::init(void* p_PlatformHandle, void* p_PlatformWindow) |
| 96 | { |
| 97 | _INTR_PROFILE_AUTO("Initializes Vulkan Render System"); |
| 98 | |
| 99 | _INTR_LOG_INFO("Inititializing Vulkan Render System..."); |
| 100 | _INTR_LOG_PUSH(); |
| 101 | |
| 102 | // Init render states |
| 103 | { |
| 104 | RenderStates::init(); |
| 105 | } |
| 106 | |
| 107 | // Initializes Vulkan |
| 108 | { |
| 109 | _INTR_LOG_INFO("Using Vulkan SDK version 1.0.%u.x...", VK_HEADER_VERSION); |
| 110 | _INTR_PROFILE_AUTO("Initializes Vulkan"); |
| 111 | |
| 112 | initVkInstance(); |
| 113 | initVkDevice(); |
| 114 | initVkSurface(p_PlatformHandle, p_PlatformWindow); |
| 115 | initVkPipelineCache(); |
| 116 | initVkCommandPools(); |
| 117 | initVkTempCommandBuffer(); |
| 118 | } |
| 119 | |
| 120 | { |
| 121 | GpuMemoryManager::init(); |
| 122 | Samplers::init(); |
| 123 | initManagers(); |
| 124 | } |
| 125 | |
| 126 | { |
| 127 | _INTR_PROFILE_AUTO("Create Resources"); |
| 128 | |
| 129 | { |
| 130 | _INTR_PROFILE_AUTO("Compile Shaders"); |
| 131 | |
| 132 | GpuProgramManager::compileAllShaders(false, false); |
| 133 | } |
| 134 | |
| 135 | { |
| 136 | _INTR_PROFILE_AUTO("Create GPU Program Resources"); |
| 137 | |
| 138 | GpuProgramManager::createResources(GpuProgramManager::_activeRefs); |
| 139 | } |
| 140 | |
| 141 | RenderPassManager::createAllResources(); |
| 142 | |
| 143 | { |
| 144 | _INTR_PROFILE_AUTO("Create Image Resources"); |
| 145 | |
| 146 | ImageManager::createAllResources(); |
| 147 | ImageManager::updateGlobalDescriptorSets(); |
| 148 | } |
| 149 | |
| 150 | VertexLayoutManager::createAllResources(); |
| 151 | PipelineLayoutManager::createAllResources(); |
| 152 | PipelineManager::createAllResources(); |
nothing calls this directly
no outgoing calls
no test coverage detected