Commit Graph

756 Commits

Author SHA1 Message Date
Guthrie Adams 84ca17e7cb Created function to get relative paths to referenced files that will fall back to asset folder relative paths under certain conditions
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-11-03 17:30:10 -05:00
Guthrie Adams 620e522f86 material editor and exporter save source materials with relative paths
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-11-03 17:30:07 -05:00
Luis Sempé 8966380acf Merge pull request #5197 from aws-lumberyard-dev/animation/rhhong/render_settings_merge
[Merge] load render option in atom render plugin and use render actor setting in atom debug draw
2021-11-03 10:56:45 -07:00
rhhong 0c86198fd9 CR feedback; add ability to update the render in the preference window.
Signed-off-by: rhhong <rhhong@amazon.com>
2021-11-02 23:09:42 -07:00
Mike Balfour 1d22eddf71 Merge commit 'ecd11a441ce08e6767ab2ce732513e963b9acbbe' into mbalfour/gitflow_211102_o3de 2021-11-02 09:38:20 -05:00
rhhong f089187f3a Merge branch 'development' into animation/rhhong/render_settings_merge
Signed-off-by: rhhong <rhhong@amazon.com>
2021-11-01 23:06:09 -07:00
Qing Tao 8da6bea073 ATOM-16747 RPISystemInterface::GetDefaultScene returns the scene crea… (#5153)
* ATOM-16747 RPISystemInterface::GetDefaultScene returns the scene created by PreviewRenderer but not the Main Scene
Deprecate GetDefaultScene() function.
Update all the places which use GetDefaultScene to use Scene::GetFeatureProcessorFromEntityId or GetMainScene.
Tested with Editor, UI Editor, Material Editor, game launcher.

Signed-off-by: Qing Tao <55564570+VickyAtAZ@users.noreply.github.com>
2021-11-01 14:26:55 -07:00
Guthrie Adams 68cb8792f7 fix header comments
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-31 15:12:27 -05:00
rhhong c79bf7a0c1 load render option in atom render plugin and use render actor settings in atom debug draw
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-30 22:37:05 -07:00
Guthrie Adams 799290aefc Created custom JSON serializer for editor material component
The editor component contains an editor specific, dynamically generated version of the material slots to display all the possible options, organize properties for the user interface, and add custom actions.
The critical data is already stored inside of the component controller configuration, which only stores a map of modified or overridden values.
This change disables serialization of the redundant data for prefabs.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-30 17:36:07 -05:00
ffarahmand-DPS 971e24285f Fixes debug console's "quit" issues (#4975)
* Fixes a crash caused when attempting to ‘quit’ the launcher from the debug console. The change simply ensures that the underlying font data the OnRenderTick() function relies on has not yet been released from memory.

Signed-off-by: ffarahmand-DPS <ffarahmand@digitalpilgrims.com>

* Fixes a crash caused when attempting to ‘quit’ the launcher from the debug console. An object created on the heap was never deleted, causing a chain reaction.

Signed-off-by: ffarahmand-DPS <ffarahmand@digitalpilgrims.com>

* Some quick clean-up for safety.

Signed-off-by: ffarahmand-DPS <ffarahmand@digitalpilgrims.com>

* Changes !defined(DEDICATED_SERVER) to a runtime check since macro is no longer defined.

Signed-off-by: ffarahmand-DPS <ffarahmand@digitalpilgrims.com>
2021-10-29 11:28:42 -07:00
Esteban Papp 72d6f2972e Adding support for multi-config/multi-permutation installer 2021-10-29 10:46:28 -07:00
Esteban Papp 475338cfad Merge branch 'development' into o3de_sdk/installer_configs
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-10-28 18:29:52 -07:00
Adi Bar-Lev cd3891fe23 Merge commit '689f5b2a4ac376634439708637346e5a3157f085' into barlev/gitflow_211028_O3DE 2021-10-28 20:06:31 -04:00
Adi Bar-Lev 8dca689444 Merge commit 'caf247fcab0fc65773c6a95f1bbcfe10b184c5e0' into barlev/gitflow_211028_O3DE 2021-10-28 20:06:25 -04:00
Guthrie Adams 7d1b20d480 Merge pull request #5057 from aws-lumberyard-dev/Atom/guthadam/material_instance_editor_indicator_changes
Material component property inspector indicator changes
2021-10-28 17:06:13 -05:00
Guthrie Adams 689f5b2a4a Merge pull request #5076 from aws-lumberyard-dev/Atom/guthadam/material_component_supports_scripting_enums
Fix issue setting enum values on material component from script
2021-10-28 14:41:56 -05:00
Guthrie Adams e5729fbefe Fix clearing material component default material not clearing materials or updating preview
• Changed thumbnail property control to track asset key even if image is overridden so that it will be restored if the image is cleared.
• Changed property asset control to disable the thumbnail image by default whenever the attribute is applied. It will only enable the thumbnail image if the pixmap is valid.
• Changed the material component controller to always use an empty material assignment map on deactivation so that no persistent materials are reapplied.
• Changed the material component controller to immediately send a notification that materials have updated if no materials were queued for load but the configuration contained pre created or persistent material instances. This mainly affects the material editor because it manages its own material instances.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-28 13:58:47 -05:00
Guthrie Adams b71e307de5 Fix issue setting enum values on material component from script
Replaced get and set functions with explicit types with templates
Added special case handling for setting enum values as strings or numbers from script

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-28 13:53:21 -05:00
Danilo Aimini 1435d8b096 Merge branch 'development' of https://github.com/o3de/o3de into daimini/gitflow_211027_o3de 2021-10-27 14:18:01 -07:00
Guthrie Adams 5ceb9ee214 Material component property inspector indicator changes
Shows indicator icon for differences between the overrides and the active material asset, not the material type.
So, the indicator will only be shown for property changes that have an effect and will be stored in the component.

Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-27 14:24:16 -05:00
Danilo Aimini b5f0375f1b Merge commit 'e22235ec5b850541d6a186a80b44050ebfd24d89' into daimini/gitflow_211027_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
2021-10-27 11:22:25 -07:00
rhhong faa87f56c9 Fix build error
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-27 10:18:24 -07:00
rhhong edb50480f4 Calculate camera view projection each frame so we can have a fixed size viewport.
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-26 14:58:34 -07:00
rhhong 43b572e22a CR feedback. Use one color instead of a color array.
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-26 12:28:47 -07:00
hershey5045 e22235ec5b Add OpenImageIO as runtime dependency in AtomLyIntegration. (#4987)
* Add OpenImageIO as runtime dependency in AtomLyIntegration.

Signed-off-by: rbarrand <rbarrand@amazon.com>

* Place 3rdparty import inside if block.

Signed-off-by: rbarrand <rbarrand@amazon.com>

* Add platform cmake files for other platforms to prevent compile errors.

Signed-off-by: rbarrand <rbarrand@amazon.com>

Co-authored-by: rbarrand <rbarrand@amazon.com>
2021-10-26 10:40:30 -07:00
rhhong 9cd24a7c6d Merge branch 'development' into animation/rhhong/RenderUtilOptions
Signed-off-by: rhhong <rhhong@amazon.com>

# Conflicts:
#	Gems/AtomLyIntegration/EMotionFXAtom/Code/Source/AtomActorDebugDraw.cpp
#	Gems/AtomLyIntegration/EMotionFXAtom/Code/Source/AtomActorDebugDraw.h
2021-10-26 08:19:01 -07:00
rhhong 20f9e80648 wireframe rendering
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-26 08:14:34 -07:00
Roman 77d02ea657 Add some debug rendering options. (#4950)
* [WIP] Adding rendering options

Signed-off-by: rhhong <rhhong@amazon.com>

* code review feedback. Also add the renderflag as qsettings.

Signed-off-by: rhhong <rhhong@amazon.com>

* fix broken test

Signed-off-by: rhhong <rhhong@amazon.com>

* fix linux build

Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-26 10:59:02 +02:00
rhhong 3e686ca9ce fix linux build
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-25 21:17:38 -07:00
rhhong ebf84c49ac code review feedback. Also add the renderflag as qsettings.
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-25 19:11:36 -07:00
Esteban Papp fec1b2fda2 Merge branch 'development' into o3de_sdk/installer_configs
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Gems/AtomLyIntegration/CommonFeatures/Code/Source/Material/EditorMaterialSystemComponent.cpp
#	cmake/Platform/Common/Install_common.cmake
2021-10-25 12:47:36 -07:00
AMZN-stankowi c44d2a351b Fixed some files missed when groundplane_521 was renamed to 512 (#4958)
* Fixed references to 521x521 to reference the correct 512x512 FBX file

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>

* Fixed asset hints

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-10-25 11:08:49 -07:00
rhhong c76cb8ef74 Merge branch 'development' into animation/rhhong/RenderUtilOptions
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-25 01:40:58 -07:00
rhhong 8595805c47 [WIP] Adding rendering options
Signed-off-by: rhhong <rhhong@amazon.com>
2021-10-25 01:32:12 -07:00
santorac a892181432 Minor updates in response to code review feedback.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-23 00:02:31 -07:00
santorac cef1e200f6 Merge remote-tracking branch 'upstream/development' into Atom/santorac/MaterialPropertyRenameInMaterialComponent 2021-10-22 16:42:09 -07:00
santorac 3c331e00ff Moved the Material Component property override renaming to EditorMaterialComponent via ApplyAutomaticPropertyUpdates.
MaterialAssignment::ApplyProperties() still reports warnings but does not update the m_propertyOverrides.
MaterialAssignment::ApplyProperties() will now skip the old name'd overrides if overrides are present for the new names. I'm not sure if this will ever happen, but it did happen while I had some intermediate changes, so I imagine it could happen again.
I had to update the Material::FindPropertyIndex function to expose information about renames when they occur. This should make it easier for other systems to get (somewhat) automatic benefit from the version update feature.
I also found that there was an issue with material inspector where it wouldn't be initialized the the right override values when renames were present. Now it applies the renames to whatever override data it gets from the Material Component.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-22 16:41:44 -07:00
santorac a27738317b Merge pull request #4918 from aws-lumberyard-dev/Atom/santorac/RequireAzslExtensionInShaderFile
The .shader file must now include the .azsl extension when referencing a .azsl file
2021-10-22 12:45:04 -07:00
santorac 7ba9926202 The .shader file must now include the .azsl extension when referencing a .azsl file. It will no longer be automatically appended.
Fixed an issue where the shader builder would incorrectly succeed when the .azsl file is missing.
Also renamed some variables for more consistency.
Updated all .shader files accordingly.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2021-10-22 11:10:37 -07:00
hershey5045 f962f3d816 White Balance Updates (#4887)
* Implement simple tint for white balance color grading. Adjust temperature slider to feel linear.

Signed-off-by: rbarrand <rbarrand@amazon.com>

* Change white balance luminance preservation equation and remove unused code.

Signed-off-by: rbarrand <rbarrand@amazon.com>

Co-authored-by: rbarrand <rbarrand@amazon.com>
2021-10-22 09:53:48 -07:00
mrieggeramzn 8c6900eb06 Atom/mriegger/normaloffsetbias (#4841)
* Adding directional light shadow bias

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Adding normal offset bias to the directional shadow maps

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* not time yet for this

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* small comment fix

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* fixing tabs

Signed-off-by: mrieggeramzn <mriegger@amazon.com>
2021-10-22 11:48:04 -05:00
santorac a55d94217c Enable material version updates
Merge pull request #4338 from aws-lumberyard-dev/Atom/rbarrand/MaterialVersionUpdate

## Overview

Added support for automatically updating .material files when the property layout of the .materialtype changes. At this stage, we only support a "rename" operation for renaming or moving material properties. We can add more operations in the future if needed (this will require some improvement to how we represent the data internally, but we can deal with that as the need arises).

It's important to note that we currently have a hybrid dependency model for the material system, where materials can depend on materialtypes as job dependencies (property names are processed at asset build time), or material property names can be stored in the cooked assets (property names are processed and resolved at runtime when loading material assets). This means there are two places where we need to apply material property rename auto-updates: in the tools and in the runtime. So you will find that we have ApplyVersionUpdates() functions in both MaterialSourceData and MaterialAsset. (I hope we can move away from this hybrid approach at some point so this can all be simplified, but that depends on new Asset Processor features we don't have yet).

## Main changes
- Added version and versionUpdates structures for .materialtype files, MaterialTypeSourceData, MaterialTypeAssetCreator, etc.
- The .materialtype version number is now at the top level instead of inside the propertyLayout section, because in the future there are other ways the material type could change besides the property layout which might require version auto-updates. (The AP will fail if the version is found in the old location, and tell the user where it should be moved).
- Added ApplyVersionUpdates() and ApplyPropertyRenames() utility functions to facilitate the auto-updates.
- Updated MaterialTypeSourceData::FindProperty(name) to support renames because it must find the property data while loading .material files in order to resolve property data types.
- These new functions will report warnings when they detect that source files are out of date, and recommend the user update them. The easiest way to do this is open it in the Material Editor and save. (which can be scripted in python if necessary)
- Renamed the .material file format "propertyLayoutVersion" to "materialTypeVersion" which is more accurate. This shouldn't hurt existing data as this field wasn't actually used for anything before.

## Unit test improvements
- The new code is well unit tested.
- MaterialSourceDataTests 
  - Updated to include both a .materialtype file and a MaterialTypeAsset for the test material type. Both are used by the MaterialTypeSourceData class.
  - The default test material type now includes some version update steps; these are only used for version update tests and won't impact the other test functions.
  - Updated the path for storing temp files to disk, to just be in a "temp" folder in the exe path. (Originally they were saved to the gem folder near MaterialSourceDataTests.cpp, but at some point someone changed it to be under the exe folder, so there's no reason to use the full gem path anymore).

## Other changes
- Fixed AzCore Utils WriteFile() to create the file if it doesn't exist already.
- Updated all .materialtype files to have the version number in the new position.
- Fixed AssetSystemStub to normalize asset paths for more reliable lookup in unit tests.
2021-10-21 20:48:26 -07:00
Jonny Galloway b779f358d0 Refactor DCCsi to work better with O3DE changes (#4226)
* moving files in refactor/re-org

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* dev env refactor/re-org

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* moving/re-org so we can deprate the SDK nomiclature

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* moving/re-org so we can deprate the SDK nomiclature

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Refactoring env so I can replace SDK with Tools folder

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* re-org and prune, from SKD to Tools

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Removing old .bat files from SDK

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* updated how to retreive PYTHONHOME

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Can't use/set PYTHONHOME with DCC Tools

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* small refactor

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* repaired a missed typo (causes error)

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Added missing EntityId.h include to FocusModeInterface.h

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* refactor additional LY to O3DE tags

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Some design scaffold file stubs

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* stubbing in scaffold file pattern

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Removal of corrupted prefabs

Signed-off-by: Benjamin Black <benblac@amazon.com>

* refactored config_utils to maintain py2.7 support for maya 2020

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* refactored config_utils to maintain py2.7 support for maya 2020

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* pruning and cleanup

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* .env is for local dev overrides

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* .env is for local dev overrides

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* clean up init and logging patterns

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* Core refactoring, config.py functional standalone

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* cleaned up some bad logging, fixed up boostrap

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* fixed validation errors

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* fix logging issue, tiddy up

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* tiddy up maya for .bat bootstraping and launch

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

* name stub, fix validation

Signed-off-by: Jonny Gallowy <gallowj@amazon.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
Co-authored-by: Benjamin Black <benblac@amazon.com>
2021-10-21 17:03:49 -07:00
santorac 19dee0e37c Merge branch 'development' into Atom/rbarrand/MaterialVersionUpdate 2021-10-21 15:57:57 -07:00
hershey5045 68b585102e Re-order some color grading operations. Increase values for SMH to account for HDR colors. (#4856)
Signed-off-by: rbarrand <rbarrand@amazon.com>

Co-authored-by: rbarrand <rbarrand@amazon.com>
2021-10-21 12:06:46 -07:00
santorac bf2997f960 Merge remote-tracking branch 'upstream/development' into Atom/rbarrand/MaterialVersionUpdate 2021-10-21 11:14:03 -07:00
Guthrie Adams 6566ff1fcb Fixing material system component mac release build
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
2021-10-20 16:22:34 -05:00
Guthrie Adams 2e44d96b05 Merge pull request #4734 from aws-lumberyard-dev/Atom/mriegger/directionallightbias
Atom/mriegger/directionallightbias
2021-10-20 15:22:33 -05:00
Luis Sempé cd1b08ce72 Merge pull request #4748 from aws-lumberyard-dev/animation/rhhong/renderOptions
Add toolbar for anim viewport and some more camera controls.
2021-10-19 15:21:34 -07:00