GFX

The GFX addon extends the game application to implement graphics quality scaling features.

It primarily functions as a means for graphics quality settings. It scales the graphics canvas of the application between performance and quality.

It also is equipped with an automatic feature to automatically scale the game application's graphics quality based on the device specifications.

The developer can conveniently limit the amount of quality to be scaled without having to scale the percentage manually, using the limit feature, which the developer can choose either a limit of High Quality or a limit of Low Quality.

The addon implements graphics quality settings for the game application, either automatically, manually or both applied seamlessly.

Automatic

Sample Setup Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Intstructions

1. The first step is to add the GFX addon into the project.

2. The debug mode toggle allows logging of the processes with the usage of the GFX addon. The logs can be looked up through the [F12] Developer Tools : Console or the Safari Web Inspector

3. The style to initially implement the graphics quality optimization. Either automatic or manual. You can later change this through events, to make them work seamlessly together, for example based on the player's preferences.

4. If the GFX optimization style is on automatic, the method property will be the based specification for the automated optimization. The GFX addon will base the quality percentage with that of the selected optimization method.

5. The Limit property option sets the minimum quality scale, either High Quality or Low Quality. It's a convenient way of limiting the minimum quality scale without having to scale the quality percentage itself. 

 

In other words, if the limit is set to High Quality, then the minimum quality would just be High Quality, while the maximum is High Definition.

But if the limit is set to Low Quality, then the minimum quality would be instead Low Quality, while the maximum still being High Definition.

6. The Automatic : Enabled toggle property determines if the automatic optimization would be enabled, that is only the case if the style is currently on automatic.

7. The Manual : Quality option determines the quality percentage of the optimization, from 0 to 100. 0 meaning having the most of the performance but lowest in graphics quality.
And 100 having the most graphics quality but lowest in performance.

This is only applicable if the style is currently on manual and the manual toggle is currently enabled.

8. The Manual : Enabled toggle property determines if the manual optimization would be enabled, that is only the case if the style is currently on manual.

That covers everything about the property basics, good luck with the learning!

 

Features

The GFX is an addon that implements graphics quality scaling features to choose between performance or quality, with both automatic and manual styles of implementation into an application made by Construct 3 for c3runtime.

It allows the developer to either automatically scale the graphics quality over performance depending on the device specificationsmanually specify the graphics quality percentage depending on the user input or both working alongside.

Features :

  • GFX graphics quality-performance settings.

  • Automatic quality-performance scale based on device specifications.

  • Manual specification of quality-performance percentage.

  • Easy to use and no programming required.

  • Anchor support.

  • Build-in performance optimization features.

  • Quality scale limit features.

  • System+ counterpart features.

  • Well-supported and fully tested.

  • Debug mode console logs.

  • Construct 3 editor support.

  • Construct 3 runtime.

  • Dedicated c3runtime optimization.

  • ES6 API features. 

 

Actions, Conditions & Expressions

Actions

Actions.png

Manual :

  • Set Quality - Set the optimization quality.

    • Percentage - The percentage from 0 to 100, to manually set the GFX quality.

  • Set Manual - Sets the manual optimization 'enabled' or 'disabled'.

    • Toggle - The manual optimization to set.

System+ :

  • Set Canvas Size - Sets the size of the canvas, use this instead of the System action for the optimization.

    • Width - The new width of the canvas, in pixels.

    • Height - The new height of the canvas, in pixels.

  • Set Layout Scale - Sets the scale of the entire layout, use this instead of the System action for the optimization.

    • Scale - The overall scale of the layout. 1.0 for the original size, 2.0 for double the size, etc.


Automatic :

  • Refresh - Refresh the automated optimization, useful for rescanning the device specification.

  • Set Automatic - Sets the automatic optimization 'enabled' or 'disabled'.

    • Toggle - The automatic optimization to set.


Optimization :

  • Set Style - Set the optimization style to either 'Automatic' or 'Manual'.

    • Style - If 'Automatic', the optimization is automatically based on the device specification while 'Manual' is developer defined.

Expressions

Optimization :

  • QualityScale - Returns the quality scale (0 to 1.0) of the current optimization.

  • QualityPercentage - Returns the quality percentage (0 to 100) of the current optimization.

Relative :

  • RelativeCanvasWidth - Returns the canvas width relative to the optimizations made.

  • RelativeCanvasHeight - Returns the canvas height relative to the optimizations made.

  • RelativeLayoutScale - Returns the layout scale relative to the optimizations made.

 


Base :

  • BaseCanvasWidth - Returns the canvas width prior to the optimizations made.

  • BaseCanvasHeight - Returns the canvas height prior to the optimizations made.

  • BaseLayoutScale - Returns the layout scale prior to the optimizations made.

 


Original :

  • OriginalCanvasWidth - Returns the original canvas width, based from the project properties.

  • OriginalCanvasHeight - Returns the original canvas height, based from the project properties.

Properties

Configuration - The GFX's general configuration property.

  • Debug Mode - If enabled, everything will be logged in the Developer Tools : Console [F12].

  • Style - If 'Automatic', the optimization is automatically based on the device specification while 'Manual' is developer defined.

    • Automatic

    • Manual


Optimization - The configuration settings to how the GFX implements its optimizations.

  • Method - The device specification basis for the GFX's automatic style optimization.

    • Memory

    • FPS​​

  • Limit - The quality percentage's translated quality, from High Definition to the selected limit.

    • High Quality

    • Low Quality


Automatic - The configuration settings for the 'automatic' style of optimization.

  • Enabled - If 'enabled' and the sytle is in 'automatic', the automatic optimization will run.


Manual - The configuration settings for the 'manual' style of optimization.

  • Quality - The quality percentage from '0' to '100'. (minimum to maximum)

  • Enabled - If 'enabled' and the sytle is in 'manual', the manual quality scaling optimization will be allowed.

 
 

Feature Showcase

The GFX is an addon that implements graphics quality scaling features to choose between performance or quality, with both automatic and manual styles of implementation into an application. 


Initial tests were done to showcase and benchmark the performance improvement gained from using GFX addon. And it was found out that it had significant performance improvements, without noticeable quality loss, as you can see from the 2nd and 3rd showcase images.

The 1st image is a GIF and has been quality reduced, for hosting-related reasons, although in actuality, it's similar in quality with the 2nd and 3rd showcase images.

As you can see with the images, it went from 28 FPS to 60 FPS from the initial optimizations alone. It scaled the quality from 100% to 0% without noticeable quality loss.

 

This is a very important feature for High Definition games where you would want to show the best graphics quality for your game on high-end devices but want to be able to reduce quality for performance on common devices

This is where the GFX addon comes in, where it can also scale the graphics quality percentage with the device specification automatically! But it still has an option to override it manually from the user's input, for example:

Create your games with graphics option, as professional games do, only easier, using the GFX addon, with built-in optimizations.

Sample Implementation

Before FPS - 28 FPS

After FPS - 60    FPS

 
 

Manual

Sample Setup Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Easy Sample Project

Sample Setup Project

Specifications

  • Instructions - The sample project has comments and instructions on how to use the addon and its features.

  • A.C.E. Coverage - It covers the implementation of each action, condition and expression.

  • Tips and Tricks - It provides some tips and tricks to a better use of the addon and of the event-sheet system alongside it.

Supporters

Only

Get the tools

for your pro games!

Constuct Master Collection - Itch.io
Constuct Master Collection - Discord
Constuct Master Collection - Construct 3

© Construct Master Collection 2020 • All rights reserved

Contact Information: