删除部分无用变量
parent
ee81b8e56d
commit
eaf10107ae
|
@ -68,18 +68,7 @@ private:
|
||||||
PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallback;
|
PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallback;
|
||||||
PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallback;
|
PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallback;
|
||||||
VkDebugReportCallbackEXT debugReportCallback;
|
VkDebugReportCallbackEXT debugReportCallback;
|
||||||
struct MultisampleTarget {
|
|
||||||
struct {
|
|
||||||
VkImage image;
|
|
||||||
VkImageView view;
|
|
||||||
VkDeviceMemory memory;
|
|
||||||
} color;
|
|
||||||
struct {
|
|
||||||
VkImage image;
|
|
||||||
VkImageView view;
|
|
||||||
VkDeviceMemory memory;
|
|
||||||
} depth;
|
|
||||||
} multisampleTarget;
|
|
||||||
protected:
|
protected:
|
||||||
VkInstance instance;
|
VkInstance instance;
|
||||||
VkPhysicalDevice physicalDevice;
|
VkPhysicalDevice physicalDevice;
|
||||||
|
@ -106,9 +95,9 @@ public:
|
||||||
bool prepared = false;
|
bool prepared = false;
|
||||||
|
|
||||||
Camera camera;
|
Camera camera;
|
||||||
glm::vec2 mousePos;
|
|
||||||
bool paused = false;
|
bool paused = false;
|
||||||
uint32_t lastFPS = 0;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -53,32 +53,19 @@ namespace PlumageRender
|
||||||
|
|
||||||
} info;
|
} info;
|
||||||
|
|
||||||
struct Signal
|
|
||||||
{
|
|
||||||
bool imageSequenceOutputComplete = false;
|
|
||||||
bool imageSequenceToVideoComplete = false;
|
|
||||||
|
|
||||||
}signal;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
glm::vec3 modelrot = glm::vec3(0.0f);
|
glm::vec3 modelrot = glm::vec3(0.0f);
|
||||||
glm::vec3 modelPos = glm::vec3(0.0f);
|
glm::vec3 modelPos = glm::vec3(0.0f);
|
||||||
|
|
||||||
std::map<std::string, std::string> environments;
|
|
||||||
std::string selectedEnvironment = "papermill";
|
|
||||||
std::map<std::string, std::string> scenes;
|
|
||||||
std::string selectedScene = "DamagedHelmet";
|
|
||||||
|
|
||||||
int32_t debugViewInputs = 0;
|
|
||||||
int32_t debugViewEquation = 0;
|
|
||||||
|
|
||||||
struct StagingBuffer {
|
|
||||||
VkBuffer buffer;
|
|
||||||
VkDeviceMemory memory;
|
|
||||||
} vertexStaging, indexStaging;
|
|
||||||
|
|
||||||
std::vector<VkCommandBuffer> commandBuffers;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
uint32_t frameIndex = 0;
|
uint32_t frameIndex = 0;
|
||||||
|
|
||||||
|
@ -88,7 +75,7 @@ namespace PlumageRender
|
||||||
float animationTimer = 0.0f;
|
float animationTimer = 0.0f;
|
||||||
bool animate = true;
|
bool animate = true;
|
||||||
|
|
||||||
bool displayBackground = true;
|
|
||||||
|
|
||||||
struct LightSource {
|
struct LightSource {
|
||||||
glm::vec3 color = glm::vec3(1.0f);
|
glm::vec3 color = glm::vec3(1.0f);
|
||||||
|
|
|
@ -1 +1,57 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace PlumageRender
|
||||||
|
{
|
||||||
|
class RenderInput
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
RenderInput();
|
||||||
|
~RenderInput();
|
||||||
|
|
||||||
|
struct Signal
|
||||||
|
{
|
||||||
|
bool imageSequenceOutputComplete = false;
|
||||||
|
bool imageSequenceToVideoComplete = false;
|
||||||
|
};
|
||||||
|
static Signal signal;
|
||||||
|
|
||||||
|
std::map<std::string, std::string> environments;
|
||||||
|
std::string selectedEnvironment = "papermill";
|
||||||
|
std::map<std::string, std::string> scenes;
|
||||||
|
std::string selectedScene = "DamagedHelmet";
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
RenderInput::RenderInput()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderInput::~RenderInput()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class RenderOutput
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
RenderOutput();
|
||||||
|
~RenderOutput();
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
RenderOutput::RenderOutput()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderOutput::~RenderOutput()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -54,14 +54,14 @@ void PlumageRender::PlumageGUI::updateUIOverlay()
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!filename.empty()) {
|
if (!filename.empty()) {
|
||||||
vkDeviceWaitIdle(vulkanBasic.device);
|
vkDeviceWaitIdle(VulkanBackend::VulkanFoundation::device);
|
||||||
std::wstring_convert<std::codecvt_utf8<wchar_t>> converter;
|
std::wstring_convert<std::codecvt_utf8<wchar_t>> converter;
|
||||||
std::string stringFilename = converter.to_bytes(filename);
|
std::string stringFilename = converter.to_bytes(filename);
|
||||||
loadScene(stringFilename);
|
loadScene(stringFilename);
|
||||||
setupDescriptors();
|
setupDescriptors();
|
||||||
updateCBs = true;
|
updateCBs = true;
|
||||||
signal.imageSequenceOutputComplete = false;
|
PlumageRender::RenderInput::signal.imageSequenceOutputComplete = false;
|
||||||
signal.imageSequenceToVideoComplete = false;
|
PlumageRender::RenderInput::signal.imageSequenceToVideoComplete = false;
|
||||||
savedFrameCounter = 1;
|
savedFrameCounter = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -71,8 +71,8 @@ void PlumageRender::PlumageGUI::updateUIOverlay()
|
||||||
{
|
{
|
||||||
if (gui->beginMenu(chineseUI.menuEnvironmentConfig))
|
if (gui->beginMenu(chineseUI.menuEnvironmentConfig))
|
||||||
{
|
{
|
||||||
if (gui->combo(chineseUI.environmentMap, selectedEnvironment, environments)) {
|
if (gui->combo(chineseUI.environmentMap, PlumageRender::RenderInput::selectedEnvironment, PlumageRender::RenderInput::environments)) {
|
||||||
vkDeviceWaitIdle(device);
|
vkDeviceWaitIdle(VulkanBackend::VulkanFoundation::device);
|
||||||
loadEnvironment(environments[selectedEnvironment]);
|
loadEnvironment(environments[selectedEnvironment]);
|
||||||
setupDescriptors();
|
setupDescriptors();
|
||||||
updateCBs = true;
|
updateCBs = true;
|
||||||
|
@ -80,13 +80,13 @@ void PlumageRender::PlumageGUI::updateUIOverlay()
|
||||||
if (gui->checkbox(chineseUI.environmentBackGround, &setter.settings.displayBackground)) {
|
if (gui->checkbox(chineseUI.environmentBackGround, &setter.settings.displayBackground)) {
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
if (gui->slider("Exposure", &shaderData.exposure, 0.1f, 10.0f)) {
|
if (gui->slider("Exposure", &VulkanBackend::VulkanFoundation::shaderData.exposure, 0.1f, 10.0f)) {
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
if (gui->slider("Gamma", &shaderData.gamma, 0.1f, 4.0f)) {
|
if (gui->slider("Gamma", &VulkanBackend::VulkanFoundation::shaderData.gamma, 0.1f, 4.0f)) {
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
if (gui->slider("IBL", &shaderData.scaleIBLAmbient, 0.0f, 1.0f)) {
|
if (gui->slider("IBL", &VulkanBackend::VulkanFoundation::shaderData.scaleIBLAmbient, 0.0f, 1.0f)) {
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
gui->endMenu();
|
gui->endMenu();
|
||||||
|
@ -100,8 +100,8 @@ void PlumageRender::PlumageGUI::updateUIOverlay()
|
||||||
const std::vector<std::string> debugNamesInputs = {
|
const std::vector<std::string> debugNamesInputs = {
|
||||||
"none", "Base color", "Normal", "Occlusion", "Emissive", "Metallic", "Roughness"
|
"none", "Base color", "Normal", "Occlusion", "Emissive", "Metallic", "Roughness"
|
||||||
};
|
};
|
||||||
if (gui->combo(chineseUI.debugInput, &debugViewInputs, debugNamesInputs)) {
|
if (gui->combo(chineseUI.debugInput, &debugView.debugViewInputs, debugNamesInputs)) {
|
||||||
shaderData.debugViewInputs = static_cast<float>(debugViewInputs);
|
VulkanBackend::VulkanFoundation::shaderData.debugViewInputs = static_cast<float>(debugView.debugViewInputs);
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
gui->endMenu();
|
gui->endMenu();
|
||||||
|
@ -111,8 +111,8 @@ void PlumageRender::PlumageGUI::updateUIOverlay()
|
||||||
const std::vector<std::string> debugNamesEquation = {
|
const std::vector<std::string> debugNamesEquation = {
|
||||||
"none", "Diff (l,n)", "F (l,h)", "G (l,v,h)", "D (h)", "Specular"
|
"none", "Diff (l,n)", "F (l,h)", "G (l,v,h)", "D (h)", "Specular"
|
||||||
};
|
};
|
||||||
if (gui->combo(chineseUI.debugPBREquation, &debugViewEquation, debugNamesEquation)) {
|
if (gui->combo(chineseUI.debugPBREquation, &debugView.debugViewEquation, debugNamesEquation)) {
|
||||||
shaderData.debugViewEquation = static_cast<float>(debugViewEquation);
|
VulkanBackend::VulkanFoundation::shaderData.debugViewEquation = static_cast<float>(debugView.debugViewEquation);
|
||||||
updateShaderParams = true;
|
updateShaderParams = true;
|
||||||
}
|
}
|
||||||
gui->endMenu();
|
gui->endMenu();
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
#include "VulkanDevice.hpp"
|
#include "VulkanDevice.hpp"
|
||||||
#include "vulkanFoundation.h"
|
#include "vulkanFoundation.h"
|
||||||
#include "renderSetter.h"
|
#include "renderSetter.h"
|
||||||
|
#include "renderIO.h"
|
||||||
|
|
||||||
namespace PlumageRender
|
namespace PlumageRender
|
||||||
{
|
{
|
||||||
|
@ -18,11 +19,19 @@ namespace PlumageRender
|
||||||
|
|
||||||
void updateUIOverlay();
|
void updateUIOverlay();
|
||||||
|
|
||||||
|
struct DebugView
|
||||||
|
{
|
||||||
|
int32_t debugViewInputs = 0;
|
||||||
|
int32_t debugViewEquation = 0;
|
||||||
|
};
|
||||||
|
static DebugView debugView;
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
PlumageRender::Setter setter;
|
PlumageRender::Setter setter;
|
||||||
VulkanBackend::VulkanFoundation vulkanBasic;
|
|
||||||
|
|
||||||
|
uint32_t lastFPS = 0;
|
||||||
float frameTimer = 1.0f;
|
float frameTimer = 1.0f;
|
||||||
|
|
||||||
struct GamePadState {
|
struct GamePadState {
|
||||||
|
|
|
@ -38,9 +38,23 @@ namespace VulkanBackend
|
||||||
|
|
||||||
const int frameRange = setter.settings.endFrameIndex - setter.settings.startFrameCount;
|
const int frameRange = setter.settings.endFrameIndex - setter.settings.startFrameCount;
|
||||||
|
|
||||||
|
static VkDevice device;
|
||||||
|
|
||||||
|
struct ShaderData {
|
||||||
|
glm::vec4 lightDir;
|
||||||
|
float exposure = 4.5f;
|
||||||
|
float gamma = 2.2f;
|
||||||
|
float prefilteredCubeMipLevels;
|
||||||
|
float scaleIBLAmbient = 1.0f;
|
||||||
|
float debugViewInputs = 0;
|
||||||
|
float debugViewEquation = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
static ShaderData shaderData;
|
||||||
|
|
||||||
void initVulkan();
|
void initVulkan();
|
||||||
|
|
||||||
VkDevice device;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
|
@ -177,15 +191,7 @@ namespace VulkanBackend
|
||||||
glm::vec3 camPos;
|
glm::vec3 camPos;
|
||||||
} shaderDataScene, shaderDataSkybox;
|
} shaderDataScene, shaderDataSkybox;
|
||||||
|
|
||||||
struct ShaderData {
|
|
||||||
glm::vec4 lightDir;
|
|
||||||
float exposure = 4.5f;
|
|
||||||
float gamma = 2.2f;
|
|
||||||
float prefilteredCubeMipLevels;
|
|
||||||
float scaleIBLAmbient = 1.0f;
|
|
||||||
float debugViewInputs = 0;
|
|
||||||
float debugViewEquation = 0;
|
|
||||||
} shaderData;
|
|
||||||
|
|
||||||
std::vector<UniformBufferSet> uniformBuffers;
|
std::vector<UniformBufferSet> uniformBuffers;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue