PixelTools is needed in order to simplify the creation of 2d pixel games or add a pixel effect to your 3d project while increasing your FPS.
- PixelPerfect Camera (Component) - Add pixelation effect to your project, Eliminates the effect of pixel distortion as it calculates the correct ortho width based on your preferences: Resolution - regulates how close camera is to the playing field. Pixel per unit - need for the camera to work with sprites of any size, this parameter can be viewed either in the project settings or in the sprites.
- PixelPerfect Camera Manager - need to center the camera on the pixel grid to avoid visual defects.
- PixelatedGameInstance - need to remove the scaling effect of the system, you may know the problem of 125% scaling, which makes many applications look incorrect.
- M_WidgetPixelisation - This material need to pixelate widgets, use retainer box with this material to pixelate your widgets.
- Pixelate Texture menu button - You may not know that without special texture preparation in the build, all sprites created with it will be blurry. This button removes this effect (Use it after "Apply Paper2D Texture Settings")
- Set Pixelated Settings button - Button in the project settings menu, disable some settings that are good for 3d but not for 2d.
FAQ:
- Is that works with camera lag? - Of cource BUT you need to enable Frame rate limit and choose a Camera lag distance value that will look good, or disable PixelPerfect Camera manager but you will see that the pixelation effect in motion works differently... strange. EXPERIMENT!
- Why i need to enable PixelPerfect Camera manager and Pixelated Game Instance? - For better picture quality. PixelPerfectCamera manager guarantees a clear display of pixels when moving, as it does not allow the camera to move off the pixel grid, and a PixelatedGameInstance protects your game from external influences at startup, and also includes settings that are suitable for pixel graphics, if you want complement Game Instance or Camera manager you will can make child classes from classes from plugin.
How it works?
- PixelperfectCameraComponent - Camera Component that will make it easier to work with pixel graphics. To make pixelation effect use Reslution Scale Value and disable game upscaler, The formula for calculating the resolution of the game - (Your Res (Resolution value) / Desktop Res) * 100. Have functions to scale change the size of the playing field, Calculate PixelPerfect Resolution, startup settings.
- PixePerfectCameraManager - Camera Manager Centers Camera to the pixel grid, formula: 1 / PixelPerunit (Get it automaticly from the active camera in begin play)
- PixelatedGame Instance - Quickly switches Fullscreen mode when initializing the project, which disables the system scaling of your game, also disable VSync, DynamicResolution and set resolution of the game to native.
- M_PixelatedWidget - Use it in retainer box to pixelate your widgets. Works like pixelisation material for post processing.
- PixelateTexture button - Disable mipmaps and upsampler for this texture, which is why the sprite in the build looks clear.
- Set Pixelated Settings button - Disable parameters for best pixel graphycs:
DefaultManualScreenPercentage = 100
DefaultScreenPercentageDesktopMode = BasedOnDisplayResolution
DefaultScreenPercentageMobileMode = BasedOnDisplayResolution
DefaultFeatureAntiAliasing = AAM_None
MobileAntiAliasing = None
bDefaultFeatureMotionBlur = false
DynamicGlobalIllumination = None
bDefaultFeatureAutoExposure = false
DefaultFeatureAutoExposureBias = 0
Reflections = None
ShadowMapMethod = ShadowMaps
bDefaultFeatureBloom = false