Castor3D 0.12.0
Multiplatform 3D engine
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
castor3d Namespace Reference

Namespaces

namespace  lpv
 
namespace  rq
 
namespace  shader
 

Classes

class  AnimableT
 Animable public interface. More...
 
class  AnimatedMesh
 
class  AnimatedObject
 
class  AnimatedObjectGroup
 
class  AnimatedSceneNode
 
class  AnimatedSkeleton
 
class  AnimatedTexture
 
class  AnimationInstance
 
class  AnimationInstanceT
 Used to play an Animation on a specific object. More...
 
class  AnimationKeyFrame
 
class  AnimationT
 Animation base class. More...
 
struct  ArrayView
 
class  BackgroundPass
 
class  BackgroundRenderer
 
class  BackgroundTextWriter
 
class  BackgroundVisitor
 
class  BillboardBase
 
class  BillboardList
 
struct  BillboardRenderNode
 
class  BillboardUbo
 
struct  BillboardUboConfiguration
 Billboards list data. More...
 
struct  BillboardVertex
 
class  BinaryChunk
 
class  BinaryParser
 Specialisable binary data chunk reader class. More...
 
class  BinaryParser< Animation >
 Animation binary loader. More...
 
class  BinaryParser< Bone >
 Animable binary loader. More...
 
class  BinaryParser< BonesComponent >
 BonesComponent loader. More...
 
class  BinaryParser< Mesh >
 MovableObject loader. More...
 
class  BinaryParser< MeshAnimation >
 MeshAnimation binary loader. More...
 
class  BinaryParser< MeshAnimationKeyFrame >
 MeshAnimationKeyFrame binary loader. More...
 
class  BinaryParser< SceneNodeAnimation >
 SceneNodeAnimation binary loader. More...
 
class  BinaryParser< SceneNodeAnimationKeyFrame >
 SceneNodeAnimationKeyFrame binary loader. More...
 
class  BinaryParser< Skeleton >
 Animable binary loader. More...
 
class  BinaryParser< SkeletonAnimation >
 SkeletonAnimation binary loader. More...
 
class  BinaryParser< SkeletonAnimationBone >
 MovingBone binary loader. More...
 
class  BinaryParser< SkeletonAnimationKeyFrame >
 SkeletonAnimationKeyFrame binary loader. More...
 
class  BinaryParser< SkeletonAnimationNode >
 MovingBone binary loader. More...
 
class  BinaryParser< SkeletonAnimationObject >
 SkeletonAnimationObject binary loader. More...
 
class  BinaryParser< Submesh >
 MovableObject loader. More...
 
class  BinaryParserBase
 Binary data chunk reader base class. More...
 
class  BinaryWriter
 Specialisable binary data chunk writer class. More...
 
class  BinaryWriter< Animation >
 Animation binary loader. More...
 
class  BinaryWriter< Bone >
 Animable binary loader. More...
 
class  BinaryWriter< BonesComponent >
 BonesComponent loader. More...
 
class  BinaryWriter< Mesh >
 MovableObject loader. More...
 
class  BinaryWriter< MeshAnimation >
 MeshAnimation binary loader. More...
 
class  BinaryWriter< MeshAnimationKeyFrame >
 MeshAnimationKeyFrame binary loader. More...
 
class  BinaryWriter< SceneNodeAnimation >
 SceneNodeAnimation binary loader. More...
 
class  BinaryWriter< SceneNodeAnimationKeyFrame >
 SceneNodeAnimationKeyFrame binary loader. More...
 
class  BinaryWriter< Skeleton >
 Animable binary loader. More...
 
class  BinaryWriter< SkeletonAnimation >
 SkeletonAnimation binary loader. More...
 
class  BinaryWriter< SkeletonAnimationBone >
 MovingBone binary loader. More...
 
class  BinaryWriter< SkeletonAnimationKeyFrame >
 SkeletonAnimationKeyFrame binary loader. More...
 
class  BinaryWriter< SkeletonAnimationNode >
 MovingBone binary loader. More...
 
class  BinaryWriter< SkeletonAnimationObject >
 SkeletonAnimationObject binary loader. More...
 
class  BinaryWriter< Submesh >
 MovableObject loader. More...
 
class  BinaryWriterBase
 Binary data chunk writer base class. More...
 
class  BlinnPhongPass
 
class  Bone
 
class  BonesComponent
 
class  BorderPanelOverlay
 
class  BrdfPrefilter
 
class  CacheViewT
 
class  Camera
 
class  ChunkParser
 Chunk parser. More...
 
class  ChunkParser< castor::Path >
 ChunkParser specialisation for castor::Path. More...
 
class  ChunkParser< castor::String >
 ChunkParser specialisation for castor::String. More...
 
class  ChunkParserBase
 
struct  ChunkTyper
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< Animation >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< Bone >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< BonesComponent >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< Mesh >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< MeshAnimation >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< MeshAnimationKeyFrame >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SceneNodeAnimation >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SceneNodeAnimationKeyFrame >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< Skeleton >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SkeletonAnimation >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SkeletonAnimationBone >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SkeletonAnimationKeyFrame >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SkeletonAnimationNode >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< SkeletonAnimationObject >
 Helper structure to find ChunkType from a type. More...
 
struct  ChunkTyper< Submesh >
 Helper structure to find ChunkType from a type. More...
 
class  ChunkWriter
 Chunk data writer. More...
 
class  ChunkWriter< castor::Path >
 ChunkWriter specialisation for castor::Path. More...
 
class  ChunkWriter< castor::String >
 ChunkWriter specialisation for castor::String. More...
 
class  ChunkWriterBase
 
class  CmshImporter
 
class  ColourBackground
 
struct  CombinePassConfigT
 The configuration to create a CombinePass. More...
 
struct  CommandsSemaphore
 
class  ComputeDepthRange
 
class  ComputeParticleSystem
 
class  Cone
 
struct  CpuEventCleanerT
 
struct  CpuEventInitialiserT
 
class  CpuFrameEvent
 
class  CpuFunctorEvent
 
class  CpuParticleSystem
 
struct  CpuUpdater
 
class  Cube
 
struct  CubeView
 
struct  CUPtrCacheTraitsBaseT
 
class  Cylinder
 
class  DebugCallbacks
 
struct  DebugConfig
 
class  DebugOverlays
 
class  DeferredRendering
 
class  DepthPass
 
class  DirectionalLight
 
struct  DirectionalLightCascade
 
class  DirectionalLightPass
 
class  DividerPlugin
 
class  DownscalePass
 
class  DummyCuller
 
struct  ElementProducer
 
struct  ElementProducer< RenderTarget, KeyType >
 
struct  ElementProducer< ShaderProgram, KeyType >
 
struct  ElementTyper
 
class  Engine
 
class  EnvironmentMap
 
class  EnvironmentMapPass
 
class  EnvironmentPrefilter
 
class  EquirectangularToCube
 
class  EventHandler
 
struct  Extensions
 
struct  ExtensionStruct
 
class  Face
 
struct  FaceIndices
 
struct  FaceInfos
 
class  Fog
 
class  FontTexture
 
class  ForwardRenderTechniquePass
 
class  FrameListener
 
class  Frustum
 
class  FrustumCuller
 
class  GaussianBlur
 
class  GBufferBase
 
class  GBufferT
 
class  GeneratorPlugin
 
class  GenericPlugin
 
class  Geometry
 
struct  GeometryBuffers
 
class  GeometryInjectionPass
 
class  GpInfoUbo
 
struct  GpInfoUboConfiguration
 Geometry pass data. More...
 
class  GpuBufferBase
 
struct  GpuBufferBuddyAllocatorTraits
 
struct  GpuBufferLinearAllocator
 
struct  GpuBufferOffsetT
 An offset and range of a GpuBuffer. More...
 
struct  GpuBufferPackedAllocator
 
class  GpuBufferPool
 
class  GpuBufferT
 A GPU buffer, that uses a buddy allocator to allocate sub-buffers. More...
 
struct  GpuEventCleanerT
 
struct  GpuEventInitialiserT
 
class  GpuFrameEvent
 
class  GpuFunctorEvent
 
class  GpuInformations
 
class  GpuLinearAllocatorT
 
class  GpuObjectTracker
 
struct  GpuUpdater
 
struct  GroupAnimation
 
class  HandlerEvent
 
class  HdrConfig
 
class  HdrConfigUbo
 
class  IblTextures
 
class  Icosahedron
 
class  ImageBackground
 
class  ImporterPlugin
 
class  IndexMapping
 
class  IndirectLightingPass
 
class  InstantiationComponent
 
struct  InstantiationData
 
struct  InterleavedVertex
 
struct  IntermediateView
 
class  Interpolator
 Template class which handles the interpolations, would it be quaternion, point, real, ... interpolations. More...
 
class  InterpolatorT
 Template class which handles the interpolations, would it be quaternion, point, real, ... interpolations. More...
 
class  InterpolatorT< castor::Quaternion, InterpolatorType::eLinear >
 Handles the Quaternion linear interpolations. More...
 
class  InterpolatorT< DataT, InterpolatorType::eLinear >
 Partial specialisation of InterpolatorT, for InterpolatorType::eLinear. More...
 
class  InterpolatorT< DataT, InterpolatorType::eNearest >
 Partial specialisation of InterpolatorT, for InterpolatorType::eNearest. More...
 
class  KeyboardEvent
 
struct  KeyboardState
 Keyboard state. More...
 
class  LayeredLightPropagationVolumesBase
 
class  LayeredLightPropagationVolumesT
 Lighting propagation volumes generation pass. More...
 
class  LayeredLpvGridConfigUbo
 
struct  LayeredLpvGridConfigUboConfiguration
 Light propagation data. More...
 
class  Light
 
class  LightBuffer
 
class  LightCategory
 
struct  LightDescriptors
 
class  LightFactory
 
class  LightingPass
 
class  LightInjectionPass
 
class  LightPass
 
class  LightPassResult
 
class  LightPipeline
 
struct  LightPipelineConfig
 
class  LightPropagationPass
 
class  LightPropagationVolumesBase
 
class  LightPropagationVolumesT
 Lighting propagation volumes generation pass. More...
 
struct  LightRenderPass
 
struct  LightsPipeline
 
class  LightVolumePassResult
 
class  Line
 
class  LineariseDepthPass
 
struct  LineIndices
 
class  LinesMapping
 
class  LoadingScreen
 
class  log
 
struct  LpvConfig
 
class  LpvGridConfigUbo
 
struct  LpvGridConfigUboConfiguration
 Light propagation data. More...
 
class  LpvLightConfigUbo
 
struct  LpvLightConfigUboConfiguration
 Light propagation data. More...
 
class  Material
 
class  MatrixUbo
 
struct  MatrixUboConfiguration
 Global matrices data. More...
 
struct  MemChunk
 A memory range, in bytes. More...
 
class  Mesh
 
class  MeshAnimation
 
class  MeshAnimationInstance
 
class  MeshAnimationInstanceSubmesh
 
class  MeshAnimationKeyFrame
 
class  MeshAnimationSubmesh
 
class  MeshFactory
 
class  MeshGenerator
 
class  MeshImporter
 
class  MeshImporterFactory
 
class  MeshLightPass
 
class  MeshSubdivider
 
class  MetallicRoughnessPbrPass
 
struct  MipView
 
struct  ModelBufferConfiguration
 Model index data. More...
 
class  MorphComponent
 
struct  MorphingBufferConfiguration
 Morphing data. More...
 
class  MouseEvent
 
class  MouseEventHandler
 
struct  MouseState
 Mouse state. More...
 
struct  MovableAttacherT
 
struct  MovableDetacherT
 
struct  MovableMergerT
 
class  MovableObject
 
class  NonClientEventHandler
 Description of an event handler, class that can receive event. More...
 
struct  NonTexturedCube
 A cube without UV. More...
 
struct  NonTexturedQuad
 A quad without UV. More...
 
struct  ObjectBufferOffset
 
class  ObjectBufferPool
 
class  ObjectCacheBaseT
 
class  ObjectCacheT
 
class  ObjectCacheT< BillboardList, castor::String, BillboardCacheTraits >
 BillboardList cache. More...
 
class  ObjectCacheT< Geometry, castor::String, GeometryCacheTraits >
 Geometry cache. More...
 
class  ObjectCacheT< Light, castor::String, LightCacheTraits >
 Light cache. More...
 
struct  ObjectCacheTraitsBaseT
 
struct  ObjectCacheTraitsT
 Helper structure to specialise a scene objects cache behaviour. More...
 
struct  ObjectCacheTraitsT< BillboardList, castor::String >
 
struct  ObjectCacheTraitsT< Camera, castor::String >
 
struct  ObjectCacheTraitsT< Geometry, castor::String >
 
struct  ObjectCacheTraitsT< Light, castor::String >
 
struct  ObjectCacheTraitsT< ParticleSystem, castor::String >
 
struct  ObjectCacheTraitsT< SceneNode, castor::String >
 
struct  OldInterleavedVertexT
 
class  OpaquePass
 
class  OpaquePassResult
 
class  OpaqueResolvePass
 
class  Overlay
 
class  OverlayCategory
 
class  OverlayFactory
 
class  OverlayPass
 
class  OverlayRenderer
 
class  OverlayUbo
 
struct  OverlayUboConfiguration
 Overlay data. More...
 
class  OverlayVisitor
 
class  PanelOverlay
 
class  ParametersT
 Configuration parameters. More...
 
class  Particle
 
class  ParticleDeclaration
 
struct  ParticleElementDeclaration
 
class  ParticleEmitter
 
class  ParticlePlugin
 
class  ParticleSystem
 
class  ParticleSystemImpl
 
class  ParticleUpdater
 
class  Pass
 
class  PassBuffer
 
class  PassFactory
 
struct  PassRegisterInfo
 
struct  PassTextureConfig
 
class  PassVisitor
 
class  PassVisitorBase
 
class  Pattern
 Pattern handler class. More...
 
class  PhongPass
 
class  Picking
 
class  PickingPass
 
struct  PipelineFlags
 Pipeline flags. More...
 
class  PipelineVisitor
 
class  PipelineVisitorBase
 
class  Plane
 
class  Plugin
 
class  PluginException
 
class  PointLight
 
class  PoolUniformBuffer
 
class  PostEffect
 
struct  PostEffectSurface
 
class  PostFxPlugin
 
class  ProgressBar
 
class  Projection
 
struct  PtrCacheTraitsBaseT
 
struct  PtrCacheTraitsT
 
struct  PtrCacheTraitsT< AnimatedObjectGroup, castor::String >
 
struct  PtrCacheTraitsT< FrameListener, castor::String >
 
struct  PtrCacheTraitsT< Overlay, castor::String >
 
struct  PtrCacheTraitsT< Plugin, castor::String >
 
struct  PtrCacheTraitsT< Scene, castor::String >
 
struct  QueueData
 
struct  QueueDataWrapper
 
struct  QueueRenderNodes
 
struct  QueuesData
 
class  RadianceComputer
 
class  Ray
 
class  RenderCube
 
struct  RenderDevice
 
class  RenderedObject
 
struct  Renderer
 
class  RenderGridBuilderT
 Used to create a RenderGrid variable. More...
 
struct  RenderInfo
 
class  RenderLoop
 
class  RenderLoopAsync
 
class  RenderLoopSync
 
class  RenderNodesPass
 
struct  RenderNodesPassDesc
 
struct  RenderNodesT
 The render nodes for a specific scene. More...
 
struct  RenderNodeTraitsT
 
struct  RenderNodeTraitsT< BillboardRenderNode >
 
struct  RenderPassRegisterInfo
 
class  RenderPipeline
 
class  RenderQuad
 
class  RenderQuadBuilder
 
class  RenderQuadBuilderT
 Used to create a RenderQuad variable. More...
 
class  RenderQueue
 
class  RenderSystem
 
class  RenderTarget
 
class  RenderTargetCache
 
class  RenderTechnique
 
class  RenderTechniquePass
 
struct  RenderTechniquePassDesc
 
class  RenderTechniqueVisitor
 
class  RenderWindow
 
struct  RenderWindowDesc
 
struct  ResourceCacheTraitsT
 
struct  ResourceCacheTraitsT< Material, castor::String >
 
struct  ResourceCacheTraitsT< Mesh, castor::String >
 
struct  ResourceCacheTraitsT< Sampler, castor::String >
 
struct  RsmConfig
 
class  RsmConfigUbo
 
struct  RsmUboConfiguration
 Reflective Shadow Maps based GI UBO configuration. More...
 
class  RunnableLightingPass
 
class  Sampler
 
class  Scene
 
class  SceneBackground
 
class  SceneCuller
 
class  SceneFileContext
 
class  SceneFileParser
 
class  SceneNode
 
class  SceneNodeAnimation
 
class  SceneNodeAnimationInstance
 
class  SceneNodeAnimationKeyFrame
 
struct  SceneNodeAttacherT
 
struct  SceneNodeDetacherT
 
struct  SceneRenderNodes
 
class  SceneUbo
 
struct  SceneUboConfiguration
 Scene data. More...
 
class  SecondaryUVComponent
 
class  ShaderBuffer
 
struct  ShaderModule
 A non compiled shader module, with its source. More...
 
class  ShaderProgram
 
class  ShaderProgramCache
 
struct  ShadowConfig
 
class  ShadowMap
 
class  ShadowMapDirectional
 
struct  ShadowMapLightIds
 
class  ShadowMapPass
 
class  ShadowMapPassDirectional
 
class  ShadowMapPassPoint
 
class  ShadowMapPassSpot
 
class  ShadowMapPoint
 
class  ShadowMapResult
 
class  ShadowMapSpot
 
class  ShadowMapUbo
 
struct  ShadowMapUboConfiguration
 Shadow map data. More...
 
class  Skeleton
 
class  SkeletonAnimation
 
class  SkeletonAnimationBone
 
class  SkeletonAnimationInstance
 
class  SkeletonAnimationInstanceBone
 
class  SkeletonAnimationInstanceKeyFrame
 
class  SkeletonAnimationInstanceNode
 
class  SkeletonAnimationInstanceObject
 
class  SkeletonAnimationKeyFrame
 
class  SkeletonAnimationNode
 
class  SkeletonAnimationObject
 
class  SkinnedObjectBufferPool
 
struct  SkinningTransformsConfiguration
 Skinning data. More...
 
class  SkinningUbo
 
class  SkyboxBackground
 
struct  SliceView
 
class  SpecularGlossinessPbrPass
 
class  Sphere
 
struct  SpirVShader
 A SPIR-V shader module, with SPIR-V binary and debug text source. More...
 
class  SpotLight
 
class  SsaoBlurPass
 
struct  SsaoConfig
 
class  SsaoConfigUbo
 
class  SsaoPass
 
class  SsaoRawAOPass
 
class  SssProfileBuffer
 
class  StagingData
 
class  StencilPass
 
class  StructuredShaderBuffer
 Wrapper class to select between SSBO or TBO. More...
 
class  Submesh
 
struct  SubmeshAnimationBuffer
 
class  SubmeshComponent
 
struct  SubmeshComponentAdder
 
struct  SubmeshRenderNode
 
class  SubmeshUtils
 Submesh utility functions. More...
 
struct  SubmeshVertex
 
class  SubsurfaceScattering
 
class  SubsurfaceScatteringPass
 
struct  TechniqueQueues
 
class  TextOverlay
 
struct  Texture
 
class  Texture3DTo2D
 
struct  Texture3DTo2DData
 
class  TextureAnimation
 
class  TextureAnimationBuffer
 
struct  TextureAnimationData
 
class  TextureAnimationInstance
 
class  TextureAnimationKeyFrame
 
struct  TextureConfiguration
 Specifies the usages of a texture, per image component. More...
 
class  TextureConfigurationBuffer
 
struct  TexturedCube
 A cube with UV. More...
 
struct  TexturedQuad
 A quad with UV. More...
 
struct  TextureFactors
 Factors applied when displaying a debug texture. More...
 
struct  TextureFlagsId
 
class  TextureLayout
 
class  TextureSource
 
class  TextureSourceInfo
 
struct  TextureSourceInfoHasher
 
struct  TextureTransform
 
class  TextureUnit
 
class  TextureUnitCache
 
class  TextureView
 
class  ToneMapping
 
class  ToneMappingPlugin
 
class  ToneMappingVisitor
 
class  Torus
 
class  TransparentPass
 
class  TransparentPassResult
 
class  TriFaceMapping
 
class  UniformBufferBase
 
struct  UniformBufferOffsetT
 A UniformBuffer and an offset from the GpuBuffer. More...
 
class  UniformBufferPool
 
class  UniformBufferT
 A uniform typed buffer, than can contain multiple sub-buffers. More...
 
class  UserInputEvent
 Description of a user input event. More...
 
class  UserInputListener
 
class  Version
 
class  VersionException
 
struct  VertexBoneData
 
class  VertexBufferPool
 
class  Viewport
 
struct  VkStructTraits
 
struct  VkStructTraits< VkApplicationInfo >
 
struct  VkStructTraits< VkBindBufferMemoryDeviceGroupInfo >
 
struct  VkStructTraits< VkBindBufferMemoryInfo >
 
struct  VkStructTraits< VkBindImageMemoryDeviceGroupInfo >
 
struct  VkStructTraits< VkBindImageMemoryInfo >
 
struct  VkStructTraits< VkBindSparseInfo >
 
struct  VkStructTraits< VkBufferCreateInfo >
 
struct  VkStructTraits< VkBufferMemoryBarrier >
 
struct  VkStructTraits< VkBufferViewCreateInfo >
 
struct  VkStructTraits< VkCommandBufferAllocateInfo >
 
struct  VkStructTraits< VkCommandBufferBeginInfo >
 
struct  VkStructTraits< VkCommandBufferInheritanceInfo >
 
struct  VkStructTraits< VkCommandPoolCreateInfo >
 
struct  VkStructTraits< VkComputePipelineCreateInfo >
 
struct  VkStructTraits< VkCopyDescriptorSet >
 
struct  VkStructTraits< VkDescriptorPoolCreateInfo >
 
struct  VkStructTraits< VkDescriptorSetAllocateInfo >
 
struct  VkStructTraits< VkDescriptorSetLayoutCreateInfo >
 
struct  VkStructTraits< VkDeviceCreateInfo >
 
struct  VkStructTraits< VkDeviceGroupBindSparseInfo >
 
struct  VkStructTraits< VkDeviceGroupCommandBufferBeginInfo >
 
struct  VkStructTraits< VkDeviceGroupDeviceCreateInfo >
 
struct  VkStructTraits< VkDeviceGroupRenderPassBeginInfo >
 
struct  VkStructTraits< VkDeviceGroupSubmitInfo >
 
struct  VkStructTraits< VkDeviceQueueCreateInfo >
 
struct  VkStructTraits< VkEventCreateInfo >
 
struct  VkStructTraits< VkFenceCreateInfo >
 
struct  VkStructTraits< VkFramebufferCreateInfo >
 
struct  VkStructTraits< VkGraphicsPipelineCreateInfo >
 
struct  VkStructTraits< VkImageCreateInfo >
 
struct  VkStructTraits< VkImageMemoryBarrier >
 
struct  VkStructTraits< VkImageViewCreateInfo >
 
struct  VkStructTraits< VkInstanceCreateInfo >
 
struct  VkStructTraits< VkMappedMemoryRange >
 
struct  VkStructTraits< VkMemoryAllocateFlagsInfo >
 
struct  VkStructTraits< VkMemoryAllocateInfo >
 
struct  VkStructTraits< VkMemoryBarrier >
 
struct  VkStructTraits< VkMemoryDedicatedAllocateInfo >
 
struct  VkStructTraits< VkMemoryDedicatedRequirements >
 
struct  VkStructTraits< VkPhysicalDevice16BitStorageFeatures >
 
struct  VkStructTraits< VkPhysicalDeviceGroupProperties >
 
struct  VkStructTraits< VkPhysicalDeviceSubgroupProperties >
 
struct  VkStructTraits< VkPipelineCacheCreateInfo >
 
struct  VkStructTraits< VkPipelineColorBlendStateCreateInfo >
 
struct  VkStructTraits< VkPipelineDepthStencilStateCreateInfo >
 
struct  VkStructTraits< VkPipelineDynamicStateCreateInfo >
 
struct  VkStructTraits< VkPipelineInputAssemblyStateCreateInfo >
 
struct  VkStructTraits< VkPipelineLayoutCreateInfo >
 
struct  VkStructTraits< VkPipelineMultisampleStateCreateInfo >
 
struct  VkStructTraits< VkPipelineRasterizationStateCreateInfo >
 
struct  VkStructTraits< VkPipelineShaderStageCreateInfo >
 
struct  VkStructTraits< VkPipelineTessellationStateCreateInfo >
 
struct  VkStructTraits< VkPipelineVertexInputStateCreateInfo >
 
struct  VkStructTraits< VkPipelineViewportStateCreateInfo >
 
struct  VkStructTraits< VkQueryPoolCreateInfo >
 
struct  VkStructTraits< VkRenderPassBeginInfo >
 
struct  VkStructTraits< VkRenderPassCreateInfo >
 
struct  VkStructTraits< VkSamplerCreateInfo >
 
struct  VkStructTraits< VkSemaphoreCreateInfo >
 
struct  VkStructTraits< VkShaderModuleCreateInfo >
 
struct  VkStructTraits< VkSubmitInfo >
 
struct  VkStructTraits< VkWriteDescriptorSet >
 
struct  VkStructure
 
struct  Voxel
 
class  VoxelBufferToTexture
 
class  VoxelizePass
 
class  Voxelizer
 
class  VoxelizerUbo
 
struct  VoxelizerUboConfiguration
 
class  VoxelSceneData
 
class  VoxelSecondaryBounce
 
class  WeightedBlendRendering
 

Typedefs

using BillboardCacheTraits = ObjectCacheTraitsT< BillboardList, castor::String >
 
template<typename CacheT >
using CacheViewTraitsT = typename CacheT::ElementCacheTraitsT
 
using TextureSourceMap = std::unordered_map< TextureSourceInfo, PassTextureConfig, TextureSourceInfoHasher >
 
using TextureSourceMapVT = TextureSourceMap::value_type
 
using DebugCallbacksPtr = std::unique_ptr< DebugCallbacks >
 
using LineArray = std::vector< Line >
 
using PipelineNodes = std::array< castor::Point4ui, 10 '000u >
 
using PipelineBuffer = std::pair< size_t, ashes::BufferBase const * >
 
using TextureViewCRef = std::reference_wrapper< TextureView const >
 
using TextureViewCRefArray = std::vector< TextureViewCRef >
 
using FeatureArray = std::vector< ExtensionStruct >
 
using PropertyArray = std::vector< ExtensionStruct >
 
using QueueFamilyFlags = castor::FlagCombination< QueueFamilyFlag >
 
using QueueDataPtr = std::unique_ptr< QueueData >
 
using QueueFamilies = std::vector< QueuesData >
 
using LightsPipelinePtr = std::unique_ptr< LightsPipeline >
 
using SkeletonAnimationInstanceKeyFrameArray = std::vector< SkeletonAnimationInstanceKeyFrame >
 
Traits
template<typename NodeT >
using NodeObjectT = typename RenderNodeTraitsT< NodeT >::Object
 
Non instanced
template<typename NodeT >
using NodePtrArrayT = std::vector< NodeT const * >
 
using SubmeshRenderNodePtrArray = NodePtrArrayT< SubmeshRenderNode >
 
using BillboardRenderNodePtrArray = NodePtrArrayT< BillboardRenderNode >
 
template<typename NodeT >
using NodePtrByBufferMapT = std::map< ashes::BufferBase const *, NodePtrArrayT< NodeT > >
 
template<typename NodeT >
using NodePtrByPipelineMapT = std::map< uint64_t, std::pair< RenderPipeline *, NodePtrByBufferMapT< NodeT > > >
 
using SubmeshRenderNodePtrByPipelineMap = NodePtrByPipelineMapT< SubmeshRenderNode >
 
using BillboardRenderNodePtrByPipelineMap = NodePtrByPipelineMapT< BillboardRenderNode >
 
Instanced
template<typename NodeT >
using ObjectNodesPtrMapT = std::map< NodeObjectT< NodeT > *, NodePtrArrayT< NodeT > >
 
template<typename NodeT >
using ObjectNodesPtrByPassT = std::map< PassRPtr, ObjectNodesPtrMapT< NodeT > >
 
template<typename NodeT >
using ObjectNodesPtrByBufferMapT = std::map< ashes::BufferBase const *, ObjectNodesPtrByPassT< NodeT > >
 
template<typename NodeT >
using ObjectNodesPtrByPipelineMapT = std::map< uint64_t, std::pair< RenderPipeline *, ObjectNodesPtrByBufferMapT< NodeT > > >
 
using SubmeshRenderNodesPtrByPipelineMap = ObjectNodesPtrByPipelineMapT< SubmeshRenderNode >
 

Enumerations

enum class  ChunkType : uint64_t {
  eUnknown = makeChunkID( ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' ) , eCmshFile = makeChunkID( 'C', 'M', 'S', 'H', 'F', 'I', 'L', 'E' ) , eCmshHeader = makeChunkID( 'C', 'M', 'S', 'H', 'H', 'D', 'E', 'R' ) , eCmshVersion = makeChunkID( 'C', 'M', 'S', 'H', 'V', 'R', 'S', 'N' ) ,
  eName = makeChunkID( 'N', 'A', 'M', 'E', ' ', ' ', ' ', ' ' ) , eMesh = makeChunkID( 'M', 'E', 'S', 'H', ' ', ' ', ' ', ' ' ) , eSkeleton = makeChunkID( 'S', 'K', 'E', 'L', 'E', 'T', 'O', 'N' ) , eSkeletonGlobalInverse = makeChunkID( 'S', 'K', 'E', 'L', 'G', 'I', 'M', 'X' ) ,
  eSkeletonBone = makeChunkID( 'S', 'K', 'E', 'L', 'B', 'O', 'N', 'E' ) , eBoneParentName = makeChunkID( 'B', 'O', 'N', 'E', 'P', 'A', 'R', 'T' ) , eBoneOffsetMatrix = makeChunkID( 'B', 'O', 'N', 'E', 'O', 'M', 'T', 'X' ) , eSubmesh = makeChunkID( 'S', 'U', 'B', 'M', 'E', 'S', 'H', ' ' ) ,
  eSubmeshTopology = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'O', 'P', 'O' ) , eSubmeshVertexCount = makeChunkID( 'S', 'M', 'S', 'H', 'V', 'X', 'C', 'T' ) , eSubmeshVertex = makeChunkID( 'S', 'M', 'S', 'H', 'V', 'R', 'T', 'X' ) , eSubmeshBoneCount = makeChunkID( 'S', 'M', 'S', 'H', 'B', 'N', 'C', 'T' ) ,
  eSubmeshBones = makeChunkID( 'S', 'M', 'S', 'H', 'B', 'O', 'N', 'E' ) , eSubmeshMatrixCount = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'X', 'C', 'T' ) , eSubmeshMatrices = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'R', 'X' ) , eSubmeshFaceCount = makeChunkID( 'S', 'M', 'S', 'H', 'F', 'C', 'C', 'T' ) ,
  eSubmeshFaces = makeChunkID( 'S', 'M', 'S', 'H', 'F', 'A', 'C', 'E' ) , eAnimable = makeChunkID( 'A', 'N', 'I', 'M', 'A', 'B', 'L', 'E' ) , eAnimation = makeChunkID( 'A', 'N', 'M', 'A', 'T', 'I', 'O', 'N' ) , eAnimLength = makeChunkID( 'A', 'N', 'M', 'L', 'E', 'N', 'G', 'T' ) ,
  eSkeletonAnimation = makeChunkID( 'S', 'K', 'E', 'L', 'A', 'N', 'I', 'M' ) , eMeshAnimation = makeChunkID( 'M', 'E', 'S', 'H', 'A', 'N', 'I', 'M' ) , eAnimInterpolator = makeChunkID( 'A', 'N', 'M', 'I', 'N', 'T', 'E', 'R' ) , eAnimationObject = makeChunkID( 'A', 'N', 'S', 'K', 'O', 'B', 'J', 'T' ) ,
  eSkeletonAnimationNode = makeChunkID( 'A', 'N', 'S', 'K', 'N', 'O', 'D', 'E' ) , eSkeletonAnimationBone = makeChunkID( 'A', 'N', 'S', 'K', 'B', 'O', 'N', 'E' ) , eMovingTransform = makeChunkID( 'M', 'V', 'N', 'G', 'T', 'S', 'F', 'M' ) , eKeyframeCount = makeChunkID( 'K', 'F', 'R', 'M', 'C', 'O', 'N', 'T' ) ,
  eKeyframes = makeChunkID( 'K', 'E', 'Y', 'F', 'R', 'M', 'E', 'S' ) , eBonesComponent = makeChunkID( 'B', 'O', 'N', 'E', 'C', 'O', 'M', 'P' ) , eMeshAnimationKeyFrame = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'R', 'M' ) , eMeshAnimationKeyFrameTime = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'T', 'M' ) ,
  eMeshAnimationKeyFrameSubmeshID = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'I', 'D' ) , eMeshAnimationKeyFrameBufferSize = makeChunkID( 'M', 'H', 'A', 'N', 'K', 'F', 'S', 'Z' ) , eMeshAnimationKeyFrameBufferData = makeChunkID( 'M', 'H', 'A', 'N', 'K', 'F', 'D', 'T' ) , eSkeletonAnimationKeyFrame = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'R', 'M' ) ,
  eSkeletonAnimationKeyFrameTime = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'T', 'M' ) , eSkeletonAnimationKeyFrameObjectType = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'Y' ) , eSkeletonAnimationKeyFrameObjectName = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'N' ) , eSkeletonAnimationKeyFrameObjectTransform = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'T' ) ,
  eSubmeshIndexComponentCount = makeChunkID( 'S', 'M', 'F', 'C', 'C', 'P', 'C', 'T' ) , eSubmeshIndexCount = makeChunkID( 'S', 'M', 'S', 'H', 'I', 'C', 'C', 'T' ) , eSubmeshIndices = makeChunkID( 'S', 'M', 'S', 'H', 'I', 'D', 'C', 'S' ) , eSceneNodeAnimation = makeChunkID( 'S', 'C', 'N', 'D', 'A', 'N', 'I', 'M' ) ,
  eSceneNodeAnimationKeyFrame = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'R', 'M' ) , eSceneNodeAnimationKeyFrameTime = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'T', 'M' ) , eSceneNodeAnimationKeyFrameTranslate = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'T', 'R' ) , eSceneNodeAnimationKeyFrameRotate = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'R', 'T' ) ,
  eSceneNodeAnimationKeyFrameScale = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'S', 'L' )
}
 Binary data chunk types enumeration. More...
 
enum class  QueueFamilyFlag {
  eNone = 0x00 , ePresent = 0x01 , eGraphics = 0x02 , eTransfer = 0x04 ,
  eCompute = 0x08
}
 
enum class  CSCNSection : uint32_t {
  eRoot = CU_MakeSectionName( 'R', 'O', 'O', 'T' ) , eScene = CU_MakeSectionName( 'S', 'C', 'N', 'E' ) , eWindow = CU_MakeSectionName( 'W', 'N', 'D', 'W' ) , eSampler = CU_MakeSectionName( 'S', 'M', 'P', 'R' ) ,
  eCamera = CU_MakeSectionName( 'C', 'A', 'M', 'R' ) , eViewport = CU_MakeSectionName( 'V', 'W', 'P', 'T' ) , eLight = CU_MakeSectionName( 'L', 'G', 'H', 'T' ) , eNode = CU_MakeSectionName( 'N', 'O', 'D', 'E' ) ,
  eObject = CU_MakeSectionName( 'O', 'B', 'J', 'T' ) , eObjectMaterials = CU_MakeSectionName( 'O', 'M', 'T', 'L' ) , eFont = CU_MakeSectionName( 'F', 'O', 'N', 'T' ) , ePanelOverlay = CU_MakeSectionName( 'P', 'O', 'V', 'L' ) ,
  eBorderPanelOverlay = CU_MakeSectionName( 'B', 'O', 'V', 'L' ) , eTextOverlay = CU_MakeSectionName( 'T', 'O', 'V', 'L' ) , eMesh = CU_MakeSectionName( 'M', 'E', 'S', 'H' ) , eSubmesh = CU_MakeSectionName( 'S', 'M', 'S', 'H' ) ,
  eMaterial = CU_MakeSectionName( 'M', 'T', 'R', 'L' ) , ePass = CU_MakeSectionName( 'P', 'A', 'S', 'S' ) , eTextureUnit = CU_MakeSectionName( 'U', 'N', 'I', 'T' ) , eRenderTarget = CU_MakeSectionName( 'R', 'T', 'G', 'R' ) ,
  eShaderProgram = CU_MakeSectionName( 'G', 'L', 'S', 'L' ) , eShaderStage = CU_MakeSectionName( 'S', 'P', 'G', 'M' ) , eShaderUBO = CU_MakeSectionName( 'S', 'U', 'B', 'O' ) , eUBOVariable = CU_MakeSectionName( 'S', 'U', 'B', 'V' ) ,
  eBillboard = CU_MakeSectionName( 'B', 'L', 'B', 'd' ) , eBillboardList = CU_MakeSectionName( 'B', 'L', 'B', 'L' ) , eAnimGroup = CU_MakeSectionName( 'A', 'N', 'G', 'P' ) , eAnimation = CU_MakeSectionName( 'A', 'N', 'M', 'T' ) ,
  eSkybox = CU_MakeSectionName( 'S', 'K', 'B', 'X' ) , eParticleSystem = CU_MakeSectionName( 'P', 'L', 'S', 'M' ) , eParticle = CU_MakeSectionName( 'P', 'T', 'C', 'L' ) , eSsao = CU_MakeSectionName( 'S', 'S', 'A', 'O' ) ,
  eSubsurfaceScattering = CU_MakeSectionName( 'S', 'S', 'S', 'G' ) , eTransmittanceProfile = CU_MakeSectionName( 'T', 'R', 'P', 'R' ) , eHdrConfig = CU_MakeSectionName( 'H', 'D', 'R', 'C' ) , eShadows = CU_MakeSectionName( 'S', 'H', 'D', 'W' ) ,
  eMeshDefaultMaterials = CU_MakeSectionName( 'M', 'M', 'T', 'L' ) , eRsm = CU_MakeSectionName( 'R', 'F', 'S', 'M' ) , eLpv = CU_MakeSectionName( 'L', 'P', 'V', 'I' ) , eRaw = CU_MakeSectionName( 'R', 'A', 'W', 'S' ) ,
  ePcf = CU_MakeSectionName( 'P', 'C', 'F', 'S' ) , eVsm = CU_MakeSectionName( 'V', 'S', 'M', 'S' ) , eTextureAnimation = CU_MakeSectionName( 'T', 'X', 'A', 'N' ) , eVoxelConeTracing = CU_MakeSectionName( 'V', 'C', 'T', 'C' ) ,
  eTextureTransform = CU_MakeSectionName( 'T', 'X', 'T', 'R' ) , eSceneImport = CU_MakeSectionName( 'I', 'M', 'P', 'T' )
}
 Defines all the sections and subsections of a scene file. More...
 

Functions

constexpr uint32_t makeCmshVersion (uint32_t maj, uint32_t min, uint32_t rev)
 
constexpr uint32_t getCmshMajor (uint32_t version)
 
constexpr uint32_t getCmshMinor (uint32_t version)
 
constexpr uint32_t getCmshRevision (uint32_t version)
 
uint64_t constexpr makeChunkID (char a, char b, char c, char d, char e, char f, char g, char h)
 
static void prepareChunkData (ChunkType &value)
 Sets given value to big endian. More...
 
static uint8_t const * getBuffer (bool const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (bool &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (int8_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (int8_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (uint8_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (uint8_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (int16_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (int16_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (uint16_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (uint16_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (int32_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (int32_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (uint32_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (uint32_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (int64_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (int64_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (uint64_t const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (uint64_t &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (float const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (float &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (double const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (double &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t const * getBuffer (long double const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (long double &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T >
static size_t getDataSize (T const &value)
 Retrieves the value binary size. More...
 
template<typename T >
static uint8_t const * getBuffer (std::vector< T > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T >
static uint8_t * getBuffer (std::vector< T > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T >
static size_t getDataSize (std::vector< T > const &value)
 Retrieves the value binary size. More...
 
template<typename T , size_t Count>
static uint8_t const * getBuffer (std::array< T, Count > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , size_t Count>
static uint8_t * getBuffer (std::array< T, Count > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , size_t Count>
static size_t getDataSize (std::array< T, Count > const &value)
 Retrieves the value binary size. More...
 
template<typename T , uint32_t Count>
static uint8_t const * getBuffer (castor::Point< T, Count > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static uint8_t * getBuffer (castor::Point< T, Count > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static size_t getDataSize (castor::Point< T, Count > const &value)
 Retrieves the value binary size. More...
 
template<typename T , uint32_t Count>
static uint8_t const * getBuffer (castor::Coords< T, Count > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static uint8_t * getBuffer (castor::Coords< T, Count > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static size_t getDataSize (castor::Coords< T, Count > const &value)
 Retrieves the value binary size. More...
 
template<typename T , uint32_t Columns, uint32_t Rows>
static uint8_t const * getBuffer (castor::Matrix< T, Columns, Rows > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Columns, uint32_t Rows>
static uint8_t * getBuffer (castor::Matrix< T, Columns, Rows > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Columns, uint32_t Rows>
static size_t getDataSize (castor::Matrix< T, Columns, Rows > const &value)
 Retrieves the value binary size. More...
 
template<typename T , uint32_t Count>
static uint8_t const * getBuffer (castor::SquareMatrix< T, Count > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static uint8_t * getBuffer (castor::SquareMatrix< T, Count > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T , uint32_t Count>
static size_t getDataSize (castor::SquareMatrix< T, Count > const &value)
 Retrieves the value binary size. More...
 
static uint8_t const * getBuffer (castor::RgbColour const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (castor::RgbColour &value)
 Retrieves the beginning of the buffer for given value. More...
 
static size_t getDataSize (castor::RgbColour const &value)
 Retrieves the value binary size. More...
 
static uint8_t const * getBuffer (castor::RgbaColour const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (castor::RgbaColour &value)
 Retrieves the beginning of the buffer for given value. More...
 
static size_t getDataSize (castor::RgbaColour const &value)
 Retrieves the value binary size. More...
 
static uint8_t const * getBuffer (castor::Size const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (castor::Size &value)
 Retrieves the beginning of the buffer for given value. More...
 
static size_t getDataSize (castor::Size const &value)
 Retrieves the value binary size. More...
 
static uint8_t const * getBuffer (castor::Position const &value)
 Retrieves the beginning of the buffer for given value. More...
 
static uint8_t * getBuffer (castor::Position &value)
 Retrieves the beginning of the buffer for given value. More...
 
static size_t getDataSize (castor::Position const &value)
 Retrieves the value binary size. More...
 
template<typename T >
static uint8_t const * getBuffer (castor::QuaternionT< T > const &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T >
static uint8_t * getBuffer (castor::QuaternionT< T > &value)
 Retrieves the beginning of the buffer for given value. More...
 
template<typename T >
static size_t getDataSize (castor::QuaternionT< T > const &value)
 Retrieves the value binary size. More...
 
static void prepareChunkData (bool &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (int8_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (uint8_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (int16_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (uint16_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (int32_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (uint32_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (int64_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (uint64_t &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (float &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (double &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (long double &value)
 Sets given value to big endian. More...
 
template<typename T >
static void prepareChunkData (std::vector< T > &values)
 Sets given value to big endian. More...
 
template<typename T , size_t Count>
static void prepareChunkData (std::array< T, Count > &values)
 Sets given value to big endian. More...
 
template<typename T , uint32_t Count>
static void prepareChunkData (castor::SquareMatrix< T, Count > &value)
 Sets given value to big endian. More...
 
template<typename T , uint32_t Count>
static void prepareChunkData (castor::Point< T, Count > &value)
 Sets given value to big endian. More...
 
template<typename T , uint32_t Count>
static void prepareChunkData (castor::Coords< T, Count > &value)
 Sets given value to big endian. More...
 
template<typename T >
static void prepareChunkData (castor::QuaternionT< T > &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (castor::ColourComponent &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (castor::RgbColour &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (castor::RgbaColour &value)
 Sets given value to big endian. More...
 
template<typename T >
static void prepareChunkData (OldInterleavedVertexT< T > &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (InterleavedVertex &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (SubmeshAnimationBuffer &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (FaceIndices &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (LineIndices &value)
 Sets given value to big endian. More...
 
static void prepareChunkData (VertexBoneData &value)
 Sets given value to big endian. More...
 
template<typename T >
ashes::BufferPtr< T > makeBuffer (RenderDevice const &device, VkDeviceSize count, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string const &name, ashes::QueueShare sharingMode={})
 
ashes::BufferBasePtr makeBufferBase (RenderDevice const &device, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string const &name, ashes::QueueShare sharingMode={})
 
template<typename T >
ashes::VertexBufferPtr< T > makeVertexBuffer (RenderDevice const &device, VkDeviceSize count, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string const &name, ashes::QueueShare sharingMode={})
 
ashes::VertexBufferBasePtr makeVertexBufferBase (RenderDevice const &device, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string const &name, ashes::QueueShare sharingMode={})
 
C3D_API void createUniformPassBinding (crg::FramePass &pass, uint32_t binding, std::string const &name, ashes::Buffer< uint8_t > const &buffer, VkDeviceSize offset, VkDeviceSize size)
 
C3D_API void createInputStoragePassBinding (crg::FramePass &pass, uint32_t binding, std::string const &name, ashes::Buffer< uint8_t > const &buffer, VkDeviceSize offset, VkDeviceSize size)
 
C3D_API void createInOutStoragePassBinding (crg::FramePass &pass, uint32_t binding, std::string const &name, ashes::Buffer< uint8_t > const &buffer, VkDeviceSize offset, VkDeviceSize size)
 
C3D_API void createOutputStoragePassBinding (crg::FramePass &pass, uint32_t binding, std::string const &name, ashes::Buffer< uint8_t > const &buffer, VkDeviceSize offset, VkDeviceSize size)
 
PoolUniformBufferUPtr makePoolUniformBuffer (RenderSystem const &renderSystem, castor::ArrayView< uint8_t > data, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string name, ashes::QueueShare sharingMode={})
 
template<typename DataT >
UniformBufferUPtrT< DataT > makeUniformBuffer (RenderSystem const &renderSystem, VkDeviceSize count, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string name, ashes::QueueShare sharingMode={})
 
UniformBufferBaseUPtr makeUniformBufferBase (RenderSystem const &renderSystem, VkDeviceSize count, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, std::string name, ashes::QueueShare sharingMode={})
 
C3D_API size_t hash (BillboardBase const &billboard, Pass const &pass)
 
template<EventType EventT, typename CacheT >
CacheViewPtrT< CacheT, EventT > makeCacheView (castor::String const &name, CacheT &cache, typename CacheViewTraitsT< CacheT >::ElementInitialiserT initialiser={}, typename CacheViewTraitsT< CacheT >::ElementCleanerT cleaner={})
 
C3D_API size_t hash (Geometry const &geometry, Submesh const &submesh, Pass const &pass)
 
template<typename ObjT , typename KeyT , typename TraitsT , typename ... ParametersT>
ObjectCachePtrT< ObjT, KeyT, TraitsT > makeObjectCache (ParametersT &&... parameters)
 Creates an object cache. More...
 
std::unique_ptr< ShaderProgramCachemakeCache (Engine &engine)
 Creates a ashes::ShaderProgram cache. More...
 
C3D_API void mergeConfigs (TextureConfiguration const &lhs, TextureConfiguration &rhs)
 
C3D_API castor::PixelFormat getSRGBFormat (castor::PixelFormat pformat)
 
C3D_API castor::PixelFormat getNonSRGBFormat (castor::PixelFormat pformat)
 
 CU_DeclareSmartPtr (Engine)
 
 CU_DeclareCUSmartPtr (castor3d, FramePassTimer,)
 
castor::LoggerInstance & getLogger (Engine &engine)
 
castor::Matrix4x4f convert (std::array< float, 16 > const &value)
 
VkClearColorValue convert (castor::RgbaColour const &value)
 
castor::RgbaColour convert (VkClearColorValue const &value)
 
std::array< float, 4u > makeFloatArray (castor::RgbaColour const &value)
 
 CU_DeclareVector (float, Float)
 
 CU_DeclareMap (uint32_t, int, IntUInt)
 
 CU_DeclareMap (castor::String, int, IntStr)
 
 CU_DeclareMap (int, castor::String, StrInt)
 
VkDescriptorSetLayoutBinding makeDescriptorSetLayoutBinding (uint32_t binding, VkDescriptorType descriptorType, VkShaderStageFlags stageFlags, uint32_t descriptorCount=1u, VkSampler const *pImmutableSamplers=nullptr)
 
castor::Size makeSize (VkExtent2D const &size)
 
castor::Size makeSize (VkExtent3D const &size)
 
VkExtent2D makeExtent2D (VkExtent3D const &size)
 
VkExtent3D makeExtent3D (VkExtent2D const &size)
 
VkExtent2D makeExtent2D (castor::Coords2ui const &size)
 
VkExtent2D makeExtent2D (castor::Point2ui const &size)
 
VkExtent3D makeExtent3D (castor::Coords2ui const &size)
 
VkExtent3D makeExtent3D (castor::Point2ui const &size)
 
VkOffset2D makeOffset2D (castor::Coords2i const &pos)
 
VkOffset2D makeOffset2D (castor::Point2i const &pos)
 
VkOffset3D makeOffset3D (castor::Coords2i const &pos)
 
VkOffset3D makeOffset3D (castor::Point2i const &pos)
 
VkViewport makeViewport (castor::Coords2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkViewport makeViewport (castor::Point2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkViewport makeViewport (castor::Coords2i const &pos, castor::Coords2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkViewport makeViewport (castor::Point2i const &pos, castor::Coords2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkViewport makeViewport (castor::Coords2i const &pos, castor::Point2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkViewport makeViewport (castor::Point2i const &pos, castor::Point2ui const &size, float zMin=0.0f, float zMax=1.0f)
 
VkRect2D makeScissor (castor::Coords2ui const &size)
 
VkRect2D makeScissor (castor::Point2ui const &size)
 
VkRect2D makeScissor (castor::Coords2i const &pos, castor::Coords2ui const &size)
 
VkRect2D makeScissor (castor::Point2i const &pos, castor::Coords2ui const &size)
 
VkRect2D makeScissor (castor::Coords2i const &pos, castor::Point2ui const &size)
 
VkRect2D makeScissor (castor::Point2i const &pos, castor::Point2ui const &size)
 
VkClearValue makeClearValue (float depth, uint32_t stencil=0u)
 
VkClearValue makeClearValue (uint32_t r, uint32_t g, uint32_t b, uint32_t a)
 
VkClearValue makeClearValue (float r, float g, float b, float a=1.0f)
 
template<typename EnumT >
castor::UInt32StrMap getEnumMapT (EnumT min, EnumT max)
 
template<typename EnumT >
castor::UInt32StrMap getEnumMapT ()
 
bool operator> (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
bool operator< (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
bool operator<= (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
bool operator>= (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
bool operator!= (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
bool operator== (VkImageSubresourceRange const &lhs, VkImageSubresourceRange const &rhs)
 
template<typename EventT , typename ... ParamsT>
CpuFrameEventUPtr makeCpuFrameEvent (ParamsT &&... params)
 
CpuFrameEventUPtr makeCpuFunctorEvent (EventType type, CpuFunctorEvent::Functor functor)
 Helper function to create a functor event. More...
 
template<typename T >
CpuFrameEventUPtr makeCpuCleanupEvent (T &object)
 Helper function to create a cleanup event. More...
 
template<typename T >
CpuFrameEventUPtr makeCpuInitialiseEvent (T &object)
 Helper function to create an initialise event. More...
 
template<typename EventT , typename ... ParamsT>
GpuFrameEventUPtr makeGpuFrameEvent (ParamsT &&... params)
 
GpuFrameEventUPtr makeGpuFunctorEvent (EventType type, GpuFunctorEvent::Functor functor)
 Helper function to create a functor event. More...
 
template<typename T >
GpuFrameEventUPtr makeGpuCleanupEvent (T &object)
 Helper function to create a cleanup event. More...
 
template<typename T >
GpuFrameEventUPtr makeGpuInitialiseEvent (T &object)
 Helper function to create an initialise event. More...
 
SamplerResPtr createSampler (Engine &engine, castor::String const &baseName, VkFilter filter, VkImageSubresourceRange const *range)
 
castor::String getSamplerName (VkFilter minFilter, VkFilter magFilter, VkSamplerMipmapMode mipFilter, VkSamplerAddressMode U, VkSamplerAddressMode V, VkSamplerAddressMode W)
 
C3D_API bool operator== (TextureTransform const &lhs, TextureTransform const &rhs) noexcept
 
bool operator!= (TextureTransform const &lhs, TextureTransform const &rhs) noexcept
 
C3D_API TextureFlags getFlags (TextureConfiguration const &config)
 
C3D_API castor::PixelComponents getPixelComponents (uint32_t mask)
 
C3D_API void updateIndices (castor::PixelFormat format, TextureConfiguration &config)
 
C3D_API TextureLayoutSPtr createTextureLayout (Engine const &engine, castor::Path const &relative, castor::Path const &folder, castor::ImageLoaderConfig config={ true, true, true })
 
C3D_API TextureLayoutSPtr createTextureLayout (Engine const &engine, castor::String const &name, castor::PxBufferBaseUPtr buffer, bool isStatic=false)
 
C3D_API uint32_t getMipLevels (VkExtent3D const &extent, VkFormat format)
 
ashes::ImagePtr makeImage (RenderDevice const &device, ashes::ImageCreateInfo createInfo, VkMemoryPropertyFlags flags, std::string const &name)
 
template<typename ResT >
ashes::DeviceMemoryPtr setupMemory (ashes::Device const &device, ResT &resource, VkMemoryPropertyFlags flags, std::string const &name)
 
template<typename ResT >
ashes::DeviceMemoryPtr setupMemory (RenderDevice const &device, ResT &resource, VkMemoryPropertyFlags flags, std::string const &name)
 
C3D_API std::ostream & operator<< (std::ostream &stream, GpuInformations const &object)
 Output stream operator. More...
 
template<typename VkStructT , typename ... ParamsT>
VkStructT makeVkStructPNext (void *next, ParamsT &&... params)
 
template<typename VkStructT , typename ... ParamsT>
VkStructT makeVkStruct (ParamsT &&... params)
 
C3D_API void setProgressBarTitle (ProgressBar *progress, castor::String const &value)
 
C3D_API void setProgressBarLabel (ProgressBar *progress, castor::String const &value)
 
C3D_API void stepProgressBar (ProgressBar *progress, castor::String const &label)
 
C3D_API void stepProgressBar (ProgressBar *progress)
 
C3D_API void incProgressBarRange (ProgressBar *progress, uint32_t value)
 
C3D_API bool operator== (castor3d::Version const &a, castor3d::Version const &b)
 Equality operator. More...
 
C3D_API bool operator!= (castor3d::Version const &a, castor3d::Version const &b)
 Difference operator. More...
 
C3D_API bool operator< (castor3d::Version const &a, castor3d::Version const &b)
 Less than operator. More...
 
C3D_API bool operator> (castor3d::Version const &a, castor3d::Version const &b)
 Less than operator. More...
 
C3D_API bool operator<= (castor3d::Version const &a, castor3d::Version const &b)
 Less than operator. More...
 
C3D_API bool operator>= (castor3d::Version const &a, castor3d::Version const &b)
 Less than operator. More...
 
C3D_API std::ostream & operator<< (std::ostream &stream, castor3d::Version const &version)
 
C3D_API std::wostream & operator<< (std::wostream &stream, castor3d::Version const &version)
 
C3D_API castor::String & operator<< (castor::String &stream, castor3d::Version const &version)
 
std::ostream & operator<< (std::ostream &o, Cone const &c)
 
std::ostream & operator<< (std::ostream &o, Cube const &c)
 
std::ostream & operator<< (std::ostream &o, Cylinder const &c)
 
std::ostream & operator<< (std::ostream &o, Icosahedron const &c)
 
std::ostream & operator<< (std::ostream &o, Projection const &c)
 
std::ostream & operator<< (std::ostream &o, Sphere const &c)
 
AnimatedObjectSPtr findAnimatedObject (Scene const &scene, castor::String const &name)
 
uint64_t getPipelineBaseHash (ProgramFlags programFlags, PassFlags passFlags, uint32_t texturesCount, TextureFlags texturesFlags, uint32_t layerIndex)
 
uint64_t getPipelineBaseHash (RenderNodesPass const &renderPass, Submesh const &data, Pass const &pass, bool isFrontCulled)
 
uint64_t getPipelineBaseHash (RenderNodesPass const &renderPass, BillboardBase const &data, Pass const &pass, bool isFrontCulled)
 
size_t hash (SubmeshRenderNode const &culled)
 
bool isCulled (SubmeshRenderNode const &node)
 
bool isVisible (Camera const &camera, SubmeshRenderNode const &node)
 
bool isVisible (Frustum const &frustum, SubmeshRenderNode const &node)
 
size_t hash (BillboardRenderNode const &culled)
 
bool isCulled (BillboardRenderNode const &node)
 
bool isVisible (Camera const &camera, BillboardRenderNode const &node)
 
bool isVisible (Frustum const &frustum, BillboardRenderNode const &node)
 
C3D_API bool operator== (DirectionalLightCascade const &lhs, DirectionalLightCascade const &rhs)
 
bool operator!= (DirectionalLightCascade const &lhs, DirectionalLightCascade const &rhs)
 
VkDeviceSize getSize (ParticleFormat format)
 
C3D_API bool operator== (ParticleDeclaration const &lhs, ParticleDeclaration const &rhs)
 Equality operator. More...
 
C3D_API bool operator!= (ParticleDeclaration const &lhs, ParticleDeclaration const &rhs)
 Equality operator. More...
 
bool operator== (ParticleElementDeclaration const &lhs, ParticleElementDeclaration const &rhs)
 Equality operator. More...
 
bool operator!= (ParticleElementDeclaration const &lhs, ParticleElementDeclaration const &rhs)
 Equality operator. More...
 
C3D_API SceneFileContextgetParserContext (castor::FileParserContext &context)
 
C3D_API void initialiseGlslang ()
 Initialises glslang globals. More...
 
C3D_API void cleanupGlslang ()
 Cleans up glslang globals. More...
 
C3D_API UInt32Array compileGlslToSpv (RenderDevice const &device, VkShaderStageFlagBits stage, std::string const &shader)
 Transpiles a GLSL shader to SPIR-V. More...
 
C3D_API SpirVShader compileShader (RenderDevice const &device, ShaderModule const &module)
 
C3D_API SpirVShader compileShader (RenderSystem const &renderSystem, ShaderModule const &module)
 
ashes::PipelineShaderStageCreateInfo makeShaderState (ashes::Device const &device, VkShaderStageFlagBits stage, SpirVShader code, std::string const &name, std::string mainFuncName="main", ashes::Optional< ashes::SpecializationInfo > specialization=ashes::nullopt)
 
ashes::PipelineShaderStageCreateInfo makeShaderState (RenderDevice const &device, ShaderModule const &shaderModule, std::string mainFuncName="main", ashes::Optional< ashes::SpecializationInfo > specialization=ashes::nullopt)
 
C3D_API bool shallowEqual (TextureConfiguration const &lhs, TextureConfiguration const &rhs)
 
C3D_API bool operator== (TextureConfiguration const &lhs, TextureConfiguration const &rhs)
 
C3D_API bool operator!= (TextureConfiguration const &lhs, TextureConfiguration const &rhs)
 
Generator
 CU_DeclareSmartPtr (Cone)
 
 CU_DeclareSmartPtr (Cylinder)
 
 CU_DeclareSmartPtr (Icosahedron)
 
 CU_DeclareSmartPtr (Cube)
 
 CU_DeclareSmartPtr (Plane)
 
 CU_DeclareSmartPtr (Projection)
 
 CU_DeclareSmartPtr (Sphere)
 
 CU_DeclareSmartPtr (Torus)
 
Component
 CU_DeclareSmartPtr (Face)
 
 CU_DeclareSmartPtr (IndexMapping)
 
 CU_DeclareSmartPtr (InstantiationComponent)
 
 CU_DeclareSmartPtr (MorphComponent)
 
 CU_DeclareSmartPtr (SubmeshComponent)
 
 CU_DeclareSmartPtr (TriFaceMapping)
 
 CU_DeclareVector (Face, Face)
 Face array. More...
 
 CU_DeclareVector (FaceSPtr, FacePtr)
 Face pointer array. More...
 
 CU_DeclareMap (uint32_t, SubmeshComponentSPtr, SubmeshComponentID)
 
EnvironmentMap
 CU_DeclareSmartPtr (EnvironmentMap)
 
 CU_DeclareSmartPtr (EnvironmentMapPass)
 
Voxelize
 CU_DeclareCUSmartPtr (castor3d, VoxelBufferToTexture, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, VoxelizePass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, VoxelSecondaryBounce, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, Voxelizer, C3D_API)
 
Passes
 CU_DeclareCUSmartPtr (castor3d, BackgroundRenderer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, CombinePass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, DepthPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, DownscalePass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, GaussianBlur, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LineariseDepthPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, PickingPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderQuad, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderGrid, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, StencilPass, C3D_API)
 
 CU_DeclareVector (CommandsSemaphore, CommandsSemaphore)
 
PBR
 CU_DeclareSmartPtr (IblTextures)
 
SSAO
 CU_DeclareCUSmartPtr (castor3d, SsaoBlurPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SsaoRawAOPass, C3D_API)
 
ToTexture
 CU_DeclareSmartPtr (EquirectangularToCube)
 
 CU_DeclareSmartPtr (RenderCube)
 
 CU_DeclareCUSmartPtr (castor3d, Texture3DTo2D, C3D_API)
 
UBO
 CU_DeclareCUSmartPtr (castor3d, LpvGridConfigUbo, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LpvLightConfigUbo, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LayeredLpvGridConfigUbo, C3D_API)
 
 CU_DeclareVector (LpvLightConfigUbo, LpvLightConfigUbo)
 
 CU_DeclareVector (LpvGridConfigUbo, LpvGridConfigUbo)
 

Variables

uint32_t constexpr CurrentCmshVersion = makeCmshVersion( 0x01u, 0x05u, 0x0000u )
 
static uint32_t constexpr InvalidIndex = ~( 0u )
 
static VkColorComponentFlags const defaultColorWriteMask { VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT }
 
static VkClearValue const defaultClearDepthStencil { makeClearValue( 1.0f, 0u ) }
 
static VkClearValue const opaqueBlackClearColor { makeClearValue( 0.0f, 0.0f, 0.0f, 1.0f ) }
 
static VkClearValue const transparentBlackClearColor { makeClearValue( 0.0f, 0.0f, 0.0f, 0.0f ) }
 
static VkClearValue const opaqueWhiteClearColor { makeClearValue( 1.0f, 1.0f, 1.0f, 1.0f ) }
 
static VkClearValue const transparentWhiteClearColor { makeClearValue( 1.0f, 1.0f, 1.0f, 0.0f ) }
 

Animation

enum class  AnimationState : uint8_t {
  ePlaying , eStopped , ePaused , eCount ,
  eMin = ePlaying , eMax =eCount-1
}
 Animation State Enumerator. More...
 
enum class  AnimationType : uint8_t {
  eSceneNode , eSkeleton , eMesh , eTexture ,
  eCount , eMin = eSceneNode , eMax =eCount-1
}
 Animation types enumeration. More...
 
enum class  InterpolatorType : uint8_t {
  eNearest , eLinear , eCount , eMin = eNearest ,
  eMax =eCount-1
}
 Interpolation modes enumeration. More...
 
using Point3rInterpolator = Interpolator< castor::Point3f >
 
using QuaternionInterpolator = Interpolator< castor::Quaternion >
 
using TextureRotateSpeed = castor::SpeedT< castor::Angle, castor::Seconds >
 
using TextureTranslateSpeed = castor::SpeedT< castor::Point2f, castor::Seconds >
 
using TextureScaleSpeed = castor::SpeedT< castor::Point2f, castor::Seconds >
 
C3D_API castor::String getName (AnimationState value)
 
C3D_API castor::String getName (AnimationType value)
 
C3D_API castor::String getName (InterpolatorType value)
 
 CU_DeclareSmartPtr (AnimationKeyFrame)
 
 CU_DeclareVector (AnimationKeyFrameUPtr, AnimationKeyFrame)
 
 CU_DeclareSmartPtr (TextureAnimation)
 
 CU_DeclareSmartPtr (TextureAnimationKeyFrame)
 
 CU_DeclareSmartPtr (MeshAnimation)
 
 CU_DeclareSmartPtr (MeshAnimationKeyFrame)
 
 CU_DeclareSmartPtr (MeshAnimationSubmesh)
 
 CU_DeclareVector (MeshAnimationSubmesh, MeshAnimationSubmesh)
 

Frame

enum class  EventType : uint8_t {
  ePreRender , eQueueRender , ePostRender , eCount ,
  eMin = ePreRender , eMax =eCount-1
}
 Frame Event Type enumeration. More...
 
using FrameListenerCacheTraits = PtrCacheTraitsT< FrameListener, castor::String >
 
using FrameListenerCache = castor::ResourceCacheT< FrameListener, castor::String, FrameListenerCacheTraits >
 
using FrameListenerRes = FrameListenerCacheTraits::ElementPtrT
 
using FrameListenerResPtr = FrameListenerCacheTraits::ElementObsT
 
C3D_API castor::String getName (EventType value)
 
 CU_DeclareCUSmartPtr (castor3d, CpuFrameEvent, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, FrameListener, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, GpuFrameEvent, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, CpuFunctorEvent, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, GpuFunctorEvent, C3D_API)
 
 CU_DeclareVector (CpuFrameEventUPtr, CpuFrameEventPtr)
 
 CU_DeclareVector (GpuFrameEventUPtr, GpuFrameEventPtr)
 
 CU_DeclareMap (castor::String, FrameListenerSPtr, FrameListenerPtrStr)
 
 CU_DeclareCUSmartPtr (castor3d, FrameListenerCache, C3D_API)
 

UserInput

enum class  UserInputEventType {
  eMouse , eKeyboard , eHandler , eCount ,
  eMin = eMouse , eMax =eCount-1
}
 Supported events types enumeration. More...
 
enum class  MouseEventType : uint8_t {
  eMove , eEnter , eHover , eLeave ,
  ePushed , eReleased , eWheel , eCount ,
  eMin = eMove , eMax =eCount-1
}
 Enumeration of supported mouse events. More...
 
enum class  KeyboardEventType : uint8_t {
  ePushed , eReleased , eChar , eCount ,
  eMin = ePushed , eMax =eCount-1
}
 Enumeration of supported keyboard events. More...
 
enum class  HandlerEventType : uint8_t {
  eActivate , eDeactivate , eCount , eMin = eActivate ,
  eMax =eCount-1
}
 Enumeration of supported handler events. More...
 
enum class  MouseButton {
  eLeft , eMiddle , eRight , eCount ,
  eMin = eLeft , eMax =eCount-1
}
 Mouse buttons enumeration. More...
 
enum class  KeyboardKey {
  eNone , eBackspace = 0x08 , eTab = 0x0A , eReturn = 0x0D ,
  eEscape = 0x1B , eSpace = 0x20 , eDelete = 0x7F , eStart = 0x100 ,
  eLButton , eRButton , eCancel , eMButton ,
  eClear , eShift , eAlt , eControl ,
  eMenu , ePause , eCapital , eEnd ,
  eHome , eLeft , eUp , eRight ,
  edown , eSelect , ePrint , eExecute ,
  eSnapshot , eInsert , eHelp , eNumpad0 ,
  eNumpad1 , eNumpad2 , eNumpad3 , eNumpad4 ,
  eNumpad5 , eNumpad6 , eNumpad7 , eNumpad8 ,
  eNumpad9 , eMultiply , eAdd , eSeparator ,
  eSubtract , eDecimal , eDivide , eF1 ,
  eF2 , eF3 , eF4 , eF5 ,
  eF6 , eF7 , eF8 , eF9 ,
  eF10 , eF11 , eF12 , eF13 ,
  eF14 , eF15 , eF16 , eF17 ,
  eF18 , eF19 , eF20 , eF21 ,
  eF22 , eF23 , eF24 , eNumlock ,
  eScroll , ePageUp , ePageDown , eNumpadSpace ,
  eNumpadTab , eNumpadEnter , eNumpadF1 , eNumpadF2 ,
  eNumpadF3 , eNumpadF4 , eNumpadHome , eNumpadLeft ,
  eNumpadUp , eNumpadRight , eNumpadDown , eNumpadPageUp ,
  eNumpadPageDown , eNumpadEnd , eNumpadBegin , eNumpadInsert ,
  eNumpadDelete , eNumpadEqual , eNumpadMultiply , eNumpadAdd ,
  eNumpadSeparator , eNumpadSubtract , eNumpadDecimal , eNumpadDivide
}
 Keyboard keys enumeration. More...
 
C3D_API castor::String getName (UserInputEventType value)
 
C3D_API castor::String getName (MouseEventType value)
 
C3D_API castor::String getName (KeyboardEventType value)
 
C3D_API castor::String getName (HandlerEventType value)
 
C3D_API castor::String getName (MouseButton value)
 
 CU_DeclareSmartPtr (EventHandler)
 
 CU_DeclareSmartPtr (UserInputEvent)
 
 CU_DeclareSmartPtr (KeyboardEvent)
 
 CU_DeclareSmartPtr (MouseEvent)
 
 CU_DeclareSmartPtr (HandlerEvent)
 
 CU_DeclareSmartPtr (UserInputListener)
 

Material

enum class  TextureFlag : uint16_t {
  eNone = 0x0000 , eHeight = 0x0001 , eOpacity = 0x0002 , eNormal = 0x0004 ,
  eEmissive = 0x0008 , eOcclusion = 0x0010 , eTransmittance = 0x0020 , eColour = 0x0040 ,
  eDiffuse = eColour , eAlbedo = eColour , eSpecular = 0x0080 , eMetalness = 0x0100 ,
  eGlossiness = 0x0200 , eShininess = eGlossiness , eRoughness = 0x0400 , eAll = 0x07FF ,
  eAllButOpacity = eAll & ~( eOpacity ) , eAllButColourAndOpacity = eAllButOpacity & ~( eDiffuse ) , eAllButNormalAndOpacity = eAllButOpacity & ~( eNormal ) , eGeometry = eNormal | eOpacity | eHeight
}
 Texture channels flags. More...
 
using TextureFlags = castor::FlagCombination< TextureFlag >
 
using TextureFlagsArray = std::vector< TextureFlagsId >
 
using FilteredTextureFlags = std::map< uint32_t, TextureFlagsId >
 
using PassTypeID = uint16_t
 
using OnMaterialChangedFunction = std::function< void(Material const &) >
 
using OnMaterialChanged = castor::SignalT< OnMaterialChangedFunction >
 
using OnMaterialChangedConnection = OnMaterialChanged::connection
 
using MaterialCacheTraits = ResourceCacheTraitsT< Material, castor::String >
 
using MaterialCache = castor::ResourceCacheT< Material, castor::String, MaterialCacheTraits >
 
using MaterialRes = MaterialCacheTraits::ElementPtrT
 
using MaterialResPtr = MaterialCacheTraits::ElementObsT
 
C3D_API castor::String getName (TextureFlag value, bool isPbr)
 
C3D_API bool operator== (TextureFlagsId const &lhs, TextureFlagsId const &rhs)
 
 CU_DeclareSmartPtr (Material)
 
C3D_API VkFormat convert (castor::PixelFormat format)
 
C3D_API castor::PixelFormat convert (VkFormat format)
 
 CU_DeclareCUSmartPtr (castor3d, MaterialCache, C3D_API)
 
 CU_DeclareVector (MaterialRPtr, MaterialPtr)
 Material pointer array. More...
 
 CU_DeclareMap (castor::String, MaterialRPtr, MaterialPtrStr)
 Material pointer map, sorted by name. More...
 
 CU_DeclareMap (uint32_t, MaterialRPtr, MaterialPtrUInt)
 Material pointer map. More...
 

Pass

enum class  ParallaxOcclusionMode {
  eNone , eOne , eRepeat , eCount ,
  eMin = eNone , eMax =eCount-1
}
 Parallax occlusion modes enumeration. More...
 
enum class  BlendMode : uint8_t {
  eNoBlend , eAdditive , eMultiplicative , eInterpolative ,
  eABuffer , eDepthPeeling , eCount , eMin = eNoBlend ,
  eMax =eCount-1
}
 Blending modes enumeration. More...
 
enum class  PassFlag : uint16_t {
  eNone = 0x0000 , eAlphaBlending = 0x0001 , eAlphaTest = 0x0002 , eBlendAlphaTest = 0x0004 ,
  eImageBasedLighting = 0x0008 , eSubsurfaceScattering = 0x0010 , eDistanceBasedTransmittance = 0x0020 , eParallaxOcclusionMappingOne = 0x0040 ,
  eParallaxOcclusionMappingRepeat = 0x0080 , eReflection = 0x0100 , eRefraction = 0x0200 , eLighting = 0x0400 ,
  ePickable = 0x0800 , eDrawEdge = 0x1000 , eAll = 0x1FFF
}
 Pass specific flags. More...
 
using PassFlags = castor::FlagCombination< PassFlag >
 
using OnPassChangedFunction = std::function< void(Pass const &) >
 
using OnPassChanged = castor::SignalT< OnPassChangedFunction >
 
using OnPassChangedConnection = OnPassChanged::connection
 
using PassFactoryBase = castor::Factory< Pass, PassTypeID, PassSPtr, std::function< PassSPtr(Material &) > >
 
C3D_API castor::String getName (ParallaxOcclusionMode value)
 
C3D_API castor::String getName (BlendMode value)
 
C3D_API castor::String getName (PassFlag value)
 
 CU_DeclareSmartPtr (Pass)
 
 CU_DeclareSmartPtr (SubsurfaceScattering)
 
 CU_DeclareCUSmartPtr (castor3d, PassFactory, C3D_API)
 
 CU_DeclareVector (Pass, Pass)
 Pass array. More...
 
 CU_DeclareVector (PassSPtr, PassPtr)
 Pass pointer array. More...
 
 CU_DeclareCUSmartPtr (castor3d, RenderPassRegisterInfo, C3D_API)
 

Texture

enum class  TextureSpace : uint16_t {
  eNormalised = 0x0001 << 0 , eYInverted = 0x0001 << 1 , eColour = 0x0001 << 2 , eDepth = 0x0001 << 3 ,
  eTangentSpace = 0x0001 << 4 , eObjectSpace = 0x0001 << 5 , eWorldSpace = 0x0001 << 6 , eViewSpace = 0x0001 << 7 ,
  eClipSpace = 0x0001 << 8 , eStencil = 0x0001 << 9
}
 Lists the possible spaces for a texture. More...
 
enum class  CubeMapFace : uint8_t {
  ePositiveX , eNegativeX , ePositiveY , eNegativeY ,
  ePositiveZ , eNegativeZ , eCount , eMin = ePositiveX ,
  eMax =eCount-1
}
 Cube map faces. More...
 
using TextureSpaces = castor::FlagCombination< TextureSpace >
 
using OnTextureUnitChangedFunction = std::function< void(TextureUnit const &) >
 
using OnTextureUnitChanged = castor::SignalT< OnTextureUnitChangedFunction >
 
using OnTextureUnitChangedConnection = OnTextureUnitChanged::connection
 
using SamplerCacheTraits = ResourceCacheTraitsT< Sampler, castor::String >
 
using SamplerCache = castor::ResourceCacheT< Sampler, castor::String, SamplerCacheTraits >
 
using SamplerRes = SamplerCacheTraits::ElementPtrT
 
using SamplerResPtr = SamplerCacheTraits::ElementObsT
 
C3D_API castor::String getName (TextureSpace value)
 
C3D_API castor::String getName (TextureSpaces value)
 
C3D_API castor::String getName (CubeMapFace value)
 
 CU_DeclareCUSmartPtr (castor3d, Sampler, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureLayout, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureSource, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureUnit, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureView, C3D_API)
 
 CU_DeclareVector (TextureUnit, TextureUnit)
 TextureUnit array. More...
 
 CU_DeclareVector (TextureUnitSPtr, TextureUnitPtr)
 TextureUnit pointer array. More...
 
 CU_DeclareVector (std::reference_wrapper< TextureUnit >, DepthMap)
 TextureUnit reference array. More...
 
std::ostream & operator<< (std::ostream &stream, TextureLayout const &layout)
 
 CU_DeclareCUSmartPtr (castor3d, SamplerCache, C3D_API)
 
C3D_API bool operator== (TextureSourceInfo const &lhs, TextureSourceInfo const &rhs) noexcept
 
bool operator!= (TextureSourceInfo const &lhs, TextureSourceInfo const &rhs) noexcept
 
 CU_DeclareSmartPtr (TextureAnimationInstance)
 

Miscellaneous

enum class  GpuFeature : uint32_t {
  eStereoRendering = 0x00000001 , eShaderStorageBuffers = 0x00000002 , eBindless = 0x00000004 , eGeometry = 0x00000008 ,
  eTessellation = 0x00000010 , eRayTracing = 0x00000020 , eMesh = 0x00000040
}
 All supported GPU feature flags. More...
 
enum class  GpuMax : uint32_t {
  eTexture1DSize , eTexture2DSize , eTexture3DSize , eTextureCubeSize ,
  eTextureLayers , eSamplerLodBias , eClipDistances , eFramebufferWidth ,
  eFramebufferHeight , eFramebufferLayers , eFramebufferSamples , eTexelBufferSize ,
  eUniformBufferSize , eStorageBufferSize , eViewportWidth , eViewportHeight ,
  eViewports , eCount , eMin = eTexture1DSize , eMax =eCount-1
}
 Maximum values enumerator. More...
 
enum class  GpuMin : uint32_t {
  eBufferMapSize , eUniformBufferOffsetAlignment , eCount , eMin = eBufferMapSize ,
  eMax =eCount-1
}
 Minimum values enumerator. More...
 
using GpuFeatures = castor::FlagCombination< GpuFeature >
 
using Parameters = ParametersT< castor::String >
 
 CU_DeclareCUSmartPtr (castor3d, LoadingScreen, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ProgressBar, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, StagingData, C3D_API)
 
C3D_API ashes::DeviceMemoryPtr setupMemory (ashes::Device const &device, VkMemoryRequirements const &requirements, VkMemoryPropertyFlags flags, std::string const &name)
 
C3D_API ashes::DeviceMemoryPtr setupMemory (RenderDevice const &device, VkMemoryRequirements const &requirements, VkMemoryPropertyFlags flags, std::string const &name)
 

Skeleton

enum class  SkeletonAnimationObjectType : uint8_t {
  eNode , eBone , eCount , eMin = eNode ,
  eMax =eCount-1
}
 Class which represents the moving things. More...
 
using ObjectTransform = std::pair< SkeletonAnimationObject *, castor::Matrix4x4f >
 
using TransformArray = std::vector< ObjectTransform >
 
static const uint32_t MaxBonesPerVertex = 8
 
C3D_API castor::String getName (SkeletonAnimationObjectType value)
 
 CU_DeclareSmartPtr (SkeletonAnimation)
 
 CU_DeclareSmartPtr (SkeletonAnimationKeyFrame)
 
 CU_DeclareSmartPtr (SkeletonAnimationObject)
 
 CU_DeclareSmartPtr (SkeletonAnimationBone)
 
 CU_DeclareSmartPtr (SkeletonAnimationNode)
 
 CU_DeclareMap (castor::String, SkeletonAnimationObjectSPtr, SkeletonAnimationObjectPtrStr)
 SkeletonAnimationObject pointer map, sorted by name. More...
 
 CU_DeclareVector (SkeletonAnimationObjectSPtr, SkeletonAnimationObjectPtr)
 SkeletonAnimationObject pointer array. More...
 
 CU_DeclareSmartPtr (Bone)
 
 CU_DeclareSmartPtr (Skeleton)
 
 CU_DeclareVector (VertexBoneData, VertexBoneData)
 Skinned vertex data array. More...
 
 CU_DeclareVector (BoneSPtr, BonePtr)
 Bone pointer array. More...
 
 CU_DeclareMap (castor::String, BoneSPtr, BonePtrStr)
 Bone pointer map sorted by name. More...
 
 CU_DeclareSmartPtr (SkeletonAnimationInstance)
 
 CU_DeclareSmartPtr (SkeletonAnimationInstanceBone)
 
 CU_DeclareSmartPtr (SkeletonAnimationInstanceNode)
 
 CU_DeclareSmartPtr (SkeletonAnimationInstanceObject)
 
 CU_DeclareMap (castor::String, SkeletonAnimationInstanceObjectSPtr, SkeletonAnimationInstanceObjectPtrStr)
 MovingObject pointer map, sorted by name. More...
 
 CU_DeclareVector (SkeletonAnimationInstanceObjectSPtr, SkeletonAnimationInstanceObjectPtr)
 SkeletonAnimationInstanceObject pointer array. More...
 
 CU_DeclareVector (std::reference_wrapper< SkeletonAnimationInstance >, SkeletonAnimationInstance)
 Skeleton animation instance pointer array. More...
 

Overlay

enum class  OverlayType : uint8_t {
  ePanel , eBorderPanel , eText , eCount ,
  eMin = ePanel , eMax =eCount-1
}
 Overlay types enumeration. More...
 
enum class  TextWrappingMode {
  eNone , eBreak , eBreakWords , eCount ,
  eMin = eNone , eMax =eCount-1
}
 Text wrapping modes, handles the way text is cut when it overflows the overlay width. More...
 
enum class  TextTexturingMode {
  eLetter , eText , eCount , eMin = eLetter ,
  eMax =eCount-1
}
 Text texturing modes, handles the way textures are appied to text overlays. More...
 
enum class  TextLineSpacingMode {
  eOwnHeight , eMaxLineHeight , eMaxFontHeight , eCount ,
  eMin = eOwnHeight , eMax =eCount-1
}
 Text line spacing modes, handles the way lines are spaced, which each other, inside one TextOverlay. More...
 
enum class  HAlign {
  eLeft , eCenter , eRight , eCount ,
  eMin = eLeft , eMax =eCount-1
}
 Horizontal alignments for text overlays. More...
 
enum class  VAlign {
  eTop , eCenter , eBottom , eCount ,
  eMin = eTop , eMax =eCount-1
}
 Vertical alignments for text overlays. More...
 
enum class  BorderPosition {
  eInternal , eMiddle , eExternal , eCount ,
  eMin = eInternal , eMax =eCount-1
}
 Text wrapping modes, handles the way text is cut when it overflows the overlay width. More...
 
using OverlayCacheTraits = PtrCacheTraitsT< Overlay, castor::String >
 
using OverlayCache = castor::ResourceCacheT< Overlay, castor::String, OverlayCacheTraits >
 
using OverlayRes = OverlayCacheTraits::ElementPtrT
 
using OverlayResPtr = OverlayCacheTraits::ElementObsT
 
C3D_API castor::String getName (OverlayType value)
 
C3D_API castor::String getName (TextWrappingMode value)
 
C3D_API castor::String getName (TextTexturingMode value)
 
C3D_API castor::String getName (TextLineSpacingMode value)
 
C3D_API castor::String getName (HAlign value)
 
C3D_API castor::String getName (VAlign value)
 
C3D_API castor::String getName (BorderPosition value)
 
 CU_DeclareCUSmartPtr (castor3d, BorderPanelOverlay, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, DebugOverlays, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, FontTexture, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, Overlay, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OverlayCategory, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OverlayFactory, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OverlayRenderer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, PanelOverlay, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextOverlay, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OverlayCache, C3D_API)
 
 CU_DeclareVector (OverlayRPtr, OverlayPtr)
 
 CU_DeclareMap (castor::String, OverlayResPtr, OverlayPtrStr)
 

Plugin

enum class  PluginType : uint8_t {
  eImporter , eDivider , eGenerator , eToneMapping ,
  ePostEffect , eGeneric , eParticle , eCount ,
  eMin = eImporter , eMax =eCount-1
}
 Plugin types enumeration. More...
 
using PluginCacheTraits = PtrCacheTraitsT< Plugin, castor::String >
 
using PluginCache = castor::ResourceCacheT< Plugin, castor::String, PluginCacheTraits >
 
using PluginRes = PluginCacheTraits::ElementPtrT
 
using PluginResPtr = PluginCacheTraits::ElementObsT
 
 CU_DeclareSmartPtr (Plugin)
 
 CU_DeclareSmartPtr (ImporterPlugin)
 
 CU_DeclareSmartPtr (DividerPlugin)
 
 CU_DeclareSmartPtr (GenericPlugin)
 
 CU_DeclareSmartPtr (PostFxPlugin)
 
 CU_DeclareSmartPtr (ParticlePlugin)
 
 CU_DeclareMap (castor::String, PluginSPtr, PluginStr)
 
 CU_DeclareArray (PluginStrMap, PluginType::eCount, PluginStrMap)
 
 CU_DeclareMap (castor::Path, castor::DynamicLibrarySPtr, DynamicLibraryPtrPath)
 
 CU_DeclareArray (DynamicLibraryPtrPathMap, PluginType::eCount, DynamicLibraryPtrPathMap)
 
 CU_DeclareMap (castor::Path, PluginType, PluginTypePath)
 
 CU_DeclareCUSmartPtr (castor3d, PluginCache, C3D_API)
 

Global Illumination

enum class  GlobalIlluminationType : uint8_t {
  eNone , eRsm , eVoxelConeTracing , eLpv ,
  eLpvG , eLayeredLpv , eLayeredLpvG , eCount ,
  eMin = eNone , eMax =eCount-1
}
 Enumerator of supported global illumination algorithms. More...
 
castor::String getName (GlobalIlluminationType giType)
 

Light Propagation Volumes

enum class  LpvTexture : uint8_t {
  eR , eG , eB , eCount ,
  eMin = eR , eMax =eCount-1
}
 Enumerator of textures used by the light volume GI passes. More...
 
using LayeredLightPropagationVolumes = LayeredLightPropagationVolumesT< false >
 
using LayeredLightPropagationVolumesG = LayeredLightPropagationVolumesT< true >
 
using LightPropagationVolumes = LightPropagationVolumesT< false >
 
using LightPropagationVolumesG = LightPropagationVolumesT< true >
 
using LightPropagationVolumesLightType = std::array< LightPropagationVolumesUPtr, size_t(LightType::eCount) >
 
using LayeredLightPropagationVolumesLightType = std::array< LayeredLightPropagationVolumesUPtr, size_t(LightType::eCount) >
 
using LightPropagationVolumesGLightType = std::array< LightPropagationVolumesGUPtr, size_t(LightType::eCount) >
 
using LayeredLightPropagationVolumesGLightType = std::array< LayeredLightPropagationVolumesGUPtr, size_t(LightType::eCount) >
 
C3D_API castor::String getTextureName (LpvTexture texture, std::string const &infix)
 
C3D_API castor::String getName (LpvTexture texture)
 
C3D_API VkFormat getFormat (LpvTexture texture)
 
C3D_API VkClearValue getClearValue (LpvTexture texture)
 
C3D_API VkImageUsageFlags getUsageFlags (LpvTexture texture)
 
C3D_API VkBorderColor getBorderColor (LpvTexture texture)
 
uint32_t getMipLevels (LpvTexture texture, castor::Size const &size)
 
uint32_t getMipLevels (LpvTexture texture, VkExtent3D const &size)
 
 CU_DeclareCUSmartPtr (castor3d, GeometryInjectionPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LayeredLightPropagationVolumes, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LayeredLightPropagationVolumesG, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightInjectionPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightPropagationPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightPropagationVolumes, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightPropagationVolumesG, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightVolumePassResult, C3D_API)
 
 CU_DeclareArray (LightPropagationPassUPtr, lpv::PropagationPassCount, LightPropagationPass)
 
 CU_DeclareVector (GeometryInjectionPass, GeometryInjectionPass)
 
 CU_DeclareVector (LightInjectionPass, LightInjectionPass)
 
 CU_DeclareVector (LightVolumePassResultUPtr, LightVolumePassResult)
 

Node

enum class  RenderNodeType {
  eFrontStatic , eFrontSkinned , eFrontInstancedStatic , eFrontInstancedSkinned ,
  eFrontMorphing , eFrontBillboard , eBackStatic , eBackSkinned ,
  eBackInstancedStatic , eBackInstancedSkinned , eBackMorphing , eBackBillboard ,
  eCount , eMin = eFrontStatic , eMax =eCount-1
}
 
RenderNodeType getRenderNodeType (ProgramFlags const &flags)
 
 CU_DeclareCUSmartPtr (castor3d, BillboardRenderNode, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SubmeshRenderNode, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, QueueRenderNodes, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SceneRenderNodes, C3D_API)
 

Render

enum class  GlobalBuffersIdx : uint32_t {
  eMatrix , eScene , eObjectsNodeID , eModelsData ,
  eMaterials , eSssProfiles , eTexConfigs , eTexAnims ,
  eBillboardsData , eMorphingData , eSkinningTransformData , eCount ,
  eMin = eMatrix , eMax =eCount-1
}
 The render pass UBOs binding index. More...
 
enum class  FrustumCorner {
  eFarLeftBottom , eFarLeftTop , eFarRightTop , eFarRightBottom ,
  eNearLeftBottom , eNearLeftTop , eNearRightTop , eNearRightBottom ,
  eCount , eMin = eFarLeftBottom , eMax =eCount-1
}
 Frustum corners enumeration. More...
 
enum class  FrustumPlane {
  eNear , eFar , eLeft , eRight ,
  eTop , eBottom , eCount , eMin = eNear ,
  eMax =eCount-1
}
 Frustum planes enumeration. More...
 
enum class  PickNodeType : uint8_t { eNone , eSubmesh , eBillboard }
 The picking node types. More...
 
enum class  TargetType : uint8_t {
  eWindow , eTexture , eCount , eMin = eWindow ,
  eMax =eCount-1
}
 RenderTarget supported types. More...
 
enum class  ViewportType : uint8_t {
  eUndefined , eOrtho , ePerspective , eFrustum ,
  eCount , eMin = eUndefined , eMax =eCount-1
}
 The viewport projection types enumeration. More...
 
enum class  ShaderFlag : uint8_t {
  eNone = 0x00 , eNormal = 0x01 , eTangentSpace = 0x02 | eNormal , eVelocity = 0x04 ,
  eWorldSpace = 0x08 , eViewSpace = 0x10
}
 The render pass shader flags. More...
 
enum class  RenderMode : uint8_t {
  eOpaqueOnly , eTransparentOnly , eBoth , eCount ,
  eMin = eOpaqueOnly , eMax =eCount-1
}
 The render pass modes, regarding transparency. More...
 
using TexturePtr = std::shared_ptr< Texture >
 
using TextureArray = std::vector< TexturePtr >
 
using RenderPassTypeID = uint16_t
 
using ShaderFlags = castor::FlagCombination< ShaderFlag >
 
using RenderWindowPtr = std::unique_ptr< RenderWindow >
 
using RenderQueueArray = std::vector< std::reference_wrapper< RenderQueue > >
 
using ShadowMapRefIds = std::pair< std::reference_wrapper< ShadowMap >, UInt32Array >
 
using ShadowMapRefArray = std::vector< ShadowMapRefIds >
 
using ShadowMapLightTypeArray = std::array< ShadowMapRefArray, size_t(LightType::eCount) >
 
using LightIdArray = std::vector< std::pair< Light *, uint32_t > >
 
using ShadowMapLightIdArray = std::vector< ShadowMapLightIds >
 
using ShadowMapLightArray = std::array< ShadowMapLightIdArray, size_t(LightType::eCount) >
 
castor::String const RenderTypeUndefined = cuT( "Undefined" )
 
C3D_API castor::String getName (FrustumCorner value)
 
C3D_API castor::String getName (FrustumPlane value)
 
C3D_API castor::String getName (PickNodeType value)
 
C3D_API castor::String getName (TargetType value)
 
C3D_API castor::String getName (ViewportType value)
 
C3D_API castor::String getName (RenderMode value)
 
C3D_API TextureFlags merge (TextureFlagsArray const &flags)
 
C3D_API bool operator== (PipelineFlags const &lhs, PipelineFlags const &rhs)
 
 CU_DeclareCUSmartPtr (castor3d, Frustum, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, Picking, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderDevice, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderLoop, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderPipeline, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderQueue, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderSystem, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderTarget, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderWindow, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, Viewport, C3D_API)
 
 CU_DeclareSmartPtr (RenderNodesPass)
 
 CU_DeclareVector (IntermediateView, IntermediateView)
 
C3D_API uint32_t getSafeBandsSize (castor::Size const &size)
 
C3D_API uint32_t getSafeBandSize (castor::Size const &size)
 
C3D_API castor::Size getSafeBandedSize (castor::Size const &size)
 
C3D_API VkExtent3D getSafeBandedExtent3D (castor::Size const &size)
 
C3D_API castor::Angle getSafeBandedFovY (castor::Angle const &fovY, castor::Size const &size)
 
C3D_API float getSafeBandedAspect (float aspect, castor::Size const &size)
 
C3D_API FilteredTextureFlags::const_iterator checkFlags (FilteredTextureFlags const &flags, TextureFlag flag)
 
C3D_API TextureFlagsArray::const_iterator checkFlags (TextureFlagsArray const &flags, TextureFlag flag)
 
C3D_API VkImageMemoryBarrier makeLayoutTransition (VkImage image, VkImageSubresourceRange const &range, VkImageLayout sourceLayout, VkImageLayout destinationLayout, uint32_t srcQueueFamily, uint32_t dstQueueFamily)
 
C3D_API VkImageMemoryBarrier makeLayoutTransition (VkImage image, VkImageSubresourceRange const &range, VkImageLayout srcLayout, VkImageLayout dstLayout, VkAccessFlags srcAccessFlags, uint32_t srcQueueFamily, uint32_t dstQueueFamily)
 
C3D_API VkImageMemoryBarrier makeLayoutTransition (VkImage image, VkImageSubresourceRange const &range, VkImageLayout srcLayout, VkImageLayout dstLayout, VkAccessFlags srcAccessFlags, VkAccessFlags dstAccessMask, uint32_t srcQueueFamily, uint32_t dstQueueFamily)
 
C3D_API FilteredTextureFlags filterTexturesFlags (TextureFlagsArray const &textures, TextureFlags mask)
 Filters the given textures flags using the given mask. More...
 
C3D_API ashes::Image makeImage (ashes::Device const &device, VkImage image, crg::ImageId data)
 
C3D_API ashes::Image makeImage (ashes::Device const &device, Texture const &texture)
 
C3D_API ashes::ImageView makeImageView (ashes::Device const &device, ashes::Image const &image, VkImageView view, crg::ImageViewId data)
 
C3D_API ashes::ImageView makeTargetImageView (ashes::Device const &device, ashes::Image const &image, Texture const &texture)
 
C3D_API ashes::ImageView makeSampledImageView (ashes::Device const &device, ashes::Image const &image, Texture const &texture)
 
C3D_API ashes::ImageView makeWholeImageView (ashes::Device const &device, ashes::Image const &image, Texture const &texture)
 

ShadowMap

enum class  SmTexture : uint8_t {
  eDepth , eNormalLinear , eVariance , ePosition ,
  eFlux , eCount , eMin = eDepth , eMax =eCount-1
}
 Enumerator of textures used in deferred rendering. More...
 
static constexpr uint32_t ShadowMapDirectionalTileCountX = 2u
 
static constexpr uint32_t ShadowMapDirectionalTileCountY = 2u
 
C3D_API castor::String getTextureName (LightType light, SmTexture texture)
 
C3D_API castor::String getName (SmTexture texture)
 
C3D_API VkFormat getFormat (SmTexture texture)
 
C3D_API VkClearValue getClearValue (SmTexture texture)
 
C3D_API VkImageUsageFlags getUsageFlags (SmTexture texture)
 
C3D_API VkBorderColor getBorderColor (SmTexture texture)
 
C3D_API uint32_t getMipLevels (SmTexture texture, castor::Size const &size)
 
uint32_t getMipLevels (SmTexture texture, VkExtent3D const &size)
 
 CU_DeclareCUSmartPtr (castor3d, ShadowMap, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ShadowMapPass, C3D_API)
 
C3D_API void bindShadowMaps (crg::RunnableGraph &graph, SceneFlags const &sceneFlags, ShadowMapLightTypeArray const &shadowMaps, ashes::WriteDescriptorSetArray &writes, uint32_t &index)
 Writes the shadow maps descriptors to the given writes. More...
 

Lighting

enum class  LightPassIdx : uint32_t {
  eMaterials , eSssProfiles , eModels , eGpInfo ,
  eScene , eData0 , eData1 , eData2 ,
  eData3 , eData4 , eData5
}
 The lighting passes common bindings index. More...
 
enum class  LightPassLgtIdx : uint32_t {
  eLight , eMatrix , eModelMatrix , eSmNormalLinear ,
  eSmVariance
}
 The lighting passes light specific bindings index. More...
 
enum class  LpTexture : uint8_t {
  eDepth , eDiffuse , eSpecular , eIndirectDiffuse ,
  eIndirectSpecular , eCount , eMin = eDepth , eMax =eCount-1
}
 Enumerator of textures used by the lighting pass in deferred rendering. More...
 
castor::String getTextureName (LpTexture texture)
 
castor::String getName (LpTexture texture)
 
VkFormat getFormat (LpTexture texture)
 
VkClearValue getClearValue (LpTexture texture)
 
VkImageUsageFlags getUsageFlags (LpTexture texture)
 
VkBorderColor getBorderColor (LpTexture texture)
 
uint32_t getMipLevels (LpTexture texture, castor::Size const &size)
 
uint32_t getMipLevels (LpTexture texture, VkExtent3D const &size)
 
float getMaxDistance (LightCategory const &light, castor::Point3f const &attenuation)
 Retrieve the maximum litten distance for given light and attenuation. More...
 
float getMaxDistance (LightCategory const &light, castor::Point3f const &attenuation, float max)
 Retrieve the maximum litten distance for given light and attenuation. More...
 
 CU_DeclareCUSmartPtr (castor3d, SubsurfaceScatteringPass, C3D_API)
 

Opaque

enum class  DsTexture : uint8_t {
  eData0 , eData1 , eData2 , eData3 ,
  eData4 , eData5 , eCount , eMin = eData0 ,
  eMax =eCount-1
}
 Enumerator of textures used by the deferred renderer's GBUffer. More...
 
C3D_API castor::String getTextureName (DsTexture texture)
 
C3D_API castor::String getName (DsTexture texture)
 
C3D_API VkFormat getFormat (DsTexture texture)
 
C3D_API VkClearValue getClearValue (DsTexture texture)
 
C3D_API VkImageUsageFlags getUsageFlags (DsTexture texture)
 
C3D_API VkBorderColor getBorderColor (DsTexture texture)
 
uint32_t getMipLevels (DsTexture texture, castor::Size const &size)
 
 CU_DeclareCUSmartPtr (castor3d, DeferredRendering, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, IndirectLightingPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, LightingPass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OpaqueResolvePass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, OpaquePassResult, C3D_API)
 

Technique

enum class  TechniquePassEvent {
  eBeforeDepth , eBeforeBackground , eBeforeOpaque , eBeforeTransparent ,
  eBeforePostEffects , eCount , eMin = eBeforeDepth , eMax =eCount-1
}
 
using TechniquePassVector = std::vector< RenderTechniquePass * >
 
using TechniquePasses = std::array< TechniquePassVector, size_t(TechniquePassEvent::eCount) >
 
void bindTexture (ashes::ImageView const &view, ashes::Sampler const &sampler, ashes::WriteDescriptorSetArray &writes, uint32_t &index)
 Writes the image view and sampler descriptor to the given writes. More...
 
void bindTexture (crg::RunnableGraph &graph, crg::ImageViewId const &view, VkSampler const &sampler, ashes::WriteDescriptorSetArray &writes, uint32_t &index)
 
 CU_DeclareCUSmartPtr (castor3d, RenderTechnique, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, RenderTechniquePass, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SsaoPass, C3D_API)
 

Transparent

enum class  WbTexture : uint8_t {
  eDepth , eAccumulation , eRevealage , eVelocity ,
  eCount , eMin = eDepth , eMax =eCount-1
}
 Enumerator of textures used in weighted blend OIT. More...
 
C3D_API castor::String getTextureName (WbTexture texture)
 
C3D_API castor::String getName (WbTexture texture)
 
C3D_API VkFormat getFormat (WbTexture texture)
 
C3D_API VkClearValue getClearValue (WbTexture texture)
 
C3D_API VkImageUsageFlags getUsageFlags (WbTexture texture)
 
C3D_API VkBorderColor getBorderColor (WbTexture texture)
 
uint32_t getMipLevels (WbTexture texture, castor::Size const &size)
 
uint32_t getMipLevels (WbTexture texture, VkExtent3D const &size)
 
 CU_DeclareCUSmartPtr (castor3d, WeightedBlendRendering, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TransparentPassResult, C3D_API)
 

Background

enum class  BackgroundType {
  eColour , eImage , eSkybox , eCount ,
  eMin = eColour , eMax =eCount-1
}
 Scene background types enumeration. More...
 
using BackgroundChangedFunc = std::function< void(SceneBackground const &) >
 
using OnBackgroundChanged = castor::SignalT< BackgroundChangedFunc >
 
using OnBackgroundChangedConnection = OnBackgroundChanged::connection
 
C3D_API castor::String getName (BackgroundType value)
 
 CU_DeclareSmartPtr (SceneBackground)
 

Light

enum class  LightType : uint8_t {
  eDirectional , ePoint , eSpot , eCount ,
  eMin = eDirectional , eMax =eCount-1
}
 Light types enumeration. More...
 
using LightCacheTraits = ObjectCacheTraitsT< Light, castor::String >
 
using LightsMap = std::array< LightsArray, size_t(LightType::eCount) >
 Array of lights per light type. More...
 
using OnLightChangedFunction = std::function< void(Light &) >
 
using OnLightChanged = castor::SignalT< OnLightChangedFunction >
 
using OnLightChangedConnection = OnLightChanged::connection
 
using LightCache = ObjectCacheT< Light, castor::String, LightCacheTraits >
 
using LightRes = CameraCacheTraits::ElementPtrT
 
using LightResPtr = CameraCacheTraits::ElementObsT
 
C3D_API castor::String getName (LightType value)
 
 CU_DeclareSmartPtr (Light)
 
 CU_DeclareSmartPtr (LightFactory)
 
 CU_DeclareSmartPtr (LightCategory)
 
 CU_DeclareSmartPtr (DirectionalLight)
 
 CU_DeclareSmartPtr (PointLight)
 
 CU_DeclareSmartPtr (SpotLight)
 
 CU_DeclareVector (LightSPtr, LightPtr)
 Array of lights. More...
 
 CU_DeclareVector (LightRPtr, Lights)
 Array of lights. More...
 
 CU_DeclareVector (LightRPtr, LightsRef)
 Array to non owning light pointers. More...
 
 CU_DeclareMap (castor::String, LightSPtr, LightPtrStr)
 Map of lights, sorted by name. More...
 
 CU_DeclareMap (int, LightSPtr, LightPtrInt)
 Map of lights, sorted by index. More...
 
 CU_DeclareCUSmartPtr (castor3d, LightCache, C3D_API)
 

Particle

enum class  ElementUsage : uint32_t {
  eUnknown = 0x000 , ePosition = 0x001 , eNormal = 0x002 , eTangent = 0x004 ,
  eBitangent = 0x008 , eDiffuse = 0x010 , eTexCoords = 0x020 , eBoneIds0 = 0x040 ,
  eBoneIds1 = 0x080 , eBoneWeights0 = 0x100 , eBoneWeights1 = 0x200 , eTransform = 0x400 ,
  eMatIndex = 0x800
}
 Element usage enumeration. More...
 
enum class  ParticleFormat {
  eInt , eVec2i , eVec3i , eVec4i ,
  eUInt , eVec2ui , eVec3ui , eVec4ui ,
  eFloat , eVec2f , eVec3f , eVec4f ,
  eMat2f , eMat3f , eMat4f , eCount ,
  eMin = eInt , eMax =eCount-1
}
 
using ElementUsages = castor::FlagCombination< ElementUsage >
 
using ParticleFactory = castor::Factory< CpuParticleSystem, castor::String, castor::UniquePtr< CpuParticleSystem >, std::function< castor::UniquePtr< CpuParticleSystem >(ParticleSystem &) > >
 Particle system factory. More...
 
using ParticleValues = ParametersT< size_t >
 
using ParticleSystemCacheTraits = ObjectCacheTraitsT< ParticleSystem, castor::String >
 
using ParticleSystemCache = ObjectCacheT< ParticleSystem, castor::String, ParticleSystemCacheTraits >
 
using ParticleSystemRes = CameraCacheTraits::ElementPtrT
 
using ParticleSystemResPtr = CameraCacheTraits::ElementObsT
 
C3D_API castor::String getName (ElementUsage value)
 
C3D_API castor::String getName (ParticleFormat value)
 
 CU_DeclareCUSmartPtr (castor3d, ComputeParticleSystem, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, CpuParticleSystem, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleElementDeclaration, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleEmitter, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleSystem, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleSystemImpl, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleUpdater, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleFactory, C3D_API)
 
 CU_DeclareVector (Particle, Particle)
 
 CU_DeclareVector (ParticleEmitterUPtr, ParticleEmitter)
 
 CU_DeclareVector (ParticleUpdaterUPtr, ParticleUpdater)
 
 CU_DeclareCUSmartPtr (castor3d, ParticleSystemCache, C3D_API)
 

Scene

enum class  MovableType : uint8_t {
  eCamera , eGeometry , eLight , eBillboard ,
  eParticleEmitter , eCount , eMin = eCamera , eMax =eCount-1
}
 Movable object types enumerator. More...
 
enum class  ShadowType {
  eNone , eRaw , ePCF , eVariance ,
  eCount , eMin = eNone , eMax =eCount-1
}
 Shadow filter types enumeration. More...
 
enum class  FogType {
  eDisabled , eLinear , eExponential , eSquaredExponential ,
  eCount , eMin = eDisabled , eMax =eCount-1
}
 Fog types enumeration. More...
 
enum class  SceneFlag : uint16_t {
  eNone = 0x0000 , eFogLinear = 0x0001 << 0 , eFogExponential = 0x0001 << 1 , eFogSquaredExponential = 0x0001 << 2 ,
  eShadowBegin = 0x0001 << 3 , eShadowDirectional = eShadowBegin << 0 , eShadowPoint = eShadowBegin << 1 , eShadowSpot = eShadowBegin << 2 ,
  eShadowEnd = eShadowSpot , eShadowAny = eShadowSpot | eShadowPoint | eShadowDirectional , eLpvGI = 0x0001 << 6 , eLayeredLpvGI = 0x0001 << 7 ,
  eVoxelConeTracing = 0x0001 << 8 , eAll = 0x01FF
}
 Scene flags enumeration. More...
 
enum class  BillboardType {
  eSpherical , eCylindrical , eCount , eMin = eSpherical ,
  eMax =eCount-1
}
 Billboard rendering types enumeration. More...
 
enum class  BillboardSize {
  eDynamic , eFixed , eCount , eMin = eDynamic ,
  eMax =eCount-1
}
 Billboard sizing types enumeration. More...
 
using GeometryCacheTraits = ObjectCacheTraitsT< Geometry, castor::String >
 
using SceneFlags = castor::FlagCombination< SceneFlag >
 
using OnSceneChangedFunction = std::function< void(Scene const &) >
 
using OnSceneChanged = castor::SignalT< OnSceneChangedFunction >
 
using OnSceneChangedConnection = OnSceneChanged::connection
 
using OnSceneUpdateFunction = std::function< void(Scene const &) >
 
using OnSceneUpdate = castor::SignalT< OnSceneUpdateFunction >
 
using OnSceneUpdateConnection = OnSceneUpdate::connection
 
using OnCameraChangedFunction = std::function< void(Camera const &) >
 
using OnCameraChanged = castor::SignalT< OnCameraChangedFunction >
 
using OnCameraChangedConnection = OnCameraChanged::connection
 
using OnSceneNodeChangedFunction = std::function< void(SceneNode const &) >
 
using OnSceneNodeChanged = castor::SignalT< OnSceneNodeChangedFunction >
 
using OnSceneNodeChangedConnection = OnSceneNodeChanged::connection
 
using SubmeshMaterialMap = std::map< Submesh const *, MaterialRPtr >
 
using OnSubmeshMaterialChangedFunction = std::function< void(Geometry &, Submesh const &, MaterialRPtr oldMaterial, MaterialRPtr newMaterial) >
 
using OnSubmeshMaterialChanged = castor::SignalT< OnSubmeshMaterialChangedFunction >
 
using OnSubmeshMaterialChangedConnection = OnSubmeshMaterialChanged::connection
 
using OnBillboardMaterialChangedFunction = std::function< void(BillboardBase &, MaterialRPtr oldMaterial, MaterialRPtr newMaterial) >
 
using OnBillboardMaterialChanged = castor::SignalT< OnBillboardMaterialChangedFunction >
 
using OnBillboardMaterialChangedConnection = OnBillboardMaterialChanged::connection
 
using SceneCacheTraits = PtrCacheTraitsT< Scene, castor::String >
 
using BillboardListCacheTraits = ObjectCacheTraitsT< BillboardList, castor::String >
 
using CameraCacheTraits = ObjectCacheTraitsT< Camera, castor::String >
 
using SceneNodeCacheTraits = ObjectCacheTraitsT< SceneNode, castor::String >
 
using SceneCache = castor::ResourceCacheT< Scene, castor::String, SceneCacheTraits >
 
using BillboardListCache = ObjectCacheT< BillboardList, castor::String, BillboardListCacheTraits >
 
using CameraCache = ObjectCacheT< Camera, castor::String, CameraCacheTraits >
 
using GeometryCache = ObjectCacheT< Geometry, castor::String, GeometryCacheTraits >
 
using SceneNodeCache = ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >
 
using SceneRes = SceneCacheTraits::ElementPtrT
 
using SceneResPtr = SceneCacheTraits::ElementObsT
 
using BillboardListRes = BillboardListCacheTraits::ElementPtrT
 
using BillboardListResPtr = BillboardListCacheTraits::ElementObsT
 
using CameraRes = CameraCacheTraits::ElementPtrT
 
using CameraResPtr = CameraCacheTraits::ElementObsT
 
using GeometryRes = CameraCacheTraits::ElementPtrT
 
using GeometryResPtr = CameraCacheTraits::ElementObsT
 
using SceneNodeRes = CameraCacheTraits::ElementPtrT
 
using SceneNodeResPtr = CameraCacheTraits::ElementObsT
 
C3D_API castor::String getName (MovableType value)
 
C3D_API castor::String getName (ShadowType value)
 
C3D_API castor::String getName (FogType value)
 
C3D_API FogType getFogType (SceneFlags const &flags)
 Gives the fog type matching the given flags. More...
 
C3D_API castor::String getName (BillboardType value)
 
C3D_API castor::String getName (BillboardSize value)
 
 CU_DeclareSmartPtr (BillboardBase)
 
 CU_DeclareSmartPtr (BillboardList)
 
 CU_DeclareSmartPtr (Camera)
 
 CU_DeclareSmartPtr (Geometry)
 
 CU_DeclareSmartPtr (MovableObject)
 
 CU_DeclareCUSmartPtr (castor3d, Scene, C3D_API)
 
 CU_DeclareSmartPtr (SceneFileContext)
 
 CU_DeclareSmartPtr (SceneFileParser)
 
 CU_DeclareSmartPtr (SceneImporter)
 
 CU_DeclareSmartPtr (SceneNode)
 
 CU_DeclareVector (CameraSPtr, CameraPtr)
 Camera pointer array. More...
 
 CU_DeclareVector (GeometrySPtr, GeometryPtr)
 Geometry pointer array. More...
 
 CU_DeclareVector (SceneNodeSPtr, SceneNodePtr)
 SceneNode pointer array. More...
 
 CU_DeclareVector (BillboardListSPtr, BillboardList)
 BillboardList pointer array. More...
 
 CU_DeclareMap (castor::String, CameraSPtr, CameraPtrStr)
 Camera pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, MovableObjectSPtr, MovableObjectPtrStr)
 MovableObject pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, GeometrySPtr, GeometryPtrStr)
 Geometry pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, SceneRPtr, ScenePtrStr)
 Scene pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, SceneNodeSPtr, SceneNodePtrStr)
 SceneNode pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, BillboardListSPtr, BillboardListStr)
 BillboardList pointer map, sorted by name. More...
 
C3D_API castor::LoggerInstance & getLogger (Scene const &scene)
 
C3D_API EnginegetEngine (Scene const &scene)
 
 CU_DeclareCUSmartPtr (castor3d, SceneCache, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, GeometryCache, C3D_API)
 

Shader

enum class  ProgramFlag : uint32_t {
  eNone = 0x0000 , eInstantiation = 0x0001 , eSkinning = 0x0002 , eBillboards = 0x0004 ,
  eMorphing = 0x0008 , ePicking = 0x0010 , eLighting = 0x0020 , eSpherical = 0x0040 ,
  eFixedSize = 0x0080 , eInstanceMult = 0x0100 , eShadowMapDirectional = 0x0200 , eShadowMapSpot = 0x0400 ,
  eShadowMapPoint = 0x0800 , eEnvironmentMapping = 0x1000 , eDepthPass = 0x2000 , eInvertNormals = 0x4000 ,
  eHasGeometry = 0x8000 , eHasTessellation = 0x10000 , eConservativeRasterization = 0x20000 , eSecondaryUV = 0x40000 ,
  eForceTexCoords = 0x80000 , eAll = 0xFFFFF
}
 Flags to use when looking for an automatically generated program. More...
 
using ShaderPtr = std::unique_ptr< ast::Shader >
 
using ProgramFlags = castor::FlagCombination< ProgramFlag >
 
C3D_API bool isShadowMapProgram (ProgramFlags const &flags)
 Tells if the given flags contain a shadow map flag. More...
 
 CU_DeclareCUSmartPtr (castor3d, ShaderBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ShaderProgram, C3D_API)
 

Buffer

using GpuBufferBuddyAllocator = castor::BuddyAllocatorT< GpuBufferBuddyAllocatorTraits >
 
using GpuBufferBuddyAllocatorUPtr = std::unique_ptr< GpuBufferBuddyAllocator >
 
using GpuBuddyBuffer = GpuBufferT< GpuBufferBuddyAllocator >
 
using GpuLinearBuffer = GpuBufferT< GpuBufferLinearAllocator >
 
using GpuPackedBuffer = GpuBufferT< GpuBufferPackedAllocator >
 
 CU_DeclareCUSmartPtr (castor3d, GpuBufferPool, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ObjectBufferPool, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SkinnedObjectBufferPool, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, PoolUniformBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, UniformBufferBase, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, UniformBufferPool, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, VertexBufferPool, C3D_API)
 
 CU_DeclareTemplateSmartPtr (UniformBuffer)
 
bool operator< (MemChunk const &lhs, MemChunk const &rhs)
 
C3D_API void copyBuffer (ashes::CommandBuffer const &commandBuffer, ashes::BufferBase const &src, ashes::BufferBase const &dst, VkDeviceSize offset, VkDeviceSize size, VkPipelineStageFlags flags)
 
C3D_API void copyBuffer (ashes::CommandBuffer const &commandBuffer, ashes::BufferBase const &src, ashes::BufferBase const &dst, std::vector< VkBufferCopy > const &regions, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags)
 
C3D_API void updateBuffer (ashes::CommandBuffer const &commandBuffer, castor::ByteArray data, ashes::BufferBase const &dst, std::vector< VkBufferCopy > const &regions, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags)
 

Cache

template<typename ObjT , typename KeyT >
using ObjectPtrT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementPtrT
 
template<typename ObjT , typename KeyT >
using ObjectObsT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementObsT
 
template<typename ObjT , typename KeyT >
using ObjectContT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementContT
 
template<typename ObjT , typename KeyT >
using ObjectInitialiserT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementInitialiserT
 
template<typename ObjT , typename KeyT >
using ObjectCleanerT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementCleanerT
 
template<typename ObjT , typename KeyT >
using ObjectMergerT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementMergerT
 
template<typename ObjT , typename KeyT >
using ObjectAttacherT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementAttacherT
 
template<typename ObjT , typename KeyT >
using ObjectDetacherT = typename ObjectCacheTraitsT< ObjT, KeyT >::ElementDetacherT
 
template<typename ObjT , typename KeyT , typename TraitsT >
using ObjectCachePtrT = std::shared_ptr< ObjectCacheT< ObjT, KeyT, TraitsT > >
 
template<typename CacheT , EventType EventT>
using CacheViewPtrT = std::shared_ptr< CacheViewT< CacheT, EventT > >
 
 CU_DeclareCUSmartPtr (castor3d, RenderTargetCache, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, ShaderProgramCache, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureUnitCache, C3D_API)
 

Mesh

using MeshSubdividerFactory = castor::Factory< MeshSubdivider, castor::String, std::unique_ptr< MeshSubdivider > >
 The subdivider factory. More...
 
using MeshCacheTraits = ResourceCacheTraitsT< Mesh, castor::String >
 
using MeshCache = castor::ResourceCacheT< Mesh, castor::String, MeshCacheTraits >
 
using MeshRes = MeshCacheTraits::ElementPtrT
 
using MeshResPtr = MeshCacheTraits::ElementObsT
 
 CU_DeclareSmartPtr (Mesh)
 
 CU_DeclareSmartPtr (MeshGenerator)
 
 CU_DeclareSmartPtr (MeshImporter)
 
 CU_DeclareSmartPtr (MeshSubdivider)
 
 CU_DeclareCUSmartPtr (castor3d, MeshFactory, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, MeshImporterFactory, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, MeshSubdividerFactory, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, MeshCache, C3D_API)
 
 CU_DeclareMap (castor::String, MeshResPtr, MeshPtrStr)
 Mesh pointer array. More...
 
 CU_DeclareSmartPtr (MeshAnimationInstance)
 
 CU_DeclareMap (uint32_t, MeshAnimationInstanceSubmesh, MeshAnimationInstanceSubmesh)
 MeshAnimationInstanceSubmesh map, sorted by submesh ID. More...
 

Submesh

using SubmeshBoundingBoxList = std::vector< std::pair< Submesh const *, castor::BoundingBox > >
 
 CU_DeclareSmartPtr (Submesh)
 
 CU_DeclareVector (SubmeshSPtr, SubmeshPtr)
 Submesh pointer array. More...
 
 CU_DeclareMap (castor::String, SubmeshSPtr, SubmeshPtrStr)
 
 CU_DeclareMap (Submesh const *, castor::BoundingBox, SubmeshBoundingBox)
 
 CU_DeclareMap (Submesh const *, castor::BoundingSphere, SubmeshBoundingSphere)
 
 CU_DeclareMap (uint32_t, SubmeshAnimationBuffer, SubmeshAnimationBuffer)
 

Model

using InterleavedVertexArray = std::vector< InterleavedVertex >
 
 CU_DeclareVector (SubmeshVertex, SubmeshVertex)
 SubmeshVertex array. More...
 

Culling

using SceneCullerSignalFunction = std::function< void(SceneCuller const &) >
 
using SceneCullerSignal = castor::SignalT< SceneCullerSignalFunction >
 
using SceneCullerSignalConnection = castor::ConnectionT< SceneCullerSignal >
 
 CU_DeclareSmartPtr (SceneCuller)
 

PostEffect

using PostEffectFactory = castor::Factory< PostEffect, castor::String, std::shared_ptr< PostEffect >, std::function< std::shared_ptr< PostEffect >(RenderTarget &, RenderSystem &, Parameters const &) > >
 Post effect factory. More...
 
 CU_DeclareSmartPtr (PostEffect)
 
 CU_DeclareVector (PostEffectSPtr, PostEffectPtr)
 

ToneMapping

using ToneMappingFactory = castor::Factory< ToneMapping, castor::String, castor3d::ShaderPtr, std::function< castor3d::ShaderPtr() > >
 Tone mapping factory. More...
 
 CU_DeclareSmartPtr (ToneMapping)
 

SceneNode

using GroupAnimationMap = std::map< castor::String, GroupAnimation >
 
using Animable = AnimableT< Engine >
 
using Animation = AnimationT< Engine >
 
using OnAnimatedSkeletonChangeFunction = std::function< void(AnimatedObjectGroup const &, AnimatedSkeleton &) >
 
using OnAnimatedSkeletonChange = castor::SignalT< OnAnimatedSkeletonChangeFunction >
 
using OnAnimatedSkeletonChangeConnection = OnAnimatedSkeletonChange::connection
 
using OnAnimatedMeshChangeFunction = std::function< void(AnimatedObjectGroup const &, AnimatedMesh &) >
 
using OnAnimatedMeshChange = castor::SignalT< OnAnimatedMeshChangeFunction >
 
using OnAnimatedMeshChangeConnection = OnAnimatedMeshChange::connection
 
using OnAnimatedTextureChangeFunction = std::function< void(AnimatedObjectGroup const &, AnimatedTexture &) >
 
using OnAnimatedTextureChange = castor::SignalT< OnAnimatedTextureChangeFunction >
 
using OnAnimatedTextureChangeConnection = OnAnimatedTextureChange::connection
 
using OnAnimatedSceneNodeChangeFunction = std::function< void(AnimatedObjectGroup const &, AnimatedSceneNode &) >
 
using OnAnimatedSceneNodeChange = castor::SignalT< OnAnimatedSceneNodeChangeFunction >
 
using OnAnimatedSceneNodeChangeConnection = OnAnimatedSceneNodeChange::connection
 
using AnimatedObjectGroupCacheTraits = PtrCacheTraitsT< AnimatedObjectGroup, castor::String >
 
using AnimatedObjectGroupCache = castor::ResourceCacheT< AnimatedObjectGroup, castor::String, AnimatedObjectGroupCacheTraits >
 
using AnimatedObjectGroupRes = AnimatedObjectGroupCacheTraits::ElementPtrT
 
using AnimatedObjectGroupResPtr = AnimatedObjectGroupCacheTraits::ElementObsT
 
 CU_DeclareSmartPtr (SceneNodeAnimation)
 
 CU_DeclareSmartPtr (SceneNodeAnimationKeyFrame)
 
 CU_DeclareSmartPtr (Animable)
 
 CU_DeclareSmartPtr (AnimatedObjectGroup)
 
 CU_DeclareSmartPtr (AnimatedMesh)
 
 CU_DeclareSmartPtr (AnimatedObject)
 
 CU_DeclareSmartPtr (AnimatedSceneNode)
 
 CU_DeclareSmartPtr (AnimatedSkeleton)
 
 CU_DeclareSmartPtr (AnimatedTexture)
 
 CU_DeclareSmartPtr (Animation)
 
 CU_DeclareSmartPtr (AnimationInstance)
 
 CU_DeclareMap (castor::String, AnimatedObjectGroupSPtr, AnimatedObjectGroupPtrStr)
 AnimatedObjectGroup pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, AnimatedObjectSPtr, AnimatedObjectPtrStr)
 AnimatedObject pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, AnimationInstanceUPtr, AnimationInstancePtrStr)
 Animation pointer map, sorted by name. More...
 
 CU_DeclareMap (castor::String, AnimationSPtr, AnimationPtrStr)
 Animation pointer map, sorted by name. More...
 
 CU_DeclareCUSmartPtr (castor3d, AnimatedObjectGroupCache, C3D_API)
 
 CU_DeclareSmartPtr (SceneNodeAnimationInstance)
 

Buffers

using GpuDataBufferOffsetPtr = std::unique_ptr< GpuDataBufferOffset >
 
using GpuDataBufferOffsetModifyFunc = std::function< void(GpuDataBufferOffset const &) >
 
using GpuDataBufferOffsetModifySignal = castor::SignalT< GpuDataBufferOffsetModifyFunc >
 
using GpuDataBufferOffsetModifyConnection = castor::ConnectionT< GpuDataBufferOffsetModifySignal >
 
 CU_DeclareCUSmartPtr (castor3d, LightBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, PassBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, SssProfileBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureConfigurationBuffer, C3D_API)
 
 CU_DeclareCUSmartPtr (castor3d, TextureAnimationBuffer, C3D_API)
 

Typedef Documentation

◆ Animable

using castor3d::Animable = typedef AnimableT< Engine >

◆ AnimatedObjectGroupCache

using castor3d::AnimatedObjectGroupCache = typedef castor::ResourceCacheT< AnimatedObjectGroup , castor::String , AnimatedObjectGroupCacheTraits >

◆ AnimatedObjectGroupCacheTraits

◆ AnimatedObjectGroupRes

◆ AnimatedObjectGroupResPtr

◆ Animation

◆ BackgroundChangedFunc

using castor3d::BackgroundChangedFunc = typedef std::function< void( SceneBackground const & ) >

◆ BillboardCacheTraits

◆ BillboardListCache

◆ BillboardListCacheTraits

◆ BillboardListRes

◆ BillboardListResPtr

◆ BillboardRenderNodePtrArray

◆ BillboardRenderNodePtrByPipelineMap

◆ CacheViewPtrT

template<typename CacheT , EventType EventT>
using castor3d::CacheViewPtrT = typedef std::shared_ptr< CacheViewT< CacheT, EventT > >

◆ CacheViewTraitsT

template<typename CacheT >
using castor3d::CacheViewTraitsT = typedef typename CacheT::ElementCacheTraitsT

◆ CameraCache

using castor3d::CameraCache = typedef ObjectCacheT< Camera , castor::String , CameraCacheTraits >

◆ CameraCacheTraits

using castor3d::CameraCacheTraits = typedef ObjectCacheTraitsT< Camera, castor::String >

◆ CameraRes

◆ CameraResPtr

◆ DebugCallbacksPtr

using castor3d::DebugCallbacksPtr = typedef std::unique_ptr< DebugCallbacks >

◆ ElementUsages

using castor3d::ElementUsages = typedef castor::FlagCombination< ElementUsage >

◆ FeatureArray

using castor3d::FeatureArray = typedef std::vector< ExtensionStruct >

◆ FilteredTextureFlags

using castor3d::FilteredTextureFlags = typedef std::map< uint32_t, TextureFlagsId >

◆ FrameListenerCache

using castor3d::FrameListenerCache = typedef castor::ResourceCacheT< FrameListener , castor::String , FrameListenerCacheTraits >

◆ FrameListenerCacheTraits

◆ FrameListenerRes

◆ FrameListenerResPtr

◆ GeometryCache

using castor3d::GeometryCache = typedef ObjectCacheT< Geometry , castor::String , GeometryCacheTraits >

◆ GeometryCacheTraits

◆ GeometryRes

◆ GeometryResPtr

◆ GpuBuddyBuffer

◆ GpuBufferBuddyAllocator

using castor3d::GpuBufferBuddyAllocator = typedef castor::BuddyAllocatorT< GpuBufferBuddyAllocatorTraits >

◆ GpuBufferBuddyAllocatorUPtr

◆ GpuDataBufferOffsetModifyConnection

◆ GpuDataBufferOffsetModifyFunc

using castor3d::GpuDataBufferOffsetModifyFunc = typedef std::function< void( GpuDataBufferOffset const & ) >

◆ GpuDataBufferOffsetModifySignal

◆ GpuDataBufferOffsetPtr

using castor3d::GpuDataBufferOffsetPtr = typedef std::unique_ptr< GpuDataBufferOffset >

◆ GpuFeatures

using castor3d::GpuFeatures = typedef castor::FlagCombination< GpuFeature >

◆ GpuLinearBuffer

◆ GpuPackedBuffer

◆ GroupAnimationMap

using castor3d::GroupAnimationMap = typedef std::map< castor::String, GroupAnimation >

◆ InterleavedVertexArray

using castor3d::InterleavedVertexArray = typedef std::vector< InterleavedVertex >

◆ LayeredLightPropagationVolumes

◆ LayeredLightPropagationVolumesG

◆ LayeredLightPropagationVolumesGLightType

using castor3d::LayeredLightPropagationVolumesGLightType = typedef std::array< LayeredLightPropagationVolumesGUPtr, size_t( LightType::eCount ) >

◆ LayeredLightPropagationVolumesLightType

using castor3d::LayeredLightPropagationVolumesLightType = typedef std::array< LayeredLightPropagationVolumesUPtr, size_t( LightType::eCount ) >

◆ LightCache

using castor3d::LightCache = typedef ObjectCacheT< Light , castor::String , LightCacheTraits >

◆ LightCacheTraits

◆ LightIdArray

using castor3d::LightIdArray = typedef std::vector< std::pair< Light *, uint32_t > >

◆ LightPropagationVolumes

◆ LightPropagationVolumesG

◆ LightPropagationVolumesGLightType

using castor3d::LightPropagationVolumesGLightType = typedef std::array< LightPropagationVolumesGUPtr, size_t( LightType::eCount ) >

◆ LightPropagationVolumesLightType

using castor3d::LightPropagationVolumesLightType = typedef std::array< LightPropagationVolumesUPtr, size_t( LightType::eCount ) >

◆ LightRes

◆ LightResPtr

◆ LightsMap

using castor3d::LightsMap = typedef std::array< LightsArray, size_t( LightType::eCount ) >

Array of lights per light type.

◆ LightsPipelinePtr

using castor3d::LightsPipelinePtr = typedef std::unique_ptr< LightsPipeline >

◆ LineArray

using castor3d::LineArray = typedef std::vector< Line >

An array of Lines.

◆ MaterialCache

using castor3d::MaterialCache = typedef castor::ResourceCacheT< Material , castor::String , MaterialCacheTraits >

◆ MaterialCacheTraits

using castor3d::MaterialCacheTraits = typedef ResourceCacheTraitsT< Material, castor::String >

◆ MaterialRes

◆ MaterialResPtr

using castor3d::MaterialResPtr = typedef MaterialCacheTraits::ElementObsT

◆ MeshCache

using castor3d::MeshCache = typedef castor::ResourceCacheT< Mesh , castor::String , MeshCacheTraits >

◆ MeshCacheTraits

using castor3d::MeshCacheTraits = typedef ResourceCacheTraitsT< Mesh, castor::String >

◆ MeshRes

◆ MeshResPtr

using castor3d::MeshResPtr = typedef MeshCacheTraits::ElementObsT

◆ MeshSubdividerFactory

using castor3d::MeshSubdividerFactory = typedef castor::Factory< MeshSubdivider, castor::String, std::unique_ptr< MeshSubdivider > >

The subdivider factory.

◆ NodeObjectT

template<typename NodeT >
using castor3d::NodeObjectT = typedef typename RenderNodeTraitsT< NodeT >::Object

◆ NodePtrArrayT

template<typename NodeT >
using castor3d::NodePtrArrayT = typedef std::vector< NodeT const * >

◆ NodePtrByBufferMapT

template<typename NodeT >
using castor3d::NodePtrByBufferMapT = typedef std::map< ashes::BufferBase const *, NodePtrArrayT< NodeT > >

◆ NodePtrByPipelineMapT

template<typename NodeT >
using castor3d::NodePtrByPipelineMapT = typedef std::map< uint64_t, std::pair< RenderPipeline *, NodePtrByBufferMapT< NodeT > > >

◆ ObjectAttacherT

template<typename ObjT , typename KeyT >
using castor3d::ObjectAttacherT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementAttacherT

◆ ObjectCachePtrT

template<typename ObjT , typename KeyT , typename TraitsT >
using castor3d::ObjectCachePtrT = typedef std::shared_ptr< ObjectCacheT< ObjT, KeyT, TraitsT > >

◆ ObjectCleanerT

template<typename ObjT , typename KeyT >
using castor3d::ObjectCleanerT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementCleanerT

◆ ObjectContT

template<typename ObjT , typename KeyT >
using castor3d::ObjectContT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementContT

◆ ObjectDetacherT

template<typename ObjT , typename KeyT >
using castor3d::ObjectDetacherT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementDetacherT

◆ ObjectInitialiserT

template<typename ObjT , typename KeyT >
using castor3d::ObjectInitialiserT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementInitialiserT

◆ ObjectMergerT

template<typename ObjT , typename KeyT >
using castor3d::ObjectMergerT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementMergerT

◆ ObjectNodesPtrByBufferMapT

template<typename NodeT >
using castor3d::ObjectNodesPtrByBufferMapT = typedef std::map< ashes::BufferBase const *, ObjectNodesPtrByPassT< NodeT > >

◆ ObjectNodesPtrByPassT

template<typename NodeT >
using castor3d::ObjectNodesPtrByPassT = typedef std::map< PassRPtr, ObjectNodesPtrMapT< NodeT > >

◆ ObjectNodesPtrByPipelineMapT

template<typename NodeT >
using castor3d::ObjectNodesPtrByPipelineMapT = typedef std::map< uint64_t, std::pair< RenderPipeline *, ObjectNodesPtrByBufferMapT< NodeT > > >

◆ ObjectNodesPtrMapT

template<typename NodeT >
using castor3d::ObjectNodesPtrMapT = typedef std::map< NodeObjectT< NodeT > *, NodePtrArrayT< NodeT > >

◆ ObjectObsT

template<typename ObjT , typename KeyT >
using castor3d::ObjectObsT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementObsT

◆ ObjectPtrT

template<typename ObjT , typename KeyT >
using castor3d::ObjectPtrT = typedef typename ObjectCacheTraitsT< ObjT, KeyT >::ElementPtrT

◆ ObjectTransform

using castor3d::ObjectTransform = typedef std::pair< SkeletonAnimationObject *, castor::Matrix4x4f >

◆ OnAnimatedMeshChange

◆ OnAnimatedMeshChangeConnection

using castor3d::OnAnimatedMeshChangeConnection = typedef OnAnimatedMeshChange::connection

◆ OnAnimatedMeshChangeFunction

using castor3d::OnAnimatedMeshChangeFunction = typedef std::function< void( AnimatedObjectGroup const &, AnimatedMesh & ) >

◆ OnAnimatedSceneNodeChange

◆ OnAnimatedSceneNodeChangeConnection

using castor3d::OnAnimatedSceneNodeChangeConnection = typedef OnAnimatedSceneNodeChange::connection

◆ OnAnimatedSceneNodeChangeFunction

using castor3d::OnAnimatedSceneNodeChangeFunction = typedef std::function< void( AnimatedObjectGroup const &, AnimatedSceneNode & ) >

◆ OnAnimatedSkeletonChange

◆ OnAnimatedSkeletonChangeConnection

using castor3d::OnAnimatedSkeletonChangeConnection = typedef OnAnimatedSkeletonChange::connection

◆ OnAnimatedSkeletonChangeFunction

using castor3d::OnAnimatedSkeletonChangeFunction = typedef std::function< void( AnimatedObjectGroup const &, AnimatedSkeleton & ) >

◆ OnAnimatedTextureChange

◆ OnAnimatedTextureChangeConnection

using castor3d::OnAnimatedTextureChangeConnection = typedef OnAnimatedTextureChange::connection

◆ OnAnimatedTextureChangeFunction

using castor3d::OnAnimatedTextureChangeFunction = typedef std::function< void( AnimatedObjectGroup const &, AnimatedTexture & ) >

◆ OnBackgroundChanged

using castor3d::OnBackgroundChanged = typedef castor::SignalT< BackgroundChangedFunc >

◆ OnBackgroundChangedConnection

using castor3d::OnBackgroundChangedConnection = typedef OnBackgroundChanged::connection

◆ OnBillboardMaterialChanged

◆ OnBillboardMaterialChangedConnection

using castor3d::OnBillboardMaterialChangedConnection = typedef OnBillboardMaterialChanged::connection

◆ OnBillboardMaterialChangedFunction

using castor3d::OnBillboardMaterialChangedFunction = typedef std::function< void( BillboardBase &, MaterialRPtr oldMaterial, MaterialRPtr newMaterial ) >

◆ OnCameraChanged

using castor3d::OnCameraChanged = typedef castor::SignalT< OnCameraChangedFunction >

◆ OnCameraChangedConnection

using castor3d::OnCameraChangedConnection = typedef OnCameraChanged::connection

◆ OnCameraChangedFunction

using castor3d::OnCameraChangedFunction = typedef std::function< void( Camera const & ) >

◆ OnLightChanged

using castor3d::OnLightChanged = typedef castor::SignalT< OnLightChangedFunction >

◆ OnLightChangedConnection

using castor3d::OnLightChangedConnection = typedef OnLightChanged::connection

◆ OnLightChangedFunction

using castor3d::OnLightChangedFunction = typedef std::function< void( Light & ) >

◆ OnMaterialChanged

using castor3d::OnMaterialChanged = typedef castor::SignalT< OnMaterialChangedFunction >

◆ OnMaterialChangedConnection

using castor3d::OnMaterialChangedConnection = typedef OnMaterialChanged::connection

◆ OnMaterialChangedFunction

using castor3d::OnMaterialChangedFunction = typedef std::function< void( Material const & ) >

◆ OnPassChanged

using castor3d::OnPassChanged = typedef castor::SignalT< OnPassChangedFunction >

◆ OnPassChangedConnection

using castor3d::OnPassChangedConnection = typedef OnPassChanged::connection

◆ OnPassChangedFunction

using castor3d::OnPassChangedFunction = typedef std::function< void( Pass const & ) >

◆ OnSceneChanged

using castor3d::OnSceneChanged = typedef castor::SignalT< OnSceneChangedFunction >

◆ OnSceneChangedConnection

using castor3d::OnSceneChangedConnection = typedef OnSceneChanged::connection

◆ OnSceneChangedFunction

using castor3d::OnSceneChangedFunction = typedef std::function< void( Scene const & ) >

◆ OnSceneNodeChanged

using castor3d::OnSceneNodeChanged = typedef castor::SignalT< OnSceneNodeChangedFunction >

◆ OnSceneNodeChangedConnection

using castor3d::OnSceneNodeChangedConnection = typedef OnSceneNodeChanged::connection

◆ OnSceneNodeChangedFunction

using castor3d::OnSceneNodeChangedFunction = typedef std::function< void( SceneNode const & ) >

◆ OnSceneUpdate

using castor3d::OnSceneUpdate = typedef castor::SignalT< OnSceneUpdateFunction >

◆ OnSceneUpdateConnection

using castor3d::OnSceneUpdateConnection = typedef OnSceneUpdate::connection

◆ OnSceneUpdateFunction

using castor3d::OnSceneUpdateFunction = typedef std::function< void( Scene const & ) >

◆ OnSubmeshMaterialChanged

◆ OnSubmeshMaterialChangedConnection

using castor3d::OnSubmeshMaterialChangedConnection = typedef OnSubmeshMaterialChanged::connection

◆ OnSubmeshMaterialChangedFunction

using castor3d::OnSubmeshMaterialChangedFunction = typedef std::function< void( Geometry &, Submesh const &, MaterialRPtr oldMaterial, MaterialRPtr newMaterial) >

◆ OnTextureUnitChanged

◆ OnTextureUnitChangedConnection

using castor3d::OnTextureUnitChangedConnection = typedef OnTextureUnitChanged::connection

◆ OnTextureUnitChangedFunction

using castor3d::OnTextureUnitChangedFunction = typedef std::function< void( TextureUnit const & ) >

◆ OverlayCache

using castor3d::OverlayCache = typedef castor::ResourceCacheT< Overlay , castor::String , OverlayCacheTraits >

◆ OverlayCacheTraits

using castor3d::OverlayCacheTraits = typedef PtrCacheTraitsT< Overlay, castor::String >

◆ OverlayRes

◆ OverlayResPtr

◆ Parameters

using castor3d::Parameters = typedef ParametersT< castor::String >

◆ ParticleFactory

using castor3d::ParticleFactory = typedef castor::Factory< CpuParticleSystem , castor::String , castor::UniquePtr< CpuParticleSystem > , std::function< castor::UniquePtr< CpuParticleSystem >( ParticleSystem & ) > >

Particle system factory.

◆ ParticleSystemCache

◆ ParticleSystemCacheTraits

◆ ParticleSystemRes

◆ ParticleSystemResPtr

◆ ParticleValues

using castor3d::ParticleValues = typedef ParametersT< size_t >

◆ PassFactoryBase

using castor3d::PassFactoryBase = typedef castor::Factory< Pass, PassTypeID, PassSPtr, std::function< PassSPtr( Material & ) > >

◆ PassFlags

using castor3d::PassFlags = typedef castor::FlagCombination< PassFlag >

◆ PassTypeID

using castor3d::PassTypeID = typedef uint16_t

◆ PipelineBuffer

using castor3d::PipelineBuffer = typedef std::pair< size_t, ashes::BufferBase const * >

◆ PipelineNodes

using castor3d::PipelineNodes = typedef std::array< castor::Point4ui, 10'000u >

◆ PluginCache

using castor3d::PluginCache = typedef castor::ResourceCacheT< Plugin , castor::String , PluginCacheTraits >

◆ PluginCacheTraits

using castor3d::PluginCacheTraits = typedef PtrCacheTraitsT< Plugin, castor::String >

◆ PluginRes

◆ PluginResPtr

◆ Point3rInterpolator

using castor3d::Point3rInterpolator = typedef Interpolator< castor::Point3f >

◆ PostEffectFactory

using castor3d::PostEffectFactory = typedef castor::Factory< PostEffect , castor::String , std::shared_ptr< PostEffect > , std::function< std::shared_ptr< PostEffect >( RenderTarget &, RenderSystem &, Parameters const & ) > >

Post effect factory.

◆ ProgramFlags

using castor3d::ProgramFlags = typedef castor::FlagCombination< ProgramFlag >

◆ PropertyArray

using castor3d::PropertyArray = typedef std::vector< ExtensionStruct >

◆ QuaternionInterpolator

using castor3d::QuaternionInterpolator = typedef Interpolator< castor::Quaternion >

◆ QueueDataPtr

using castor3d::QueueDataPtr = typedef std::unique_ptr< QueueData >

◆ QueueFamilies

using castor3d::QueueFamilies = typedef std::vector< QueuesData >

◆ QueueFamilyFlags

using castor3d::QueueFamilyFlags = typedef castor::FlagCombination< QueueFamilyFlag >

◆ RenderPassTypeID

using castor3d::RenderPassTypeID = typedef uint16_t

◆ RenderQueueArray

using castor3d::RenderQueueArray = typedef std::vector< std::reference_wrapper< RenderQueue > >

◆ RenderWindowPtr

using castor3d::RenderWindowPtr = typedef std::unique_ptr< RenderWindow >

◆ SamplerCache

using castor3d::SamplerCache = typedef castor::ResourceCacheT< Sampler , castor::String , SamplerCacheTraits >

◆ SamplerCacheTraits

using castor3d::SamplerCacheTraits = typedef ResourceCacheTraitsT< Sampler, castor::String >

◆ SamplerRes

◆ SamplerResPtr

using castor3d::SamplerResPtr = typedef SamplerCacheTraits::ElementObsT

◆ SceneCache

using castor3d::SceneCache = typedef castor::ResourceCacheT< Scene , castor::String , SceneCacheTraits >

◆ SceneCacheTraits

using castor3d::SceneCacheTraits = typedef PtrCacheTraitsT< Scene, castor::String >

◆ SceneCullerSignal

using castor3d::SceneCullerSignal = typedef castor::SignalT< SceneCullerSignalFunction >

◆ SceneCullerSignalConnection

using castor3d::SceneCullerSignalConnection = typedef castor::ConnectionT< SceneCullerSignal >

◆ SceneCullerSignalFunction

using castor3d::SceneCullerSignalFunction = typedef std::function< void( SceneCuller const & ) >

◆ SceneFlags

using castor3d::SceneFlags = typedef castor::FlagCombination< SceneFlag >

◆ SceneNodeCache

◆ SceneNodeCacheTraits

using castor3d::SceneNodeCacheTraits = typedef ObjectCacheTraitsT< SceneNode, castor::String >

◆ SceneNodeRes

◆ SceneNodeResPtr

◆ SceneRes

◆ SceneResPtr

◆ ShaderFlags

using castor3d::ShaderFlags = typedef castor::FlagCombination< ShaderFlag >

◆ ShaderPtr

using castor3d::ShaderPtr = typedef std::unique_ptr< ast::Shader >

◆ ShadowMapLightArray

using castor3d::ShadowMapLightArray = typedef std::array< ShadowMapLightIdArray, size_t( LightType::eCount ) >

◆ ShadowMapLightIdArray

using castor3d::ShadowMapLightIdArray = typedef std::vector< ShadowMapLightIds >

◆ ShadowMapLightTypeArray

using castor3d::ShadowMapLightTypeArray = typedef std::array< ShadowMapRefArray, size_t( LightType::eCount ) >

◆ ShadowMapRefArray

using castor3d::ShadowMapRefArray = typedef std::vector< ShadowMapRefIds >

◆ ShadowMapRefIds

using castor3d::ShadowMapRefIds = typedef std::pair< std::reference_wrapper< ShadowMap >, UInt32Array >

◆ SkeletonAnimationInstanceKeyFrameArray

◆ SubmeshBoundingBoxList

using castor3d::SubmeshBoundingBoxList = typedef std::vector< std::pair< Submesh const *, castor::BoundingBox > >

◆ SubmeshMaterialMap

using castor3d::SubmeshMaterialMap = typedef std::map< Submesh const *, MaterialRPtr >

◆ SubmeshRenderNodePtrArray

◆ SubmeshRenderNodePtrByPipelineMap

◆ SubmeshRenderNodesPtrByPipelineMap

◆ TechniquePasses

◆ TechniquePassVector

using castor3d::TechniquePassVector = typedef std::vector< RenderTechniquePass * >

◆ TextureArray

using castor3d::TextureArray = typedef std::vector< TexturePtr >

◆ TextureFlags

using castor3d::TextureFlags = typedef castor::FlagCombination< TextureFlag >

◆ TextureFlagsArray

using castor3d::TextureFlagsArray = typedef std::vector< TextureFlagsId >

◆ TexturePtr

using castor3d::TexturePtr = typedef std::shared_ptr< Texture >

◆ TextureRotateSpeed

using castor3d::TextureRotateSpeed = typedef castor::SpeedT< castor::Angle, castor::Seconds >

◆ TextureScaleSpeed

using castor3d::TextureScaleSpeed = typedef castor::SpeedT< castor::Point2f, castor::Seconds >

◆ TextureSourceMap

◆ TextureSourceMapVT

using castor3d::TextureSourceMapVT = typedef TextureSourceMap::value_type

◆ TextureSpaces

using castor3d::TextureSpaces = typedef castor::FlagCombination< TextureSpace >

◆ TextureTranslateSpeed

using castor3d::TextureTranslateSpeed = typedef castor::SpeedT< castor::Point2f, castor::Seconds >

◆ TextureViewCRef

using castor3d::TextureViewCRef = typedef std::reference_wrapper< TextureView const >

◆ TextureViewCRefArray

using castor3d::TextureViewCRefArray = typedef std::vector< TextureViewCRef >

◆ ToneMappingFactory

using castor3d::ToneMappingFactory = typedef castor::Factory< ToneMapping , castor::String , castor3d::ShaderPtr , std::function< castor3d::ShaderPtr() > >

Tone mapping factory.

◆ TransformArray

using castor3d::TransformArray = typedef std::vector< ObjectTransform >

Enumeration Type Documentation

◆ AnimationState

enum class castor3d::AnimationState : uint8_t
strong

Animation State Enumerator.

Enumerator
ePlaying 

Playing animation state.

eStopped 

Stopped animation state.

ePaused 

Paused animation state.

eCount 
eMin 
eMax 

◆ AnimationType

enum class castor3d::AnimationType : uint8_t
strong

Animation types enumeration.

Enumerator
eSceneNode 

Scene node animation.

eSkeleton 

Skeleton animation.

eMesh 

Submesh animation (morphing).

eTexture 

Texture animation.

eCount 
eMin 
eMax 

◆ BackgroundType

enum class castor3d::BackgroundType
strong

Scene background types enumeration.

Enumerator
eColour 
eImage 
eSkybox 
eCount 
eMin 
eMax 

◆ BillboardSize

enum class castor3d::BillboardSize
strong

Billboard sizing types enumeration.

Enumerator
eDynamic 

Billboards size changes with camera position.

eFixed 

Billboards size doesn't change.

eCount 
eMin 
eMax 

◆ BillboardType

enum class castor3d::BillboardType
strong

Billboard rendering types enumeration.

Enumerator
eSpherical 

Billboards always face the camera.

eCylindrical 

Billboards rotate only on Y axis.

eCount 
eMin 
eMax 

◆ BlendMode

enum class castor3d::BlendMode : uint8_t
strong

Blending modes enumeration.

Enumerator
eNoBlend 

Order dependent blending.

eAdditive 

Order independent, add the components.

eMultiplicative 

Order independent, multiply the components.

eInterpolative 

Order dependent, interpolate the components.

eABuffer 

Order independent, using A-buffer, not implemented yet.

eDepthPeeling 

Order independent, using depth peeling, not implemented yet.

eCount 
eMin 
eMax 

◆ BorderPosition

enum class castor3d::BorderPosition
strong

Text wrapping modes, handles the way text is cut when it overflows the overlay width.

Enumerator
eInternal 

The border is outside the overlay.

eMiddle 

The border is middle outside and middle inside the overlay.

eExternal 

The border is outside the overlay.

eCount 
eMin 
eMax 

◆ ChunkType

enum class castor3d::ChunkType : uint64_t
strong

Binary data chunk types enumeration.

Enumerator
eUnknown 
eCmshFile 
eCmshHeader 
eCmshVersion 
eName 
eMesh 
eSkeleton 
eSkeletonGlobalInverse 
eSkeletonBone 
eBoneParentName 
eBoneOffsetMatrix 
eSubmesh 
eSubmeshTopology 
eSubmeshVertexCount 
eSubmeshVertex 
eSubmeshBoneCount 
eSubmeshBones 
eSubmeshMatrixCount 
eSubmeshMatrices 
eSubmeshFaceCount 
eSubmeshFaces 
eAnimable 
eAnimation 
eAnimLength 
eSkeletonAnimation 
eMeshAnimation 
eAnimInterpolator 
eAnimationObject 
eSkeletonAnimationNode 
eSkeletonAnimationBone 
eMovingTransform 
eKeyframeCount 
eKeyframes 
eBonesComponent 
eMeshAnimationKeyFrame 
eMeshAnimationKeyFrameTime 
eMeshAnimationKeyFrameSubmeshID 
eMeshAnimationKeyFrameBufferSize 
eMeshAnimationKeyFrameBufferData 
eSkeletonAnimationKeyFrame 
eSkeletonAnimationKeyFrameTime 
eSkeletonAnimationKeyFrameObjectType 
eSkeletonAnimationKeyFrameObjectName 
eSkeletonAnimationKeyFrameObjectTransform 
eSubmeshIndexComponentCount 
eSubmeshIndexCount 
eSubmeshIndices 
eSceneNodeAnimation 
eSceneNodeAnimationKeyFrame 
eSceneNodeAnimationKeyFrameTime 
eSceneNodeAnimationKeyFrameTranslate 
eSceneNodeAnimationKeyFrameRotate 
eSceneNodeAnimationKeyFrameScale 

◆ CSCNSection

enum class castor3d::CSCNSection : uint32_t
strong

Defines all the sections and subsections of a scene file.

Enumerator
eRoot 
eScene 
eWindow 
eSampler 
eCamera 
eViewport 
eLight 
eNode 
eObject 
eObjectMaterials 
eFont 
ePanelOverlay 
eBorderPanelOverlay 
eTextOverlay 
eMesh 
eSubmesh 
eMaterial 
ePass 
eTextureUnit 
eRenderTarget 
eShaderProgram 
eShaderStage 
eShaderUBO 
eUBOVariable 
eBillboard 
eBillboardList 
eAnimGroup 
eAnimation 
eSkybox 
eParticleSystem 
eParticle 
eSsao 
eSubsurfaceScattering 
eTransmittanceProfile 
eHdrConfig 
eShadows 
eMeshDefaultMaterials 
eRsm 
eLpv 
eRaw 
ePcf 
eVsm 
eTextureAnimation 
eVoxelConeTracing 
eTextureTransform 
eSceneImport 

◆ CubeMapFace

enum class castor3d::CubeMapFace : uint8_t
strong

Cube map faces.

Enumerator
ePositiveX 

Face on positive X

eNegativeX 

Face on negative X

ePositiveY 

Face on positive Y

eNegativeY 

Face on negative Y

ePositiveZ 

Face on positive Z

eNegativeZ 

Face on negative Z

eCount 
eMin 
eMax 

◆ DsTexture

enum class castor3d::DsTexture : uint8_t
strong

Enumerator of textures used by the deferred renderer's GBUffer.

Enumerator
eData0 
eData1 
eData2 
eData3 
eData4 
eData5 
eCount 
eMin 
eMax 

◆ ElementUsage

enum class castor3d::ElementUsage : uint32_t
strong

Element usage enumeration.

Enumerator
eUnknown 

Position coords.

ePosition 

Position coords.

eNormal 

Normal coords.

eTangent 

Tangent coords.

eBitangent 

Bitangent coords.

eDiffuse 

Diffuse colour.

eTexCoords 

Texture coordinates.

eBoneIds0 

Bone IDs 0.

eBoneIds1 

Bone IDs 1.

eBoneWeights0 

Bone weights 0.

eBoneWeights1 

Bone weights 1.

eTransform 

Instantiation matrix.

eMatIndex 

Instantiation material index.

◆ EventType

enum class castor3d::EventType : uint8_t
strong

Frame Event Type enumeration.

Enumerator
ePreRender 

This kind of event happens before any render, device context is active (so be fast !!).

eQueueRender 

This kind of event happens after the render, before buffers' swap.

ePostRender 

This kind of event happens after the buffer' swap.

eCount 
eMin 
eMax 

◆ FogType

enum class castor3d::FogType
strong

Fog types enumeration.

Enumerator
eDisabled 

No fog.

eLinear 

Fog intensity increases linearly with distance to camera.

eExponential 

Fog intensity increases exponentially with distance to camera.

eSquaredExponential 

Fog intensity increases even more with distance to camera.

eCount 
eMin 
eMax 

◆ FrustumCorner

enum class castor3d::FrustumCorner
strong

Frustum corners enumeration.

Enumerator
eFarLeftBottom 

Far left bottom corner.

eFarLeftTop 

Far left top corner.

eFarRightTop 

Far right top corner.

eFarRightBottom 

Far right bottom corner.

eNearLeftBottom 

Near left bottom corner.

eNearLeftTop 

Near left top corner.

eNearRightTop 

Near right top corner.

eNearRightBottom 

Near right bottom corner.

eCount 
eMin 
eMax 

◆ FrustumPlane

enum class castor3d::FrustumPlane
strong

Frustum planes enumeration.

Enumerator
eNear 

Near plane.

eFar 

Far plane.

eLeft 

Left plane.

eRight 

Right plane.

eTop 

Top plane.

eBottom 

Bottom plane.

eCount 
eMin 
eMax 

◆ GlobalBuffersIdx

enum class castor3d::GlobalBuffersIdx : uint32_t
strong

The render pass UBOs binding index.

Enumerator
eMatrix 
eScene 
eObjectsNodeID 
eModelsData 
eMaterials 
eSssProfiles 
eTexConfigs 
eTexAnims 
eBillboardsData 
eMorphingData 
eSkinningTransformData 
eCount 
eMin 
eMax 

◆ GlobalIlluminationType

enum class castor3d::GlobalIlluminationType : uint8_t
strong

Enumerator of supported global illumination algorithms.

Enumerator
eNone 
eRsm 
eVoxelConeTracing 
eLpv 
eLpvG 
eLayeredLpv 
eLayeredLpvG 
eCount 
eMin 
eMax 

◆ GpuFeature

enum class castor3d::GpuFeature : uint32_t
strong

All supported GPU feature flags.

Enumerator
eStereoRendering 

Tells whether or not the selected render API supports stereographic rendering.

eShaderStorageBuffers 

Tells whether or not the selected render API supports shader stoarage buffers.

eBindless 

Tells whether or not the selected render API supports bindless render.

eGeometry 

Tells whether or not the selected render API supports geometry shaders.

eTessellation 

Tells whether or not the selected render API supports tessellation shaders.

eRayTracing 

Tells whether or not the selected render API supports ray tracing shaders.

eMesh 

Tells whether or not the selected render API supports mesh shaders.

◆ GpuMax

enum class castor3d::GpuMax : uint32_t
strong

Maximum values enumerator.

Enumerator
eTexture1DSize 
eTexture2DSize 
eTexture3DSize 
eTextureCubeSize 
eTextureLayers 
eSamplerLodBias 
eClipDistances 
eFramebufferWidth 
eFramebufferHeight 
eFramebufferLayers 
eFramebufferSamples 
eTexelBufferSize 
eUniformBufferSize 
eStorageBufferSize 
eViewportWidth 
eViewportHeight 
eViewports 
eCount 
eMin 
eMax 

◆ GpuMin

enum class castor3d::GpuMin : uint32_t
strong

Minimum values enumerator.

Enumerator
eBufferMapSize 
eUniformBufferOffsetAlignment 
eCount 
eMin 
eMax 

◆ HAlign

enum class castor3d::HAlign
strong

Horizontal alignments for text overlays.

Enumerator
eLeft 

Aligned on the left.

eCenter 

Centered horizontally.

eRight 

Aligned on the right.

eCount 
eMin 
eMax 

◆ HandlerEventType

enum class castor3d::HandlerEventType : uint8_t
strong

Enumeration of supported handler events.

Enumération des évènements de gestionnaire supportées.

Enumerator
eActivate 

Handler activated.

eDeactivate 

Handler deactivated.

eCount 
eMin 
eMax 

◆ InterpolatorType

enum class castor3d::InterpolatorType : uint8_t
strong

Interpolation modes enumeration.

Enumerator
eNearest 

No interpolation.

eLinear 

Linear mode.

eCount 
eMin 
eMax 

◆ KeyboardEventType

enum class castor3d::KeyboardEventType : uint8_t
strong

Enumeration of supported keyboard events.

Enumération des évènement clavier supportés.

Enumerator
ePushed 

A key is pushed.

eReleased 

A key is released.

eChar 

A displayable char key is stroked.

eCount 
eMin 
eMax 

◆ KeyboardKey

enum class castor3d::KeyboardKey
strong

Keyboard keys enumeration.

Enumerator
eNone 
eBackspace 
eTab 
eReturn 
eEscape 
eSpace 
eDelete 
eStart 
eLButton 
eRButton 
eCancel 
eMButton 
eClear 
eShift 
eAlt 
eControl 
eMenu 
ePause 
eCapital 
eEnd 
eHome 
eLeft 
eUp 
eRight 
edown 
eSelect 
ePrint 
eExecute 
eSnapshot 
eInsert 
eHelp 
eNumpad0 
eNumpad1 
eNumpad2 
eNumpad3 
eNumpad4 
eNumpad5 
eNumpad6 
eNumpad7 
eNumpad8 
eNumpad9 
eMultiply 
eAdd 
eSeparator 
eSubtract 
eDecimal 
eDivide 
eF1 
eF2 
eF3 
eF4 
eF5 
eF6 
eF7 
eF8 
eF9 
eF10 
eF11 
eF12 
eF13 
eF14 
eF15 
eF16 
eF17 
eF18 
eF19 
eF20 
eF21 
eF22 
eF23 
eF24 
eNumlock 
eScroll 
ePageUp 
ePageDown 
eNumpadSpace 
eNumpadTab 
eNumpadEnter 
eNumpadF1 
eNumpadF2 
eNumpadF3 
eNumpadF4 
eNumpadHome 
eNumpadLeft 
eNumpadUp 
eNumpadRight 
eNumpadDown 
eNumpadPageUp 
eNumpadPageDown 
eNumpadEnd 
eNumpadBegin 
eNumpadInsert 
eNumpadDelete 
eNumpadEqual 
eNumpadMultiply 
eNumpadAdd 
eNumpadSeparator 
eNumpadSubtract 
eNumpadDecimal 
eNumpadDivide 

◆ LightPassIdx

enum class castor3d::LightPassIdx : uint32_t
strong

The lighting passes common bindings index.

Enumerator
eMaterials 
eSssProfiles 
eModels 
eGpInfo 
eScene 
eData0 
eData1 
eData2 
eData3 
eData4 
eData5 

◆ LightPassLgtIdx

enum class castor3d::LightPassLgtIdx : uint32_t
strong

The lighting passes light specific bindings index.

Enumerator
eLight 
eMatrix 
eModelMatrix 
eSmNormalLinear 
eSmVariance 

◆ LightType

enum class castor3d::LightType : uint8_t
strong

Light types enumeration.

Enumerator
eDirectional 

Directional light type.

ePoint 

Point light type.

eSpot 

Spot light type.

eCount 
eMin 
eMax 

◆ LpTexture

enum class castor3d::LpTexture : uint8_t
strong

Enumerator of textures used by the lighting pass in deferred rendering.

Enumerator
eDepth 
eDiffuse 
eSpecular 
eIndirectDiffuse 
eIndirectSpecular 
eCount 
eMin 
eMax 

◆ LpvTexture

enum class castor3d::LpvTexture : uint8_t
strong

Enumerator of textures used by the light volume GI passes.

Enumerator
eR 
eG 
eB 
eCount 
eMin 
eMax 

◆ MouseButton

enum class castor3d::MouseButton
strong

Mouse buttons enumeration.

Enumerator
eLeft 

Left mouse button.

eMiddle 

Middle mouse button.

eRight 

Right mouse button.

eCount 
eMin 
eMax 

◆ MouseEventType

enum class castor3d::MouseEventType : uint8_t
strong

Enumeration of supported mouse events.

Enumération des évènement de souris supportés.

Enumerator
eMove 

The mouse moves.

eEnter 

The mouse enters an handler's zone.

eHover 

The mouse remains still in an handler's zone during hover time.

eLeave 

The mouse leaves an handler's zone.

ePushed 

One mouse button is pushed.

eReleased 

One mouse button is released.

eWheel 

One mouse wheel is rolled.

eCount 
eMin 
eMax 

◆ MovableType

enum class castor3d::MovableType : uint8_t
strong

Movable object types enumerator.

Remarks
There are four movable object types : camera, geometry, light and billboard.
Enumerator
eCamera 
eGeometry 
eLight 
eBillboard 
eParticleEmitter 
eCount 
eMin 
eMax 

◆ OverlayType

enum class castor3d::OverlayType : uint8_t
strong

Overlay types enumeration.

Enumerator
ePanel 
eBorderPanel 
eText 
eCount 
eMin 
eMax 

◆ ParallaxOcclusionMode

Parallax occlusion modes enumeration.

Enumerator
eNone 
eOne 
eRepeat 
eCount 
eMin 
eMax 

◆ ParticleFormat

enum class castor3d::ParticleFormat
strong
Enumerator
eInt 
eVec2i 
eVec3i 
eVec4i 
eUInt 
eVec2ui 
eVec3ui 
eVec4ui 
eFloat 
eVec2f 
eVec3f 
eVec4f 
eMat2f 
eMat3f 
eMat4f 
eCount 
eMin 
eMax 

◆ PassFlag

enum class castor3d::PassFlag : uint16_t
strong

Pass specific flags.

Enumerator
eNone 

No flag.

eAlphaBlending 

Shader using alpha blending.

eAlphaTest 

Shader using alpha test.

eBlendAlphaTest 

Shader using alpha test.

eImageBasedLighting 

Shader with Image Based Lighting support.

eSubsurfaceScattering 

Shader for Subsurface Scattering.

eDistanceBasedTransmittance 

Shader using distance based transmittance when computing Subsurface Scattering.

eParallaxOcclusionMappingOne 

Shader using parallax occlusion mapping.

eParallaxOcclusionMappingRepeat 

Shader using parallax occlusion mapping.

eReflection 

Reflection map.

eRefraction 

Refraction map.

eLighting 

The pass receives lighting.

ePickable 

The pass sets an object as pickable.

eDrawEdge 

The pass needs an edge to be drawn.

eAll 

All flags.

◆ PickNodeType

enum class castor3d::PickNodeType : uint8_t
strong

The picking node types.

Enumerator
eNone 
eSubmesh 
eBillboard 

◆ PluginType

enum class castor3d::PluginType : uint8_t
strong

Plugin types enumeration.

Enumerator
eImporter 

Importer plug-in.

eDivider 

Mesh Divider plug-in.

eGenerator 

Procedural generator.

eToneMapping 

Tone mapping plug-in.

ePostEffect 

Post effect plug-in.

eGeneric 

Generic plug-in.

eParticle 

Particle plug-in.

eCount 
eMin 
eMax 

◆ ProgramFlag

enum class castor3d::ProgramFlag : uint32_t
strong

Flags to use when looking for an automatically generated program.

Enumerator
eNone 

No flag.

eInstantiation 

Program using instanciation.

eSkinning 

Program using skeleton animations.

eBillboards 

Program used by billboards.

eMorphing 

Program using per-vertex animations.

ePicking 

Picking pass program.

eLighting 

Shader supporting lighting.

eSpherical 

Shader for spherical billboards.

eFixedSize 

Shader for fixed size billboards.

eInstanceMult 

Program using and instances multiplier.

eShadowMapDirectional 

Shader used to render a shadow map for directional light.

eShadowMapSpot 

Shader used to render a shadow map for spot light.

eShadowMapPoint 

Shader used to render a shadow map for point light.

eEnvironmentMapping 

Shader used to render an environment map.

eDepthPass 

Shader for the depth pre-pass.

eInvertNormals 

Vertex shader inverts normals (for front culling).

eHasGeometry 

Vertex shader inverts normals (for front culling).

eHasTessellation 

Vertex shader inverts normals (for front culling).

eConservativeRasterization 

Voxelization uses conservative rasterization.

eSecondaryUV 

Mesh uses a second UV set.

eForceTexCoords 

Forces texcoords binding.

eAll 

All flags.

◆ QueueFamilyFlag

enum class castor3d::QueueFamilyFlag
strong
Enumerator
eNone 
ePresent 
eGraphics 
eTransfer 
eCompute 

◆ RenderMode

enum class castor3d::RenderMode : uint8_t
strong

The render pass modes, regarding transparency.

Enumerator
eOpaqueOnly 
eTransparentOnly 
eBoth 
eCount 
eMin 
eMax 

◆ RenderNodeType

enum class castor3d::RenderNodeType
strong
Enumerator
eFrontStatic 
eFrontSkinned 
eFrontInstancedStatic 
eFrontInstancedSkinned 
eFrontMorphing 
eFrontBillboard 
eBackStatic 
eBackSkinned 
eBackInstancedStatic 
eBackInstancedSkinned 
eBackMorphing 
eBackBillboard 
eCount 
eMin 
eMax 

◆ SceneFlag

enum class castor3d::SceneFlag : uint16_t
strong

Scene flags enumeration.

Enumerator
eNone 

No flag.

eFogLinear 

Linear fog.

eFogExponential 

Exponential fog.

eFogSquaredExponential 

Squared exponential fog.

eShadowBegin 

Shadow enabling, by light source type.

eShadowDirectional 
eShadowPoint 
eShadowSpot 
eShadowEnd 
eShadowAny 
eLpvGI 

Light Propagation Volumes enabling.

eLayeredLpvGI 
eVoxelConeTracing 

Voxel Cone Tracing enabling.

eAll 

All flags.

◆ ShaderFlag

enum class castor3d::ShaderFlag : uint8_t
strong

The render pass shader flags.

Enumerator
eNone 
eNormal 
eTangentSpace 
eVelocity 
eWorldSpace 
eViewSpace 

◆ ShadowType

enum class castor3d::ShadowType
strong

Shadow filter types enumeration.

Enumerator
eNone 

No shadows at all.

eRaw 

No filtering.

ePCF 

PCF filtering.

eVariance 

Variance shadow mapping.

eCount 
eMin 
eMax 

◆ SkeletonAnimationObjectType

enum class castor3d::SkeletonAnimationObjectType : uint8_t
strong

Class which represents the moving things.

Author
Sylvain DOREMUS
Version
0.1
Date
09/02/2010
Remarks
Manages translation, scaling, rotation of the thing.
Enumerator
eNode 

Node objects.

eBone 

Bone objects.

eCount 
eMin 
eMax 

◆ SmTexture

enum class castor3d::SmTexture : uint8_t
strong

Enumerator of textures used in deferred rendering.

Enumerator
eDepth 
eNormalLinear 
eVariance 
ePosition 
eFlux 
eCount 
eMin 
eMax 

◆ TargetType

enum class castor3d::TargetType : uint8_t
strong

RenderTarget supported types.

Enumerator
eWindow 
eTexture 
eCount 
eMin 
eMax 

◆ TechniquePassEvent

enum class castor3d::TechniquePassEvent
strong
Enumerator
eBeforeDepth 
eBeforeBackground 
eBeforeOpaque 
eBeforeTransparent 
eBeforePostEffects 
eCount 
eMin 
eMax 

◆ TextLineSpacingMode

enum class castor3d::TextLineSpacingMode
strong

Text line spacing modes, handles the way lines are spaced, which each other, inside one TextOverlay.

Enumerator
eOwnHeight 

The height of each line is its own height.

eMaxLineHeight 

The height of the lines is the maximum height between them.

eMaxFontHeight 

The height of the lines is the maximum height from the font's characters.

eCount 
eMin 
eMax 

◆ TextTexturingMode

enum class castor3d::TextTexturingMode
strong

Text texturing modes, handles the way textures are appied to text overlays.

Enumerator
eLetter 

The texture is repeated on each character of the text.

eText 

The texture is applied on the whole text.

eCount 
eMin 
eMax 

◆ TextureFlag

enum class castor3d::TextureFlag : uint16_t
strong

Texture channels flags.

Enumerator
eNone 

No texture.

eHeight 

Height map.

eOpacity 

Opacity map.

eNormal 

Normal map.

eEmissive 

Emissive map.

eOcclusion 

Occlusion map.

eTransmittance 

Light transmittance map.

eColour 

Basic colour map.

eDiffuse 

Diffuse map.

eAlbedo 

Albedo map.

eSpecular 

Specular map.

eMetalness 

Metalness map.

eGlossiness 

Glossiness map.

eShininess 

Shininess map.

eRoughness 

Roughness map.

eAll 

Mask for all the texture channels.

eAllButOpacity 

Mask for all the texture channels except for opacity.

eAllButColourAndOpacity 

Mask for all the texture channels except for opacity and colour.

eAllButNormalAndOpacity 

Mask for all the texture channels except for opacity and normal.

eGeometry 

Mask for all the texture channels affecting geometry.

◆ TextureSpace

enum class castor3d::TextureSpace : uint16_t
strong

Lists the possible spaces for a texture.

Enumerator
eNormalised 

Modifier: Normalized value (Colour in [-1, 1] range, depth in [0, 1] range).

eYInverted 

Modifier: Y inverted space.

eColour 

Colour texture in R.

eDepth 

Depth in [near, far] range.

eTangentSpace 

Tangent space data.

eObjectSpace 

Object space data.

eWorldSpace 

World space data.

eViewSpace 

View space data.

eClipSpace 

Clip space data.

eStencil 

Stencil data.

◆ TextWrappingMode

enum class castor3d::TextWrappingMode
strong

Text wrapping modes, handles the way text is cut when it overflows the overlay width.

Enumerator
eNone 

The text is cut.

eBreak 

The text jumps to next line.

eBreakWords 

The text jumps to next line without cutting words.

eCount 
eMin 
eMax 

◆ UserInputEventType

enum class castor3d::UserInputEventType
strong

Supported events types enumeration.

Enumerator
eMouse 

Mouse event type.

eKeyboard 

Keyboard event type.

eHandler 

Handle event type.

eCount 
eMin 
eMax 

◆ VAlign

enum class castor3d::VAlign
strong

Vertical alignments for text overlays.

Enumerator
eTop 

Aligned on the top.

eCenter 

Centered vertically.

eBottom 

Aligned on the bottom.

eCount 
eMin 
eMax 

◆ ViewportType

enum class castor3d::ViewportType : uint8_t
strong

The viewport projection types enumeration.

Enumerator
eUndefined 
eOrtho 
ePerspective 
eFrustum 
eCount 
eMin 
eMax 

◆ WbTexture

enum class castor3d::WbTexture : uint8_t
strong

Enumerator of textures used in weighted blend OIT.

Enumerator
eDepth 
eAccumulation 
eRevealage 
eVelocity 
eCount 
eMin 
eMax 

Function Documentation

◆ bindShadowMaps()

C3D_API void castor3d::bindShadowMaps ( crg::RunnableGraph &  graph,
SceneFlags const &  sceneFlags,
ShadowMapLightTypeArray const &  shadowMaps,
ashes::WriteDescriptorSetArray &  writes,
uint32_t &  index 
)

Writes the shadow maps descriptors to the given writes.

◆ bindTexture() [1/2]

void castor3d::bindTexture ( ashes::ImageView const &  view,
ashes::Sampler const &  sampler,
ashes::WriteDescriptorSetArray &  writes,
uint32_t &  index 
)

Writes the image view and sampler descriptor to the given writes.

◆ bindTexture() [2/2]

void castor3d::bindTexture ( crg::RunnableGraph &  graph,
crg::ImageViewId const &  view,
VkSampler const &  sampler,
ashes::WriteDescriptorSetArray &  writes,
uint32_t &  index 
)

◆ checkFlags() [1/2]

C3D_API FilteredTextureFlags::const_iterator castor3d::checkFlags ( FilteredTextureFlags const &  flags,
TextureFlag  flag 
)

◆ checkFlags() [2/2]

C3D_API TextureFlagsArray::const_iterator castor3d::checkFlags ( TextureFlagsArray const &  flags,
TextureFlag  flag 
)

◆ cleanupGlslang()

C3D_API void castor3d::cleanupGlslang ( )

Cleans up glslang globals.

◆ compileGlslToSpv()

C3D_API UInt32Array castor3d::compileGlslToSpv ( RenderDevice const &  device,
VkShaderStageFlagBits  stage,
std::string const &  shader 
)

Transpiles a GLSL shader to SPIR-V.

Parameters
deviceThe GPU device.
stageThe shader stage.
shaderThe GLSL shader.

◆ compileShader() [1/2]

C3D_API SpirVShader castor3d::compileShader ( RenderDevice const &  device,
ShaderModule const &  module 
)

◆ compileShader() [2/2]

C3D_API SpirVShader castor3d::compileShader ( RenderSystem const &  renderSystem,
ShaderModule const &  module 
)

◆ convert() [1/5]

C3D_API VkFormat castor3d::convert ( castor::PixelFormat  format)

◆ convert() [2/5]

VkClearColorValue castor3d::convert ( castor::RgbaColour const &  value)

◆ convert() [3/5]

castor::Matrix4x4f castor3d::convert ( std::array< float, 16 > const &  value)

◆ convert() [4/5]

castor::RgbaColour castor3d::convert ( VkClearColorValue const &  value)

◆ convert() [5/5]

C3D_API castor::PixelFormat castor3d::convert ( VkFormat  format)

◆ copyBuffer() [1/2]

C3D_API void castor3d::copyBuffer ( ashes::CommandBuffer const &  commandBuffer,
ashes::BufferBase const &  src,
ashes::BufferBase const &  dst,
std::vector< VkBufferCopy > const &  regions,
VkAccessFlags  dstAccessFlags,
VkPipelineStageFlags  dstPipelineFlags 
)

◆ copyBuffer() [2/2]

C3D_API void castor3d::copyBuffer ( ashes::CommandBuffer const &  commandBuffer,
ashes::BufferBase const &  src,
ashes::BufferBase const &  dst,
VkDeviceSize  offset,
VkDeviceSize  size,
VkPipelineStageFlags  flags 
)

◆ createInOutStoragePassBinding()

C3D_API void castor3d::createInOutStoragePassBinding ( crg::FramePass &  pass,
uint32_t  binding,
std::string const &  name,
ashes::Buffer< uint8_t > const &  buffer,
VkDeviceSize  offset,
VkDeviceSize  size 
)

Referenced by castor3d::GpuBufferOffsetT< DataT >::createInOutStoragePassBinding().

Here is the caller graph for this function:

◆ createInputStoragePassBinding()

C3D_API void castor3d::createInputStoragePassBinding ( crg::FramePass &  pass,
uint32_t  binding,
std::string const &  name,
ashes::Buffer< uint8_t > const &  buffer,
VkDeviceSize  offset,
VkDeviceSize  size 
)

Referenced by castor3d::GpuBufferOffsetT< DataT >::createInputStoragePassBinding().

Here is the caller graph for this function:

◆ createOutputStoragePassBinding()

C3D_API void castor3d::createOutputStoragePassBinding ( crg::FramePass &  pass,
uint32_t  binding,
std::string const &  name,
ashes::Buffer< uint8_t > const &  buffer,
VkDeviceSize  offset,
VkDeviceSize  size 
)

Referenced by castor3d::GpuBufferOffsetT< DataT >::createOutputStoragePassBinding().

Here is the caller graph for this function:

◆ createSampler()

SamplerResPtr castor3d::createSampler ( Engine engine,
castor::String const &  baseName,
VkFilter  filter,
VkImageSubresourceRange const *  range 
)

◆ createTextureLayout() [1/2]

C3D_API TextureLayoutSPtr castor3d::createTextureLayout ( Engine const &  engine,
castor::Path const &  relative,
castor::Path const &  folder,
castor::ImageLoaderConfig  config = { true, true, true } 
)

◆ createTextureLayout() [2/2]

C3D_API TextureLayoutSPtr castor3d::createTextureLayout ( Engine const &  engine,
castor::String const &  name,
castor::PxBufferBaseUPtr  buffer,
bool  isStatic = false 
)

◆ createUniformPassBinding()

C3D_API void castor3d::createUniformPassBinding ( crg::FramePass &  pass,
uint32_t  binding,
std::string const &  name,
ashes::Buffer< uint8_t > const &  buffer,
VkDeviceSize  offset,
VkDeviceSize  size 
)

Referenced by castor3d::GpuBufferOffsetT< DataT >::createUniformPassBinding().

Here is the caller graph for this function:

◆ CU_DeclareArray() [1/3]

castor3d::CU_DeclareArray ( DynamicLibraryPtrPathMap  ,
PluginType::eCount  ,
DynamicLibraryPtrPathMap   
)

◆ CU_DeclareArray() [2/3]

castor3d::CU_DeclareArray ( LightPropagationPassUPtr  ,
lpv::PropagationPassCount  ,
LightPropagationPass   
)

◆ CU_DeclareArray() [3/3]

castor3d::CU_DeclareArray ( PluginStrMap  ,
PluginType::eCount  ,
PluginStrMap   
)

◆ CU_DeclareCUSmartPtr() [1/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
AnimatedObjectGroupCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [2/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
BackgroundRenderer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [3/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
BillboardRenderNode  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [4/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
BorderPanelOverlay  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [5/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
CombinePass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [6/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ComputeParticleSystem  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [7/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
CpuFrameEvent  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [8/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
CpuFunctorEvent  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [9/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
CpuParticleSystem  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [10/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
DebugOverlays  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [11/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
DeferredRendering  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [12/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
DepthPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [13/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
DownscalePass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [14/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
FontTexture  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [15/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
FrameListener  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [16/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
FrameListenerCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [17/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
FramePassTimer   
)

◆ CU_DeclareCUSmartPtr() [18/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Frustum  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [19/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GaussianBlur  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [20/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GeometryCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [21/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GeometryInjectionPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [22/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GpuBufferPool  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [23/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GpuFrameEvent  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [24/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
GpuFunctorEvent  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [25/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
IndirectLightingPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [26/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LayeredLightPropagationVolumes  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [27/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LayeredLightPropagationVolumesG  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [28/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LayeredLpvGridConfigUbo  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [29/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [30/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [31/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightingPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [32/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightInjectionPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [33/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightPropagationPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [34/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightPropagationVolumes  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [35/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightPropagationVolumesG  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [36/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LightVolumePassResult  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [37/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LineariseDepthPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [38/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LoadingScreen  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [39/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LpvGridConfigUbo  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [40/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
LpvLightConfigUbo  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [41/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
MaterialCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [42/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
MeshCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [43/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
MeshFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [44/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
MeshImporterFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [45/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
MeshSubdividerFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [46/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ObjectBufferPool  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [47/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OpaquePassResult  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [48/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OpaqueResolvePass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [49/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Overlay  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [50/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OverlayCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [51/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OverlayCategory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [52/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OverlayFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [53/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
OverlayRenderer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [54/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PanelOverlay  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [55/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleElementDeclaration  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [56/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleEmitter  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [57/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [58/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleSystem  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [59/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleSystemCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [60/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleSystemImpl  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [61/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ParticleUpdater  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [62/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PassBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [63/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PassFactory  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [64/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Picking  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [65/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PickingPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [66/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PluginCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [67/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
PoolUniformBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [68/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ProgressBar  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [69/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
QueueRenderNodes  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [70/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderDevice  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [71/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderGrid  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [72/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderLoop  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [73/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderPassRegisterInfo  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [74/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderPipeline  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [75/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderQuad  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [76/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderQueue  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [77/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderSystem  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [78/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderTarget  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [79/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderTargetCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [80/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderTechnique  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [81/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderTechniquePass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [82/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
RenderWindow  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [83/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Sampler  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [84/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SamplerCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [85/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Scene  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [86/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SceneCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [87/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SceneRenderNodes  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [88/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ShaderBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [89/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ShaderProgram  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [90/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ShaderProgramCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [91/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ShadowMap  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [92/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
ShadowMapPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [93/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SkinnedObjectBufferPool  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [94/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SsaoBlurPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [95/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SsaoPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [96/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SsaoRawAOPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [97/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SssProfileBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [98/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
StagingData  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [99/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
StencilPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [100/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SubmeshRenderNode  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [101/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
SubsurfaceScatteringPass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [102/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextOverlay  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [103/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Texture3DTo2D  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [104/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureAnimationBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [105/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureConfigurationBuffer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [106/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureLayout  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [107/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureSource  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [108/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureUnit  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [109/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureUnitCache  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [110/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TextureView  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [111/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
TransparentPassResult  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [112/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
UniformBufferBase  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [113/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
UniformBufferPool  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [114/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
VertexBufferPool  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [115/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Viewport  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [116/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
VoxelBufferToTexture  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [117/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
VoxelizePass  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [118/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
Voxelizer  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [119/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
VoxelSecondaryBounce  ,
C3D_API   
)

◆ CU_DeclareCUSmartPtr() [120/120]

castor3d::CU_DeclareCUSmartPtr ( castor3d  ,
WeightedBlendRendering  ,
C3D_API   
)

◆ CU_DeclareMap() [1/32]

castor3d::CU_DeclareMap ( castor::Path  ,
castor::DynamicLibrarySPtr  ,
DynamicLibraryPtrPath   
)

◆ CU_DeclareMap() [2/32]

castor3d::CU_DeclareMap ( castor::Path  ,
PluginType  ,
PluginTypePath   
)

◆ CU_DeclareMap() [3/32]

castor3d::CU_DeclareMap ( castor::String  ,
AnimatedObjectGroupSPtr  ,
AnimatedObjectGroupPtrStr   
)

AnimatedObjectGroup pointer map, sorted by name.

◆ CU_DeclareMap() [4/32]

castor3d::CU_DeclareMap ( castor::String  ,
AnimatedObjectSPtr  ,
AnimatedObjectPtrStr   
)

AnimatedObject pointer map, sorted by name.

◆ CU_DeclareMap() [5/32]

castor3d::CU_DeclareMap ( castor::String  ,
AnimationInstanceUPtr  ,
AnimationInstancePtrStr   
)

Animation pointer map, sorted by name.

◆ CU_DeclareMap() [6/32]

castor3d::CU_DeclareMap ( castor::String  ,
AnimationSPtr  ,
AnimationPtrStr   
)

Animation pointer map, sorted by name.

◆ CU_DeclareMap() [7/32]

castor3d::CU_DeclareMap ( castor::String  ,
BillboardListSPtr  ,
BillboardListStr   
)

BillboardList pointer map, sorted by name.

◆ CU_DeclareMap() [8/32]

castor3d::CU_DeclareMap ( castor::String  ,
BoneSPtr  ,
BonePtrStr   
)

Bone pointer map sorted by name.

◆ CU_DeclareMap() [9/32]

castor3d::CU_DeclareMap ( castor::String  ,
CameraSPtr  ,
CameraPtrStr   
)

Camera pointer map, sorted by name.

◆ CU_DeclareMap() [10/32]

castor3d::CU_DeclareMap ( castor::String  ,
FrameListenerSPtr  ,
FrameListenerPtrStr   
)

◆ CU_DeclareMap() [11/32]

castor3d::CU_DeclareMap ( castor::String  ,
GeometrySPtr  ,
GeometryPtrStr   
)

Geometry pointer map, sorted by name.

◆ CU_DeclareMap() [12/32]

castor3d::CU_DeclareMap ( castor::String  ,
int  ,
IntStr   
)

◆ CU_DeclareMap() [13/32]

castor3d::CU_DeclareMap ( castor::String  ,
LightSPtr  ,
LightPtrStr   
)

Map of lights, sorted by name.

◆ CU_DeclareMap() [14/32]

castor3d::CU_DeclareMap ( castor::String  ,
MaterialRPtr  ,
MaterialPtrStr   
)

Material pointer map, sorted by name.

◆ CU_DeclareMap() [15/32]

castor3d::CU_DeclareMap ( castor::String  ,
MeshResPtr  ,
MeshPtrStr   
)

Mesh pointer array.

◆ CU_DeclareMap() [16/32]

castor3d::CU_DeclareMap ( castor::String  ,
MovableObjectSPtr  ,
MovableObjectPtrStr   
)

MovableObject pointer map, sorted by name.

◆ CU_DeclareMap() [17/32]

castor3d::CU_DeclareMap ( castor::String  ,
OverlayResPtr  ,
OverlayPtrStr   
)

◆ CU_DeclareMap() [18/32]

castor3d::CU_DeclareMap ( castor::String  ,
PluginSPtr  ,
PluginStr   
)

◆ CU_DeclareMap() [19/32]

castor3d::CU_DeclareMap ( castor::String  ,
SceneNodeSPtr  ,
SceneNodePtrStr   
)

SceneNode pointer map, sorted by name.

◆ CU_DeclareMap() [20/32]

castor3d::CU_DeclareMap ( castor::String  ,
SceneRPtr  ,
ScenePtrStr   
)

Scene pointer map, sorted by name.

◆ CU_DeclareMap() [21/32]

castor3d::CU_DeclareMap ( castor::String  ,
SkeletonAnimationInstanceObjectSPtr  ,
SkeletonAnimationInstanceObjectPtrStr   
)

MovingObject pointer map, sorted by name.

◆ CU_DeclareMap() [22/32]

castor3d::CU_DeclareMap ( castor::String  ,
SkeletonAnimationObjectSPtr  ,
SkeletonAnimationObjectPtrStr   
)

SkeletonAnimationObject pointer map, sorted by name.

◆ CU_DeclareMap() [23/32]

castor3d::CU_DeclareMap ( castor::String  ,
SubmeshSPtr  ,
SubmeshPtrStr   
)

◆ CU_DeclareMap() [24/32]

castor3d::CU_DeclareMap ( int  ,
castor::String  ,
StrInt   
)

◆ CU_DeclareMap() [25/32]

castor3d::CU_DeclareMap ( int  ,
LightSPtr  ,
LightPtrInt   
)

Map of lights, sorted by index.

◆ CU_DeclareMap() [26/32]

castor3d::CU_DeclareMap ( Submesh const *  ,
castor::BoundingBox  ,
SubmeshBoundingBox   
)

◆ CU_DeclareMap() [27/32]

castor3d::CU_DeclareMap ( Submesh const *  ,
castor::BoundingSphere  ,
SubmeshBoundingSphere   
)

◆ CU_DeclareMap() [28/32]

castor3d::CU_DeclareMap ( uint32_t  ,
int  ,
IntUInt   
)

◆ CU_DeclareMap() [29/32]

castor3d::CU_DeclareMap ( uint32_t  ,
MaterialRPtr  ,
MaterialPtrUInt   
)

Material pointer map.

◆ CU_DeclareMap() [30/32]

castor3d::CU_DeclareMap ( uint32_t  ,
MeshAnimationInstanceSubmesh  ,
MeshAnimationInstanceSubmesh   
)

MeshAnimationInstanceSubmesh map, sorted by submesh ID.

◆ CU_DeclareMap() [31/32]

castor3d::CU_DeclareMap ( uint32_t  ,
SubmeshAnimationBuffer  ,
SubmeshAnimationBuffer   
)

◆ CU_DeclareMap() [32/32]

castor3d::CU_DeclareMap ( uint32_t  ,
SubmeshComponentSPtr  ,
SubmeshComponentID   
)

◆ CU_DeclareSmartPtr() [1/91]

castor3d::CU_DeclareSmartPtr ( Animable  )

◆ CU_DeclareSmartPtr() [2/91]

castor3d::CU_DeclareSmartPtr ( AnimatedMesh  )

◆ CU_DeclareSmartPtr() [3/91]

castor3d::CU_DeclareSmartPtr ( AnimatedObject  )

◆ CU_DeclareSmartPtr() [4/91]

castor3d::CU_DeclareSmartPtr ( AnimatedObjectGroup  )

◆ CU_DeclareSmartPtr() [5/91]

castor3d::CU_DeclareSmartPtr ( AnimatedSceneNode  )

◆ CU_DeclareSmartPtr() [6/91]

castor3d::CU_DeclareSmartPtr ( AnimatedSkeleton  )

◆ CU_DeclareSmartPtr() [7/91]

castor3d::CU_DeclareSmartPtr ( AnimatedTexture  )

◆ CU_DeclareSmartPtr() [8/91]

castor3d::CU_DeclareSmartPtr ( Animation  )

◆ CU_DeclareSmartPtr() [9/91]

castor3d::CU_DeclareSmartPtr ( AnimationInstance  )

◆ CU_DeclareSmartPtr() [10/91]

castor3d::CU_DeclareSmartPtr ( AnimationKeyFrame  )

◆ CU_DeclareSmartPtr() [11/91]

castor3d::CU_DeclareSmartPtr ( BillboardBase  )

◆ CU_DeclareSmartPtr() [12/91]

castor3d::CU_DeclareSmartPtr ( BillboardList  )

◆ CU_DeclareSmartPtr() [13/91]

castor3d::CU_DeclareSmartPtr ( Bone  )

◆ CU_DeclareSmartPtr() [14/91]

castor3d::CU_DeclareSmartPtr ( Camera  )

◆ CU_DeclareSmartPtr() [15/91]

castor3d::CU_DeclareSmartPtr ( Cone  )

◆ CU_DeclareSmartPtr() [16/91]

castor3d::CU_DeclareSmartPtr ( Cube  )

◆ CU_DeclareSmartPtr() [17/91]

castor3d::CU_DeclareSmartPtr ( Cylinder  )

◆ CU_DeclareSmartPtr() [18/91]

castor3d::CU_DeclareSmartPtr ( DirectionalLight  )

◆ CU_DeclareSmartPtr() [19/91]

castor3d::CU_DeclareSmartPtr ( DividerPlugin  )

◆ CU_DeclareSmartPtr() [20/91]

castor3d::CU_DeclareSmartPtr ( Engine  )

◆ CU_DeclareSmartPtr() [21/91]

castor3d::CU_DeclareSmartPtr ( EnvironmentMap  )

◆ CU_DeclareSmartPtr() [22/91]

castor3d::CU_DeclareSmartPtr ( EnvironmentMapPass  )

◆ CU_DeclareSmartPtr() [23/91]

castor3d::CU_DeclareSmartPtr ( EquirectangularToCube  )

◆ CU_DeclareSmartPtr() [24/91]

castor3d::CU_DeclareSmartPtr ( EventHandler  )

◆ CU_DeclareSmartPtr() [25/91]

castor3d::CU_DeclareSmartPtr ( Face  )

◆ CU_DeclareSmartPtr() [26/91]

castor3d::CU_DeclareSmartPtr ( GenericPlugin  )

◆ CU_DeclareSmartPtr() [27/91]

castor3d::CU_DeclareSmartPtr ( Geometry  )

◆ CU_DeclareSmartPtr() [28/91]

castor3d::CU_DeclareSmartPtr ( HandlerEvent  )

◆ CU_DeclareSmartPtr() [29/91]

castor3d::CU_DeclareSmartPtr ( IblTextures  )

◆ CU_DeclareSmartPtr() [30/91]

castor3d::CU_DeclareSmartPtr ( Icosahedron  )

◆ CU_DeclareSmartPtr() [31/91]

castor3d::CU_DeclareSmartPtr ( ImporterPlugin  )

◆ CU_DeclareSmartPtr() [32/91]

castor3d::CU_DeclareSmartPtr ( IndexMapping  )

◆ CU_DeclareSmartPtr() [33/91]

castor3d::CU_DeclareSmartPtr ( InstantiationComponent  )

◆ CU_DeclareSmartPtr() [34/91]

castor3d::CU_DeclareSmartPtr ( KeyboardEvent  )

◆ CU_DeclareSmartPtr() [35/91]

castor3d::CU_DeclareSmartPtr ( Light  )

◆ CU_DeclareSmartPtr() [36/91]

castor3d::CU_DeclareSmartPtr ( LightCategory  )

◆ CU_DeclareSmartPtr() [37/91]

castor3d::CU_DeclareSmartPtr ( LightFactory  )

◆ CU_DeclareSmartPtr() [38/91]

castor3d::CU_DeclareSmartPtr ( Material  )

◆ CU_DeclareSmartPtr() [39/91]

castor3d::CU_DeclareSmartPtr ( Mesh  )

◆ CU_DeclareSmartPtr() [40/91]

castor3d::CU_DeclareSmartPtr ( MeshAnimation  )

◆ CU_DeclareSmartPtr() [41/91]

castor3d::CU_DeclareSmartPtr ( MeshAnimationInstance  )

◆ CU_DeclareSmartPtr() [42/91]

castor3d::CU_DeclareSmartPtr ( MeshAnimationKeyFrame  )

◆ CU_DeclareSmartPtr() [43/91]

castor3d::CU_DeclareSmartPtr ( MeshAnimationSubmesh  )

◆ CU_DeclareSmartPtr() [44/91]

castor3d::CU_DeclareSmartPtr ( MeshGenerator  )

◆ CU_DeclareSmartPtr() [45/91]

castor3d::CU_DeclareSmartPtr ( MeshImporter  )

◆ CU_DeclareSmartPtr() [46/91]

castor3d::CU_DeclareSmartPtr ( MeshSubdivider  )

◆ CU_DeclareSmartPtr() [47/91]

castor3d::CU_DeclareSmartPtr ( MorphComponent  )

◆ CU_DeclareSmartPtr() [48/91]

castor3d::CU_DeclareSmartPtr ( MouseEvent  )

◆ CU_DeclareSmartPtr() [49/91]

castor3d::CU_DeclareSmartPtr ( MovableObject  )

◆ CU_DeclareSmartPtr() [50/91]

castor3d::CU_DeclareSmartPtr ( ParticlePlugin  )

◆ CU_DeclareSmartPtr() [51/91]

castor3d::CU_DeclareSmartPtr ( Pass  )

◆ CU_DeclareSmartPtr() [52/91]

castor3d::CU_DeclareSmartPtr ( Plane  )

◆ CU_DeclareSmartPtr() [53/91]

castor3d::CU_DeclareSmartPtr ( Plugin  )

◆ CU_DeclareSmartPtr() [54/91]

castor3d::CU_DeclareSmartPtr ( PointLight  )

◆ CU_DeclareSmartPtr() [55/91]

castor3d::CU_DeclareSmartPtr ( PostEffect  )

◆ CU_DeclareSmartPtr() [56/91]

castor3d::CU_DeclareSmartPtr ( PostFxPlugin  )

◆ CU_DeclareSmartPtr() [57/91]

castor3d::CU_DeclareSmartPtr ( Projection  )

◆ CU_DeclareSmartPtr() [58/91]

castor3d::CU_DeclareSmartPtr ( RenderCube  )

◆ CU_DeclareSmartPtr() [59/91]

castor3d::CU_DeclareSmartPtr ( RenderNodesPass  )

◆ CU_DeclareSmartPtr() [60/91]

castor3d::CU_DeclareSmartPtr ( SceneBackground  )

◆ CU_DeclareSmartPtr() [61/91]

castor3d::CU_DeclareSmartPtr ( SceneCuller  )

◆ CU_DeclareSmartPtr() [62/91]

castor3d::CU_DeclareSmartPtr ( SceneFileContext  )

◆ CU_DeclareSmartPtr() [63/91]

castor3d::CU_DeclareSmartPtr ( SceneFileParser  )

◆ CU_DeclareSmartPtr() [64/91]

castor3d::CU_DeclareSmartPtr ( SceneImporter  )

◆ CU_DeclareSmartPtr() [65/91]

castor3d::CU_DeclareSmartPtr ( SceneNode  )

◆ CU_DeclareSmartPtr() [66/91]

castor3d::CU_DeclareSmartPtr ( SceneNodeAnimation  )

◆ CU_DeclareSmartPtr() [67/91]

castor3d::CU_DeclareSmartPtr ( SceneNodeAnimationInstance  )

◆ CU_DeclareSmartPtr() [68/91]

castor3d::CU_DeclareSmartPtr ( SceneNodeAnimationKeyFrame  )

◆ CU_DeclareSmartPtr() [69/91]

castor3d::CU_DeclareSmartPtr ( Skeleton  )

◆ CU_DeclareSmartPtr() [70/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimation  )

◆ CU_DeclareSmartPtr() [71/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationBone  )

◆ CU_DeclareSmartPtr() [72/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationInstance  )

◆ CU_DeclareSmartPtr() [73/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationInstanceBone  )

◆ CU_DeclareSmartPtr() [74/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationInstanceNode  )

◆ CU_DeclareSmartPtr() [75/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationInstanceObject  )

◆ CU_DeclareSmartPtr() [76/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationKeyFrame  )

◆ CU_DeclareSmartPtr() [77/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationNode  )

◆ CU_DeclareSmartPtr() [78/91]

castor3d::CU_DeclareSmartPtr ( SkeletonAnimationObject  )

◆ CU_DeclareSmartPtr() [79/91]

castor3d::CU_DeclareSmartPtr ( Sphere  )

◆ CU_DeclareSmartPtr() [80/91]

castor3d::CU_DeclareSmartPtr ( SpotLight  )

◆ CU_DeclareSmartPtr() [81/91]

castor3d::CU_DeclareSmartPtr ( Submesh  )

◆ CU_DeclareSmartPtr() [82/91]

castor3d::CU_DeclareSmartPtr ( SubmeshComponent  )

◆ CU_DeclareSmartPtr() [83/91]

castor3d::CU_DeclareSmartPtr ( SubsurfaceScattering  )

◆ CU_DeclareSmartPtr() [84/91]

castor3d::CU_DeclareSmartPtr ( TextureAnimation  )

◆ CU_DeclareSmartPtr() [85/91]

castor3d::CU_DeclareSmartPtr ( TextureAnimationInstance  )

◆ CU_DeclareSmartPtr() [86/91]

castor3d::CU_DeclareSmartPtr ( TextureAnimationKeyFrame  )

◆ CU_DeclareSmartPtr() [87/91]

castor3d::CU_DeclareSmartPtr ( ToneMapping  )

◆ CU_DeclareSmartPtr() [88/91]

castor3d::CU_DeclareSmartPtr ( Torus  )

◆ CU_DeclareSmartPtr() [89/91]

castor3d::CU_DeclareSmartPtr ( TriFaceMapping  )

◆ CU_DeclareSmartPtr() [90/91]

castor3d::CU_DeclareSmartPtr ( UserInputEvent  )

◆ CU_DeclareSmartPtr() [91/91]

castor3d::CU_DeclareSmartPtr ( UserInputListener  )

◆ CU_DeclareTemplateSmartPtr()

castor3d::CU_DeclareTemplateSmartPtr ( UniformBuffer  )

◆ CU_DeclareVector() [1/39]

castor3d::CU_DeclareVector ( AnimationKeyFrameUPtr  ,
AnimationKeyFrame   
)

◆ CU_DeclareVector() [2/39]

castor3d::CU_DeclareVector ( BillboardListSPtr  ,
BillboardList   
)

BillboardList pointer array.

◆ CU_DeclareVector() [3/39]

castor3d::CU_DeclareVector ( BoneSPtr  ,
BonePtr   
)

Bone pointer array.

◆ CU_DeclareVector() [4/39]

castor3d::CU_DeclareVector ( CameraSPtr  ,
CameraPtr   
)

Camera pointer array.

◆ CU_DeclareVector() [5/39]

castor3d::CU_DeclareVector ( CommandsSemaphore  ,
CommandsSemaphore   
)

◆ CU_DeclareVector() [6/39]

castor3d::CU_DeclareVector ( CpuFrameEventUPtr  ,
CpuFrameEventPtr   
)

◆ CU_DeclareVector() [7/39]

castor3d::CU_DeclareVector ( Face  ,
Face   
)

Face array.

◆ CU_DeclareVector() [8/39]

castor3d::CU_DeclareVector ( FaceSPtr  ,
FacePtr   
)

Face pointer array.

◆ CU_DeclareVector() [9/39]

castor3d::CU_DeclareVector ( float  ,
Float   
)

◆ CU_DeclareVector() [10/39]

castor3d::CU_DeclareVector ( GeometryInjectionPass  ,
GeometryInjectionPass   
)

◆ CU_DeclareVector() [11/39]

castor3d::CU_DeclareVector ( GeometrySPtr  ,
GeometryPtr   
)

Geometry pointer array.

◆ CU_DeclareVector() [12/39]

castor3d::CU_DeclareVector ( GpuFrameEventUPtr  ,
GpuFrameEventPtr   
)

◆ CU_DeclareVector() [13/39]

castor3d::CU_DeclareVector ( IntermediateView  ,
IntermediateView   
)

◆ CU_DeclareVector() [14/39]

castor3d::CU_DeclareVector ( LightInjectionPass  ,
LightInjectionPass   
)

◆ CU_DeclareVector() [15/39]

castor3d::CU_DeclareVector ( LightRPtr  ,
Lights   
)

Array of lights.

◆ CU_DeclareVector() [16/39]

castor3d::CU_DeclareVector ( LightRPtr  ,
LightsRef   
)

Array to non owning light pointers.

◆ CU_DeclareVector() [17/39]

castor3d::CU_DeclareVector ( LightSPtr  ,
LightPtr   
)

Array of lights.

◆ CU_DeclareVector() [18/39]

castor3d::CU_DeclareVector ( LightVolumePassResultUPtr  ,
LightVolumePassResult   
)

◆ CU_DeclareVector() [19/39]

castor3d::CU_DeclareVector ( LpvGridConfigUbo  ,
LpvGridConfigUbo   
)

◆ CU_DeclareVector() [20/39]

castor3d::CU_DeclareVector ( LpvLightConfigUbo  ,
LpvLightConfigUbo   
)

◆ CU_DeclareVector() [21/39]

castor3d::CU_DeclareVector ( MaterialRPtr  ,
MaterialPtr   
)

Material pointer array.

◆ CU_DeclareVector() [22/39]

castor3d::CU_DeclareVector ( MeshAnimationSubmesh  ,
MeshAnimationSubmesh   
)

◆ CU_DeclareVector() [23/39]

castor3d::CU_DeclareVector ( OverlayRPtr  ,
OverlayPtr   
)

◆ CU_DeclareVector() [24/39]

castor3d::CU_DeclareVector ( Particle  ,
Particle   
)

◆ CU_DeclareVector() [25/39]

castor3d::CU_DeclareVector ( ParticleEmitterUPtr  ,
ParticleEmitter   
)

◆ CU_DeclareVector() [26/39]

castor3d::CU_DeclareVector ( ParticleUpdaterUPtr  ,
ParticleUpdater   
)

◆ CU_DeclareVector() [27/39]

castor3d::CU_DeclareVector ( Pass  ,
Pass   
)

Pass array.

◆ CU_DeclareVector() [28/39]

castor3d::CU_DeclareVector ( PassSPtr  ,
PassPtr   
)

Pass pointer array.

◆ CU_DeclareVector() [29/39]

castor3d::CU_DeclareVector ( PostEffectSPtr  ,
PostEffectPtr   
)

◆ CU_DeclareVector() [30/39]

castor3d::CU_DeclareVector ( SceneNodeSPtr  ,
SceneNodePtr   
)

SceneNode pointer array.

◆ CU_DeclareVector() [31/39]

castor3d::CU_DeclareVector ( SkeletonAnimationInstanceObjectSPtr  ,
SkeletonAnimationInstanceObjectPtr   
)

◆ CU_DeclareVector() [32/39]

castor3d::CU_DeclareVector ( SkeletonAnimationObjectSPtr  ,
SkeletonAnimationObjectPtr   
)

SkeletonAnimationObject pointer array.

◆ CU_DeclareVector() [33/39]

castor3d::CU_DeclareVector ( std::reference_wrapper< SkeletonAnimationInstance ,
SkeletonAnimationInstance   
)

Skeleton animation instance pointer array.

◆ CU_DeclareVector() [34/39]

castor3d::CU_DeclareVector ( std::reference_wrapper< TextureUnit ,
DepthMap   
)

TextureUnit reference array.

◆ CU_DeclareVector() [35/39]

castor3d::CU_DeclareVector ( SubmeshSPtr  ,
SubmeshPtr   
)

Submesh pointer array.

◆ CU_DeclareVector() [36/39]

castor3d::CU_DeclareVector ( SubmeshVertex  ,
SubmeshVertex   
)

SubmeshVertex array.

◆ CU_DeclareVector() [37/39]

castor3d::CU_DeclareVector ( TextureUnit  ,
TextureUnit   
)

TextureUnit array.

◆ CU_DeclareVector() [38/39]

castor3d::CU_DeclareVector ( TextureUnitSPtr  ,
TextureUnitPtr   
)

TextureUnit pointer array.

◆ CU_DeclareVector() [39/39]

castor3d::CU_DeclareVector ( VertexBoneData  ,
VertexBoneData   
)

Skinned vertex data array.

◆ filterTexturesFlags()

C3D_API FilteredTextureFlags castor3d::filterTexturesFlags ( TextureFlagsArray const &  textures,
TextureFlags  mask 
)

Filters the given textures flags using the given mask.

Parameters
[in]texturesThe textures flags.
[in]maskThe mask used to filter out textures.
Returns
The filtered flags.

◆ findAnimatedObject()

AnimatedObjectSPtr castor3d::findAnimatedObject ( Scene const &  scene,
castor::String const &  name 
)

◆ getBorderColor() [1/5]

C3D_API VkBorderColor castor3d::getBorderColor ( DsTexture  texture)

◆ getBorderColor() [2/5]

VkBorderColor castor3d::getBorderColor ( LpTexture  texture)

◆ getBorderColor() [3/5]

C3D_API VkBorderColor castor3d::getBorderColor ( LpvTexture  texture)

Referenced by castor3d::GBufferBase::doCreateTextures().

Here is the caller graph for this function:

◆ getBorderColor() [4/5]

C3D_API VkBorderColor castor3d::getBorderColor ( SmTexture  texture)

◆ getBorderColor() [5/5]

C3D_API VkBorderColor castor3d::getBorderColor ( WbTexture  texture)

◆ getBuffer() [1/46]

static uint8_t * castor3d::getBuffer ( bool &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [2/46]

static uint8_t const * castor3d::getBuffer ( bool const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

Referenced by castor3d::ChunkParser< T >::parse(), and castor3d::ChunkWriter< T >::write().

Here is the caller graph for this function:

◆ getBuffer() [3/46]

template<typename T , uint32_t Count>
static uint8_t * castor3d::getBuffer ( castor::Coords< T, Count > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [4/46]

template<typename T , uint32_t Count>
static uint8_t const * castor3d::getBuffer ( castor::Coords< T, Count > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [5/46]

template<typename T , uint32_t Columns, uint32_t Rows>
static uint8_t * castor3d::getBuffer ( castor::Matrix< T, Columns, Rows > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [6/46]

template<typename T , uint32_t Columns, uint32_t Rows>
static uint8_t const * castor3d::getBuffer ( castor::Matrix< T, Columns, Rows > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [7/46]

template<typename T , uint32_t Count>
static uint8_t * castor3d::getBuffer ( castor::Point< T, Count > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [8/46]

template<typename T , uint32_t Count>
static uint8_t const * castor3d::getBuffer ( castor::Point< T, Count > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [9/46]

static uint8_t * castor3d::getBuffer ( castor::Position &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [10/46]

static uint8_t const * castor3d::getBuffer ( castor::Position const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [11/46]

template<typename T >
static uint8_t * castor3d::getBuffer ( castor::QuaternionT< T > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [12/46]

template<typename T >
static uint8_t const * castor3d::getBuffer ( castor::QuaternionT< T > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [13/46]

static uint8_t * castor3d::getBuffer ( castor::RgbaColour &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [14/46]

static uint8_t const * castor3d::getBuffer ( castor::RgbaColour const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [15/46]

static uint8_t * castor3d::getBuffer ( castor::RgbColour &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [16/46]

static uint8_t const * castor3d::getBuffer ( castor::RgbColour const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [17/46]

static uint8_t * castor3d::getBuffer ( castor::Size &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [18/46]

static uint8_t const * castor3d::getBuffer ( castor::Size const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [19/46]

template<typename T , uint32_t Count>
static uint8_t * castor3d::getBuffer ( castor::SquareMatrix< T, Count > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [20/46]

template<typename T , uint32_t Count>
static uint8_t const * castor3d::getBuffer ( castor::SquareMatrix< T, Count > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer.

◆ getBuffer() [21/46]

static uint8_t * castor3d::getBuffer ( double &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [22/46]

static uint8_t const * castor3d::getBuffer ( double const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [23/46]

static uint8_t * castor3d::getBuffer ( float &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [24/46]

static uint8_t const * castor3d::getBuffer ( float const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [25/46]

static uint8_t * castor3d::getBuffer ( int16_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [26/46]

static uint8_t const * castor3d::getBuffer ( int16_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [27/46]

static uint8_t * castor3d::getBuffer ( int32_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [28/46]

static uint8_t const * castor3d::getBuffer ( int32_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [29/46]

static uint8_t * castor3d::getBuffer ( int64_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [30/46]

static uint8_t const * castor3d::getBuffer ( int64_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [31/46]

static uint8_t * castor3d::getBuffer ( int8_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [32/46]

static uint8_t const * castor3d::getBuffer ( int8_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [33/46]

static uint8_t * castor3d::getBuffer ( long double &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [34/46]

static uint8_t const * castor3d::getBuffer ( long double const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [35/46]

template<typename T , size_t Count>
static uint8_t * castor3d::getBuffer ( std::array< T, Count > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [36/46]

template<typename T , size_t Count>
static uint8_t const * castor3d::getBuffer ( std::array< T, Count > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [37/46]

template<typename T >
static uint8_t * castor3d::getBuffer ( std::vector< T > &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [38/46]

template<typename T >
static uint8_t const * castor3d::getBuffer ( std::vector< T > const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [39/46]

static uint8_t * castor3d::getBuffer ( uint16_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [40/46]

static uint8_t const * castor3d::getBuffer ( uint16_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [41/46]

static uint8_t * castor3d::getBuffer ( uint32_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [42/46]

static uint8_t const * castor3d::getBuffer ( uint32_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [43/46]

static uint8_t * castor3d::getBuffer ( uint64_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [44/46]

static uint8_t const * castor3d::getBuffer ( uint64_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [45/46]

static uint8_t * castor3d::getBuffer ( uint8_t &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getBuffer() [46/46]

static uint8_t const * castor3d::getBuffer ( uint8_t const &  value)
inlinestatic

Retrieves the beginning of the buffer for given value.

Parameters
[in]valueThe value.
Returns
The buffer (&value for basic types).

◆ getClearValue() [1/5]

C3D_API VkClearValue castor3d::getClearValue ( DsTexture  texture)

◆ getClearValue() [2/5]

VkClearValue castor3d::getClearValue ( LpTexture  texture)

◆ getClearValue() [3/5]

C3D_API VkClearValue castor3d::getClearValue ( LpvTexture  texture)

◆ getClearValue() [4/5]

C3D_API VkClearValue castor3d::getClearValue ( SmTexture  texture)

◆ getClearValue() [5/5]

C3D_API VkClearValue castor3d::getClearValue ( WbTexture  texture)

◆ getCmshMajor()

constexpr uint32_t castor3d::getCmshMajor ( uint32_t  version)
inlineconstexpr

Referenced by castor3d::BinaryParserBase< TParsed >::doParseHeader().

Here is the caller graph for this function:

◆ getCmshMinor()

constexpr uint32_t castor3d::getCmshMinor ( uint32_t  version)
inlineconstexpr

Referenced by castor3d::BinaryParserBase< TParsed >::doParseHeader().

Here is the caller graph for this function:

◆ getCmshRevision()

constexpr uint32_t castor3d::getCmshRevision ( uint32_t  version)
inlineconstexpr

Referenced by castor3d::BinaryParserBase< TParsed >::doParseHeader().

Here is the caller graph for this function:

◆ getDataSize() [1/12]

template<typename T , uint32_t Count>
static size_t castor3d::getDataSize ( castor::Coords< T, Count > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [2/12]

template<typename T , uint32_t Columns, uint32_t Rows>
static size_t castor3d::getDataSize ( castor::Matrix< T, Columns, Rows > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [3/12]

template<typename T , uint32_t Count>
static size_t castor3d::getDataSize ( castor::Point< T, Count > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [4/12]

static size_t castor3d::getDataSize ( castor::Position const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [5/12]

template<typename T >
static size_t castor3d::getDataSize ( castor::QuaternionT< T > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [6/12]

static size_t castor3d::getDataSize ( castor::RgbaColour const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [7/12]

static size_t castor3d::getDataSize ( castor::RgbColour const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [8/12]

static size_t castor3d::getDataSize ( castor::Size const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [9/12]

template<typename T , uint32_t Count>
static size_t castor3d::getDataSize ( castor::SquareMatrix< T, Count > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [10/12]

template<typename T , size_t Count>
static size_t castor3d::getDataSize ( std::array< T, Count > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [11/12]

template<typename T >
static size_t castor3d::getDataSize ( std::vector< T > const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

◆ getDataSize() [12/12]

template<typename T >
static size_t castor3d::getDataSize ( T const &  value)
inlinestatic

Retrieves the value binary size.

Parameters
[in]valueThe value.
Returns
The size (sizeof( value ) for basic types).

Referenced by castor3d::ChunkParser< T >::parse(), and castor3d::ChunkWriter< T >::write().

Here is the caller graph for this function:

◆ getEngine()

C3D_API Engine & castor3d::getEngine ( Scene const &  scene)

◆ getEnumMapT() [1/2]

template<typename EnumT >
castor::UInt32StrMap castor3d::getEnumMapT ( )

References getEnumMapT().

Here is the call graph for this function:

◆ getEnumMapT() [2/2]

template<typename EnumT >
castor::UInt32StrMap castor3d::getEnumMapT ( EnumT  min,
EnumT  max 
)

References getName().

Referenced by getEnumMapT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFlags()

C3D_API TextureFlags castor3d::getFlags ( TextureConfiguration const &  config)

◆ getFogType()

C3D_API FogType castor3d::getFogType ( SceneFlags const &  flags)

Gives the fog type matching the given flags.

Parameters
[in]flagsThe scene flags.
Returns
The fog type.

◆ getFormat() [1/5]

C3D_API VkFormat castor3d::getFormat ( DsTexture  texture)

◆ getFormat() [2/5]

VkFormat castor3d::getFormat ( LpTexture  texture)

◆ getFormat() [3/5]

C3D_API VkFormat castor3d::getFormat ( LpvTexture  texture)

Referenced by castor3d::GBufferBase::doCreateTextures().

Here is the caller graph for this function:

◆ getFormat() [4/5]

C3D_API VkFormat castor3d::getFormat ( SmTexture  texture)

◆ getFormat() [5/5]

C3D_API VkFormat castor3d::getFormat ( WbTexture  texture)

◆ getLogger() [1/2]

castor::LoggerInstance & castor3d::getLogger ( Engine engine)

◆ getLogger() [2/2]

C3D_API castor::LoggerInstance & castor3d::getLogger ( Scene const &  scene)

◆ getMaxDistance() [1/2]

float castor3d::getMaxDistance ( LightCategory const &  light,
castor::Point3f const &  attenuation 
)

Retrieve the maximum litten distance for given light and attenuation.

Parameters
[in]lightThe light source.
[in]attenuationThe attenuation values.
Returns
The value.

◆ getMaxDistance() [2/2]

float castor3d::getMaxDistance ( LightCategory const &  light,
castor::Point3f const &  attenuation,
float  max 
)

Retrieve the maximum litten distance for given light and attenuation.

Parameters
[in]lightThe light source.
[in]attenuationThe attenuation values.
[in]maxThe viewer max value.
Returns
The value.

◆ getMipLevels() [1/10]

uint32_t castor3d::getMipLevels ( DsTexture  texture,
castor::Size const &  size 
)
inline

◆ getMipLevels() [2/10]

uint32_t castor3d::getMipLevels ( LpTexture  texture,
castor::Size const &  size 
)
inline

◆ getMipLevels() [3/10]

uint32_t castor3d::getMipLevels ( LpTexture  texture,
VkExtent3D const &  size 
)
inline

References getMipLevels().

Here is the call graph for this function:

◆ getMipLevels() [4/10]

uint32_t castor3d::getMipLevels ( LpvTexture  texture,
castor::Size const &  size 
)
inline

◆ getMipLevels() [5/10]

uint32_t castor3d::getMipLevels ( LpvTexture  texture,
VkExtent3D const &  size 
)
inline

References getMipLevels().

Here is the call graph for this function:

◆ getMipLevels() [6/10]

C3D_API uint32_t castor3d::getMipLevels ( SmTexture  texture,
castor::Size const &  size 
)

◆ getMipLevels() [7/10]

uint32_t castor3d::getMipLevels ( SmTexture  texture,
VkExtent3D const &  size 
)
inline

References getMipLevels().

Here is the call graph for this function:

◆ getMipLevels() [8/10]

C3D_API uint32_t castor3d::getMipLevels ( VkExtent3D const &  extent,
VkFormat  format 
)

Referenced by castor3d::GBufferBase::doCreateTextures(), and getMipLevels().

Here is the caller graph for this function:

◆ getMipLevels() [9/10]

uint32_t castor3d::getMipLevels ( WbTexture  texture,
castor::Size const &  size 
)
inline

◆ getMipLevels() [10/10]

uint32_t castor3d::getMipLevels ( WbTexture  texture,
VkExtent3D const &  size 
)
inline

References getMipLevels().

Here is the call graph for this function:

◆ getName() [1/45]

C3D_API castor::String castor3d::getName ( AnimationState  value)

◆ getName() [2/45]

C3D_API castor::String castor3d::getName ( AnimationType  value)

◆ getName() [3/45]

C3D_API castor::String castor3d::getName ( BackgroundType  value)

◆ getName() [4/45]

C3D_API castor::String castor3d::getName ( BillboardSize  value)

◆ getName() [5/45]

C3D_API castor::String castor3d::getName ( BillboardType  value)

◆ getName() [6/45]

C3D_API castor::String castor3d::getName ( BlendMode  value)

◆ getName() [7/45]

C3D_API castor::String castor3d::getName ( BorderPosition  value)

◆ getName() [8/45]

C3D_API castor::String castor3d::getName ( CubeMapFace  value)

◆ getName() [9/45]

C3D_API castor::String castor3d::getName ( DsTexture  texture)

◆ getName() [10/45]

C3D_API castor::String castor3d::getName ( ElementUsage  value)

◆ getName() [11/45]

C3D_API castor::String castor3d::getName ( EventType  value)

◆ getName() [12/45]

C3D_API castor::String castor3d::getName ( FogType  value)

◆ getName() [13/45]

C3D_API castor::String castor3d::getName ( FrustumCorner  value)

◆ getName() [14/45]

C3D_API castor::String castor3d::getName ( FrustumPlane  value)

◆ getName() [15/45]

castor::String castor3d::getName ( GlobalIlluminationType  giType)

◆ getName() [16/45]

C3D_API castor::String castor3d::getName ( HAlign  value)

◆ getName() [17/45]

C3D_API castor::String castor3d::getName ( HandlerEventType  value)

◆ getName() [18/45]

C3D_API castor::String castor3d::getName ( InterpolatorType  value)

◆ getName() [19/45]

C3D_API castor::String castor3d::getName ( KeyboardEventType  value)

◆ getName() [20/45]

C3D_API castor::String castor3d::getName ( LightType  value)

◆ getName() [21/45]

castor::String castor3d::getName ( LpTexture  texture)

◆ getName() [22/45]

C3D_API castor::String castor3d::getName ( LpvTexture  texture)

◆ getName() [23/45]

C3D_API castor::String castor3d::getName ( MouseButton  value)

◆ getName() [24/45]

C3D_API castor::String castor3d::getName ( MouseEventType  value)

◆ getName() [25/45]

C3D_API castor::String castor3d::getName ( MovableType  value)

◆ getName() [26/45]

C3D_API castor::String castor3d::getName ( OverlayType  value)

◆ getName() [27/45]

C3D_API castor::String castor3d::getName ( ParallaxOcclusionMode  value)

◆ getName() [28/45]

C3D_API castor::String castor3d::getName ( ParticleFormat  value)

◆ getName() [29/45]

C3D_API castor::String castor3d::getName ( PassFlag  value)

◆ getName() [30/45]

C3D_API castor::String castor3d::getName ( PickNodeType  value)

◆ getName() [31/45]

C3D_API castor::String castor3d::getName ( RenderMode  value)

◆ getName() [32/45]

C3D_API castor::String castor3d::getName ( ShadowType  value)

◆ getName() [33/45]

C3D_API castor::String castor3d::getName ( SkeletonAnimationObjectType  value)

◆ getName() [34/45]

C3D_API castor::String castor3d::getName ( SmTexture  texture)

◆ getName() [35/45]

C3D_API castor::String castor3d::getName ( TargetType  value)

◆ getName() [36/45]

C3D_API castor::String castor3d::getName ( TextLineSpacingMode  value)

◆ getName() [37/45]

C3D_API castor::String castor3d::getName ( TextTexturingMode  value)

◆ getName() [38/45]

C3D_API castor::String castor3d::getName ( TextureFlag  value,
bool  isPbr 
)

◆ getName() [39/45]

C3D_API castor::String castor3d::getName ( TextureSpace  value)

◆ getName() [40/45]

C3D_API castor::String castor3d::getName ( TextureSpaces  value)

◆ getName() [41/45]

C3D_API castor::String castor3d::getName ( TextWrappingMode  value)

◆ getName() [42/45]

C3D_API castor::String castor3d::getName ( UserInputEventType  value)

◆ getName() [43/45]

C3D_API castor::String castor3d::getName ( VAlign  value)

◆ getName() [44/45]

C3D_API castor::String castor3d::getName ( ViewportType  value)

◆ getName() [45/45]

C3D_API castor::String castor3d::getName ( WbTexture  texture)

◆ getNonSRGBFormat()

C3D_API castor::PixelFormat castor3d::getNonSRGBFormat ( castor::PixelFormat  pformat)

◆ getParserContext()

C3D_API SceneFileContext & castor3d::getParserContext ( castor::FileParserContext &  context)

◆ getPipelineBaseHash() [1/3]

uint64_t castor3d::getPipelineBaseHash ( ProgramFlags  programFlags,
PassFlags  passFlags,
uint32_t  texturesCount,
TextureFlags  texturesFlags,
uint32_t  layerIndex 
)

◆ getPipelineBaseHash() [2/3]

uint64_t castor3d::getPipelineBaseHash ( RenderNodesPass const &  renderPass,
BillboardBase const &  data,
Pass const &  pass,
bool  isFrontCulled 
)

◆ getPipelineBaseHash() [3/3]

uint64_t castor3d::getPipelineBaseHash ( RenderNodesPass const &  renderPass,
Submesh const &  data,
Pass const &  pass,
bool  isFrontCulled 
)

◆ getPixelComponents()

C3D_API castor::PixelComponents castor3d::getPixelComponents ( uint32_t  mask)

◆ getRenderNodeType()

RenderNodeType castor3d::getRenderNodeType ( ProgramFlags const &  flags)

◆ getSafeBandedAspect()

C3D_API float castor3d::getSafeBandedAspect ( float  aspect,
castor::Size const &  size 
)

◆ getSafeBandedExtent3D()

C3D_API VkExtent3D castor3d::getSafeBandedExtent3D ( castor::Size const &  size)

◆ getSafeBandedFovY()

C3D_API castor::Angle castor3d::getSafeBandedFovY ( castor::Angle const &  fovY,
castor::Size const &  size 
)

◆ getSafeBandedSize()

C3D_API castor::Size castor3d::getSafeBandedSize ( castor::Size const &  size)

◆ getSafeBandSize()

C3D_API uint32_t castor3d::getSafeBandSize ( castor::Size const &  size)

◆ getSafeBandsSize()

C3D_API uint32_t castor3d::getSafeBandsSize ( castor::Size const &  size)

◆ getSamplerName()

castor::String castor3d::getSamplerName ( VkFilter  minFilter,
VkFilter  magFilter,
VkSamplerMipmapMode  mipFilter,
VkSamplerAddressMode  U,
VkSamplerAddressMode  V,
VkSamplerAddressMode  W 
)

◆ getSize()

VkDeviceSize castor3d::getSize ( ParticleFormat  format)
inline
Parameters
[in]formatThe particle format.
Returns
The data size for this particle format.

References eFloat, eInt, eMat2f, eMat3f, eMat4f, eUInt, eVec2f, eVec2i, eVec2ui, eVec3f, eVec3i, eVec3ui, eVec4f, eVec4i, and eVec4ui.

Referenced by castor3d::ParticleDeclaration::emplace_back(), and castor3d::ParticleDeclaration::push_back().

Here is the caller graph for this function:

◆ getSRGBFormat()

C3D_API castor::PixelFormat castor3d::getSRGBFormat ( castor::PixelFormat  pformat)

◆ getTextureName() [1/5]

C3D_API castor::String castor3d::getTextureName ( DsTexture  texture)

◆ getTextureName() [2/5]

C3D_API castor::String castor3d::getTextureName ( LightType  light,
SmTexture  texture 
)

◆ getTextureName() [3/5]

castor::String castor3d::getTextureName ( LpTexture  texture)

◆ getTextureName() [4/5]

C3D_API castor::String castor3d::getTextureName ( LpvTexture  texture,
std::string const &  infix 
)

◆ getTextureName() [5/5]

C3D_API castor::String castor3d::getTextureName ( WbTexture  texture)

◆ getUsageFlags() [1/5]

C3D_API VkImageUsageFlags castor3d::getUsageFlags ( DsTexture  texture)

◆ getUsageFlags() [2/5]

VkImageUsageFlags castor3d::getUsageFlags ( LpTexture  texture)

◆ getUsageFlags() [3/5]

C3D_API VkImageUsageFlags castor3d::getUsageFlags ( LpvTexture  texture)

Referenced by castor3d::GBufferBase::doCreateTextures().

Here is the caller graph for this function:

◆ getUsageFlags() [4/5]

C3D_API VkImageUsageFlags castor3d::getUsageFlags ( SmTexture  texture)

◆ getUsageFlags() [5/5]

C3D_API VkImageUsageFlags castor3d::getUsageFlags ( WbTexture  texture)

◆ hash() [1/4]

C3D_API size_t castor3d::hash ( BillboardBase const &  billboard,
Pass const &  pass 
)

◆ hash() [2/4]

size_t castor3d::hash ( BillboardRenderNode const &  culled)

◆ hash() [3/4]

C3D_API size_t castor3d::hash ( Geometry const &  geometry,
Submesh const &  submesh,
Pass const &  pass 
)

◆ hash() [4/4]

size_t castor3d::hash ( SubmeshRenderNode const &  culled)

◆ incProgressBarRange()

C3D_API void castor3d::incProgressBarRange ( ProgressBar progress,
uint32_t  value 
)

◆ initialiseGlslang()

C3D_API void castor3d::initialiseGlslang ( )

Initialises glslang globals.

◆ isCulled() [1/2]

bool castor3d::isCulled ( BillboardRenderNode const &  node)

◆ isCulled() [2/2]

bool castor3d::isCulled ( SubmeshRenderNode const &  node)

◆ isShadowMapProgram()

C3D_API bool castor3d::isShadowMapProgram ( ProgramFlags const &  flags)

Tells if the given flags contain a shadow map flag.

Parameters
[in]flagsThe flags to check.
Returns
true if flags contain one of ProgramFlag::eShadowMapDirectional, ProgramFlag::eShadowMapSpot, or ProgramFlag::eShadowMapPoint.

◆ isVisible() [1/4]

bool castor3d::isVisible ( Camera const &  camera,
BillboardRenderNode const &  node 
)

◆ isVisible() [2/4]

bool castor3d::isVisible ( Camera const &  camera,
SubmeshRenderNode const &  node 
)

◆ isVisible() [3/4]

bool castor3d::isVisible ( Frustum const &  frustum,
BillboardRenderNode const &  node 
)

◆ isVisible() [4/4]

bool castor3d::isVisible ( Frustum const &  frustum,
SubmeshRenderNode const &  node 
)

◆ makeBuffer()

template<typename T >
ashes::BufferPtr< T > castor3d::makeBuffer ( RenderDevice const &  device,
VkDeviceSize  count,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string const &  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeBufferBase()

ashes::BufferBasePtr castor3d::makeBufferBase ( RenderDevice const &  device,
VkDeviceSize  size,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string const &  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeCache()

std::unique_ptr< ShaderProgramCache > castor3d::makeCache ( Engine engine)
inline

Creates a ashes::ShaderProgram cache.

Parameters
[in]engineThe engine.

◆ makeCacheView()

template<EventType EventT, typename CacheT >
CacheViewPtrT< CacheT, EventT > castor3d::makeCacheView ( castor::String const &  name,
CacheT &  cache,
typename CacheViewTraitsT< CacheT >::ElementInitialiserT  initialiser = {},
typename CacheViewTraitsT< CacheT >::ElementCleanerT  cleaner = {} 
)

◆ makeChunkID()

uint64_t constexpr castor3d::makeChunkID ( char  a,
char  b,
char  c,
char  d,
char  e,
char  f,
char  g,
char  h 
)
constexpr

A define to ease the declaration of a chunk id.

◆ makeClearValue() [1/3]

VkClearValue castor3d::makeClearValue ( float  depth,
uint32_t  stencil = 0u 
)
inline

References makeClearValue().

Here is the call graph for this function:

◆ makeClearValue() [2/3]

VkClearValue castor3d::makeClearValue ( float  r,
float  g,
float  b,
float  a = 1.0f 
)
inline

References makeClearValue().

Referenced by makeClearValue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeClearValue() [3/3]

VkClearValue castor3d::makeClearValue ( uint32_t  r,
uint32_t  g,
uint32_t  b,
uint32_t  a 
)
inline

References makeClearValue().

Here is the call graph for this function:

◆ makeCmshVersion()

constexpr uint32_t castor3d::makeCmshVersion ( uint32_t  maj,
uint32_t  min,
uint32_t  rev 
)
inlineconstexpr

◆ makeCpuCleanupEvent()

template<typename T >
CpuFrameEventUPtr castor3d::makeCpuCleanupEvent ( T &  object)
inline

Helper function to create a cleanup event.

Parameters
[in]objectThe object to cleanup

References ePreRender, and makeCpuFunctorEvent().

Referenced by castor3d::CpuEventCleanerT< CacheT >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeCpuFrameEvent()

template<typename EventT , typename ... ParamsT>
CpuFrameEventUPtr castor3d::makeCpuFrameEvent ( ParamsT &&...  params)
inline

◆ makeCpuFunctorEvent()

CpuFrameEventUPtr castor3d::makeCpuFunctorEvent ( EventType  type,
CpuFunctorEvent::Functor  functor 
)
inline

Helper function to create a functor event.

Parameters
[in]typeThe event type
[in]functorThe functor to execute

Referenced by makeCpuCleanupEvent(), and makeCpuInitialiseEvent().

Here is the caller graph for this function:

◆ makeCpuInitialiseEvent()

template<typename T >
CpuFrameEventUPtr castor3d::makeCpuInitialiseEvent ( T &  object)
inline

Helper function to create an initialise event.

Parameters
[in]objectThe object to initialise.

References ePreRender, and makeCpuFunctorEvent().

Referenced by castor3d::CpuEventInitialiserT< CacheT >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeDescriptorSetLayoutBinding()

VkDescriptorSetLayoutBinding castor3d::makeDescriptorSetLayoutBinding ( uint32_t  binding,
VkDescriptorType  descriptorType,
VkShaderStageFlags  stageFlags,
uint32_t  descriptorCount = 1u,
VkSampler const *  pImmutableSamplers = nullptr 
)
inline

◆ makeExtent2D() [1/3]

VkExtent2D castor3d::makeExtent2D ( castor::Coords2ui const &  size)
inline

◆ makeExtent2D() [2/3]

VkExtent2D castor3d::makeExtent2D ( castor::Point2ui const &  size)
inline

◆ makeExtent2D() [3/3]

VkExtent2D castor3d::makeExtent2D ( VkExtent3D const &  size)
inline

Referenced by makeScissor(), and makeViewport().

Here is the caller graph for this function:

◆ makeExtent3D() [1/3]

VkExtent3D castor3d::makeExtent3D ( castor::Coords2ui const &  size)
inline

◆ makeExtent3D() [2/3]

VkExtent3D castor3d::makeExtent3D ( castor::Point2ui const &  size)
inline

◆ makeExtent3D() [3/3]

VkExtent3D castor3d::makeExtent3D ( VkExtent2D const &  size)
inline

◆ makeFloatArray()

std::array< float, 4u > castor3d::makeFloatArray ( castor::RgbaColour const &  value)

◆ makeGpuCleanupEvent()

template<typename T >
GpuFrameEventUPtr castor3d::makeGpuCleanupEvent ( T &  object)
inline

Helper function to create a cleanup event.

Parameters
[in]objectThe object to cleanup

References ePreRender, and makeGpuFunctorEvent().

Referenced by castor3d::GpuEventCleanerT< CacheT >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeGpuFrameEvent()

template<typename EventT , typename ... ParamsT>
GpuFrameEventUPtr castor3d::makeGpuFrameEvent ( ParamsT &&...  params)
inline

◆ makeGpuFunctorEvent()

GpuFrameEventUPtr castor3d::makeGpuFunctorEvent ( EventType  type,
GpuFunctorEvent::Functor  functor 
)
inline

Helper function to create a functor event.

Parameters
[in]typeThe event type
[in]functorThe functor to execute

Referenced by makeGpuCleanupEvent(), and makeGpuInitialiseEvent().

Here is the caller graph for this function:

◆ makeGpuInitialiseEvent()

template<typename T >
GpuFrameEventUPtr castor3d::makeGpuInitialiseEvent ( T &  object)
inline

Helper function to create an initialise event.

Parameters
[in]objectThe object to initialise.

References ePreRender, and makeGpuFunctorEvent().

Referenced by castor3d::GpuEventInitialiserT< CacheT >::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeImage() [1/3]

C3D_API ashes::Image castor3d::makeImage ( ashes::Device const &  device,
Texture const &  texture 
)

◆ makeImage() [2/3]

C3D_API ashes::Image castor3d::makeImage ( ashes::Device const &  device,
VkImage  image,
crg::ImageId  data 
)

◆ makeImage() [3/3]

ashes::ImagePtr castor3d::makeImage ( RenderDevice const &  device,
ashes::ImageCreateInfo  createInfo,
VkMemoryPropertyFlags  flags,
std::string const &  name 
)
inline

◆ makeImageView()

C3D_API ashes::ImageView castor3d::makeImageView ( ashes::Device const &  device,
ashes::Image const &  image,
VkImageView  view,
crg::ImageViewId  data 
)

◆ makeLayoutTransition() [1/3]

C3D_API VkImageMemoryBarrier castor3d::makeLayoutTransition ( VkImage  image,
VkImageSubresourceRange const &  range,
VkImageLayout  sourceLayout,
VkImageLayout  destinationLayout,
uint32_t  srcQueueFamily,
uint32_t  dstQueueFamily 
)

◆ makeLayoutTransition() [2/3]

C3D_API VkImageMemoryBarrier castor3d::makeLayoutTransition ( VkImage  image,
VkImageSubresourceRange const &  range,
VkImageLayout  srcLayout,
VkImageLayout  dstLayout,
VkAccessFlags  srcAccessFlags,
uint32_t  srcQueueFamily,
uint32_t  dstQueueFamily 
)

◆ makeLayoutTransition() [3/3]

C3D_API VkImageMemoryBarrier castor3d::makeLayoutTransition ( VkImage  image,
VkImageSubresourceRange const &  range,
VkImageLayout  srcLayout,
VkImageLayout  dstLayout,
VkAccessFlags  srcAccessFlags,
VkAccessFlags  dstAccessMask,
uint32_t  srcQueueFamily,
uint32_t  dstQueueFamily 
)

◆ makeObjectCache()

template<typename ObjT , typename KeyT , typename TraitsT , typename ... ParametersT>
ObjectCachePtrT< ObjT, KeyT, TraitsT > castor3d::makeObjectCache ( ParametersT &&...  parameters)

Creates an object cache.

Parameters
[in]parametersThe cache ctor parameters.

◆ makeOffset2D() [1/2]

VkOffset2D castor3d::makeOffset2D ( castor::Coords2i const &  pos)
inline

Referenced by makeScissor(), and makeViewport().

Here is the caller graph for this function:

◆ makeOffset2D() [2/2]

VkOffset2D castor3d::makeOffset2D ( castor::Point2i const &  pos)
inline

◆ makeOffset3D() [1/2]

VkOffset3D castor3d::makeOffset3D ( castor::Coords2i const &  pos)
inline

◆ makeOffset3D() [2/2]

VkOffset3D castor3d::makeOffset3D ( castor::Point2i const &  pos)
inline

◆ makePoolUniformBuffer()

PoolUniformBufferUPtr castor3d::makePoolUniformBuffer ( RenderSystem const &  renderSystem,
castor::ArrayView< uint8_t >  data,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeSampledImageView()

C3D_API ashes::ImageView castor3d::makeSampledImageView ( ashes::Device const &  device,
ashes::Image const &  image,
Texture const &  texture 
)

◆ makeScissor() [1/6]

VkRect2D castor3d::makeScissor ( castor::Coords2i const &  pos,
castor::Coords2ui const &  size 
)
inline

References makeExtent2D(), makeOffset2D(), and makeScissor().

Here is the call graph for this function:

◆ makeScissor() [2/6]

VkRect2D castor3d::makeScissor ( castor::Coords2i const &  pos,
castor::Point2ui const &  size 
)
inline

References makeExtent2D(), makeOffset2D(), and makeScissor().

Here is the call graph for this function:

◆ makeScissor() [3/6]

VkRect2D castor3d::makeScissor ( castor::Coords2ui const &  size)
inline

References makeExtent2D(), and makeScissor().

Here is the call graph for this function:

◆ makeScissor() [4/6]

VkRect2D castor3d::makeScissor ( castor::Point2i const &  pos,
castor::Coords2ui const &  size 
)
inline

References makeExtent2D(), makeOffset2D(), and makeScissor().

Here is the call graph for this function:

◆ makeScissor() [5/6]

VkRect2D castor3d::makeScissor ( castor::Point2i const &  pos,
castor::Point2ui const &  size 
)
inline

References makeExtent2D(), makeOffset2D(), and makeScissor().

Referenced by makeScissor().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeScissor() [6/6]

VkRect2D castor3d::makeScissor ( castor::Point2ui const &  size)
inline

References makeExtent2D(), and makeScissor().

Here is the call graph for this function:

◆ makeShaderState() [1/2]

ashes::PipelineShaderStageCreateInfo castor3d::makeShaderState ( ashes::Device const &  device,
VkShaderStageFlagBits  stage,
SpirVShader  code,
std::string const &  name,
std::string  mainFuncName = "main",
ashes::Optional< ashes::SpecializationInfo >  specialization = ashes::nullopt 
)
inline

References getName(), and castor3d::SpirVShader::spirv.

Here is the call graph for this function:

◆ makeShaderState() [2/2]

ashes::PipelineShaderStageCreateInfo castor3d::makeShaderState ( RenderDevice const &  device,
ShaderModule const &  shaderModule,
std::string  mainFuncName = "main",
ashes::Optional< ashes::SpecializationInfo >  specialization = ashes::nullopt 
)
inline

◆ makeSize() [1/2]

castor::Size castor3d::makeSize ( VkExtent2D const &  size)
inline

◆ makeSize() [2/2]

castor::Size castor3d::makeSize ( VkExtent3D const &  size)
inline

◆ makeTargetImageView()

C3D_API ashes::ImageView castor3d::makeTargetImageView ( ashes::Device const &  device,
ashes::Image const &  image,
Texture const &  texture 
)

◆ makeUniformBuffer()

template<typename DataT >
UniformBufferUPtrT< DataT > castor3d::makeUniformBuffer ( RenderSystem const &  renderSystem,
VkDeviceSize  count,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeUniformBufferBase()

UniformBufferBaseUPtr castor3d::makeUniformBufferBase ( RenderSystem const &  renderSystem,
VkDeviceSize  count,
VkDeviceSize  size,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeVertexBuffer()

template<typename T >
ashes::VertexBufferPtr< T > castor3d::makeVertexBuffer ( RenderDevice const &  device,
VkDeviceSize  count,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string const &  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeVertexBufferBase()

ashes::VertexBufferBasePtr castor3d::makeVertexBufferBase ( RenderDevice const &  device,
VkDeviceSize  size,
VkBufferUsageFlags  usage,
VkMemoryPropertyFlags  flags,
std::string const &  name,
ashes::QueueShare  sharingMode = {} 
)
inline

◆ makeViewport() [1/6]

VkViewport castor3d::makeViewport ( castor::Coords2i const &  pos,
castor::Coords2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), makeOffset2D(), and makeViewport().

Here is the call graph for this function:

◆ makeViewport() [2/6]

VkViewport castor3d::makeViewport ( castor::Coords2i const &  pos,
castor::Point2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), makeOffset2D(), and makeViewport().

Here is the call graph for this function:

◆ makeViewport() [3/6]

VkViewport castor3d::makeViewport ( castor::Coords2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), and makeViewport().

Here is the call graph for this function:

◆ makeViewport() [4/6]

VkViewport castor3d::makeViewport ( castor::Point2i const &  pos,
castor::Coords2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), makeOffset2D(), and makeViewport().

Here is the call graph for this function:

◆ makeViewport() [5/6]

VkViewport castor3d::makeViewport ( castor::Point2i const &  pos,
castor::Point2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), makeOffset2D(), and makeViewport().

Referenced by makeViewport().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeViewport() [6/6]

VkViewport castor3d::makeViewport ( castor::Point2ui const &  size,
float  zMin = 0.0f,
float  zMax = 1.0f 
)
inline

References makeExtent2D(), and makeViewport().

Here is the call graph for this function:

◆ makeVkStruct()

template<typename VkStructT , typename ... ParamsT>
VkStructT castor3d::makeVkStruct ( ParamsT &&...  params)
inline

◆ makeVkStructPNext()

template<typename VkStructT , typename ... ParamsT>
VkStructT castor3d::makeVkStructPNext ( void *  next,
ParamsT &&...  params 
)
inline

◆ makeWholeImageView()

C3D_API ashes::ImageView castor3d::makeWholeImageView ( ashes::Device const &  device,
ashes::Image const &  image,
Texture const &  texture 
)

◆ merge()

C3D_API TextureFlags castor3d::merge ( TextureFlagsArray const &  flags)

◆ mergeConfigs()

C3D_API void castor3d::mergeConfigs ( TextureConfiguration const &  lhs,
TextureConfiguration rhs 
)

◆ operator!=() [1/8]

C3D_API bool castor3d::operator!= ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Difference operator.

Parameters
[in]a,bThe versions to compare.
Returns
true if one version number is different from a to b.

◆ operator!=() [2/8]

bool castor3d::operator!= ( DirectionalLightCascade const &  lhs,
DirectionalLightCascade const &  rhs 
)
inline

◆ operator!=() [3/8]

C3D_API bool castor3d::operator!= ( ParticleDeclaration const &  lhs,
ParticleDeclaration const &  rhs 
)

Equality operator.

Parameters
[in]lhs,rhsThe 2 objects to compare.

◆ operator!=() [4/8]

bool castor3d::operator!= ( ParticleElementDeclaration const &  lhs,
ParticleElementDeclaration const &  rhs 
)
inline

◆ operator!=() [5/8]

C3D_API bool castor3d::operator!= ( TextureConfiguration const &  lhs,
TextureConfiguration const &  rhs 
)

◆ operator!=() [6/8]

bool castor3d::operator!= ( TextureSourceInfo const &  lhs,
TextureSourceInfo const &  rhs 
)
inlinenoexcept

◆ operator!=() [7/8]

bool castor3d::operator!= ( TextureTransform const &  lhs,
TextureTransform const &  rhs 
)
inlinenoexcept

◆ operator!=() [8/8]

bool castor3d::operator!= ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ operator<() [1/3]

C3D_API bool castor3d::operator< ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Less than operator.

Parameters
[in]a,bThe versions to compare.
Returns
true if a.major is less than b.major or if they are equal and a.minor is less than b.minor or if majors and minors are equal and a.build is less than b.build.

◆ operator<() [2/3]

bool castor3d::operator< ( MemChunk const &  lhs,
MemChunk const &  rhs 
)
inline

◆ operator<() [3/3]

bool castor3d::operator< ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ operator<<() [1/11]

C3D_API castor::String & castor3d::operator<< ( castor::String &  stream,
castor3d::Version const &  version 
)

◆ operator<<() [2/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Cone const &  c 
)
inline

◆ operator<<() [3/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Cube const &  c 
)
inline

◆ operator<<() [4/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Cylinder const &  c 
)
inline

◆ operator<<() [5/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Icosahedron const &  c 
)
inline

◆ operator<<() [6/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Projection const &  c 
)
inline

◆ operator<<() [7/11]

std::ostream & castor3d::operator<< ( std::ostream &  o,
Sphere const &  c 
)
inline

◆ operator<<() [8/11]

C3D_API std::ostream & castor3d::operator<< ( std::ostream &  stream,
castor3d::Version const &  version 
)

◆ operator<<() [9/11]

C3D_API std::ostream & castor3d::operator<< ( std::ostream &  stream,
GpuInformations const &  object 
)

Output stream operator.

Parameters
[in,out]streamThe stream.
[in]objectThe object to put in the stream.
Returns
The stream.

◆ operator<<() [10/11]

std::ostream & castor3d::operator<< ( std::ostream &  stream,
TextureLayout const &  layout 
)

◆ operator<<() [11/11]

C3D_API std::wostream & castor3d::operator<< ( std::wostream &  stream,
castor3d::Version const &  version 
)

◆ operator<=() [1/2]

C3D_API bool castor3d::operator<= ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Less than operator.

Parameters
[in]a,bThe versions to compare.
Returns
false if a.major is greater than b.major or if they are equal and a.minor is greater than b.minor or if majors and minors are equal and a.build is greater than b.build.

◆ operator<=() [2/2]

bool castor3d::operator<= ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ operator==() [1/10]

C3D_API bool castor3d::operator== ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Equality operator.

Parameters
[in]a,bThe versions to compare.
Returns
false if one version number is different from a to b.

◆ operator==() [2/10]

C3D_API bool castor3d::operator== ( DirectionalLightCascade const &  lhs,
DirectionalLightCascade const &  rhs 
)

◆ operator==() [3/10]

C3D_API bool castor3d::operator== ( ParticleDeclaration const &  lhs,
ParticleDeclaration const &  rhs 
)

Equality operator.

Parameters
[in]lhs,rhsThe 2 objects to compare.

◆ operator==() [4/10]

bool castor3d::operator== ( ParticleElementDeclaration const &  lhs,
ParticleElementDeclaration const &  rhs 
)
inline

◆ operator==() [5/10]

C3D_API bool castor3d::operator== ( PipelineFlags const &  lhs,
PipelineFlags const &  rhs 
)

◆ operator==() [6/10]

C3D_API bool castor3d::operator== ( TextureConfiguration const &  lhs,
TextureConfiguration const &  rhs 
)

◆ operator==() [7/10]

C3D_API bool castor3d::operator== ( TextureFlagsId const &  lhs,
TextureFlagsId const &  rhs 
)

◆ operator==() [8/10]

C3D_API bool castor3d::operator== ( TextureSourceInfo const &  lhs,
TextureSourceInfo const &  rhs 
)
noexcept

◆ operator==() [9/10]

C3D_API bool castor3d::operator== ( TextureTransform const &  lhs,
TextureTransform const &  rhs 
)
noexcept

◆ operator==() [10/10]

bool castor3d::operator== ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ operator>() [1/2]

C3D_API bool castor3d::operator> ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Less than operator.

Parameters
[in]a,bThe versions to compare.
Returns
true if a.major is greater than b.major or if they are equal and a.minor is greater than b.minor or if majors and minors are equal and a.build is greater than b.build.

◆ operator>() [2/2]

bool castor3d::operator> ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ operator>=() [1/2]

C3D_API bool castor3d::operator>= ( castor3d::Version const &  a,
castor3d::Version const &  b 
)

Less than operator.

Parameters
[in]a,bThe versions to compare.
Returns
false if a.major is less than b.major or if they are equal and a.minor is less than b.minor or if majors and minors are equal and a.build is less than b.build.

◆ operator>=() [2/2]

bool castor3d::operator>= ( VkImageSubresourceRange const &  lhs,
VkImageSubresourceRange const &  rhs 
)
inline

◆ prepareChunkData() [1/28]

static void castor3d::prepareChunkData ( bool &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [2/28]

static void castor3d::prepareChunkData ( castor::ColourComponent &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [3/28]

template<typename T , uint32_t Count>
static void castor3d::prepareChunkData ( castor::Coords< T, Count > &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [4/28]

template<typename T , uint32_t Count>
static void castor3d::prepareChunkData ( castor::Point< T, Count > &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [5/28]

template<typename T >
static void castor3d::prepareChunkData ( castor::QuaternionT< T > &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [6/28]

static void castor3d::prepareChunkData ( castor::RgbaColour &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [7/28]

static void castor3d::prepareChunkData ( castor::RgbColour &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [8/28]

template<typename T , uint32_t Count>
static void castor3d::prepareChunkData ( castor::SquareMatrix< T, Count > &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [9/28]

static void castor3d::prepareChunkData ( ChunkType value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

Referenced by castor3d::ChunkParser< T >::parse(), and castor3d::ChunkWriter< T >::write().

Here is the caller graph for this function:

◆ prepareChunkData() [10/28]

static void castor3d::prepareChunkData ( double &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [11/28]

static void castor3d::prepareChunkData ( FaceIndices value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

References castor3d::FaceIndices::m_index.

◆ prepareChunkData() [12/28]

static void castor3d::prepareChunkData ( float &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [13/28]

static void castor3d::prepareChunkData ( int16_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [14/28]

static void castor3d::prepareChunkData ( int32_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [15/28]

static void castor3d::prepareChunkData ( int64_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [16/28]

static void castor3d::prepareChunkData ( int8_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [17/28]

static void castor3d::prepareChunkData ( InterleavedVertex value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

References castor3d::InterleavedVertex::nml, castor3d::InterleavedVertex::pos, castor3d::InterleavedVertex::tan, and castor3d::InterleavedVertex::tex.

◆ prepareChunkData() [18/28]

static void castor3d::prepareChunkData ( LineIndices value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

References castor3d::LineIndices::m_index.

◆ prepareChunkData() [19/28]

static void castor3d::prepareChunkData ( long double &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [20/28]

template<typename T >
static void castor3d::prepareChunkData ( OldInterleavedVertexT< T > &  value)
inlinestatic

◆ prepareChunkData() [21/28]

template<typename T , size_t Count>
static void castor3d::prepareChunkData ( std::array< T, Count > &  values)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valuesThe value.

◆ prepareChunkData() [22/28]

template<typename T >
static void castor3d::prepareChunkData ( std::vector< T > &  values)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valuesThe value.

◆ prepareChunkData() [23/28]

static void castor3d::prepareChunkData ( SubmeshAnimationBuffer value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

References castor3d::SubmeshAnimationBuffer::buffer.

◆ prepareChunkData() [24/28]

static void castor3d::prepareChunkData ( uint16_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [25/28]

static void castor3d::prepareChunkData ( uint32_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [26/28]

static void castor3d::prepareChunkData ( uint64_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [27/28]

static void castor3d::prepareChunkData ( uint8_t &  value)
inlinestatic

Sets given value to big endian.

Parameters
[in,out]valueThe value.

◆ prepareChunkData() [28/28]

static void castor3d::prepareChunkData ( VertexBoneData value)
inlinestatic

◆ setProgressBarLabel()

C3D_API void castor3d::setProgressBarLabel ( ProgressBar progress,
castor::String const &  value 
)

◆ setProgressBarTitle()

C3D_API void castor3d::setProgressBarTitle ( ProgressBar progress,
castor::String const &  value 
)

◆ setupMemory() [1/4]

template<typename ResT >
ashes::DeviceMemoryPtr castor3d::setupMemory ( ashes::Device const &  device,
ResT &  resource,
VkMemoryPropertyFlags  flags,
std::string const &  name 
)
inline

References setupMemory().

Referenced by setupMemory().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setupMemory() [2/4]

C3D_API ashes::DeviceMemoryPtr castor3d::setupMemory ( ashes::Device const &  device,
VkMemoryRequirements const &  requirements,
VkMemoryPropertyFlags  flags,
std::string const &  name 
)

◆ setupMemory() [3/4]

template<typename ResT >
ashes::DeviceMemoryPtr castor3d::setupMemory ( RenderDevice const &  device,
ResT &  resource,
VkMemoryPropertyFlags  flags,
std::string const &  name 
)
inline

References setupMemory().

Here is the call graph for this function:

◆ setupMemory() [4/4]

C3D_API ashes::DeviceMemoryPtr castor3d::setupMemory ( RenderDevice const &  device,
VkMemoryRequirements const &  requirements,
VkMemoryPropertyFlags  flags,
std::string const &  name 
)

◆ shallowEqual()

C3D_API bool castor3d::shallowEqual ( TextureConfiguration const &  lhs,
TextureConfiguration const &  rhs 
)

name Comparison operators.

◆ stepProgressBar() [1/2]

C3D_API void castor3d::stepProgressBar ( ProgressBar progress)

◆ stepProgressBar() [2/2]

C3D_API void castor3d::stepProgressBar ( ProgressBar progress,
castor::String const &  label 
)

◆ updateBuffer()

C3D_API void castor3d::updateBuffer ( ashes::CommandBuffer const &  commandBuffer,
castor::ByteArray  data,
ashes::BufferBase const &  dst,
std::vector< VkBufferCopy > const &  regions,
VkAccessFlags  dstAccessFlags,
VkPipelineStageFlags  dstPipelineFlags 
)

◆ updateIndices()

C3D_API void castor3d::updateIndices ( castor::PixelFormat  format,
TextureConfiguration config 
)

Variable Documentation

◆ CurrentCmshVersion

uint32_t constexpr castor3d::CurrentCmshVersion = makeCmshVersion( 0x01u, 0x05u, 0x0000u )
constexpr

◆ defaultClearDepthStencil

VkClearValue const castor3d::defaultClearDepthStencil { makeClearValue( 1.0f, 0u ) }
static

◆ defaultColorWriteMask

VkColorComponentFlags const castor3d::defaultColorWriteMask { VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT }
static

◆ InvalidIndex

uint32_t constexpr castor3d::InvalidIndex = ~( 0u )
staticconstexpr

◆ MaxBonesPerVertex

const uint32_t castor3d::MaxBonesPerVertex = 8
static

◆ opaqueBlackClearColor

VkClearValue const castor3d::opaqueBlackClearColor { makeClearValue( 0.0f, 0.0f, 0.0f, 1.0f ) }
static

◆ opaqueWhiteClearColor

VkClearValue const castor3d::opaqueWhiteClearColor { makeClearValue( 1.0f, 1.0f, 1.0f, 1.0f ) }
static

◆ RenderTypeUndefined

castor::String const castor3d::RenderTypeUndefined = cuT( "Undefined" )

◆ ShadowMapDirectionalTileCountX

constexpr uint32_t castor3d::ShadowMapDirectionalTileCountX = 2u
staticconstexpr

◆ ShadowMapDirectionalTileCountY

constexpr uint32_t castor3d::ShadowMapDirectionalTileCountY = 2u
staticconstexpr

◆ transparentBlackClearColor

VkClearValue const castor3d::transparentBlackClearColor { makeClearValue( 0.0f, 0.0f, 0.0f, 0.0f ) }
static

◆ transparentWhiteClearColor

VkClearValue const castor3d::transparentWhiteClearColor { makeClearValue( 1.0f, 1.0f, 1.0f, 0.0f ) }
static