ResoDynamix is a dynamic resolution change library that allows you to change the rendering resolution of base cameras and overlay cameras.
While uGUI-based UI rendering can be rendered at a different resolution from the base camera by specifying Overlay as the Render Mode, this library allows you to render at a different resolution from the base camera even when the Render Mode is not Overlay.
If you are using Unity 2022 or Unity 6 (Compatible mode), please use the code from the compatible-mode branch. For details, refer to the document below.
Documentation (Unity 2022 or Compatible)
Installation is performed with the following steps.
- Select Window > Package Manager
- Select "+" button > Add package from git URL
- Enter the following to install
Alternatively, open Packages/manifest.json and add the following to the dependencies block.
{
"dependencies": {
"jp.co.cyberagent.reso-dynamix": "https://github.com/CyberAgentGameEntertainment/ResoDynamix.git?path=/Assets/ResoDynamix"
}
}To specify a version, write as follows.
Note that if you see a message like No 'git' executable was found. Please install Git on your system and restart Unity, you need to set up Git on your machine.
To update the version, rewrite the version using the above procedure.
If you don't specify a version, you can update by opening the package-lock.json file and rewriting the hash for this library.
{
"dependencies": {
"jp.co.cyberagent.reso-dynamix": {
"version": "git+ssh://git@github.com:CyberAgentGameEntertainment/ResoDynamix.git?path=/Assets/ResoDynamix",
"depth": 0,
"source": "git",
"dependencies": {},
"hash": "..."
}
}
}Add Create Dynamix Resolution Image Feature to the Universal Renderer Data used for scene rendering.

Add the ResoDynamix component to the scene. Note that this component can only be placed once per scene.

Add ResoDynamixController to the scene. This component can be placed multiple times in the scene.

Specify the base camera whose resolution you want to change in the BaseCamera field of ResoDynamixController.
Add the ResoDynamixController placed in step 2.4 to the Controllers field of the ResoDynamix placed in step 2.3.
| Property Name | Description |
|---|---|
| Controllers | Reso Dynamix Controllers placed in the scene. All controllers placed in the scene must be registered here. |
| Property Name | Description |
|---|---|
| Base Camera Render Scale | Rendering scale of the Base Camera. You can change the rendering resolution of the Base Camera by changing this value. When the Render Scale is 1.0, Reso Dynamix processing is skipped. |
| Result Render Scale | Rendering scale of the final hybrid image. You can also change the UI resolution by changing this resolution secondarily, so specify 1 or less when you want to reduce UI rendering load. However, when this render scale is set to 1 or less, intermediate textures are required, which increases memory usage accordingly. |
| Base Camera | Base Camera |
| Use Depth Texture With Overlay Camera | Checkbox for whether to use depth texture in overlay camera rendering. Check this if you want to use depth testing or stencil masks in the overlay camera. |





