Commit Graph

238 Commits (b407e501e3a1e40a03f03352b85c84daf6f90098)

Author SHA1 Message Date
Mike Balfour c873ddac45
[LYN-3099] Fixed some issues with vegetation planting on surfaces (#1554)
* [LYN-3099] Fix vegetation raycasts to use bounded ray queries instead of FLT_MAX.
Raycasts with a distance of FLT_MAX sometimes overflowed deep in IntersectSegmentTriangleCCW, so it's better to have strict start/end positional queries.  We have specific starts and ends anyways, so it's a safer approach anyways.
This also adds support for Non-Uniform Scale for meshes, since it was clearly not working correctly in vegetation when testing various scaled meshes.

* Addressed PR feedback
5 years ago
Doug McDiarmid 7ab810b5b5 Changed probe spacing text labels and minimum value 5 years ago
Terry Michaels 1e457928f5
Update help URLs and remove unneeded links (#1520) 5 years ago
Steve Pham 70042fcdcd
O3DE Copyright Updates for Linux Foundation (#1504) 5 years ago
Tommy Walton be0fbaaddc
LYN-2227 : Improve mesh initialization performance by not creating draw packet more than once (#1476)
* Move SetUseForwardPassIblSpecular to happen when acquiring a mesh, instead of immediately after so that we don't build the drawpacket twice for every mesh

* Update the MeshFeatureProcessor to use the booleans from the descriptor directly instead of having loose booleans in the MeshDataInstance

* m_excludeFromReflectionCubeMaps is not (and does not need to be) part of the descriptor, since setting is cheap and doesn't duplicate work that is done when acquiring the mesh
5 years ago
mbalfour df648db62e Merge branch 'stabilization/2106' into mbalfour/gitflow_210622
# Conflicts:
#	Code/Framework/AzQtComponents/AzQtComponents/Components/Style.cpp
#	Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ViewportMessages.h
#	Gems/AWSCore/Code/Source/Editor/UI/AWSCoreEditorMenu.cpp
5 years ago
hershey5045 c127a044d4
Enable fog in physical sky component to blend with deferred fog (#1320) 5 years ago
nvsickle e55580af57 Merge remote-tracking branch 'upstream/stabilization/2106' into nvsickle/MergeStabilizationJun18 5 years ago
hershey5045 85af8475a5
Fix postfx camera tags (#1417) 5 years ago
Ken Pruiksma 32fb0e4627
[ATOM-15810] Removing maximum values from light intensity (#1414)
Setting hard max values to float max. Also allowing EV100 values hard minimum to be lowest float. Soft min and max will remain the same for a consistent ux, but we will no longer keep people from manually entering really high or low values that are technically fine.
5 years ago
lumberyard-employee-dm 7dabe8b6e9
Updated Several Engine Gem's CMakeLists.txt to add themselves as required Gems (#1262)
* Fixed organization of the AssetProcessor SourceAssetBrowser

Assets within the Engine Root were grouped under a '/' entry.
That has been fixed to use the relative path within the engine root for
those assets
Assets outside of the Engine Root, but on the same drive were using
absolute paths before. Now there are child entries that navigate up the
directory hierarchy to those asset locations

* Added ly_enable_gems call to Atom gems targets that are required

The DefaultLevel.prefab contains several Atom components, that require
the Atom RHI, RPI, Common_Feature, ShaderBuilder and AtomLyIntegration CommonFeatures
gems to be enabled in order to successfully process in the
AssetProcessor.

* Added ly_enable_gems call to make the Camera gem required in Tools,
Builders and Clients.

This is needed as the DefaultLevel.prefab contains an Editor Camera
Component

* Adding the ly_enable_gem call to make the Maestro gem required

CrySystem currently requires Maestro to be enabled in order to
initialize

* Added ly_enable_gems call to the SceneProcessing gem to make it required

The SceneCore and SceneData libraries that are part of the core engine
Code folder requires the SceneProcessing gem to be enabled in order to
invoke the InitializeDynamicModule hooks in DllMain.cpp in order to
initialize those libraries.

* Fixed bad argument in comment for Prefab CMakeLists.txt

* Fixed Assert in Asset Builders due to the Atom RPI Builder

The Atom RPI Builder was enabling the Asset Catalog for the ScriptAsset a second time

The Atom Feature Common EditorSystemCommonComponent.cpp which also loads
in the AssetBuilder is enabling the Asset Catalog for the ScriptAsset

Added BehaviorContext reflection to the OutputDeviceTransformType enum
to fix the BehaviorContext errors about reflecting a method that returns
such an enum

* Added TypeId output to the JsonDeserializer report message about missing
ClassData

Previously the report callback would indicate that the target type was
missing Serialization class data, but didn't indicate the TypeId of the
target type

* Added support to the ly_enable_gems function to be able to support
0 gems being enabled.

Updated the Install step for CMake to propagate any ly_enable_gems
within a CMakeLists.txt for a target into the generated CMakeLists.txt
that is made for each installed IMPORTED target

* Adding newline to the end of the Camera Gem CMakeLists.txt

* Fixing target TYPE parameter for actual Gem Modules to use the GEM_MODULE tag instead of MODULE

* Reverting change to the DESTINATION directory for the installed CMakeLists.txt to use the relative path to the installed directory

* Adding the Atom_Bootstrap gem as a required gem

The Client and GameLaunchers required the Atom_Bootstrap gem in order to create the NativeWindow
Added Atom_Feature_Common client module as a runtime dependency of the AtomLyIntegration CommonsFeature client module

* Fixed register.py --all-projects-path and --all-gems-path arguments to
NOT register projects or gems that are within a template folder
Fixed reading of old pre-1.0 o3de_manifest.json files where the
"engines" key was a json array

* Changed how the relative target source directory is calculated when that source directroy resides outside of the engine root.
The final dirname component is used with a unique SHA256 has to form a <dirname>-<8 char SHA256> folder for installing files into

* Adding newline to the end of Atom_Bootstrap CMakeLists.txt

* Moving ly_enable_gems variants for Tools and Builders inside of PAL_TRAIT_BUILD_HOST_TOOLS block

* Adding a comment to AWSCore.ResourceMappingTool target to indicate that it is not a GEM_MODULE.
Furthermore it cannot be loaded with the Gem system because the library is in a different directory the executable
5 years ago
guthadam 58d516688f LYN-4251 fix confusing material component menu options 5 years ago
mnaumov b315c13488 [LYN-4544] Fixing thumbnail crashing on bad data 5 years ago
mrieggeramzn a505ed8a51
Merge pull request #1302 from aws-lumberyard-dev/Atom/mriegger/esmexponent2106
Atom/mriegger/esmexponent2106
5 years ago
AMZN-mnaumov c0dc0cb936
Merge pull request #1337 from aws-lumberyard-dev/mnaumov/StabilizationJun15
Stabilization to Development merge - 06/15/21
5 years ago
yuriy0 a9c55c1070
Update actor render bounding box (#991)
* Extend MeshFeatureProcessor to allow changing the mesh bbox, which requires re-compute the culling data for that mesh

* Update actor mesh bbox when EMFX actor instance bbox changes.

Also use the actor instance global bbox to compute the local bbox for the skinned render mesh, instead of the using the static bounds based bbox, as not every actor instance is going to be using the static bounds bbox.

* Store per-instance mesh AABB in the right place.

In the MeshInstanceData, which is unique per instance, instead of in the Model, which is shared between all instances.

For greater clarity, also remove Model::m_aabb and the corresponding getter and setter, as it isn't immediately obvious whether this gets the model asset bbox or the mesh instance bbox. Callers should instead be explicit about which bbox they want.

* Bug fix: model asset is not necessarily ready in AcquireMesh

* Remove now-unused forward declaration

* Update MockMeshFeatureProcessor with SetLocalAabb/GetLocalAabb
5 years ago
mnaumov 9ca0e731f4 Merge remote-tracking branch 'upstream/stabilization/2106' into mnaumov/StabilizationJun15
# Conflicts:
#	Code/CryEngine/CrySystem/LevelSystem/LevelSystem.cpp
5 years ago
Ken Pruiksma 5165f6ad04
[ATOM-15769] Setting minimum angle to 0.5 degrees on disk lights to avoid visual artifacts that occur at values closer to 0. Also updating the outer cone angle max to be 90 degrees since it's measured from the center point, not all the way across. (#1260) 5 years ago
dmcdiarmid-ly 0f851b1d16
Merge pull request #1296 from aws-lumberyard-dev/Atom/dmcdiar/LYN-4346
[LYN-4346] Adding the Diffuse Global Illumination component crashes the Editor (Prefab Mode)
5 years ago
Benjamin Jillich f8cf4ba087
[LYN-3416] Animation: Attachment component does not update it's location automatically (#1305) 5 years ago
mriegger 4ac846383a Fixes from feedback 5 years ago
mriegger 86223703e4 removing tabs 5 years ago
mriegger 959ec14df6 Exposing esm exponent 5 years ago
Doug McDiarmid 8459cbe5c2 Removed the DiffuseGlobalIllumination component from the editor Entity Component list, it was intended to be a Level Component only.
Checked for a valid quality level in DiffuseGlobalIlluminationFeatureProcessor::SetQualityLevel.
Initialized the quality level to Low in DiffuseGlobalIlluminationComponentConfig.
5 years ago
AMZN-mnaumov 004549c618
Merge pull request #1201 from aws-lumberyard-dev/Atom/mnaumov/ATOM-5389
[ATOM-5389] MeshComponent stats
5 years ago
mnaumov 68c0989aa1 MeshStats collapsed by default 5 years ago
mnaumov d53b5a0bed PR feedback 5 years ago
mnaumov e1d2115cab ElementName override 5 years ago
Terry Michaels 91fb8be535
Added toolbar icons, updated viewport header UX (#1240) 5 years ago
mnaumov 95465b18a4 Custom serializer for mesh stats to exclude from serializetion 5 years ago
mnaumov 1f2572fe8a PR feedback 5 years ago
mnaumov e07cf79bab removed duplicate decription 5 years ago
mnaumov 2923d8b962 some cleanup 5 years ago
mnaumov 672b9fd956 [ATOM-5389] MeshComponent stats 5 years ago
dmcdiarmid-ly d19d2aff9d
Merge pull request #1110 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-15517
[ATOM-15517] Software Occlusion Culling
5 years ago
dmcdiarmid-ly 579f4ca9d6
Merge pull request #1138 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-15718
[ATOM-15718] DiffuseProbeGrid quality level
5 years ago
Guthrie Adams 4a8375748f
Merge pull request #1147 from aws-lumberyard-dev/Atom/guthadam/LYN-3871_LYN-3872_material_slot_version_handling
LYN-3871_LYN-3872 Added version handling for removed serialize context fields
5 years ago
guthadam b10ed227c0 Added version handling for removed fields 5 years ago
AMZN-mnaumov 8fa6d5d1b0
Merge pull request #1050 from aws-lumberyard-dev/Atom/mnaumov/ATOM-15631
[ATOM-15631] First pass on exposing Display Mapper properties to Behavior Context
5 years ago
Doug McDiarmid fefa46dd6a Added DiffuseGlobalIlluminationFeatureProcessor and moved the DiffuseProbeGrid files to the DiffuseGlobalIllumination directory 5 years ago
Nicholas Van Sickle 34449e2fc9
Guard GridComponent against arbitrarily high grid sizes (#1135)
Also do bounds checking at runtime in the controller for safety.
5 years ago
Doug McDiarmid 92130b4ac7 Merge branch 'main' into Atom/dmcdiar/ATOM-15718 5 years ago
dmcdiarmid-ly 8ae800f579
Merge pull request #1106 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-13890
[ATOM-13890] Reflection probe quality levels
5 years ago
mnaumov 856204a5ea merge from main 5 years ago
Doug McDiarmid ef05412063 Merge branch 'main' into Atom/dmcdiar/ATOM-15517 5 years ago
Doug McDiarmid ed0fab894b Added DiffuseGlobalIllumination level component 5 years ago
AMZN-mnaumov c155271167
Merge pull request #1095 from aws-lumberyard-dev/Atom/mnaumov/ATOM-15692
[ATOM-15692] Ebus for registering custom feature processors for thumbnail generation
5 years ago
mnaumov 8704b9233a build fix 5 years ago
Doug McDiarmid d63edf9b84 Merge branch 'main' into Atom/dmcdiar/ATOM-15517 5 years ago
mnaumov c3df73bed8 PR feedback and fixing TrackView 5 years ago
Doug McDiarmid 9dbe596e40 Added reflection probe cubemap quality levels 5 years ago
mnaumov 4f72e49ad4 Merge main 5 years ago
guthadam d7fffe1d80 Merge branch 'main' into Atom/guthadam/LYN-3871_LYN-3872_material_assignment_json_serializer_for_prefabs 5 years ago
Tom Hulton-Harrop 4a5b7edbfe
Updates to kd-tree ray intersection - ATOM-15673 (#1026)
* updates to kd-tree ray intersection

* update tests for kd-tree

* add one more test for kd-tree intersection

* updates to ModelKdTree following review feedback

* improve api doc comment for RayIntersection in ModelKdTree

* updates following review feedback

* update .clang-format to stack parameters if they do not all fit on one line
5 years ago
Doug McDiarmid 35d7ee5e53 Merge branch 'main' into Atom/dmcdiar/ATOM-15517 5 years ago
mnaumov 3fcc1b64fc [ATOM-15692] Ebus for registering custom feature processors for thumbnail generation 5 years ago
mnaumov 38819c630a PR feedback 5 years ago
guthadam d115eae84a LYN-3871/3872 Added JSON serializer for MaterialAssignment property overrides 5 years ago
Doug McDiarmid 59ab6edaef Added occlusion culling plane visualization 5 years ago
mnaumov ab45ea7efa [ATOM-15631] First pass on exposing Display Mapper properties to Behavior Context 5 years ago
Chris Santora bc687530e8 Merge remote-tracking branch 'upstream/main' into Atom/santorac/MaterialLayoutCleanup-ATOM-14002 5 years ago
Doug McDiarmid 1b235e0b16 Merge branch 'main' into Atom/dmcdiar/ATOM-15517 5 years ago
Chris Santora de4e6957e8 Made a bunch of display name and description updates to core material types.
- Renamed "Details" group to "Overview".
- Renamed "UV Names" group to "UV Sets".
- Renamed "General" group to "General Settings".
- Renamed "Parallax" group to "Displacement".
- Renamed "Texture Map" properties to just "Texture". In cases where a specific type of texture is mentioned like "roughness texture map" I called this "roughness map" (which is more common according to google).
- Renamed "Heightmap" to "Height map" (which is more common according to google).

ATOM-14002 [Material Editor] Revisit user facing organization and layout of material types
5 years ago
greerdv 34abf7376e Merge branch 'main' into transform-float-scale-3 5 years ago
Tom Hulton-Harrop 36ceff84c9
Support mesh intersection for camera orbit (#982)
* wip support for mesh intersection with intersector bus

* WIP camera mesh intersection orbit logic

* remove unneeded template argument

* add bus connect/disconnect

* fix intersection logic

* small updates, additional comments, some tidy-up

* update formatting options slightly

* use aznumeric_cast

* temp workaround for negative distances with RayIntersection
5 years ago
greerdv d73566565e remove most vector scale functions from transform bus 5 years ago
greerdv e1e1217c6a
Merge pull request #984 from aws-lumberyard-dev/attachments-transform-scale
update usages of transform vector scale
5 years ago
greerdv c4dafc8495 update usages of transform vector scale 5 years ago
Doug McDiarmid 1d3322f881 Merge branch 'main' into Atom/dmcdiar/ATOM-15517 5 years ago
dmcdiarmid-ly 592114bd4f
Merge pull request #887 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-5034
[ATOM-5034] Bake DiffuseProbeGrid textures
5 years ago
Doug McDiarmid 74bdf2b069 Minor changes: Updated comments and removed an include file. 5 years ago
AMZN-mnaumov dd3907c8c4
Merge pull request #951 from aws-lumberyard-dev/Atom/mnaumov/ATOM-15464
[ATOM-15464] Fixing Material Editor crash on shutdown
5 years ago
Doug McDiarmid 045def6ce1 Merge branch 'main' into Atom/dmcdiar/ATOM-5034 5 years ago
Doug McDiarmid 17e9c17f31 Added Occlusion Culling Planes and RPI Culling support for Masked Occlusion Culling 5 years ago
mnaumov 09c5bb8d65 [ATOM-15464] Fixing Material Editor crash on shutdown 5 years ago
greerdv 78afeb8047 update more calls to Transform to use uniform scale 5 years ago
greerdv bdf9ac31fb update to use uniform scale calls to Transform 5 years ago
greerdv 92311ddf0d more tidying up 5 years ago
greerdv 945f55378e merge from main 5 years ago
dmcdiar 45ab467274 Merge branch 'main' into Atom/dmcdiar/ATOM-5034
# Conflicts:
#	Gems/Atom/Feature/Common/Code/Source/DiffuseProbeGrid/DiffuseProbeGridRayTracingPass.cpp
5 years ago
dmcdiar d6e25bbb33 Added DiffuseProbeGrid texture baking 5 years ago
Chris Santora bffc72794b ATOM-15597 Accessing Material Instance Panel Crashes Editor
There were two issues fixed here. First, I broke the material inspector with my changes at 53188a12da which added support for hiding entire property groups. I'm not sure how this happened because I definitely tested the MaterialComponent's material inspector. Perhaps there was a bad merge or something otherwise got clobbered after testing and before committing. Anyway, this issue was I accidentally delete the code that prepared the list of material properties for functor processing.

The second issue was the MaterialFunctor class needs to return null when metadata can't be found; it was proceeding to dereference an end iterator.

Testing:
Successfully opened the material inspector through the MaterialComponent. Was able to change property flags in the inspector and see other properties change visibility as expected.
5 years ago
Chris Santora 8799d1ab54 Merge branch 'main' into Atom/santorac/NewLayeringWorkflow 5 years ago
Chris Santora f3099aa7d5 Merge remote-tracking branch 'origin/main' into Atom/santorac/NewLayeringWorkflow 5 years ago
mnaumov 19664dccd2 Merge main 5 years ago
mnaumov 9fc01ea24d AR fixes 5 years ago
greerdv 7def4741cd merge from main 5 years ago
mnaumov 06784a8026 cleanup 5 years ago
mnaumov 44601b7a38 Some refactoring 5 years ago
mnaumov db7afee383 Adding parameters to ACES tone mapping 5 years ago
mrieggeramzn aab4b4a126
Merge pull request #737 from aws-lumberyard-dev/Atom/mriegger/ATOM-15529
Making shadow res of 1024 and bicubic pcf the default
5 years ago
AMZN-mnaumov d0daab4fe0
Merge pull request #710 from aws-lumberyard-dev/Atom/mnaumov/LYN-3529
[LYN-3529] Hiding "Open Material Editor" when material asset is assigned
5 years ago
Chris Santora e429c8e06a Fixed issues after merging latest main, as well as some edge cases I didn't notice before.
The structure of InspectorWidget::m_groups changed, so I had to update my new code accordingly.
Updated the InspectorWidget::m_groups code a bit to be more readable.
Discovered the initial property group visiblity state wasn't being set correctly when a material was first opened, so groups weren't initially hidden when they should have been. This had to be fixed in different ways for MaterialEditor's inspector and MaterialComponent's inspector.

ATOM-14688 Disable Individual Layers
5 years ago
mriegger 124ca1618a Making shadow res of 1024 and bicubic pcf the default 5 years ago
Chris Santora 37a1b77d50 Merge branch 'main' into Atom/santorac/NewLayeringWorkflow 5 years ago
Chris Santora 53188a12da Made StandardMultilayerPBR hide a layer's property groups when that layer is disabled.
ATOM-14688 Disable Individual Layers

- Added new SetMaterialPropertyGroupVisibility functions to the material functors.
- Updated the MaterialFunctor::EditorContext to include parameters for handling material property group metadata.
- Updated the material inspector(s) to apply the property group visiblity changes from the material functor, to hide or show the property groups.
- Moved some code from MaterialPropertyDescriptor.h/cpp to a new MaterialDynamicMetadata.h/cpp, since these aren't really related to the MaterialPropertyDescriptor code. It's more for material functors to use.
- Also fixed the casing for the "GetMaterialPropertyValue_Image" lua function, since I was already in this code (ATOM-14793 "Fix Inconsistent Casing For LuaMaterialFunctorRuntimeContext")

Tested in MaterialEditor and in in the main Editor's MaterialComponent property override inspector.
5 years ago
greerdv 655d71e0dd update compatibility of atom components with NonUniformScaleService 5 years ago
mnaumov 7342e62680 Hiding "Open Material" when material asset is assigned 5 years ago
Guthrie Adams ff9d8f7a87
Merge pull request #660 from aws-lumberyard-dev/Atom/guthadam/ATOM-15486
ATOM-15486 Material Editor: Implement layout and user settings
5 years ago
pruiksma 7957d3f8b6 Merge branch 'main' into pruiksma/ATOM-15515 5 years ago