|
| | VulkanProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual, ManualResourceLoader *loader, VulkanDevice *device, String &languageName) |
| |
| | ~VulkanProgram () override |
| |
| bool | compile (const bool checkErrors, const bool bReflectingArrays=false) |
| | Compile source into shader object.
|
| |
| GpuProgramParametersSharedPtr | createParameters () override |
| | Overridden from GpuProgram.
|
| |
| void | debugDump (String &outString) |
| |
| void | fillPipelineShaderStageCi (VkPipelineShaderStageCreateInfo &pssCi) |
| |
| uint32 | getBufferRequiredSize () const |
| | In bytes.
|
| |
| const map< uint32, VulkanConstantDefinitionBindingParam >::type & | getConstantDefsBindingParams () const |
| |
| uint32 | getDrawIdLocation () const |
| |
| const String & | getLanguage () const override |
| | Overridden from GpuProgram.
|
| |
| void | getLayoutForPso (const VertexElement2VecVec &vertexElements, FastArray< VkVertexInputBindingDescription > &outBufferBindingDescs, FastArray< VkVertexInputAttributeDescription > &outVertexInputs) |
| |
| bool | getPassFogStates () const override |
| | Returns whether a fragment program wants fog state to be passed through fixed pipeline low level API rendering calls (default true, subclasses can override)
|
| |
| bool | getPassSurfaceAndLightStates () const override |
| | Returns whether a vertex program wants light and material states to be passed through fixed pipeline low level API rendering calls (default false, subclasses can override)
|
| |
| bool | getPassTransformStates () const override |
| | Overridden.
|
| |
| const String & | getPreprocessorDefines () const |
| | Sets the preprocessor defines use to compile the program.
|
| |
| VulkanRootLayout * | getRootLayout () |
| |
| const std::vector< uint32 > & | getSpirv () const |
| |
| void | setAutoReflectArrayBindingsInRootLayout (bool bReflectArrayRootLayouts) override |
| | Set to true to reflects the shader looking for array bindings (e.g.
|
| |
| void | setPreprocessorDefines (const String &defines) |
| | Sets the preprocessor defines use to compile the program.
|
| |
| void | setReplaceVersionMacro (bool bReplace) override |
| | When true:
|
| |
| void | setRootLayout (GpuProgramType type, const RootLayout &rootLayout) override |
| | Sets a RootLayout programmatically, thus the shader source won't be parsed looking for one We will call validate()
|
| |
| void | unsetRootLayout () override |
| |
| void | updateBuffers (const GpuProgramParametersSharedPtr ¶ms, uint8 *RESTRICT_ALIAS dstData) |
| | dstData must be able to hold at least getBufferRequiredSize
|
| |
| | HighLevelGpuProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) |
| | Constructor, should be used only by factory classes.
|
| |
| | ~HighLevelGpuProgram () override |
| |
| GpuProgram * | _getBindingDelegate () override |
| | Returns the GpuProgram which should be bound to the pipeline.
|
| |
| size_t | calculateSize () const override |
| | Calculate the size of a resource; this will only be called after 'load'.
|
| |
| const GpuNamedConstants & | getConstantDefinitions () const override |
| | Get the full list of GpuConstantDefinition instances.
|
| |
| bool | getEnableIncludeHeader () const |
| |
| bool | getUseHlmsParser () const |
| |
| void | setEnableIncludeHeader (bool bEnable) |
| | Whether we should parse the source code looking for include files and embedding the file.
|
| |
| void | setUseHlmsParser (bool bUse) |
| | Whether we should run the shader through the Hlms parser.
|
| |
| | GpuProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) |
| |
| | ~GpuProgram () override |
| |
| bool | getBuildParametersFromReflection () const |
| |
| virtual Vector3 | getComputeGroupDimensions () const |
| | Returns the number of process groups dispatched by this compute program.
|
| |
| virtual GpuProgramParametersSharedPtr | getDefaultParameters () |
| | Get a reference to the default parameters which are to be used for all uses of this program.
|
| |
| virtual const String & | getManualNamedConstantsFile () const |
| | Gets the name of a file from which to load named parameters mapping for a program which would not be able to derive named parameters itself.
|
| |
| virtual ushort | getNumberOfPosesIncluded () const |
| | Returns the number of simultaneous poses the vertex program can blend, for use in pose animation.
|
| |
| uint8 | getNumClipDistances () const |
| | Retrieves the number of clip distances. See GpuProgram::setNumClipDistances.
|
| |
| virtual const String & | getSource () const |
| | Gets the assembler source for this program.
|
| |
| virtual const String & | getSourceFile () const |
| | Gets the name of the file used as source for this program.
|
| |
| virtual const String & | getSyntaxCode () const |
| | Gets the syntax code for this program e.g.
|
| |
| virtual GpuProgramType | getType () const |
| | Get the program type.
|
| |
| virtual bool | hasCompileError () const |
| | Did this program encounter a compile error when loading?
|
| |
| virtual bool | hasDefaultParameters () const |
| | Returns true if default parameters have been set up.
|
| |
| virtual bool | isAdjacencyInfoRequired () const |
| | Returns whether this geometry program requires adjacency information from the input primitives.
|
| |
| virtual bool | isMorphAnimationIncluded () const |
| | Returns whether a vertex program includes the required instructions to perform morph animation.
|
| |
| virtual bool | isPoseAnimationIncluded () const |
| | Returns whether a vertex program includes the required instructions to perform pose animation.
|
| |
| virtual bool | isSkeletalAnimationIncluded () const |
| | Returns whether a vertex program includes the required instructions to perform skeletal animation.
|
| |
| virtual bool | isSupported () const |
| | Returns whether this program can be supported on the current renderer and hardware.
|
| |
| virtual bool | isVertexTextureFetchRequired () const |
| | Returns whether this vertex program requires support for vertex texture fetch from the hardware.
|
| |
| virtual bool | isVpAndRtArrayIndexFromAnyShaderRequired () const |
| | Returns whether this program requires support for choosing viewport or render target index in any program or only geometry one.
|
| |
| virtual void | resetCompileError () |
| | Reset a compile error if it occurred, allowing the load to be retried.
|
| |
| virtual void | setAdjacencyInfoRequired (bool r) |
| | Sets whether this geometry program requires adjacency information from the input primitives.
|
| |
| void | setBuildParametersFromReflection (bool buildParams) |
| |
| virtual void | setComputeGroupDimensions (Vector3 dimensions) |
| | Sets the number of process groups dispatched by this compute program.
|
| |
| virtual void | setManualNamedConstants (const GpuNamedConstants &namedConstants) |
| | Allows you to manually provide a set of named parameter mappings to a program which would not be able to derive named parameters itself.
|
| |
| virtual void | setManualNamedConstantsFile (const String ¶mDefFile) |
| | Specifies the name of a file from which to load named parameters mapping for a program which would not be able to derive named parameters itself.
|
| |
| virtual void | setMorphAnimationIncluded (bool included) |
| | Sets whether a vertex program includes the required instructions to perform morph animation.
|
| |
| void | setNumClipDistances (const uint8 numClipDistances) |
| | Sets the number of clip distances this shader uses.
|
| |
| virtual void | setPoseAnimationIncluded (ushort poseCount) |
| | Sets whether a vertex program includes the required instructions to perform pose animation.
|
| |
| void | setPrefabRootLayout (const PrefabRootLayout::PrefabRootLayout &prefab) |
| | Sets a prefab root layout, mostly meant for low level materials (e.g.
|
| |
| virtual void | setSkeletalAnimationIncluded (bool included) |
| | Sets whether a vertex program includes the required instructions to perform skeletal animation.
|
| |
| virtual void | setSource (const String &source) |
| | Sets the source assembly for this program from an in-memory string.
|
| |
| virtual void | setSource (const String &source, const String &debugFilename) |
| | Sets the source assembly for this program from an in-memory string, while providing a path to a file, which can be needed/useful for debugging shaders (i.e.
|
| |
| virtual void | setSourceFile (const String &filename) |
| | Sets the filename of the source assembly for this program.
|
| |
| virtual void | setSyntaxCode (const String &syntax) |
| | Sets the syntax code for this program e.g.
|
| |
| virtual void | setType (GpuProgramType t) |
| | Set the program type (only valid before load)
|
| |
| virtual void | setUniformBlockBinding (const char *blockName, uint32 bindingSlot) |
| | For GL only. Program must be bound when calling.
|
| |
| virtual void | setVertexTextureFetchRequired (bool r) |
| | Sets whether this vertex program requires support for vertex texture fetch from the hardware.
|
| |
| virtual void | setVpAndRtArrayIndexFromAnyShaderRequired (bool r) |
| | Sets whether this program requires support for choosing viewport or render target index in any program or only geometry one.
|
| |
| | Resource (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) |
| | Standard constructor.
|
| |
| virtual | ~Resource () |
| | Virtual destructor.
|
| |
| virtual void | _dirtyState () |
| | Manually mark the state of this resource as having been changed.
|
| |
| virtual void | _fireLoadingComplete (bool wasBackgroundLoaded) |
| | Firing of loading complete event.
|
| |
| virtual void | _firePreparingComplete (bool wasBackgroundLoaded) |
| | Firing of preparing complete event.
|
| |
| virtual void | _fireUnloadingComplete () |
| | Firing of unloading complete event.
|
| |
| virtual void | _notifyOrigin (const String &origin) |
| | Notify this resource of it's origin.
|
| |
| virtual void | addListener (Listener *lis) |
| | Register a listener on this resource.
|
| |
| virtual void | changeGroupOwnership (const String &newGroup) |
| | Change the resource group ownership of a Resource.
|
| |
| virtual void | escalateLoading () |
| | Escalates the loading of a background loaded resource.
|
| |
| virtual ResourceManager * | getCreator () |
| | Gets the manager which created this resource.
|
| |
| virtual const String & | getGroup () const |
| | Gets the group which this resource is a member of.
|
| |
| virtual ResourceHandle | getHandle () const |
| |
| virtual LoadingState | getLoadingState () const |
| | Returns the current loading state.
|
| |
| virtual const String & | getName () const |
| | Gets resource name.
|
| |
| virtual const String & | getOrigin () const |
| | Get the origin of this resource, e.g.
|
| |
| virtual size_t | getSize () const |
| | Retrieves info about the size of the resource.
|
| |
| virtual size_t | getStateCount () const |
| | Returns the number of times this resource has changed state, which generally means the number of times it has been loaded.
|
| |
| virtual bool | isBackgroundLoaded () const |
| | Returns whether this Resource has been earmarked for background loading.
|
| |
| virtual bool | isLoaded () const |
| | Returns true if the Resource has been loaded, false otherwise.
|
| |
| virtual bool | isLoading () const |
| | Returns whether the resource is currently in the process of background loading.
|
| |
| virtual bool | isManuallyLoaded () const |
| | Is this resource manually loaded?
|
| |
| virtual bool | isPrepared () const |
| | Returns true if the Resource has been prepared, false otherwise.
|
| |
| virtual bool | isReloadable () const |
| | Returns true if the Resource is reloadable, false otherwise.
|
| |
| virtual void | load (bool backgroundThread=false) |
| | Loads the resource, if it is not already.
|
| |
| bool | markForReload () |
| |
| virtual void | prepare (bool backgroundThread=false) |
| | Prepares the resource for load, if it is not already.
|
| |
| virtual void | reload (LoadingFlags flags=LF_DEFAULT) |
| | Reloads the resource, if it is already loaded.
|
| |
| virtual void | removeListener (Listener *lis) |
| | Remove a listener on this resource.
|
| |
| virtual void | setBackgroundLoaded (bool bl) |
| | Tells the resource whether it is background loaded or not.
|
| |
| virtual void | setManuallyLoaded (bool isManual) |
| | Set "Is this resource manually loaded?".
|
| |
| virtual void | setToLoaded () |
| | Change the Resource loading state to loaded.
|
| |
| virtual void | touch () |
| | 'Touches' the resource to indicate it has been used.
|
| |
| virtual void | unload () |
| | Unloads the resource; this is not permanent, the resource can be reloaded later if required.
|
| |
| | StringInterface () |
| |
| virtual | ~StringInterface () |
| | Virtual destructor, see Effective C++.
|
| |
| virtual void | copyParametersTo (StringInterface *dest) const |
| | Method for copying this object's parameters to another object.
|
| |
| ParamDictionary * | getParamDictionary () |
| | Retrieves the parameter dictionary for this class.
|
| |
| const ParamDictionary * | getParamDictionary () const |
| |
| virtual String | getParameter (const String &name) const |
| | Generic parameter retrieval method.
|
| |
| const ParameterList & | getParameters () const |
| | Retrieves a list of parameters valid for this object.
|
| |
| virtual bool | setParameter (const String &name, const String &value) |
| | Generic parameter setting method.
|
| |
| virtual void | setParameterList (const NameValuePairList ¶mList) |
| | Generic multiple parameter setting method.
|
| |