All Projects → benui-dev → UE4-BUIValidator

benui-dev / UE4-BUIValidator

Licence: other
UE4 UI Texture Validator Plugin

Programming Languages

C++
36643 projects - #6 most used programming language
C#
18002 projects

Projects that are alternatives of or similar to UE4-BUIValidator

DualSenseWindows UE4
Unreal Engine 4 port of the Windows API for the PS5 DualSense controller created at Ohjurot/DualSense-Windows
Stars: ✭ 25 (-47.92%)
Mutual labels:  unreal, unrealengine, ue4, ue4-plugin, unrealengine4
Awesome Unreal Engine 4
UE4/UE5 Ressources Collection (Plugins, Effects, Doc, Tools, etc...)
Stars: ✭ 153 (+218.75%)
Mutual labels:  engine, unreal, unrealengine, ue4, ue4-plugin
LivePP
A UE4 plugin wrapper for Molecular Matter's Live++ Hot-Reloading Library
Stars: ✭ 105 (+118.75%)
Mutual labels:  engine, unrealengine, ue4, ue4-plugin
Ue4linuxlauncher
Stars: ✭ 79 (+64.58%)
Mutual labels:  engine, unreal, unrealengine, ue4
UE4-BYGLocalization
Simple CSV localization system for Unreal Engine 4
Stars: ✭ 54 (+12.5%)
Mutual labels:  engine, unreal, ue4, ue4-plugin
ue4-uitween
Unreal 4 UMG UI tweening plugin in C++
Stars: ✭ 178 (+270.83%)
Mutual labels:  unreal, user-interface, ue4, umg
Ue4 Tutorials
Collection of Unreal 4 Tutorials & Experiments.
Stars: ✭ 458 (+854.17%)
Mutual labels:  engine, unreal, ue4
RyansUE4Helpers
Extremely helpful helper functions for developing Blueprint and C++ projects in Unreal Engine.
Stars: ✭ 55 (+14.58%)
Mutual labels:  unreal, ue4, ue4-plugin
VaFogOfWar
A clear and simple solution of Fog of War for Unreal Engine 4
Stars: ✭ 136 (+183.33%)
Mutual labels:  unrealengine, ue4, ue4-plugin
Unreal-Binary-Builder
An application designed to create installed Unreal Engine builds (aka Rocket builds) from Unreal Engine GitHub source.
Stars: ✭ 554 (+1054.17%)
Mutual labels:  unreal, unrealengine, ue4
Discord-UE4
Plugin for integrating Discord Rich Presence.
Stars: ✭ 66 (+37.5%)
Mutual labels:  engine, unreal, ue4
UT GameEventSystem
A flexible event system in Unreal Engine 4
Stars: ✭ 33 (-31.25%)
Mutual labels:  engine, unreal, ue4
Gascontent
Repo to gather all Gameplay Ability System content for UE4
Stars: ✭ 398 (+729.17%)
Mutual labels:  engine, unreal, ue4
TwitchAuth
Unreal Engine 4 Plugin for In-Game Twitch Authentication.
Stars: ✭ 21 (-56.25%)
Mutual labels:  engine, unreal, ue4
Unreal Polygonal Map Gen
An Unreal Engine 4 implementation of the Polygonal Map Generator for generating islands found at http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/
Stars: ✭ 229 (+377.08%)
Mutual labels:  unreal, unrealengine, ue4
Ue4 Style Guide
An attempt to make Unreal Engine 4 projects more consistent
Stars: ✭ 2,656 (+5433.33%)
Mutual labels:  unreal, unrealengine, ue4
Unrealnetworkprofiler
A modern WPF based Network Profiler for Unreal Engine.
Stars: ✭ 29 (-39.58%)
Mutual labels:  unreal, unrealengine, ue4
Ue4 Gitignore
A git setup example with git-lfs for Unreal Engine 4 projects.
Stars: ✭ 150 (+212.5%)
Mutual labels:  unreal, unrealengine, ue4
RuntimeBPs
This project allows for visual scripting in UE4 similar to Blueprints, but at runtime. The way this is set up does not make use of any UE4 boilerplate and could with a few adjustments be used in another engine.
Stars: ✭ 77 (+60.42%)
Mutual labels:  unreal, unrealengine, ue4
stomt-unreal-plugin
Collect feedback in-game/in-app with STOMT for Unreal Engine.
Stars: ✭ 23 (-52.08%)
Mutual labels:  unreal, unrealengine, ue4

UE4 Texture Validator Plugin

A plugin that validates settings for texture assets in Unreal Engine 4.

What can it do?

  • Throw errors when texture size, texture group and other properties do not match customizable rules.
  • Automatically set default values for new textures upon import.
  • Set different validation rules for textures with different prefixes, or for different folders within Unreal.
  • Throw errors when users import textures without setting the Data Source Folder in their Editor Settings.
  • Throw errors when UPROPERTY() values are not set.
  • Run all rules and validate assets from command-line

Usage

Once installed, open Project Settings > BUI Validator.

Here you can set up validator groups, that consist of match conditions and rules to be applied to those matches.

Settings example

Settings

Match Conditions

For a rule to be triggered, all conditions of the match must pass.

  • Texture groups: Match textures with any of the texture groups.
  • Prefixes: Match textures with any of the asset name prefixes.
  • Paths: Match textures in any of the asset directories.

Validator Rules

Each rule allows multiple values for a given setting. For example a texture could be allowed to be within World or UI. To pass, the asset must match any of the values.

  • Texture groups: Textures must have one of the specified Texture Groups.
  • Compression Settings: Textures must have one of the specified Compression Settings.
  • Pixel Formats: Textures must have one of these Pixel Formats
  • Mip Gen Settings: Textures must have one of these Mip Gen Settings
  • Prefixes: Textures must have one of these prefixes.
  • Texture Size: Textures must pass these size requirements. Size requirements are "Multiple of Four" or "Power of Two"
  • Paths: Textures must be within this path in Unreal.
  • Require Data Source Folder: Require that the Data Source Folder be set in Editor Preferences, and that assets are imported from there. This is to aid reimporting between team members.

Auto-apply settings to new textures

Validator Groups have an Apply On Import option. When checked, any newly-imported assets that match the group will have some rules automatically applied to them.

Prefix, Texture Size and Path rules are not applied on import.

C++ UPROPERTY() Settings

The plugin also supports making UPROPERTY properties required.

// If this is not set, the BP will show an error on save
UPROPERTY( EditAnywhere, meta = ( BUIRequired = "true" ) )
TSubclassOf<AActor> RequiredActor;

BUIRequired flow example

Running Validation

Whenever UTexture2D asset is saved, the rules in Project Settings are applied. If the asset does not pass, an error is shown.

Failure example

Command-line Validation

This is useful when validating assets as part of a build process.

"C:\Program Files\Epic Games\UE_5.0EA\Engine\Binaries\Win64\UnrealEditor-Win64-DebugGame-Cmd.exe" -run=BUIValidateAll

Installation

  1. Download the zip or clone the Github repository into YourProject/Plugins/BUIValidator/
  2. Add the following to the end of your .uproject file, inside the { }
	"Plugins": [
		{
			"Name": "BUIValidator",
			"Enabled": true
		}
	]

License

CC0

Contact

If you find it useful, drop me a line @_benui on Twitter.

benui.ca

Future Work

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].