![]() |
Castor3D 0.17.0
Multiplatform 3D engine
|
#include <Engine.hpp>
Public Member Functions | |
C3D_API | Engine (EngineConfig config) |
Constructor. | |
C3D_API | Engine (EngineConfig config, castor::LoggerInstance &logger) |
Constructor. | |
C3D_API | ~Engine () noexcept |
Destructor. | |
C3D_API void | initialise (uint32_t wantedFPS=100, bool threaded=false) |
Initialisation function, Sets the wanted frame rate. | |
C3D_API void | cleanup () |
Cleanup function, destroys everything created from the beginning. | |
C3D_API bool | loadRenderer (castor::String const &type) |
Loads a renderer plug-in, given the renderer type. | |
C3D_API void | loadRenderer (Renderer renderer) |
Loads a renderer plug-in, given the renderer type. | |
C3D_API CpuFrameEvent * | postEvent (CpuFrameEventUPtr event) const |
Posts a frame event to the default frame listener. | |
C3D_API void | sendEvent (GpuFrameEventUPtr event) const |
If a device is enabled, executes the given event, if not posts it to the default frame listener. | |
C3D_API GpuFrameEvent * | postEvent (GpuFrameEventUPtr event) const |
Posts a frame event to the default frame listener. | |
C3D_API bool | fireMouseMove (castor::Position const &position, bool ctrl, bool alt, bool shift) |
Fires a mouse move event. | |
C3D_API void | update (CpuUpdater &updater) |
Updates the engine, CPU wise. | |
C3D_API void | update (GpuUpdater &updater) |
Updates the engine, GPU wise. | |
C3D_API void | upload (UploadData &uploader) |
Updates the buffers. | |
C3D_API bool | isCleaned () const noexcept |
Retrieves the cleanup status. | |
C3D_API void | setCleaned () noexcept |
Tells the engine is cleaned up. | |
C3D_API void | pushCpuJob (castor::AsyncJobQueue::Job job) |
Enqueues the given CPU job. | |
C3D_API castor::RgbaColour | getNextRainbowColour () const |
Retrieves a colour issued from a rainbow colours iterator. | |
C3D_API void | registerWindow (RenderWindow &window) |
Registers a RenderWindow. | |
C3D_API void | unregisterWindow (RenderWindow const &window) |
Unregisters a RenderWindow. | |
C3D_API void | registerParsers (castor::String name, castor::AttributeParsers parsers, castor::StrUInt32Map sections, castor::UserContextCreator contextCreator) |
Registers additional parsers for SceneFileParser. | |
C3D_API void | unregisterParsers (castor::String const &name) noexcept |
Unregisters parsers for SceneFileParser. | |
C3D_API void | registerTimer (castor::String const &category, FramePassTimer &timer) |
Registers a render pass timer. | |
C3D_API void | unregisterTimer (castor::String const &category, FramePassTimer &timer) noexcept |
Unregisters a render pass timer. | |
C3D_API void | registerLightingModel (castor::String const &baseName, shader::LightingModelDesc const &defaultDesc, shader::LightingModelCreator const &creator) const |
Registers a lighting model. | |
C3D_API void | unregisterLightingModel (castor::String const &baseName) const |
Unregisters a lighting model. | |
C3D_API void | registerDiffuseBrdf (shader::DiffuseBrdfDesc const &desc) const |
Registers a diffuse BRDF. | |
C3D_API void | unregisterDiffuseBrdf (castor::String const &name) const |
Unegisters a diffuse BRDF. | |
C3D_API void | registerSpecularBrdf (shader::SpecularBrdfDesc const &desc) const |
Registers a specular BRDF. | |
C3D_API void | unregisterSpecularBrdf (castor::String const &name) const |
Unegisters a specular BRDF. | |
C3D_API void | registerSheenBrdf (shader::SheenBrdfDesc const &desc) const |
Registers a sheen BRDF. | |
C3D_API void | unregisterSheenBrdf (castor::String const &name) const |
Unegisters a sheen BRDF. | |
C3D_API void | registerClearcoatBrdf (shader::ClearcoatBrdfDesc const &desc) const |
Registers a clearcoat BRDF. | |
C3D_API void | unregisterClearcoatBrdf (castor::String const &name) const |
Unegisters a clearcoat BRDF. | |
C3D_API void | registerScatteringModel (shader::ScatteringModelDesc const &desc) const |
Registers a scattering model. | |
C3D_API void | unregisterScatteringModel (castor::String const &name) const |
Unegisters a scattering model. | |
C3D_API BackgroundModelID | registerBackgroundModel (castor::String const &name, shader::BackgroundModelCreator creator) |
Registers a Background Model. | |
C3D_API BackgroundModelID | unregisterBackgroundModel (castor::String const &name) |
Unregisters a Background Model. | |
C3D_API void | registerBuffer (ShaderBuffer const &buffer) |
Registers a ShaderBuffer. | |
C3D_API void | unregisterBuffer (ShaderBuffer const &buffer) |
Unregisters a ShaderBuffer. | |
C3D_API void | registerPassModel (PassRegisterInfo const &info) const |
Registers the given pass info with all background models. | |
C3D_API void | unregisterPassModel (castor::String const &baseName) const |
Unregisters a pass model. | |
C3D_API void | registerSpecificsBuffer (castor::String const &name, castor3d::SpecificsBuffer buffer) const |
Registers a specific data shader buffer. | |
C3D_API void | unregisterSpecificsBuffer (castor::String const &name) const |
Unregisters a pass' specific data buffer. | |
C3D_API void | addSpecificsBuffersBindings (ashes::VkDescriptorSetLayoutBindingArray &bindings, VkShaderStageFlags shaderStages, uint32_t &index) const |
Addw the pass' specific data buffer into the given descriptor layout bindings array. | |
C3D_API void | addSpecificsBuffersDescriptors (ashes::WriteDescriptorSetArray &descriptorWrites, uint32_t &index) const |
Writes the pass' specific data buffer into the given descriptor writes array. | |
C3D_API void | createSpecificsBuffersPassBindings (crg::FramePass &pass, uint32_t &index) const |
Writes the pass' specific data buffer bindings into given frame pass. | |
C3D_API void | declareSpecificsShaderBuffers (sdw::ShaderWriter &writer, castor::StringMap< castor3d::shader::BufferBaseUPtr > &buffers, uint32_t &binding, uint32_t set) const |
Declares pass' specific data shader buffers. | |
C3D_API PassComponentID | registerPassComponent (castor::String const &type, PassComponentPluginUPtr componentPlugin) const |
Registers a pass component. | |
C3D_API void | unregisterPassComponent (castor::String const &type) const |
Unregisters a pass component. | |
C3D_API SubmeshComponentID | registerSubmeshComponent (castor::String const &type, SubmeshComponentPluginUPtr componentPlugin) const |
Registers a pass component. | |
C3D_API void | unregisterSubmeshComponent (castor::String const &type) const |
Unregisters a pass component. | |
C3D_API void | registerRenderPassType (castor::String const &renderPassType, castor::UniquePtr< RenderPassRegisterInfo > info) |
Registers a scene render pass type, used to render given material pass type. | |
C3D_API void | setRenderPassTypeConfiguration (castor::String const &renderPassType, Parameters parameters) |
Registers a scene render pass type's configuration parameters. | |
C3D_API Parameters | getRenderPassTypeConfiguration (castor::String const &renderPassType) const |
Retrieve a scene render pass type's configuration parameters. | |
C3D_API RenderPassTypeID | getRenderPassTypeID (castor::String const &renderPassType) const |
Retrieves the ID for given scene render pass type name. | |
C3D_API RenderPassRegisterInfo * | getRenderPassInfo (castor::String const &renderPassType) const |
Retrieves a scene render pass type's creation informations. | |
C3D_API castor::Vector< RenderPassRegisterInfo * > | getRenderPassInfos (TechniquePassEvent event) const |
Retrieves the scene render passes type creation informations. | |
C3D_API void | unregisterRenderPassType (castor::String const &renderPassType) |
Unregisters a scene render pass type. | |
C3D_API std::default_random_engine | createRandomEngine () const |
Getters. | |
C3D_API castor::String | getDefaultLightingModelName () const |
C3D_API ToneMappingFactory const & | getToneMappingFactory () const |
C3D_API ToneMappingFactory & | getToneMappingFactory () |
C3D_API PostEffectFactory const & | getPostEffectFactory () const |
C3D_API PostEffectFactory & | getPostEffectFactory () |
C3D_API uint32_t | getWantedFps () const |
C3D_API castor3d::MaterialObs | getDefaultMaterial () const |
C3D_API bool | hasMeshShaders () const |
C3D_API uint32_t | getMaxPassTypeCount () const |
C3D_API RenderDevice * | getRenderDevice () const |
C3D_API ControlsManager * | getControlsManager () const |
C3D_API UploadData & | getUploadData () const noexcept |
C3D_API ast::ShaderAllocator & | getShaderAllocator () |
castor::String const & | getAppName () const noexcept |
Version const & | getAppVersion () const noexcept |
bool | isShaderValidationEnabled () const noexcept |
bool | isValidationEnabled () const noexcept |
uint32_t | getShaderDebugLevel () const noexcept |
bool | areUpdateOptimisationsEnabled () const noexcept |
bool | isRandomisationEnabled () const noexcept |
bool | isApiTraceEnabled () const noexcept |
bool | areTextShadersKept () const noexcept |
bool | areDebugTargetsEnabled () const noexcept |
UserInputListenerRPtr | getUserInputListener () noexcept |
RenderSystem * | getRenderSystem () const noexcept |
auto | getDefaultSampler () const noexcept |
auto | getLightsSampler () const noexcept |
auto const & | getAdditionalParsers () const noexcept |
Version const & | getVersion () const noexcept |
bool | hasRenderLoop () const noexcept |
RenderLoop & | getRenderLoop () const noexcept |
bool | isThreaded () const noexcept |
MeshFactory & | getMeshFactory () const noexcept |
PassFactory & | getPassFactory () const noexcept |
PassComponentRegister & | getPassComponentsRegister () const noexcept |
SubmeshComponentRegister & | getSubmeshComponentsRegister () const noexcept |
ImporterFileFactory & | getImporterFileFactory () const noexcept |
ParticleFactory & | getParticleFactory () const noexcept |
castor::CpuInformations const & | getCpuInformations () const noexcept |
LightingModelID | getDefaultLightingModel () const noexcept |
castor::ImageLoader const & | getImageLoader () const noexcept |
castor::ImageLoader & | getImageLoader () noexcept |
castor::ImageWriter const & | getImageWriter () const noexcept |
ashes::RendererList const & | getRenderersList () const noexcept |
castor::LoggerInstance & | getLogger () const noexcept |
uint32_t | getLpvGridSize () const noexcept |
uint32_t | getMaxImageSize () const noexcept |
auto const & | getRenderWindows () const noexcept |
crg::ResourceHandler & | getGraphResourceHandler () noexcept |
LightingModelFactory & | getLightingModelFactory () const noexcept |
shader::BackgroundModelFactory const & | getBackgroundModelFactory () const noexcept |
shader::BackgroundModelFactory & | getBackgroundModelFactory () noexcept |
SceneRPtr | getLoadingScene () const noexcept |
Texture const & | getPrefilteredBrdfTexture () const noexcept |
castor::LengthUnit | getLengthUnit () const noexcept |
Mutators. | |
C3D_API void | setLoadingScene (SceneUPtr scene) |
void | setUserInputListener (UserInputListenerUPtr listener) noexcept |
template<typename ListenerT > | |
void | setUserInputListenerT (castor::UniquePtr< ListenerT > listener) noexcept |
void | setDefaultLightingModel (LightingModelID value) noexcept |
void | enableDebugTargets (bool value) noexcept |
void | setMaxImageSize (uint32_t size) noexcept |
void | setLpvGridSize (uint32_t size) noexcept |
template<typename ComponentT > | |
PassComponentID | registerPassComponent (CreatePassComponentPlugin const &createPlugin=&ComponentT::createPlugin) |
template<typename ComponentT > | |
SubmeshComponentID | registerSubmeshComponent (CreateSubmeshComponentPlugin const &createPlugin=&ComponentT::createPlugin) |
void | setLengthUnit (castor::LengthUnit value) noexcept |
Fonts. | |
template<typename ... ParametersT> | |
castor::FontCache::ElementPtrT | createFont (castor::String const &name, uint32_t height, castor::Path const &path) const |
template<typename ... ParametersT> | |
castor::FontCache::ElementObsT | addNewFont (castor::String const &name, uint32_t height, castor::Path const &path) |
template<typename ... ParametersT> | |
castor::FontCache::ElementPtrT | createSdfFont (castor::String const &name, castor::Path const &path) const |
template<typename ... ParametersT> | |
castor::FontCache::ElementObsT | addNewSdfFont (castor::String const &name, castor::Path const &path) |
castor::FontCache::ElementObsT | addFont (castor::FontCache::ElementKeyT const &key, castor::FontCache::ElementPtrT &element, bool initialise=false) |
void | removeFont (castor::FontCache::ElementKeyT const &key, bool cleanup=false) |
castor::FontCache::ElementObsT | findFont (castor::FontCache::ElementKeyT const &key) const |
bool | hasFont (castor::FontCache::ElementKeyT const &key) const |
castor::FontCache::ElementObsT | tryFindFont (castor::FontCache::ElementKeyT const &key) const |
template<typename FuncT > | |
void | forEachFont (FuncT func) const |
castor::FontResPtr | getDefaultFont () |
castor::FontCache & | getFontCache (PrivEngineToken const &) |
uint32_t | getFontsCount () const |
Images. | |
template<typename ... ParametersT> | |
castor::ImageCache::ElementPtrT | createImage (castor::ImageCache::ElementKeyT const &key, ParametersT &&... parameters) const |
template<typename ... ParametersT> | |
castor::ImageCache::ElementObsT | addNewImage (castor::ImageCache::ElementKeyT const &key, ParametersT &&... parameters) |
castor::ImageCache::ElementObsT | addImage (castor::ImageCache::ElementKeyT const &key, castor::ImageCache::ElementPtrT &element, bool initialise=false) |
void | removeImage (castor::ImageCache::ElementKeyT const &key, bool cleanup=false) noexcept |
castor::ImageCache::ElementObsT | findImage (castor::ImageCache::ElementKeyT const &key) const |
bool | hasImage (castor::ImageCache::ElementKeyT const &key) const |
castor::ImageCache::ElementObsT | tryFindImage (castor::ImageCache::ElementKeyT const &key) const noexcept |
template<typename ... ParametersT> | |
castor::ImageCache::ElementObsT | tryAddNewImage (castor::ImageCache::ElementKeyT const &name, bool initialise, castor::ImageCache::ElementObsT &created, ParametersT &&... parameters) |
uint32_t | getImagesCount () const |
Static Public Member Functions | |
static C3D_API castor::Path | getPluginsDirectory () |
Retrieves plug-ins path. | |
static C3D_API castor::Path | getEngineDirectory () |
Gives the Castor directory. | |
static C3D_API castor::Path | getDataDirectory () |
Retrieves data path. | |
static C3D_API std::locale const & | getLocale () |
Retrieves data path. | |
static C3D_API void | addParsers (castor::AttributeParsers &result) |
Additional Inherited Members | |
![]() | |
Unique (Engine *pThis) | |
Constructor. | |
~Unique () noexcept | |
Destructor. | |
|
explicit |
Constructor.
[in] | config | The engine configuration. |
C3D_API castor3d::Engine::Engine | ( | EngineConfig | config, |
castor::LoggerInstance & | logger ) |
Constructor.
[in] | config | The engine configuration. |
[in] | logger | The logger instance. |
|
noexcept |
Destructor.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
static |
C3D_API void castor3d::Engine::addSpecificsBuffersBindings | ( | ashes::VkDescriptorSetLayoutBindingArray & | bindings, |
VkShaderStageFlags | shaderStages, | ||
uint32_t & | index ) const |
Addw the pass' specific data buffer into the given descriptor layout bindings array.
[in,out] | bindings | Receives the buffers descriptor layout bindings. |
[in] | shaderStages | The shader stage flags. |
[in,out] | index | The binding index. |
C3D_API void castor3d::Engine::addSpecificsBuffersDescriptors | ( | ashes::WriteDescriptorSetArray & | descriptorWrites, |
uint32_t & | index ) const |
Writes the pass' specific data buffer into the given descriptor writes array.
[in,out] | descriptorWrites | Receives the buffers descriptor writes. |
[in,out] | index | The binding index. |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API void castor3d::Engine::cleanup | ( | ) |
Cleanup function, destroys everything created from the beginning.
|
inline |
|
inline |
C3D_API std::default_random_engine castor3d::Engine::createRandomEngine | ( | ) | const |
|
inline |
C3D_API void castor3d::Engine::createSpecificsBuffersPassBindings | ( | crg::FramePass & | pass, |
uint32_t & | index ) const |
Writes the pass' specific data buffer bindings into given frame pass.
[in,out] | pass | The target frame pass. |
[in,out] | index | The binding index. |
C3D_API void castor3d::Engine::declareSpecificsShaderBuffers | ( | sdw::ShaderWriter & | writer, |
castor::StringMap< castor3d::shader::BufferBaseUPtr > & | buffers, | ||
uint32_t & | binding, | ||
uint32_t | set ) const |
Declares pass' specific data shader buffers.
[in,out] | writer | The shader writer. |
[out] | buffers | Receives the registered shader buffers. |
[in,out] | binding | The descriptor binding index. |
[in] | set | The descriptor set index. |
|
inlinenoexcept |
|
inline |
|
inline |
C3D_API bool castor3d::Engine::fireMouseMove | ( | castor::Position const & | position, |
bool | ctrl, | ||
bool | alt, | ||
bool | shift ) |
Fires a mouse move event.
[in] | position | The mouse position. |
[in] | ctrl | Tells if the Ctrl key is down. |
[in] | alt | Tells if the Alt key is down. |
[in] | shift | Tells if the Shift key is down. |
true
if the event is processed by a handler.
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API ControlsManager * castor3d::Engine::getControlsManager | ( | ) | const |
|
inlinenoexcept |
|
static |
Retrieves data path.
|
inline |
|
inlinenoexcept |
C3D_API castor::String castor3d::Engine::getDefaultLightingModelName | ( | ) | const |
C3D_API castor3d::MaterialObs castor3d::Engine::getDefaultMaterial | ( | ) | const |
|
inlinenoexcept |
|
static |
Gives the Castor directory.
|
inline |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
static |
Retrieves data path.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API uint32_t castor3d::Engine::getMaxPassTypeCount | ( | ) | const |
|
inlinenoexcept |
C3D_API castor::RgbaColour castor3d::Engine::getNextRainbowColour | ( | ) | const |
Retrieves a colour issued from a rainbow colours iterator.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
static |
Retrieves plug-ins path.
C3D_API PostEffectFactory & castor3d::Engine::getPostEffectFactory | ( | ) |
C3D_API PostEffectFactory const & castor3d::Engine::getPostEffectFactory | ( | ) | const |
|
inlinenoexcept |
C3D_API RenderDevice * castor3d::Engine::getRenderDevice | ( | ) | const |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API RenderPassRegisterInfo * castor3d::Engine::getRenderPassInfo | ( | castor::String const & | renderPassType | ) | const |
Retrieves a scene render pass type's creation informations.
[in] | renderPassType | The pass type name. |
C3D_API castor::Vector< RenderPassRegisterInfo * > castor3d::Engine::getRenderPassInfos | ( | TechniquePassEvent | event | ) | const |
Retrieves the scene render passes type creation informations.
[in] | event | The event type for wanted passes. |
C3D_API Parameters castor3d::Engine::getRenderPassTypeConfiguration | ( | castor::String const & | renderPassType | ) | const |
Retrieve a scene render pass type's configuration parameters.
[in] | renderPassType | The pass type name. |
C3D_API RenderPassTypeID castor3d::Engine::getRenderPassTypeID | ( | castor::String const & | renderPassType | ) | const |
Retrieves the ID for given scene render pass type name.
[in] | renderPassType | The pass type name. |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API ast::ShaderAllocator & castor3d::Engine::getShaderAllocator | ( | ) |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API ToneMappingFactory & castor3d::Engine::getToneMappingFactory | ( | ) |
C3D_API ToneMappingFactory const & castor3d::Engine::getToneMappingFactory | ( | ) | const |
|
noexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API uint32_t castor3d::Engine::getWantedFps | ( | ) | const |
|
inline |
|
inline |
C3D_API bool castor3d::Engine::hasMeshShaders | ( | ) | const |
|
inlinenoexcept |
C3D_API void castor3d::Engine::initialise | ( | uint32_t | wantedFPS = 100, |
bool | threaded = false ) |
Initialisation function, Sets the wanted frame rate.
[in] | wantedFPS | The wanted FPS count |
[in] | threaded | If false , the render can't be threaded |
|
inlinenoexcept |
|
noexcept |
Retrieves the cleanup status.
true
if cleaned up
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API bool castor3d::Engine::loadRenderer | ( | castor::String const & | type | ) |
Loads a renderer plug-in, given the renderer type.
[in] | type | The renderer type. |
true
if ok Loads a renderer plug-in, given the renderer type.
[in] | renderer | The renderer. |
C3D_API CpuFrameEvent * castor3d::Engine::postEvent | ( | CpuFrameEventUPtr | event | ) | const |
Posts a frame event to the default frame listener.
[in] | event | The event to add |
C3D_API GpuFrameEvent * castor3d::Engine::postEvent | ( | GpuFrameEventUPtr | event | ) | const |
Posts a frame event to the default frame listener.
[in] | event | The event to add |
C3D_API void castor3d::Engine::pushCpuJob | ( | castor::AsyncJobQueue::Job | job | ) |
Enqueues the given CPU job.
[in] | job | The job to execute. |
C3D_API BackgroundModelID castor3d::Engine::registerBackgroundModel | ( | castor::String const & | name, |
shader::BackgroundModelCreator | creator ) |
Registers a Background Model.
[in] | name | The model name. |
[in] | creator | The model creation function. |
C3D_API void castor3d::Engine::registerBuffer | ( | ShaderBuffer const & | buffer | ) |
Registers a ShaderBuffer.
[in] | buffer | The ShaderBuffer. |
C3D_API void castor3d::Engine::registerClearcoatBrdf | ( | shader::ClearcoatBrdfDesc const & | desc | ) | const |
Registers a clearcoat BRDF.
[in] | desc | The BRDF description. |
C3D_API void castor3d::Engine::registerDiffuseBrdf | ( | shader::DiffuseBrdfDesc const & | desc | ) | const |
Registers a diffuse BRDF.
[in] | desc | The BRDF description. |
C3D_API void castor3d::Engine::registerLightingModel | ( | castor::String const & | baseName, |
shader::LightingModelDesc const & | defaultDesc, | ||
shader::LightingModelCreator const & | creator ) const |
Registers a lighting model.
[in] | baseName | The lighting model base name. |
[in] | defaultDesc | The default model description. |
[in] | creator | The model creation function. |
C3D_API void castor3d::Engine::registerParsers | ( | castor::String | name, |
castor::AttributeParsers | parsers, | ||
castor::StrUInt32Map | sections, | ||
castor::UserContextCreator | contextCreator ) |
Registers additional parsers for SceneFileParser.
[in] | name | The registering name. |
[in] | parsers | The parsers. |
[in] | sections | The sections. |
[in] | contextCreator | The user parser context creation function. |
C3D_API PassComponentID castor3d::Engine::registerPassComponent | ( | castor::String const & | type, |
PassComponentPluginUPtr | componentPlugin ) const |
Registers a pass component.
[in] | type | The component type name. |
[in] | componentPlugin | The component's specific functions. |
|
inline |
C3D_API void castor3d::Engine::registerPassModel | ( | PassRegisterInfo const & | info | ) | const |
Registers the given pass info with all background models.
[in] | info | The pass registering info. |
C3D_API void castor3d::Engine::registerRenderPassType | ( | castor::String const & | renderPassType, |
castor::UniquePtr< RenderPassRegisterInfo > | info ) |
Registers a scene render pass type, used to render given material pass type.
[in] | renderPassType | The pass type name. |
[in] | info | The pass creation informations. |
C3D_API void castor3d::Engine::registerScatteringModel | ( | shader::ScatteringModelDesc const & | desc | ) | const |
Registers a scattering model.
[in] | desc | The model description. |
C3D_API void castor3d::Engine::registerSheenBrdf | ( | shader::SheenBrdfDesc const & | desc | ) | const |
Registers a sheen BRDF.
[in] | desc | The BRDF description. |
C3D_API void castor3d::Engine::registerSpecificsBuffer | ( | castor::String const & | name, |
castor3d::SpecificsBuffer | buffer ) const |
Registers a specific data shader buffer.
[in,out] | name | The shader buffer name. |
[out] | buffer | The shader buffer. |
C3D_API void castor3d::Engine::registerSpecularBrdf | ( | shader::SpecularBrdfDesc const & | desc | ) | const |
Registers a specular BRDF.
[in] | desc | The BRDF description. |
C3D_API SubmeshComponentID castor3d::Engine::registerSubmeshComponent | ( | castor::String const & | type, |
SubmeshComponentPluginUPtr | componentPlugin ) const |
Registers a pass component.
[in] | type | The component type name. |
[in] | componentPlugin | The component's specific functions. |
|
inline |
C3D_API void castor3d::Engine::registerTimer | ( | castor::String const & | category, |
FramePassTimer & | timer ) |
Registers a render pass timer.
[in] | category | The timer category name. |
[in] | timer | The timer to register. |
C3D_API void castor3d::Engine::registerWindow | ( | RenderWindow & | window | ) |
Registers a RenderWindow.
[in] | window | The RenderWindow. |
|
inline |
|
inlinenoexcept |
C3D_API void castor3d::Engine::sendEvent | ( | GpuFrameEventUPtr | event | ) | const |
If a device is enabled, executes the given event, if not posts it to the default frame listener.
[in] | event | The event. |
|
noexcept |
Tells the engine is cleaned up.
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API void castor3d::Engine::setLoadingScene | ( | SceneUPtr | scene | ) |
|
inlinenoexcept |
|
inlinenoexcept |
C3D_API void castor3d::Engine::setRenderPassTypeConfiguration | ( | castor::String const & | renderPassType, |
Parameters | parameters ) |
Registers a scene render pass type's configuration parameters.
[in] | renderPassType | The pass type name. |
[in] | parameters | The pass configuration parameters. |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
|
inline |
|
inlinenoexcept |
C3D_API BackgroundModelID castor3d::Engine::unregisterBackgroundModel | ( | castor::String const & | name | ) |
Unregisters a Background Model.
[in] | name | The model name. |
C3D_API void castor3d::Engine::unregisterBuffer | ( | ShaderBuffer const & | buffer | ) |
Unregisters a ShaderBuffer.
[in] | buffer | The ShaderBuffer. |
C3D_API void castor3d::Engine::unregisterClearcoatBrdf | ( | castor::String const & | name | ) | const |
Unegisters a clearcoat BRDF.
[in] | name | The BRDF name. |
C3D_API void castor3d::Engine::unregisterDiffuseBrdf | ( | castor::String const & | name | ) | const |
Unegisters a diffuse BRDF.
[in] | name | The BRDF name. |
C3D_API void castor3d::Engine::unregisterLightingModel | ( | castor::String const & | baseName | ) | const |
Unregisters a lighting model.
[in] | baseName | The lighting model base name. |
|
noexcept |
Unregisters parsers for SceneFileParser.
[in] | name | The registering name. |
C3D_API void castor3d::Engine::unregisterPassComponent | ( | castor::String const & | type | ) | const |
Unregisters a pass component.
[in] | type | The component type name. |
C3D_API void castor3d::Engine::unregisterPassModel | ( | castor::String const & | baseName | ) | const |
Unregisters a pass model.
[in] | baseName | The model base name. |
C3D_API void castor3d::Engine::unregisterRenderPassType | ( | castor::String const & | renderPassType | ) |
Unregisters a scene render pass type.
[in] | renderPassType | The pass type name. |
C3D_API void castor3d::Engine::unregisterScatteringModel | ( | castor::String const & | name | ) | const |
Unegisters a scattering model.
[in] | name | The model name. |
C3D_API void castor3d::Engine::unregisterSheenBrdf | ( | castor::String const & | name | ) | const |
Unegisters a sheen BRDF.
[in] | name | The BRDF name. |
C3D_API void castor3d::Engine::unregisterSpecificsBuffer | ( | castor::String const & | name | ) | const |
Unregisters a pass' specific data buffer.
[in,out] | name | The shader buffer name. |
C3D_API void castor3d::Engine::unregisterSpecularBrdf | ( | castor::String const & | name | ) | const |
Unegisters a specular BRDF.
[in] | name | The BRDF name. |
C3D_API void castor3d::Engine::unregisterSubmeshComponent | ( | castor::String const & | type | ) | const |
Unregisters a pass component.
[in] | type | The component type name. |
|
noexcept |
Unregisters a render pass timer.
[in] | category | The timer category name. |
[in] | timer | The timer to unregister. |
C3D_API void castor3d::Engine::unregisterWindow | ( | RenderWindow const & | window | ) |
Unregisters a RenderWindow.
[in] | window | The RenderWindow. |
C3D_API void castor3d::Engine::update | ( | CpuUpdater & | updater | ) |
Updates the engine, CPU wise.
[in,out] | updater | The update data. |
C3D_API void castor3d::Engine::update | ( | GpuUpdater & | updater | ) |
Updates the engine, GPU wise.
[in,out] | updater | The update data. |
C3D_API void castor3d::Engine::upload | ( | UploadData & | uploader | ) |
Updates the buffers.
[in,out] | uploader | Receives the upload requests. |