Defines a program which runs on the GPU such as a vertex or fragment program.
More...
|
| GpuProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) |
|
| ~GpuProgram () override |
|
virtual GpuProgram * | _getBindingDelegate () |
| Returns the GpuProgram which should be bound to the pipeline. More...
|
|
size_t | calculateSize () const override |
| Calculate the size of a resource; this will only be called after 'load'. More...
|
|
virtual GpuProgramParametersSharedPtr | createParameters () |
| Creates a new parameters object compatible with this program definition. More...
|
|
bool | getBuildParametersFromReflection () const |
|
virtual Vector3 | getComputeGroupDimensions () const |
| Returns the number of process groups dispatched by this compute program. More...
|
|
virtual const GpuNamedConstants & | getConstantDefinitions () const |
| Get the full list of named constants. More...
|
|
virtual GpuProgramParametersSharedPtr | getDefaultParameters () |
| Get a reference to the default parameters which are to be used for all uses of this program. More...
|
|
virtual const String & | getLanguage () const |
| Returns a string that specifies the language of the gpu programs as specified in a material script. More...
|
|
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. More...
|
|
virtual ushort | getNumberOfPosesIncluded () const |
| Returns the number of simultaneous poses the vertex program can blend, for use in pose animation. More...
|
|
uint8 | getNumClipDistances () const |
| Retrieves the number of clip distances. See GpuProgram::setNumClipDistances. More...
|
|
virtual bool | getPassFogStates () const |
| Returns whether a fragment program wants fog state to be passed through fixed pipeline low level API rendering calls (default true, subclasses can override) More...
|
|
virtual bool | getPassSurfaceAndLightStates () const |
| 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) More...
|
|
virtual bool | getPassTransformStates () const |
| Returns whether a vertex program wants transform state to be passed through fixed pipeline low level API rendering calls. More...
|
|
virtual const String & | getSource () const |
| Gets the assembler source for this program. More...
|
|
virtual const String & | getSourceFile () const |
| Gets the name of the file used as source for this program. More...
|
|
virtual const String & | getSyntaxCode () const |
| Gets the syntax code for this program e.g. More...
|
|
virtual GpuProgramType | getType () const |
| Get the program type. More...
|
|
virtual bool | hasCompileError () const |
| Did this program encounter a compile error when loading? More...
|
|
virtual bool | hasDefaultParameters () const |
| Returns true if default parameters have been set up. More...
|
|
virtual bool | isAdjacencyInfoRequired () const |
| Returns whether this geometry program requires adjacency information from the input primitives. More...
|
|
virtual bool | isMorphAnimationIncluded () const |
| Returns whether a vertex program includes the required instructions to perform morph animation. More...
|
|
virtual bool | isPoseAnimationIncluded () const |
| Returns whether a vertex program includes the required instructions to perform pose animation. More...
|
|
virtual bool | isSkeletalAnimationIncluded () const |
| Returns whether a vertex program includes the required instructions to perform skeletal animation. More...
|
|
virtual bool | isSupported () const |
| Returns whether this program can be supported on the current renderer and hardware. More...
|
|
virtual bool | isVertexTextureFetchRequired () const |
| Returns whether this vertex program requires support for vertex texture fetch from the hardware. More...
|
|
virtual bool | isVpAndRtArrayIndexFromAnyShaderRequired () const |
| Returns whether this program requires support for choosing viewport or render target index in any program or only geometry one. More...
|
|
virtual void | resetCompileError () |
| Reset a compile error if it occurred, allowing the load to be retried. More...
|
|
virtual void | setAdjacencyInfoRequired (bool r) |
| Sets whether this geometry program requires adjacency information from the input primitives. More...
|
|
virtual void | setAutoReflectArrayBindingsInRootLayout (bool bReflectArrayRootLayouts) |
| Set to true to reflects the shader looking for array bindings (e.g. More...
|
|
void | setBuildParametersFromReflection (bool buildParams) |
|
virtual void | setComputeGroupDimensions (Vector3 dimensions) |
| Sets the number of process groups dispatched by this compute program. More...
|
|
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. More...
|
|
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. More...
|
|
virtual void | setMorphAnimationIncluded (bool included) |
| Sets whether a vertex program includes the required instructions to perform morph animation. More...
|
|
void | setNumClipDistances (const uint8 numClipDistances) |
| Sets the number of clip distances this shader uses. More...
|
|
virtual void | setPoseAnimationIncluded (ushort poseCount) |
| Sets whether a vertex program includes the required instructions to perform pose animation. More...
|
|
void | setPrefabRootLayout (const PrefabRootLayout::PrefabRootLayout &prefab) |
| Sets a prefab root layout, mostly meant for low level materials (e.g. More...
|
|
virtual void | setReplaceVersionMacro (bool bReplace) |
| When true: More...
|
|
virtual void | setRootLayout (GpuProgramType t, const RootLayout &rootLayout) |
| Sets a RootLayout programmatically, thus the shader source won't be parsed looking for one We will call validate() More...
|
|
virtual void | setSkeletalAnimationIncluded (bool included) |
| Sets whether a vertex program includes the required instructions to perform skeletal animation. More...
|
|
virtual void | setSource (const String &source) |
| Sets the source assembly for this program from an in-memory string. More...
|
|
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. More...
|
|
virtual void | setSourceFile (const String &filename) |
| Sets the filename of the source assembly for this program. More...
|
|
virtual void | setSyntaxCode (const String &syntax) |
| Sets the syntax code for this program e.g. More...
|
|
virtual void | setType (GpuProgramType t) |
| Set the program type (only valid before load) More...
|
|
virtual void | setUniformBlockBinding (const char *blockName, uint32 bindingSlot) |
| For GL only. Program must be bound when calling. More...
|
|
virtual void | setVertexTextureFetchRequired (bool r) |
| Sets whether this vertex program requires support for vertex texture fetch from the hardware. More...
|
|
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. More...
|
|
virtual void | unsetRootLayout () |
|
| Resource (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) |
| Standard constructor. More...
|
|
virtual | ~Resource () |
| Virtual destructor. More...
|
|
virtual void | _dirtyState () |
| Manually mark the state of this resource as having been changed. More...
|
|
virtual void | _fireLoadingComplete (bool wasBackgroundLoaded) |
| Firing of loading complete event. More...
|
|
virtual void | _firePreparingComplete (bool wasBackgroundLoaded) |
| Firing of preparing complete event. More...
|
|
virtual void | _fireUnloadingComplete () |
| Firing of unloading complete event. More...
|
|
virtual void | _notifyOrigin (const String &origin) |
| Notify this resource of it's origin. More...
|
|
virtual void | addListener (Listener *lis) |
| Register a listener on this resource. More...
|
|
virtual void | changeGroupOwnership (const String &newGroup) |
| Change the resource group ownership of a Resource. More...
|
|
virtual void | escalateLoading () |
| Escalates the loading of a background loaded resource. More...
|
|
virtual ResourceManager * | getCreator () |
| Gets the manager which created this resource. More...
|
|
virtual const String & | getGroup () const |
| Gets the group which this resource is a member of. More...
|
|
virtual ResourceHandle | getHandle () const |
|
virtual LoadingState | getLoadingState () const |
| Returns the current loading state. More...
|
|
virtual const String & | getName () const |
| Gets resource name. More...
|
|
virtual const String & | getOrigin () const |
| Get the origin of this resource, e.g. More...
|
|
virtual size_t | getSize () const |
| Retrieves info about the size of the resource. More...
|
|
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. More...
|
|
virtual bool | isBackgroundLoaded () const |
| Returns whether this Resource has been earmarked for background loading. More...
|
|
virtual bool | isLoaded () const |
| Returns true if the Resource has been loaded, false otherwise. More...
|
|
virtual bool | isLoading () const |
| Returns whether the resource is currently in the process of background loading. More...
|
|
virtual bool | isManuallyLoaded () const |
| Is this resource manually loaded? More...
|
|
virtual bool | isPrepared () const |
| Returns true if the Resource has been prepared, false otherwise. More...
|
|
virtual bool | isReloadable () const |
| Returns true if the Resource is reloadable, false otherwise. More...
|
|
virtual void | load (bool backgroundThread=false) |
| Loads the resource, if it is not already. More...
|
|
bool | markForReload () |
|
virtual void | prepare (bool backgroundThread=false) |
| Prepares the resource for load, if it is not already. More...
|
|
virtual void | reload (LoadingFlags flags=LF_DEFAULT) |
| Reloads the resource, if it is already loaded. More...
|
|
virtual void | removeListener (Listener *lis) |
| Remove a listener on this resource. More...
|
|
virtual void | setBackgroundLoaded (bool bl) |
| Tells the resource whether it is background loaded or not. More...
|
|
virtual void | setManuallyLoaded (bool isManual) |
| Set "Is this resource manually loaded?". More...
|
|
virtual void | setToLoaded () |
| Change the Resource loading state to loaded. More...
|
|
virtual void | touch () |
| 'Touches' the resource to indicate it has been used. More...
|
|
virtual void | unload () |
| Unloads the resource; this is not permanent, the resource can be reloaded later if required. More...
|
|
| StringInterface () |
|
virtual | ~StringInterface () |
| Virtual destructor, see Effective C++. More...
|
|
virtual void | copyParametersTo (StringInterface *dest) const |
| Method for copying this object's parameters to another object. More...
|
|
ParamDictionary * | getParamDictionary () |
| Retrieves the parameter dictionary for this class. More...
|
|
const ParamDictionary * | getParamDictionary () const |
|
virtual String | getParameter (const String &name) const |
| Generic parameter retrieval method. More...
|
|
const ParameterList & | getParameters () const |
| Retrieves a list of parameters valid for this object. More...
|
|
virtual bool | setParameter (const String &name, const String &value) |
| Generic parameter setting method. More...
|
|
virtual void | setParameterList (const NameValuePairList ¶mList) |
| Generic multiple parameter setting method. More...
|
|
Defines a program which runs on the GPU such as a vertex or fragment program.