Click or drag to resize
Ab4d.SharpEngine logo

PixelMaterial Class

PixelMaterial is a material that can be used to render 3D pixels.
Inheritance Hierarchy

Namespace: Ab4d.SharpEngine.Materials
Assembly: Ab4d.SharpEngine (in Ab4d.SharpEngine.dll) Version: 2.0.8956+4c7684e186ca1be74e7a284fbe739d9a1b843d3c
Syntax
C#
public class PixelMaterial : Material, 
	IPixelMaterial, IVertexColorMaterial, ITransparentMaterial, IVertexScaleMaterial

The PixelMaterial type exposes the following members.

Constructors
 NameDescription
Public methodPixelMaterial(String) Constructor with white color and pixel size set to 1.
Public methodPixelMaterial(Color4, Single, String) Constructor
Public methodPixelMaterial(Color4, Boolean, Single, String) Constructor
Public methodPixelMaterial(Color4, Single, Boolean, String) Constructor
Top
Properties
 NameDescription
Public propertyHasTransparency HasTransparency can be set when PixelColors is used and can specify if any of the pixel color has alpha value less than 1. When this property not set and PixelColors is used, then all colors are checked to see if there is any transparent color.
Public propertyPixelColor Gets or sets the Color4 of pixels. When PixelColors array is set, the value of this property is used as a mask that is multiplied with each color defined in the array. If this property is not set and when PixelColors property is set, then the default value of this property is Color.White (no color mask). When PixelColors is not set, then the default value of this property is Colors.Black.
Public propertyPixelColors Gets or sets a Color4 array that specifies the colors for each pixel. When color's alpha is 0, the pixel is not rendered. When PixelColors array is set, the PixelColor is used as a mask that is multiplied with each color defined in the array (set PixelColor to White to use the values specified in this array). When null, the color of all the pixels is set by the color defined by the PixelColor property. When individual values of PixelColors are changed, you need to call UpdatePixelColors method for the changes to take effect.
Public propertyPixelSize Gets or sets the width and height of the pixel in screen space units. This value is scaled with DPI scale factor. Default value is 1.
Public propertyPixelSizes Gets or sets a float array that specifies the sizes for each pixel. When size is less of equal to 0, the pixel is not rendered. When PixelSizes array is set, the PixelSize value is multiplied with each size defined in the array (set PixelSize to 1 to use the values specified in this array). When null, the size of all the pixels is set by the value defined by the PixelSize property. When individual values of PixelSizes are changed, you need to call UpdatePixelSizes method for the changes to take effect.
Public propertyVertexColorsBuffer Gets a GpuBuffer for an array of Color4 values where each value represents a color of one position (vertex).
Public propertyVertexScaleBuffer Gets a GpuBuffer for an array of float values where each value represents a scale (or size) of one position (pixel).
Top
Methods
 NameDescription
Protected methodDispose Dispose
(Overrides MaterialDispose(Boolean))
Protected methodOnEffectChanged OnEffectChanged is called after the effect is changed - overridden methods can return false to prevent the change of effect.
(Overrides MaterialOnEffectChanged(Effect, Effect))
Protected methodOnInitializeSceneResources Initializes resources with the specified Scene and GpuDevice. This method can be override and is called from InitializeSceneResources(Scene) method.
(Overrides MaterialOnInitializeSceneResources(Scene, VulkanDevice))
Public methodToString ToString
(Overrides MaterialToString)
Public methodUpdatePixelColors UpdatePixelColors must be called when the values in the PixelColors array is changed. The method recreates the GpuBuffer that defined the pixel color data for the graphics card.
Public methodUpdatePixelColorsTransparency UpdatePixelColorsTransparency method check if any color in the PixelColors has Alpha value less than 1 and sets HasTransparency accordingly.
Public methodUpdatePixelSizes UpdatePixelSizes must be called when the values in the PixelSizes array is changed. The method recreates the GpuBuffer that defined the pixel sizes data for the graphics card.
Top
See Also