///<summary>Draw Material Triangle</summary> public void DrawMaterialTriangle(MaterialInterface Material, Vector2D V0_Pos, Vector2D V1_Pos, Vector2D V2_Pos, Vector2D V0_UV, Vector2D V1_UV, Vector2D V2_UV, LinearColor V0_Color, LinearColor V1_Color, LinearColor V2_Color) => HUD_methods.DrawMaterialTriangle_method.Invoke(ObjPointer, Material, V0_Pos, V1_Pos, V2_Pos, V0_UV, V1_UV, V2_UV, V0_Color, V1_Color, V2_Color);
///<summary>Change the text material and signal the primitives to be rebuilt</summary> public void SetTextMaterial(MaterialInterface Material) => TextRenderComponent_methods.SetTextMaterial_method.Invoke(ObjPointer, Material);
///<summary>Draws a material-textured quad on the HUD.</summary> ///<remarks> ///@param Material Material to use ///@param ScreenX Screen-space X coordinate of upper left corner of the quad. ///@param ScreenY Screen-space Y coordinate of upper left corner of the quad. ///@param ScreenW Screen-space width of the quad (in pixels). ///@param ScreenH Screen-space height of the quad (in pixels). ///@param MaterialU Texture-space U coordinate of upper left corner of the quad ///@param MaterialV Texture-space V coordinate of upper left corner of the quad. ///@param MaterialUWidth Texture-space width of the quad (in normalized UV distance). ///@param MaterialVHeight Texture-space height of the quad (in normalized UV distance). ///@param Scale Amount to scale the entire texture (horizontally and vertically) ///@param bScalePosition Whether the "Scale" parameter should also scale the position of this draw call. ///@param Rotation Amount to rotate this quad ///@param RotPivot Location (as proportion of quad, 0-1) to rotate about ///</remarks> public void DrawMaterial(MaterialInterface Material, float ScreenX, float ScreenY, float ScreenW, float ScreenH, float MaterialU, float MaterialV, float MaterialUWidth, float MaterialVHeight, float Scale, bool bScalePosition, float Rotation, Vector2D RotPivot) => HUD_methods.DrawMaterial_method.Invoke(ObjPointer, Material, ScreenX, ScreenY, ScreenW, ScreenH, MaterialU, MaterialV, MaterialUWidth, MaterialVHeight, Scale, bScalePosition, Rotation, RotPivot);
///<summary>Draws a material-textured quad on the HUD.</summary> ///<remarks> ///Assumes UVs such that the entire material is shown. ///@param Material Material to use ///@param ScreenX Screen-space X coordinate of upper left corner of the quad. ///@param ScreenY Screen-space Y coordinate of upper left corner of the quad. ///@param ScreenW Screen-space width of the quad (in pixels). ///@param ScreenH Screen-space height of the quad (in pixels). ///@param Scale Amount to scale the entire texture (horizontally and vertically) ///@param bScalePosition Whether the "Scale" parameter should also scale the position of this draw call. ///</remarks> public void DrawMaterialSimple(MaterialInterface Material, float ScreenX, float ScreenY, float ScreenW, float ScreenH, float Scale, bool bScalePosition) => HUD_methods.DrawMaterialSimple_method.Invoke(ObjPointer, Material, ScreenX, ScreenY, ScreenW, ScreenH, Scale, bScalePosition);
///<summary>Set Light Function Material</summary> public void SetLightFunctionMaterial(MaterialInterface NewLightFunctionMaterial) => Light_methods.SetLightFunctionMaterial_method.Invoke(ObjPointer, NewLightFunctionMaterial);
///<summary>setting decal material on decal component. This will force the decal to reattach</summary> public void SetDecalMaterial(MaterialInterface NewDecalMaterial) => DecalComponent_methods.SetDecalMaterial_method.Invoke(ObjPointer, NewDecalMaterial);
///<summary>Creates a Dynamic Material Instance for the specified named material override, optionally from the supplied material.</summary> ///<remarks> ///@param Name - The slot name of the material to replace. If invalid, the material is unchanged and NULL is returned. ///</remarks> public MaterialInstanceDynamic CreateNamedDynamicMaterialInstance(Name InName, MaterialInterface SourceMaterial) => ParticleSystemComponent_methods.CreateNamedDynamicMaterialInstance_method.Invoke(ObjPointer, InName, SourceMaterial);
///<summary> ///Copies over parameters given a material interface (copy each instance following the hierarchy) ///Very slow implementation, avoid using at runtime. ///</summary> ///<remarks> ///Hopefully we can replace it later with something like CopyInterpParameters() ///The output is the object itself (this). Copying 'quick parameters only' will result in a much ///faster copy process but will only copy dynamic scalar, vector and texture parameters on clients. ///@param bQuickParametersOnly Copy scalar, vector and texture parameters only. Much faster but may not include required data ///</remarks> public void K2_CopyMaterialInstanceParameters(MaterialInterface Source, bool bQuickParametersOnly) => MaterialInstanceDynamic_methods.K2_CopyMaterialInstanceParameters_method.Invoke(ObjPointer, Source, bQuickParametersOnly);
///<summary>Draws a set of triangles on the Canvas.</summary> ///<remarks> ///@param RenderMaterial Material to use when rendering. Remember that only the emissive channel is able to be rendered as no lighting is performed when rendering to the Canvas. ///@param Triangles Triangles to render. ///</remarks> public void K2_DrawMaterialTriangle(MaterialInterface RenderMaterial, byte Triangles /*TODO: array TArray */) => Canvas_methods.K2_DrawMaterialTriangle_method.Invoke(ObjPointer, RenderMaterial, Triangles);
///<summary>Set a named material instance parameter on this ParticleSystemComponent.</summary> ///<remarks>Updates the parameter if it already exists, or creates a new entry if not.</remarks> public void SetMaterialParameter(Name ParameterName, MaterialInterface Param) => ParticleSystemComponent_methods.SetMaterialParameter_method.Invoke(ObjPointer, ParameterName, Param);
///<summary>Draws a material on the Canvas.</summary> ///<remarks> ///@param RenderMaterial Material to use when rendering. Remember that only the emissive channel is able to be rendered as no lighting is performed when rendering to the Canvas. ///@param ScreenPosition Screen space position to render the texture. ///@param ScreenSize Screen space size to render the texture. ///@param CoordinatePosition Normalized UV starting coordinate to use when rendering the texture. ///@param CoordinateSize Normalized UV size coordinate to use when rendering the texture. ///@param Rotation Rotation, in degrees, to render the texture. ///@param PivotPoint Normalized pivot point to use when rotating the texture. ///</remarks> public void K2_DrawMaterial(MaterialInterface RenderMaterial, Vector2D ScreenPosition, Vector2D ScreenSize, Vector2D CoordinatePosition, Vector2D CoordinateSize, float Rotation, Vector2D PivotPoint) => Canvas_methods.K2_DrawMaterial_method.Invoke(ObjPointer, RenderMaterial, ScreenPosition, ScreenSize, CoordinatePosition, CoordinateSize, Rotation, PivotPoint);
///<summary>Adds an element to the sprite.</summary> public void AddElement(MaterialInterface Material, CurveFloat DistanceToOpacityCurve, bool bSizeIsInScreenSpace, float BaseSizeX, float BaseSizeY, CurveFloat DistanceToSizeCurve) => MaterialBillboardComponent_methods.AddElement_method.Invoke(ObjPointer, Material, DistanceToOpacityCurve, bSizeIsInScreenSpace, BaseSizeX, BaseSizeY, DistanceToSizeCurve);
///<summary>Set Material Parameter</summary> public void SetMaterialParameter(Name ParameterName, MaterialInterface Param) => Emitter_methods.SetMaterialParameter_method.Invoke(ObjPointer, ParameterName, Param);
///<summary>Sets a Material given a Material Index</summary> public void SetMaterial(int MaterialIndex, MaterialInterface NewMaterial) => StaticMesh_methods.SetMaterial_method.Invoke(ObjPointer, MaterialIndex, NewMaterial);
///<summary>Creates a Dynamic Material Instance which you can modify during gameplay.</summary> public static MaterialInstanceDynamic CreateDynamicMaterialInstance(UObject WorldContextObject, MaterialInterface Parent, Name OptionalName) => KismetMaterialLibrary_methods.CreateDynamicMaterialInstance_method.Invoke(WorldContextObject, Parent, OptionalName);