The Joe Engine
Joe's engine programming playground
|
Namespaces | |
MemAllocUtils | |
RNG | |
Classes | |
class | Entity |
The Entity class. More... | |
struct | je_framebuffer_attachment_t |
Generic framebuffer attachment data. More... | |
struct | je_offscreen_deferred_pass_t |
Offscreen deferred geometry rendering pass data. More... | |
struct | je_offscreen_forward_pass_t |
Offscreen forward rendering pass data. More... | |
struct | je_offscreen_shadow_pass_t |
Offscreen shadow rendering pass data. More... | |
struct | je_particle_system_settings_t |
Particle settings struct. More... | |
struct | je_post_processing_pass_t |
Post processing rendering pass data. More... | |
struct | JE_PushConst_ModelMat |
Model matrix struct data for push constants. More... | |
struct | JE_PushConst_ViewProj |
View-projection matrix struct data for push constants. More... | |
struct | je_single_mesh_t |
Single-instance mesh data (e.g. screen space triangle, bounding box visualization, etc). More... | |
struct | je_thread_job_t |
Thread Job struct. More... | |
class | JECamera |
The JECamera class. More... | |
class | JEComponentManager |
The Component Manager class. More... | |
class | JEDeferredGeometryShader |
The JEDeferredGeometryShader. More... | |
class | JEDeferredShader |
The JEDeferredShader class. More... | |
class | JEEngineInstance |
The Engine Instance class. More... | |
class | JEEntityManager |
The Entity Manager class. More... | |
class | JEForwardShader |
The JEForwardShader class. More... | |
class | JEForwardTranslucentShader |
The JEForwardTranslucentShader class. More... | |
class | JEIOHandler |
The JEIOHandler class. More... | |
class | JEMaterialComponentManager |
The Material Component Manager class. More... | |
class | JEMeshBufferManager |
The JEMeshBufferManager. More... | |
class | JEMeshComponentManager |
The Mesh Component Manager class. More... | |
struct | JEMeshPointVertex |
Point-mesh vertex attribute data. More... | |
struct | JEMeshVertex |
Triangle-mesh vertex attribute data. More... | |
class | JEOITSortShader |
The JEOITSortShader class. More... | |
class | JEParticleSystem |
The Particle System class. More... | |
class | JEPhysicsManager |
The Physics Manager class. More... | |
class | JEPointsShader |
The JEPointsShader. More... | |
class | JESceneManager |
The Scene Manager class. More... | |
class | JEShader |
The JEShader class. More... | |
class | JEShaderManager |
The JEShaderManger class. More... | |
class | JEShadowShader |
The JEShadowShader. More... | |
class | JETextureLibrary |
The JETextureLibrary class. More... | |
class | JEThreadPool |
The JEThreadPool class. More... | |
class | JETransformComponentManager |
The Transform Component Manager class. More... | |
struct | JEUBO_ViewProj_Inv |
Inverse view and inverse projection matrix struct data for push constants. More... | |
class | JEVulkanDescriptor |
The JEVulkanDescriptor class. More... | |
class | JEVulkanQueue |
The JEVulkanQueue class. More... | |
class | JEVulkanRenderer |
The JEVulkanRenderer class. More... | |
class | JEVulkanShader |
The JEVulkanShader. More... | |
class | JEVulkanSwapChain |
The JEVulkanSwapChain class. More... | |
class | JEVulkanValidationLayers |
The Vulkan validation layers class. More... | |
class | JEVulkanWindow |
The JEVulkanWindow class. More... | |
class | MaterialComponent |
The Material Component class. More... | |
class | MeshComponent |
The Mesh Component class. More... | |
struct | oit_atomic_ctr_t |
OIT atomic counter data. More... | |
struct | oit_hp_node_t |
OIT head pointer linked list node data. More... | |
struct | oit_ll_node_t |
OIT Color-depth linked list node data. More... | |
struct | oit_np_node_t |
OIT next pointer linked list node data. More... | |
class | PackedArray |
The PackedArray class. More... | |
struct | particle_update_data_t |
struct | QueueFamilyIndices |
Queue family indices data struct. More... | |
class | ScopedTimer |
The ScopedTimer class. More... | |
struct | SwapChainSupportDetails |
Swap chain support detail data struct. More... | |
class | TransformComponent |
The Transform Component class. More... | |
Typedefs | |
typedef enum JoeEngine::JE_RENDER_LAYER | RenderLayer |
Render layer enum. More... | |
typedef enum JoeEngine::JE_GEOM_TYPE | GeomType |
Geometry type enum. More... | |
typedef enum JoeEngine::JE_MATERIAL_SETTINGS | MaterialSettings |
Material Settings enum. More... | |
typedef struct JoeEngine::je_particle_system_settings_t | JEParticleSystemSettings |
Particle settings struct. More... | |
typedef struct JoeEngine::particle_update_data_t | ParticleUpdateData |
using | BoundingBoxData = std::array< glm::vec3, 8 > |
Typedef for bounding box data - a bounding box is a list of 8 3D points (corners of the box). More... | |
typedef enum JoeEngine::JE_PIPELINE_TYPE | PipelineType |
Render pipeline type struct. More... | |
typedef struct JoeEngine::oit_ll_node_t | OITLinkedListNode |
OIT Color-depth linked list node data. More... | |
typedef struct JoeEngine::oit_hp_node_t | OITHeadPointerNode |
OIT head pointer linked list node data. More... | |
typedef struct JoeEngine::oit_np_node_t | OITNextPointerNode |
OIT next pointer linked list node data. More... | |
typedef struct JoeEngine::oit_atomic_ctr_t | OITAtomicCounterData |
OIT atomic counter data. More... | |
typedef struct JoeEngine::je_framebuffer_attachment_t | JEFramebufferAttachment |
Generic framebuffer attachment data. More... | |
typedef struct JoeEngine::je_offscreen_forward_pass_t | JEForwardPass |
Offscreen forward rendering pass data. More... | |
typedef struct JoeEngine::je_offscreen_shadow_pass_t | JEOffscreenShadowPass |
Offscreen shadow rendering pass data. More... | |
typedef struct JoeEngine::je_offscreen_deferred_pass_t | JEOffscreenDeferredPass |
Offscreen deferred geometry rendering pass data. More... | |
typedef struct JoeEngine::je_post_processing_pass_t | JEPostProcessingPass |
Post processing rendering pass data. More... | |
typedef struct JoeEngine::je_single_mesh_t | JESingleMesh |
Single-instance mesh data (e.g. screen space triangle, bounding box visualization, etc). More... | |
typedef enum JoeEngine::JE_RENDERER_SETTINGS_TYPE | RendererSettings |
Engine renderer settings bit flag. More... | |
using | JECallbackFunction = std::function< void()> |
Simple typedef for std::function. More... | |
typedef struct JoeEngine::je_thread_job_t | JEThreadJob |
Thread Job struct. More... | |
Enumerations | |
enum | JE_RENDER_LAYER : uint32_t { OPAQUE = 0x0, TRANSLUCENT = 0xFFFF, MAX_LAYER = 0xFFFFFFFF } |
Render layer enum. More... | |
enum | JE_GEOM_TYPE : uint32_t { TRIANGLES = 0x0, LINES = 0x1, POINTS = 0x2 } |
Geometry type enum. More... | |
enum | JE_MATERIAL_SETTINGS : uint32_t { NO_SETTINGS = 0x0, RECEIVES_SHADOWS = 0x1, CASTS_SHADOWS = 0x2, ALL_SETTINGS = 0xF } |
Material Settings enum. More... | |
enum | JE_MESH_BUFFER_TYPE { MESH_TRIANGLES, MESH_LINES, MESH_POINTS } |
Mesh Buffer Type enum. More... | |
enum | JE_PIPELINE_TYPE : uint8_t { FORWARD, DEFERRED, SHADOW, DEFERRED_GEOM, FORWARD_POINTS, TRANSLUCENT_OIT, TRANSLUCENT_OIT_SORT } |
Render pipeline type struct. More... | |
enum | JE_RENDERER_SETTINGS_TYPE : uint32_t { JE_RENDERER_SETTINGS_TYPE::Default = 0x0, JE_RENDERER_SETTINGS_TYPE::EnableDeferred = 0x1, JE_RENDERER_SETTINGS_TYPE::EnableOIT = 0x2, JE_RENDERER_SETTINGS_TYPE::AllSettings = 0xFFFFFFFF } |
Engine renderer settings bit flag. More... | |
Functions | |
void | UpdateParticleSystems_MT (void *data) |
QueueFamilyIndices | FindQueueFamilies (VkPhysicalDevice physicalDevice, VkSurfaceKHR surface) |
Find queue families. More... | |
std::vector< VkDeviceQueueCreateInfo > | GetQueueCreateInfos (const QueueFamilyIndices &indices) |
Get queue create info data. More... | |
std::vector< char > | ReadFile (const std::string &filename) |
Read a shader from a file source path. More... | |
VkShaderModule | CreateShaderModule (VkDevice device, const std::vector< char > &code) |
Create a shader module object from shader source code. More... | |
VkCommandBuffer | BeginSingleTimeCommands (VkDevice device, VkCommandPool commandPool) |
Begin single time command buffer recording. More... | |
void | EndSingleTimeCommands (VkDevice device, VkCommandBuffer commandBuffer, const JEVulkanQueue &graphicsQueue, VkCommandPool commandPool) |
End single time command buffer recording. More... | |
bool | HasStencilComponent (VkFormat format) |
Check if a depth format has a stencil component. More... | |
uint32_t | FindMemoryType (VkPhysicalDevice physicalDevice, uint32_t typeFilter, VkMemoryPropertyFlags properties) |
Get memory for an allocation. More... | |
void | CreateBuffer (VkPhysicalDevice physicalDevice, VkDevice device, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags properties, VkBuffer &buffer, VkDeviceMemory &bufferMemory) |
Create buffer on the GPU. More... | |
void | CopyBuffer (VkDevice device, VkCommandPool commandPool, const JEVulkanQueue &graphicsQueue, VkBuffer srcBuffer, VkBuffer dstBuffer, VkDeviceSize size) |
Copy buffer CPU to GPU. More... | |
void | CreateImage (VkPhysicalDevice physicalDevice, VkDevice device, uint32_t width, uint32_t height, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags properties, VkImage &image, VkDeviceMemory &imageMemory) |
Create image. More... | |
VkImageView | CreateImageView (VkDevice device, VkImage image, VkFormat format, VkImageAspectFlags aspectFlags) |
Create image view. More... | |
void | TransitionImageLayout (VkDevice device, VkCommandPool commandPool, const JEVulkanQueue &graphicsQueue, VkImage image, VkFormat format, VkImageLayout oldLayout, VkImageLayout newLayout) |
Transition image from initial to final layout. More... | |
VkFormat | FindSupportedFormat (VkPhysicalDevice physicalDevice, const std::vector< VkFormat > &candidates, VkImageTiling tiling, VkFormatFeatureFlags features) |
Check if several candidate formats are supported. More... | |
VkFormat | FindDepthFormat (VkPhysicalDevice physicalDevice) |
Find a supported format among several candidate depth formats. More... | |
bool | operator& (RendererSettings a, RendererSettings b) |
&-operator for Renderer Settings. More... | |
RendererSettings | operator| (RendererSettings a, RendererSettings b) |
|- operator for Renderer Settings. More... | |
VkResult | CreateDebugReportCallbackEXT (const VkInstance &instance, const VkDebugReportCallbackCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT *pCallback) |
void | DestroyDebugReportCallbackEXT (const VkInstance &instance, VkDebugReportCallbackEXT callback, const VkAllocationCallbacks *pAllocator) |
Variables | |
const std::string | JEBuiltInPostProcessingShaderPaths [2] = { "frag_post_chromatic_aberration.spv", "frag_post_grayscale.spv" } |
constexpr int | JE_DEFAULT_SCREEN_WIDTH = 1280 |
Default screen resolution width. More... | |
constexpr int | JE_DEFAULT_SCREEN_HEIGHT = 720 |
Default screen resolution height. More... | |
constexpr uint32_t | JE_DEFAULT_MAX_FRAMES_IN_FLIGHT = 2 |
Default maximum number of frames in flight on the GPU. More... | |
constexpr int | JE_NUM_ENTITIES = 10000 |
Maximum number of entities in any given scene. More... | |
constexpr uint16_t | JE_NUM_OIT_FRAGSPP = 16 |
Maximum number of fragments per pixel for OIT. More... | |
constexpr int | JE_DEFAULT_SHADOW_MAP_WIDTH = 4000 |
Default shadow map resolution width. More... | |
constexpr int | JE_DEFAULT_SHADOW_MAP_HEIGHT = 4000 |
Default shadow map resolution height. More... | |
constexpr float | JE_DEFAULT_SHADOW_MAP_DEPTH_BIAS_SLOPE = 1.5f |
Default shadow map depth bias - slope. More... | |
constexpr float | JE_DEFAULT_SHADOW_MAP_DEPTH_BIAS_CONSTANT = 0.0f |
Default shadow map depth bias - constant. More... | |
const glm::vec3 | JE_WORLD_UP = glm::vec3(0.0f, 1.0f, 0.0f) |
World up vector (Y is up). More... | |
constexpr float | JE_SCENE_VIEW_NEAR_PLANE = 0.1f |
Scene camera near clip plane value. More... | |
constexpr float | JE_SCENE_VIEW_FAR_PLANE = 200.0f |
Scene camera far clip plane value. More... | |
constexpr float | JE_SHADOW_VIEW_NEAR_PLANE = 0.1f |
Shadow camera near clip plane value. More... | |
constexpr float | JE_SHADOW_VIEW_FAR_PLANE = 200.0f |
Shadow camera far clip plane value. More... | |
const float | JE_FOVY = glm::radians(22.5f) |
Scene camera FOV value. More... | |
const std::string | JE_PROJECT_PATH |
Project path string. More... | |
const std::string | JE_SHADER_DIR |
Shader directory path string. More... | |
const std::string | JE_MODELS_OBJ_DIR |
OBJ models path string. More... | |
const std::string | JE_TEXTURES_DIR |
Textures directory path string. More... | |
const int | JE_KEY_W = GLFW_KEY_W |
Keypress - W. More... | |
const int | JE_KEY_A = GLFW_KEY_A |
Keypress - A. More... | |
const int | JE_KEY_S = GLFW_KEY_S |
Keypress - S. More... | |
const int | JE_KEY_D = GLFW_KEY_D |
Keypress - D. More... | |
const int | JE_KEY_Q = GLFW_KEY_Q |
Keypress - Q. More... | |
const int | JE_KEY_E = GLFW_KEY_E |
Keypress - E. More... | |
const int | JE_KEY_UP = GLFW_KEY_UP |
Keypress - Up arrow. More... | |
const int | JE_KEY_LEFT = GLFW_KEY_LEFT |
Keypress - Left arrow. More... | |
const int | JE_KEY_DOWN = GLFW_KEY_DOWN |
Keypress - Down arrow. More... | |
const int | JE_KEY_RIGHT = GLFW_KEY_RIGHT |
Keypress - Right arrow. More... | |
const int | JE_KEY_0 = GLFW_KEY_0 |
Keypress - 0. More... | |
const int | JE_KEY_1 = GLFW_KEY_1 |
Keypress - 1. More... | |
const int | JE_KEY_2 = GLFW_KEY_2 |
Keypress - 2. More... | |
const int | JE_KEY_3 = GLFW_KEY_3 |
Keypress - 3. More... | |
const int | JE_KEY_4 = GLFW_KEY_4 |
Keypress - 4. More... | |
const int | JE_KEY_5 = GLFW_KEY_5 |
Keypress - 5. More... | |
const int | JE_KEY_6 = GLFW_KEY_6 |
Keypress - 6. More... | |
const int | JE_KEY_7 = GLFW_KEY_7 |
Keypress - 7. More... | |
const int | JE_KEY_8 = GLFW_KEY_8 |
Keypress - 8. More... | |
const int | JE_KEY_9 = GLFW_KEY_9 |
Keypress - 9. More... | |
JEThreadPool | JEThreadPoolInstance = JEThreadPool() |
Thread pool instance. More... | |
using JoeEngine::BoundingBoxData = typedef std::array<glm::vec3, 8> |
Typedef for bounding box data - a bounding box is a list of 8 3D points (corners of the box).
typedef enum JoeEngine::JE_GEOM_TYPE JoeEngine::GeomType |
Geometry type enum.
Indicates what type of geometry a material component will render.
using JoeEngine::JECallbackFunction = typedef std::function<void()> |
Simple typedef for std::function.
typedef struct JoeEngine::je_offscreen_forward_pass_t JoeEngine::JEForwardPass |
Offscreen forward rendering pass data.
Generic framebuffer attachment data.
Offscreen deferred geometry rendering pass data.
Offscreen shadow rendering pass data.
Particle settings struct.
Data that specifies all possible settings necessary to create a particle system.
Post processing rendering pass data.
typedef struct JoeEngine::je_single_mesh_t JoeEngine::JESingleMesh |
Single-instance mesh data (e.g. screen space triangle, bounding box visualization, etc).
typedef struct JoeEngine::je_thread_job_t JoeEngine::JEThreadJob |
Thread Job struct.
Data for executing any threaded task.
Material Settings enum.
Indicates what material settings this material component has active/inactive.
typedef struct JoeEngine::oit_atomic_ctr_t JoeEngine::OITAtomicCounterData |
OIT atomic counter data.
typedef struct JoeEngine::oit_hp_node_t JoeEngine::OITHeadPointerNode |
OIT head pointer linked list node data.
typedef struct JoeEngine::oit_ll_node_t JoeEngine::OITLinkedListNode |
OIT Color-depth linked list node data.
typedef struct JoeEngine::oit_np_node_t JoeEngine::OITNextPointerNode |
OIT next pointer linked list node data.
typedef struct JoeEngine::particle_update_data_t JoeEngine::ParticleUpdateData |
typedef enum JoeEngine::JE_PIPELINE_TYPE JoeEngine::PipelineType |
Render pipeline type struct.
Engine renderer settings bit flag.
typedef enum JoeEngine::JE_RENDER_LAYER JoeEngine::RenderLayer |
Render layer enum.
Indicates what render layer a material component should be rendered to.
enum JoeEngine::JE_GEOM_TYPE : uint32_t |
enum JoeEngine::JE_MATERIAL_SETTINGS : uint32_t |
enum JoeEngine::JE_PIPELINE_TYPE : uint8_t |
enum JoeEngine::JE_RENDER_LAYER : uint32_t |
|
strong |
VkCommandBuffer JoeEngine::BeginSingleTimeCommands | ( | VkDevice | device, |
VkCommandPool | commandPool | ||
) |
Begin single time command buffer recording.
device | the Vulkan logical device. |
commandPool | the Vulkan command pool. |
void JoeEngine::CopyBuffer | ( | VkDevice | device, |
VkCommandPool | commandPool, | ||
const JEVulkanQueue & | graphicsQueue, | ||
VkBuffer | srcBuffer, | ||
VkBuffer | dstBuffer, | ||
VkDeviceSize | size | ||
) |
Copy buffer CPU to GPU.
void JoeEngine::CreateBuffer | ( | VkPhysicalDevice | physicalDevice, |
VkDevice | device, | ||
VkDeviceSize | size, | ||
VkBufferUsageFlags | usage, | ||
VkMemoryPropertyFlags | properties, | ||
VkBuffer & | buffer, | ||
VkDeviceMemory & | bufferMemory | ||
) |
Create buffer on the GPU.
VkResult JoeEngine::CreateDebugReportCallbackEXT | ( | const VkInstance & | instance, |
const VkDebugReportCallbackCreateInfoEXT * | pCreateInfo, | ||
const VkAllocationCallbacks * | pAllocator, | ||
VkDebugReportCallbackEXT * | pCallback | ||
) |
void JoeEngine::CreateImage | ( | VkPhysicalDevice | physicalDevice, |
VkDevice | device, | ||
uint32_t | width, | ||
uint32_t | height, | ||
VkFormat | format, | ||
VkImageTiling | tiling, | ||
VkImageUsageFlags | usage, | ||
VkMemoryPropertyFlags | properties, | ||
VkImage & | image, | ||
VkDeviceMemory & | imageMemory | ||
) |
Create image.
VkImageView JoeEngine::CreateImageView | ( | VkDevice | device, |
VkImage | image, | ||
VkFormat | format, | ||
VkImageAspectFlags | aspectFlags | ||
) |
Create image view.
VkShaderModule JoeEngine::CreateShaderModule | ( | VkDevice | device, |
const std::vector< char > & | code | ||
) |
Create a shader module object from shader source code.
device | the Vulkan logical device. |
code | the shader source code. |
void JoeEngine::DestroyDebugReportCallbackEXT | ( | const VkInstance & | instance, |
VkDebugReportCallbackEXT | callback, | ||
const VkAllocationCallbacks * | pAllocator | ||
) |
void JoeEngine::EndSingleTimeCommands | ( | VkDevice | device, |
VkCommandBuffer | commandBuffer, | ||
const JEVulkanQueue & | graphicsQueue, | ||
VkCommandPool | commandPool | ||
) |
End single time command buffer recording.
device | the Vulkan logical device. |
commandBuffer | the Vulkan commandBuffer |
graphicsQueue | the Vulkan graphics queue. |
commandPool | the Vulkan command pool. |
VkFormat JoeEngine::FindDepthFormat | ( | VkPhysicalDevice | physicalDevice | ) |
Find a supported format among several candidate depth formats.
uint32_t JoeEngine::FindMemoryType | ( | VkPhysicalDevice | physicalDevice, |
uint32_t | typeFilter, | ||
VkMemoryPropertyFlags | properties | ||
) |
Get memory for an allocation.
QueueFamilyIndices JoeEngine::FindQueueFamilies | ( | VkPhysicalDevice | physicalDevice, |
VkSurfaceKHR | surface | ||
) |
Find queue families.
Finds which queue families the Vulkan physical device supports.
physicalDevice | the Vulkan physical device to check for queue support with. |
surface | the Vulkan surface to check for queue support with. |
VkFormat JoeEngine::FindSupportedFormat | ( | VkPhysicalDevice | physicalDevice, |
const std::vector< VkFormat > & | candidates, | ||
VkImageTiling | tiling, | ||
VkFormatFeatureFlags | features | ||
) |
Check if several candidate formats are supported.
std::vector< VkDeviceQueueCreateInfo > JoeEngine::GetQueueCreateInfos | ( | const QueueFamilyIndices & | indices | ) |
Get queue create info data.
Returns device queue create info structs given queue family indices.
indices | the given queue family indices data. |
bool JoeEngine::HasStencilComponent | ( | VkFormat | format | ) |
Check if a depth format has a stencil component.
format | the format to check for stencil component presence. |
|
inline |
&-operator for Renderer Settings.
|
inline |
|- operator for Renderer Settings.
std::vector< char > JoeEngine::ReadFile | ( | const std::string & | filename | ) |
Read a shader from a file source path.
filename | the file path. |
void JoeEngine::TransitionImageLayout | ( | VkDevice | device, |
VkCommandPool | commandPool, | ||
const JEVulkanQueue & | graphicsQueue, | ||
VkImage | image, | ||
VkFormat | format, | ||
VkImageLayout | oldLayout, | ||
VkImageLayout | newLayout | ||
) |
Transition image from initial to final layout.
void JoeEngine::UpdateParticleSystems_MT | ( | void * | data | ) |
|
constexpr |
Default maximum number of frames in flight on the GPU.
|
constexpr |
Default screen resolution height.
|
constexpr |
Default screen resolution width.
|
constexpr |
Default shadow map depth bias - constant.
|
constexpr |
Default shadow map depth bias - slope.
|
constexpr |
Default shadow map resolution height.
|
constexpr |
Default shadow map resolution width.
const float JoeEngine::JE_FOVY = glm::radians(22.5f) |
Scene camera FOV value.
const int JoeEngine::JE_KEY_0 = GLFW_KEY_0 |
Keypress - 0.
const int JoeEngine::JE_KEY_1 = GLFW_KEY_1 |
Keypress - 1.
const int JoeEngine::JE_KEY_2 = GLFW_KEY_2 |
Keypress - 2.
const int JoeEngine::JE_KEY_3 = GLFW_KEY_3 |
Keypress - 3.
const int JoeEngine::JE_KEY_4 = GLFW_KEY_4 |
Keypress - 4.
const int JoeEngine::JE_KEY_5 = GLFW_KEY_5 |
Keypress - 5.
const int JoeEngine::JE_KEY_6 = GLFW_KEY_6 |
Keypress - 6.
const int JoeEngine::JE_KEY_7 = GLFW_KEY_7 |
Keypress - 7.
const int JoeEngine::JE_KEY_8 = GLFW_KEY_8 |
Keypress - 8.
const int JoeEngine::JE_KEY_9 = GLFW_KEY_9 |
Keypress - 9.
const int JoeEngine::JE_KEY_A = GLFW_KEY_A |
Keypress - A.
const int JoeEngine::JE_KEY_D = GLFW_KEY_D |
Keypress - D.
const int JoeEngine::JE_KEY_DOWN = GLFW_KEY_DOWN |
Keypress - Down arrow.
const int JoeEngine::JE_KEY_E = GLFW_KEY_E |
Keypress - E.
const int JoeEngine::JE_KEY_LEFT = GLFW_KEY_LEFT |
Keypress - Left arrow.
const int JoeEngine::JE_KEY_Q = GLFW_KEY_Q |
Keypress - Q.
const int JoeEngine::JE_KEY_RIGHT = GLFW_KEY_RIGHT |
Keypress - Right arrow.
const int JoeEngine::JE_KEY_S = GLFW_KEY_S |
Keypress - S.
const int JoeEngine::JE_KEY_UP = GLFW_KEY_UP |
Keypress - Up arrow.
const int JoeEngine::JE_KEY_W = GLFW_KEY_W |
Keypress - W.
const std::string JoeEngine::JE_MODELS_OBJ_DIR |
OBJ models path string.
|
constexpr |
Maximum number of entities in any given scene.
|
constexpr |
Maximum number of fragments per pixel for OIT.
const std::string JoeEngine::JE_PROJECT_PATH |
Project path string.
|
constexpr |
Scene camera far clip plane value.
|
constexpr |
Scene camera near clip plane value.
const std::string JoeEngine::JE_SHADER_DIR |
Shader directory path string.
|
constexpr |
Shadow camera far clip plane value.
|
constexpr |
Shadow camera near clip plane value.
const std::string JoeEngine::JE_TEXTURES_DIR |
Textures directory path string.
const glm::vec3 JoeEngine::JE_WORLD_UP = glm::vec3(0.0f, 1.0f, 0.0f) |
World up vector (Y is up).
const std::string JoeEngine::JEBuiltInPostProcessingShaderPaths[2] = { "frag_post_chromatic_aberration.spv", "frag_post_grayscale.spv" } |
JEThreadPool JoeEngine::JEThreadPoolInstance = JEThreadPool() |
Thread pool instance.
The single thread pool instance. Note: extern, not static.