Commit graph

3110 commits

Author SHA1 Message Date
AzaezelX
63a4d69a33 clip out eroneous test casuing issues with MFT_SubSurface 2019-11-08 05:54:30 -06:00
AzaezelX
2e56645f13 shifts spotlightparams to the actually used float2/vec2 entries (stops debug screaming every frame) 2019-11-07 23:18:14 -06:00
AzaezelX
60d2b0a0f6 conversion lockin: cleans out eroneous editor refs to specmap and specularmap in favor of the desired PBRConfigMap var name for the combined (smooth,ao,metalness) map used throughout 2019-11-07 03:46:31 -06:00
AzaezelX
fb67458eaf fix terrain default values when not applying a pbrConfigMap 2019-11-07 03:27:44 -06:00
AzaezelX
062e6f3364 Merge branch 'Preview4_0' of https://github.com/Areloch/Torque3D into alph40_pbrConfig_BREAKINGWip 2019-11-07 01:39:50 -06:00
Areloch
d8cc73f5a1 Added utility methods to AssetBase:
getAssetDependencyFieldCount
clearAssetDependencyFields
addAssetDependencyField
saveAsset

Updated the saveAsset function for terrain block to utilize utility methods to ensure the terrain asset's material dependencies, so they will load properly.
2019-11-07 00:42:55 -06:00
AzaezelX
a8b6327091 conforms platformWindow<implementations> to use _setVideoMode internals so that those are called by
void PlatformWindow::setVideoMode(const GFXVideoMode &mode)
{
   _setVideoMode(mode);
 getScreenResChangeSignal().trigger(this, true);
}

allowing the resize trigger to go off, as well as any other shared functionality we want to slim the per-implementation specs down to later down the line
2019-11-06 22:24:12 -06:00
Areloch
22249bf4d4 WIP of updating terrain editor to work with assets
Fix minor UI issues for asset browser
included folder 'asset type' script
2019-11-06 00:23:07 -06:00
AzaezelX
a67d2c52cd "ShaderFeatureGLSL::getInTexCoord - Type mismatch!" bit turned out to be a simple typofix 2019-11-05 06:22:04 -06:00
AzaezelX
091af6bdff glowmap gl port rev1: debug yells about "ShaderFeatureGLSL::getInTexCoord - Type mismatch!", so will need to hunt that down before calling it final, but otherwise, functions. 2019-11-04 00:40:09 -06:00
AzaezelX
d034895e8f shifts glowmap out of the composite and to it's own texture, as well as featureset. (GL port pending design finalization) 2019-11-01 19:29:31 -05:00
AzaezelX
ac6fdf884e from @rextimmy, we need to target the lightmap gbuffer slot, not the color one 2019-11-01 03:24:23 -05:00
Areloch
a85bc7bae0 Merge branch 'Preview4_0' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-11-01 01:24:57 -05:00
Areloch
ab2057c9d3 Merge branch 'alpha40MonoColorMayhem' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-11-01 01:24:37 -05:00
Areloch
3c0b7b2086 Merge branch 'alpha40VCFixFrame' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-11-01 01:24:20 -05:00
AzaezelX
501990c3b6 from @rextimmy: ssao work
shifts ssao from the vectorlight to ibl-only via the reflectionProbearray postfx shader
2019-10-31 19:06:40 -05:00
AzaezelX
047a45c82d getChanelValueAt 'correction'
when feeding a u8 value from a 16 bit format, best to look up the red chanel for minimal artifacting
2019-10-30 21:39:20 -05:00
AzaezelX
070a9845a2 preliminary glowmap+glowmul feature augmentation math 2019-10-30 18:29:11 -05:00
AzaezelX
0f5ba17126 needed mft_pbrconfigmap or _convifgvars and _matinfocflags set to default=true to trip the forward lit side,
shifted the mft_skybox test on down below the checks for the presence of those features to be inserted, and removed them on out if a skybox.
2019-10-29 22:11:59 -05:00
AzaezelX
8cb018fb44 from @rextimmy: clamps the vc workaround now that later versions fixed that bug 2019-10-29 06:57:13 -05:00
Areloch
3af902c911 Merge pull request #114 from Azaezel/alpha40DBCache
Alpha40 db cache
2019-10-26 23:19:19 -05:00
Areloch
0b282c6947 Merge pull request #99 from Azaezel/alpha40ModuleDependencyResolvers
Alpha40 module dependency resolvers
2019-10-26 23:18:49 -05:00
Areloch
25a117159f Merge pull request #113 from Azaezel/alpha40VolfogTriggerTrip
set volfog to use the standard window-resized trigger for it's update
2019-10-24 21:20:53 -05:00
AzaezelX
8fac88dadc more misc cleanup, including cutting down on sampling the pbrconfigmap by filling that out first, and drawing the smooth and metal vars from it, and filling out an ao var in case folks wanna use that later, as well as a bit more doubled up functionality prune-down. still tracing why forward lit seems to have lost the map config feature 2019-10-23 20:38:13 -05:00
AzaezelX
ad216abc02 cleans up a few more spots of various variables that ammount to the "PBRConfig" in the end, as well as a MFT_isDeferred test for determining if that's stored off as a temp-val or in the gbuffer. though seem to have forgotten a catch, as it's not finding the MFT_PBRConfigMap feature and falling back to recreation come time to process MFT_ReflectionProbes 2019-10-23 14:59:29 -05:00
AzaezelX
bfccfca0ce more conversionwork from specular entries to pbrconfig ones, adds backend glowmul and glowmap var tracking, as well as pbrconfigmap composite slip-in for the glowmap (sans shaderfeatures just yet). seems to have busted forward lit application though... 2019-10-22 15:11:39 -05:00
AzaezelX
8b4f3fea31 misc formatting fixes, and a removal of the
bool LightningData::preload(bool server, String &errorStr)
{...
dQsort(thunderSounds, MaxThunders, sizeof(SFXTrack*), cmpSounds);
...}
call causing network stream corruption
2019-10-21 18:58:15 -05:00
Areloch
cba14c035f Change Asset Browser logic to utilize folder heirarchy instead of strict Asset Type filtration
Added navigation history to AB, as well as ability to navigate via forward and backward buttons and breadcrumb buttons
Added folder 'asset type', allowing you to create, rename, delete and move folders via the asset browser for better organization
Adjusted various behaviors to work with the address-driven navigation/organization of the AB
Expanded visibility options for the AB and integrated them into editor settings so they are retained
Added Search field for searching the folder structure, in addition to the existing preview tiles search
Adjusted drag-n-drop behavior of the platform code so it accepts dropping folders
Added ability to dump active PostEffects list to see what is currently running
Added ability to mark specific items in GuiTreeViewCtrl as hidden
Made reflection probe bounds boxes translucent rather than wireframe to improve editing visibility
Added expanded loose file references to LevelAsset for common companion files like decals and posteffect scrips
Added editor setting for Editor Layout Mode, allowing you to set the editor into 'Modern' layout.
Added editor settings to set default import config ruleset, and also ability to set auto-import. If both of these are set, then as long as the importing assets have no errors, they will auto-process and the user doesn't need to manually check and confirm them via the asset import window
2019-10-20 02:47:15 -05:00
AzaezelX
27d6665d21 set volumetric fog to use the standard window-resized trigger for it's update 2019-10-17 09:54:38 -05:00
AzaezelX
65cbf49c4a backend specularMap to PBRConfigMap alts.
left:
     addField( "specularMap", TypeImageFilename, Offset(mPBRConfigMapFilename, Material), MAX_STAGES,
scripthook till last since that *will* break all current materials.
2019-10-16 15:51:02 -05:00
Areloch
e621e362f4 Corrected the logic for the GenerateComposite import config rule so it only applies if there's any of the ORM maps detected
Added new import config rule: AlwaysPresentImageMaps so it will add entries for the regular map inputs on a material, even if they weren't actually found
Disabled a number of inactive popup menu items
Added Create New Module to normal add asset popup for more obvious/simplified use-flow
Adjusted the editor loading logic so it will properly display the loading splash to inform loading is happening instead of just lagging
Adjusted the assimp shape loader code so if it doesn't find a texture, and thus just sets a material value as the material color, it has a more parsable formatting
2019-10-06 01:29:12 -05:00
AzaezelX
466d03ffec adds a moduleDependencySort qsort callback, and uses it in the findModule method to massage the return vector by depends order 2019-10-05 07:53:43 -05:00
Areloch
01f562b9e5 Added check for when getting the Detail feature's output, to validate if we have the foliage feature, which was causing a stomp on the required float4 texCoord for the foliage featuer to work right
Temporarily disabled wsNormal addition when we have no defined normal map until it's finished being integrated
Fixed the structure for the lighting/probe shadergen logic in GL so it generates correctly, resolving a crash on unix machines.
2019-10-03 23:46:53 -05:00
Areloch
c9a63d63cf Updated ToolsGuiTextPadProile to comply to editor theme
Further tweaks/reorg to UI module
Implemented cubemap array scaling on GL so it doesn't crash when texture quality is lowered
2019-09-29 07:51:43 -05:00
Areloch
8403345de4 Merge branch 'SSR4' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-09-29 06:51:23 -05:00
Areloch
6b6e5b6ca2 Merge branch 'alpha40DynShadowRefreshRedux' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-09-29 06:51:04 -05:00
Areloch
e7bf49e801 Moved unneeded modules to Templates/Modules
Added templated getObjectsByClass to Scene for easier engine-side polling of objects, including nested checks for subscenes
Proper init'ing of mGamemodeName in LevelAsset, as well as proper fieldType for mIsSubLevel
D3D11 added logic to handle scaling down of textures in cubemap arrays for lower texture resolution preferences
Added ability to collapse groups programmatically to GuiVariableInspector
Upped PSSM shadowmap max size to 4096
Caught GL deferred lighting/probes up to D3D11
Temporarily disabled forward lighting/probes on GL materials until conversion finished
Upped smMaxInstancingVerts to 2000 from 200 to support slightly more detailed meshes being instanced
Reordered project settings so they load ahead of core modules, so that core modules can actually use project settings
Established current preset file for PostFXManager to use for reverting
WIP logic for forcing probes to update as part of level lighting load step in loading process
Streamlined PostFXManager code, removing unnecessary/redundant files
Coverted HDR, Lightrays and SSAO and ExamplePostEffect to use new PostFX Manager/Editor paradigm
PostFX manager now enacts callbacks so that postFXs' can process their own settings as well as provide editor fields
Changed PostFX editor to work with new callbacks via using VariableInspector
Updated PostEffectAsset's template file so new PostFX's will now automatically register with the PostFXManager and have the needed new callbacks for integration
Made HDR on by default, removed enable field from editing
Made probe bake resolution a project setting
Updated many GL postFX shaders to have proper case for PostFx.glsl
Example module now loads ExampleGUI and ExamplePostEffect during init'ing
Removed unneeded autoload definitions from ExampleModule's module file
Fixed Graphics Adapter settings field to properly display as well as apply setting
Updated many referenced profiles in tools folder to use the Tools specific gui profiles to make theming more consistent
Fixed coloration of tools button bitmap to make theming more consistent
Updated a few theme settings for improved visibility with theme, particularly selected/highlighted text
Moved AssetBrowser field types to separated folder/files
Updated new module creation to properly utilize template file instead of overriding it with a programmatic script generation.
Removed unneded default autoload definitions from new modules
Added WIP for editing Module/Asset dependencies
Updated the PostEffectAsset to properly generate glsl and hlsl files from templates
Updated module editor window to display only necessary fields
Added WIP of TerrainAsset
Added shaderCache gitignore file so folder isn't lost
2019-09-29 06:44:43 -05:00
AzaezelX
c680471378 looks like the with the latest translucnency work, dynamic shadows are no longer triggering malformed values in forward lit materials, so flipped that back on 2019-09-20 14:45:05 -05:00
Areloch
ff4c2d59fc Utilizes old method to clean up tree items in GuiTreeViewCtrl to resolve guiEditor crashes
Updates probeManager to correctly utilize skylight idx to infer if a skylight is active, and set the SKYLIGHT_ONLY macro correctly, resolving erroneous behavior
Cleaned up some of the guiEditor initialization script to remove redundancy
Cleaned up tools modules loading script to remove redundancy
2019-09-18 01:41:57 -05:00
Areloch
9db95f4fb2 Implemented proper ScriptAsset execution on load
Implemented script dependency handling
Added test-case of script dependency handling in ExampleModule
Cleanup of redundant getSceneCount calls
Properly get scene count in callGamemodeFunction
Remove unneeded TODO comment in shaders
Converted onMissionEnded gamemode func call to use callGameModeFunction function
Convert ExampleGameMode to be container-object based, and updated callGamemodeFunction to handle that
Correct import settings typoe so image suffixes are read correctly
Largely fixed companion image scanning when importing images and streamlined image-material interop during import preprocessing
Added handling for reading in PBR maps and creating a composite image + asset
Added WIP of Cubemap asset, and editing integration with a standalone cubemap editor
Added ability to create new Cubemap asset in Asset Browser
2019-09-13 00:27:48 -05:00
AzaezelX
28e4a86cff forgot the initializers and shader variable to source hooks 2019-09-06 14:48:15 -05:00
AzaezelX
022b87cac2 from user Ewyncat: adds invcameratrans, cameratoscrren, and screentocamera postfx and shader matrix interfaces.
also a bit of backend work to normalize those later once we've proof-of-concepted the calcs
2019-09-06 14:25:17 -05:00
Areloch
7c3bd49615 Adds ability to adjust padding to guiTextListCtrl's rows
ForcedMaterialMeshMgr tweaked to allow proper setting of override material
Ongoing WIP of update/fixing of options menus
WIP of expanded visualizers, including material complexity viz
Adds no-pie flag when compiling on linux with non-clang compilers
2019-09-06 00:00:17 -05:00
Areloch
d720eb8ccd Makes the graphics menu in the stock UI mostly functional again
Adds sanity check to editing of gameasset script action in asset browser
Updates module template file
Updates visualizers
Fixes checking of popup menu items
Adds stub for TerrainMaterialAsset
2019-08-29 00:22:33 -05:00
Areloch
07b8619bf3 Changed findModule default version value to 1 to match default module version number
Added running of onCreateGameServer and onDestoyGameServer callOnModules for core modules as well to enable default datablock stuffs
Added default datablocks, materials and shaders for some base required objects such as spawn markers, ribbon particles and the like.
Includes ExampleModule to act as a template/documentation case for how modules should be set up
Includes GameUI module so there's a PlayGUI gui object by default.
2019-08-28 00:56:24 -05:00
Areloch
ca38fff31a Merge branch 'alpha40LINwork' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-08-27 19:10:38 -05:00
Areloch
210009e498 Merge branch 'alpha40vertcolorCorrection' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-08-27 19:10:25 -05:00
Areloch
6d2699cb1e Merge branch 'alpha40Terrainfix' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-08-27 19:09:55 -05:00
Areloch
34d370c4f5 Merge branch 'Preview4_0_w_translucencyWIP' of https://github.com/Azaezel/Torque3D into Preview4_0 2019-08-27 19:09:35 -05:00
AzaezelX
4e984cfd40 from @rextimmy - linearcolor set and = operators 2019-08-22 07:03:48 -05:00