![]() |
Open 3D Engine AzFramework API Reference
2205.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
|
#include <Material.h>
Public Types | |
enum | CombineMode : AZ::u8 { Average, Minimum, Maximum, Multiply } |
Public Member Functions | |
AZ_CLASS_ALLOCATOR (Material, AZ::SystemAllocator, 0) | |
AZ_RTTI (Physics::Material, "{44636CEA-46DD-4D4A-B1EF-5ED6DEA7F714}") | |
virtual AZ::Crc32 | GetSurfaceType () const =0 |
Returns AZ::Crc32 of the surface name. | |
virtual const AZStd::string & | GetSurfaceTypeName () const =0 |
virtual void | SetSurfaceTypeName (const AZStd::string &surfaceTypeName)=0 |
virtual float | GetDynamicFriction () const =0 |
virtual void | SetDynamicFriction (float dynamicFriction)=0 |
virtual float | GetStaticFriction () const =0 |
virtual void | SetStaticFriction (float staticFriction)=0 |
virtual float | GetRestitution () const =0 |
virtual void | SetRestitution (float restitution)=0 |
virtual CombineMode | GetFrictionCombineMode () const =0 |
virtual void | SetFrictionCombineMode (CombineMode mode)=0 |
virtual CombineMode | GetRestitutionCombineMode () const =0 |
virtual void | SetRestitutionCombineMode (CombineMode mode)=0 |
virtual float | GetDensity () const =0 |
virtual void | SetDensity (float density)=0 |
virtual AZ::Color | GetDebugColor () const =0 |
virtual void | SetDebugColor (const AZ::Color &debugColor)=0 |
virtual AZ::u32 | GetCryEngineSurfaceId () const =0 |
virtual void * | GetNativePointer ()=0 |
Returns underlying pointer of the native physics type (for example PxMaterial in PhysX). | |
This is the interface to the wrapper around native material type (such as PxMaterial in PhysX gem) that stores extra metadata, like Surface Type name.
Create new material using Physics::SystemRequestBus and Physics::MaterialConfiguration:
Physics::MaterialConfiguration materialProperties; AZStd::shared_ptr<Physics::Material> newMaterial = AZ::Interface<Physics::System>::Get()->CreateMaterial(materialProperties);
|
strong |
Enumeration that determines how two materials properties are combined when processing collisions.
|
pure virtual |
If the name of this material matches the name of one of the CrySurface types, it will return its CrySurface Id.
If there's no match it will return default CrySurface Id.
CrySurface types are defined in libs/materialeffects/surfacetypes.xml