UPixelator - Pixelize 3d Scenes

Unity Pixelator


UPixelator asset provides the basis for creating pixel art style games with 3d models.

It is a shaderless solution for pixelating 3d scenes with pixel creep reduction for orthographic camera.


Check the WebGL Demo! (Scene is included without modules)

Check the Documentation for full description, limitations and work in progress.

Join the growing Discord server!


Render pipelines

- Built-in ✓

- URP ✓


Tested builds

Unity 2021.3 (Builtin, URP 12): Windows, WebGL

Unity 2022.3 (Builtin, URP 14): Windows, WebGL


Available modules

- Pixel Art Edge Highlights

- Fake Stop Motion

- Campfire (3d Pixel Art) (Included)


Shaderless

Requires no special shaders so you can keep your existing materials.


Pixelation

Achieved by rendering to a lower resolution render texture and upscaling to fit the screen.

A second camera then renders those pixelated camera outputs and doubles as a UI camera.


Pixel Creep reduction

Camera and tagged objects are snapped to a grid of world space pixel size resulting in the same pixel colors being rendered while moving.


Subpixel stabilization

Snapping to pixel size grid makes the camera shake so subpixel offset is applied in the game resolution based on the snap position difference.


Camera projections

This asset is intended to be used with orthographic camera, even though it will pixelize a perspective camera.

Please note that only the orthographic camera has the benefit of pixel creep reduction.


Please note

- Rotation will always have some pixel creep but it's less noticeable with higher rotation speed

- Zig-zag will occur for all snapped moving objects, but is less noticeable with higher movement speed

- Large screen space effects are not supported but repeating patterns like 2,4,8,16 pixels wide are


Contact

If you have any questions or feedback, please contact me at reslav.hollos@gmail.com.


Release Notes

If updating from version prior to 3.0.0 please delete these folders before importing:

- Assets/Abiogenesis3d

- Assets/Editor/Abiogenesis3d


Changelog:

3.1.0

- Fixed hdr graphicsFormat subset type

- Added experimental auto detection of graphicsFormat for URP

- Fixed initial orthographic correction values if script already exists

- Added auto set URP asset Opaque Downsampling to None


3.0.0

- Added Free Aspect support with game window resizing

- Added mirroring of a target camera for world space ui

- Added smooth and snap for snappables with rectTransform

- Refactored snappables to allow skinned mesh to be affected

- Fixed MultiCameraEvents to use SendMessage and no upwards

- Fixed MultiCameraEvents error when no EventSystem found

- Fixed MultiCameraEvents to emit onMouseDrag instead of onMouseMove

- Fixed MultiCameraEvents to restore the cam.eventMask in OnDisable

- Improved rigidBody.MovePosition being throttled on higher fps

- Added dirty flags to force regenerate cameras and snappables list

- Fixed incorrect default conversion of Unlit/Texture to URP

- Fixed opening a prefab containing UPixelator script

- Fixed right click Reset on UPixelator component

- Added more graphics formats to the subset

- Improved GPU performance per frame mostly in UPixelator.cs

- Improved demo scene, added free Campfire package module

- Added camera controller to update transform in edit mode

- Added tooltips on hover over UPixelator inspector fields

- Other fixes and cleanup


2.2.0

- Improved MultiCameraEvents to no longer need raycastBlocker

- Improved Builtin pipeline workflow to use one less Blit call

- Fixed blur on some resolutions due to wrong camera.rect mutation

- Added auto detection of which snappables belong to which camera

- Fixed position offsets when nesting snappables in runtime

- Fixed jitter of snappables during cam rotation for multiple cameras

- Fixed unique depth warnings for ignored and disabled cameras

- Fixed texture offset when toggling UPixelator script

- Fixed position of URP overlay cameras

- Added autoDetectCameras toggle


2.1.0

- Fixed snappables jitter during camera rotation

- Fixed blur issue with 968x548 cam.targetTexture size

- Added deactivation of additional instances of the main script

- Added static MultiCameraEvents.raycastBlockerName

- Changed GraphicsFormat dropdown to a subset

- Cleaned up code


Fixes in shared scripts:

- Added .asmdef files and simplified URP detection

- Fixed URP detection when quality levels reference is unset

- Fixed AutoUnpackPrefab crash when creating a prefab variant


2.0.1

- Fixed UI follow when toggling UPixelator


2.0.0

- Added support for Unity 2022: Builtin, URP, WebGL

- Added auto detect and setup of scene cameras

- Textures are now generated in memory instead of files

- Fixed materials screenspace effects with repeated patterns

- Removed the need for ConcealBorder prefab

- Fixed incorrect UI position with multiple cameras

- Fixed disappearing UI on script recompile or undo

- Added auto import of URP materials for example scenes

- Cleaned up demo and reduced package size

- Other fixes and improvements


1.2.0

- Added multi camera mouse events handler script

- Added .unitypackage for URP to avoid using render pipeline converter


1.1.0

- Renamed the asset


1.0.0

- First release


Basic Information
Latest Version
3.1.0 (08 Mar 2024)
Publisher
Abiogenesis3d
Category
Scripting/Camera
Size
49.3 MB
Price
€55.19
Asset Rating
(10)
Extended Information
Unity Versions
2021.3.35
Render Pipelines
BIRP URP
State
published