// Copyright Epic Games, Inc. All Rights Reserved.
/*===========================================================================
	Generated code exported from UnrealHeaderTool.
	DO NOT modify this manually! Edit the corresponding .h files instead!
===========================================================================*/

#include "UObject/GeneratedCppIncludes.h"
#include "AGXUnreal/Public/Materials/AGX_MaterialBase.h"
#include "AGXUnreal/Public/Materials/AGX_ShapeMaterialBulkProperties.h"
#include "AGXUnreal/Public/Materials/AGX_ShapeMaterialSurfaceProperties.h"
#include "AGXUnreal/Public/Materials/AGX_ShapeMaterialWireProperties.h"
PRAGMA_DISABLE_DEPRECATION_WARNINGS
void EmptyLinkFunctionForGeneratedCodeAGX_MaterialBase() {}
// Cross Module References
	AGXUNREAL_API UClass* Z_Construct_UClass_UAGX_MaterialBase();
	AGXUNREAL_API UClass* Z_Construct_UClass_UAGX_MaterialBase_NoRegister();
	AGXUNREAL_API UScriptStruct* Z_Construct_UScriptStruct_FAGX_ShapeMaterialBulkProperties();
	AGXUNREAL_API UScriptStruct* Z_Construct_UScriptStruct_FAGX_ShapeMaterialSurfaceProperties();
	AGXUNREAL_API UScriptStruct* Z_Construct_UScriptStruct_FAGX_ShapeMaterialWireProperties();
	COREUOBJECT_API UClass* Z_Construct_UClass_UObject();
	COREUOBJECT_API UScriptStruct* Z_Construct_UScriptStruct_FGuid();
	UPackage* Z_Construct_UPackage__Script_AGXUnreal();
// End Cross Module References
	DEFINE_FUNCTION(UAGX_MaterialBase::execCommitToAsset)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		P_THIS->CommitToAsset();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execGetAdhesiveOverlap_BP)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		*(float*)Z_Param__Result=P_THIS->GetAdhesiveOverlap_BP();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execGetAdhesiveForce_BP)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		*(float*)Z_Param__Result=P_THIS->GetAdhesiveForce_BP();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execSetAdhesion_BP)
	{
		P_GET_PROPERTY(FFloatProperty,Z_Param_AdhesiveForce);
		P_GET_PROPERTY(FFloatProperty,Z_Param_AdhesiveOverlap);
		P_FINISH;
		P_NATIVE_BEGIN;
		P_THIS->SetAdhesion_BP(Z_Param_AdhesiveForce,Z_Param_AdhesiveOverlap);
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execGetSurfaceViscosity_BP)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		*(float*)Z_Param__Result=P_THIS->GetSurfaceViscosity_BP();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execSetSurfaceViscosity_BP)
	{
		P_GET_PROPERTY(FFloatProperty,Z_Param_Viscosity);
		P_FINISH;
		P_NATIVE_BEGIN;
		P_THIS->SetSurfaceViscosity_BP(Z_Param_Viscosity);
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execGetRoughness_BP)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		*(float*)Z_Param__Result=P_THIS->GetRoughness_BP();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execSetRoughness_BP)
	{
		P_GET_PROPERTY(FFloatProperty,Z_Param_Roughness);
		P_FINISH;
		P_NATIVE_BEGIN;
		P_THIS->SetRoughness_BP(Z_Param_Roughness);
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execGetFrictionEnabled)
	{
		P_FINISH;
		P_NATIVE_BEGIN;
		*(bool*)Z_Param__Result=P_THIS->GetFrictionEnabled();
		P_NATIVE_END;
	}
	DEFINE_FUNCTION(UAGX_MaterialBase::execSetFrictionEnabled)
	{
		P_GET_UBOOL(Z_Param_Enabled);
		P_FINISH;
		P_NATIVE_BEGIN;
		P_THIS->SetFrictionEnabled(Z_Param_Enabled);
		P_NATIVE_END;
	}
	void UAGX_MaterialBase::StaticRegisterNativesUAGX_MaterialBase()
	{
		UClass* Class = UAGX_MaterialBase::StaticClass();
		static const FNameNativePtrPair Funcs[] = {
			{ "CommitToAsset", &UAGX_MaterialBase::execCommitToAsset },
			{ "GetAdhesiveForce_BP", &UAGX_MaterialBase::execGetAdhesiveForce_BP },
			{ "GetAdhesiveOverlap_BP", &UAGX_MaterialBase::execGetAdhesiveOverlap_BP },
			{ "GetFrictionEnabled", &UAGX_MaterialBase::execGetFrictionEnabled },
			{ "GetRoughness_BP", &UAGX_MaterialBase::execGetRoughness_BP },
			{ "GetSurfaceViscosity_BP", &UAGX_MaterialBase::execGetSurfaceViscosity_BP },
			{ "SetAdhesion_BP", &UAGX_MaterialBase::execSetAdhesion_BP },
			{ "SetFrictionEnabled", &UAGX_MaterialBase::execSetFrictionEnabled },
			{ "SetRoughness_BP", &UAGX_MaterialBase::execSetRoughness_BP },
			{ "SetSurfaceViscosity_BP", &UAGX_MaterialBase::execSetSurfaceViscosity_BP },
		};
		FNativeFunctionRegistrar::RegisterFunctions(Class, Funcs, UE_ARRAY_COUNT(Funcs));
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics
	{
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material" },
		{ "Comment", "/**\n\x09 * Copies all properties (even properties set during Play) to the asset such\n\x09 * that the data is saved permanently in the asset, even after Play.\n\x09 *\n\x09 * If this function is called on an instance, the properties are copied\n\x09 * from the instance to the asset it was created from, permanently.\n\x09 * If this function is called on an asset, the properties are copied from\n\x09 * its instance (if it exists) to itself such that the data is saved permanently.\n\x09 */" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
		{ "ToolTip", "Copies all properties (even properties set during Play) to the asset such\nthat the data is saved permanently in the asset, even after Play.\n\nIf this function is called on an instance, the properties are copied\nfrom the instance to the asset it was created from, permanently.\nIf this function is called on an asset, the properties are copied from\nits instance (if it exists) to itself such that the data is saved permanently." },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "CommitToAsset", nullptr, nullptr, nullptr, 0, 0, RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x04020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics::Function_MetaDataParams) };
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics
	{
		struct AGX_MaterialBase_eventGetAdhesiveForce_BP_Parms
		{
			float ReturnValue;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_ReturnValue;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::NewProp_ReturnValue = { "ReturnValue", nullptr, (EPropertyFlags)0x0010000000000580, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventGetAdhesiveForce_BP_Parms, ReturnValue), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::NewProp_ReturnValue,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Get Adhesive Force" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "GetAdhesiveForce_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::AGX_MaterialBase_eventGetAdhesiveForce_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x54020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::AGX_MaterialBase_eventGetAdhesiveForce_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics
	{
		struct AGX_MaterialBase_eventGetAdhesiveOverlap_BP_Parms
		{
			float ReturnValue;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_ReturnValue;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::NewProp_ReturnValue = { "ReturnValue", nullptr, (EPropertyFlags)0x0010000000000580, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventGetAdhesiveOverlap_BP_Parms, ReturnValue), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::NewProp_ReturnValue,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Get Adhesive Overlap" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "GetAdhesiveOverlap_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::AGX_MaterialBase_eventGetAdhesiveOverlap_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x54020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::AGX_MaterialBase_eventGetAdhesiveOverlap_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics
	{
		struct AGX_MaterialBase_eventGetFrictionEnabled_Parms
		{
			bool ReturnValue;
		};
		static void NewProp_ReturnValue_SetBit(void* Obj);
		static const UECodeGen_Private::FBoolPropertyParams NewProp_ReturnValue;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	void Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::NewProp_ReturnValue_SetBit(void* Obj)
	{
		((AGX_MaterialBase_eventGetFrictionEnabled_Parms*)Obj)->ReturnValue = 1;
	}
	const UECodeGen_Private::FBoolPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::NewProp_ReturnValue = { "ReturnValue", nullptr, (EPropertyFlags)0x0010000000000580, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(AGX_MaterialBase_eventGetFrictionEnabled_Parms), &Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::NewProp_ReturnValue_SetBit, METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::NewProp_ReturnValue,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "GetFrictionEnabled", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::AGX_MaterialBase_eventGetFrictionEnabled_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x54020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::AGX_MaterialBase_eventGetFrictionEnabled_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics
	{
		struct AGX_MaterialBase_eventGetRoughness_BP_Parms
		{
			float ReturnValue;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_ReturnValue;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::NewProp_ReturnValue = { "ReturnValue", nullptr, (EPropertyFlags)0x0010000000000580, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventGetRoughness_BP_Parms, ReturnValue), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::NewProp_ReturnValue,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Get Roughness" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "GetRoughness_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::AGX_MaterialBase_eventGetRoughness_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x54020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::AGX_MaterialBase_eventGetRoughness_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics
	{
		struct AGX_MaterialBase_eventGetSurfaceViscosity_BP_Parms
		{
			float ReturnValue;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_ReturnValue;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::NewProp_ReturnValue = { "ReturnValue", nullptr, (EPropertyFlags)0x0010000000000580, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventGetSurfaceViscosity_BP_Parms, ReturnValue), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::NewProp_ReturnValue,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Get Surface Viscosity" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "GetSurfaceViscosity_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::AGX_MaterialBase_eventGetSurfaceViscosity_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x54020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::AGX_MaterialBase_eventGetSurfaceViscosity_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics
	{
		struct AGX_MaterialBase_eventSetAdhesion_BP_Parms
		{
			float AdhesiveForce;
			float AdhesiveOverlap;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_AdhesiveForce;
		static const UECodeGen_Private::FFloatPropertyParams NewProp_AdhesiveOverlap;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::NewProp_AdhesiveForce = { "AdhesiveForce", nullptr, (EPropertyFlags)0x0010000000000080, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventSetAdhesion_BP_Parms, AdhesiveForce), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::NewProp_AdhesiveOverlap = { "AdhesiveOverlap", nullptr, (EPropertyFlags)0x0010000000000080, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventSetAdhesion_BP_Parms, AdhesiveOverlap), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::NewProp_AdhesiveForce,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::NewProp_AdhesiveOverlap,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Set Adhesion" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "SetAdhesion_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::AGX_MaterialBase_eventSetAdhesion_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x04020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::AGX_MaterialBase_eventSetAdhesion_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics
	{
		struct AGX_MaterialBase_eventSetFrictionEnabled_Parms
		{
			bool Enabled;
		};
		static void NewProp_Enabled_SetBit(void* Obj);
		static const UECodeGen_Private::FBoolPropertyParams NewProp_Enabled;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	void Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::NewProp_Enabled_SetBit(void* Obj)
	{
		((AGX_MaterialBase_eventSetFrictionEnabled_Parms*)Obj)->Enabled = 1;
	}
	const UECodeGen_Private::FBoolPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::NewProp_Enabled = { "Enabled", nullptr, (EPropertyFlags)0x0010000000000080, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, sizeof(bool), sizeof(AGX_MaterialBase_eventSetFrictionEnabled_Parms), &Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::NewProp_Enabled_SetBit, METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::NewProp_Enabled,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "Comment", "// Setter and getter for surface properties. These can be here since they are shared by both\n// Shape Materials and Terrain Materials. The Bulk properties differ between Shape and Terrain\n// Materials so each material type have their own set of getters and setters for those. The\n// Wire properties are Shape Material only, so they are in the Shape Material.\n" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
		{ "ToolTip", "Setter and getter for surface properties. These can be here since they are shared by both\nShape Materials and Terrain Materials. The Bulk properties differ between Shape and Terrain\nMaterials so each material type have their own set of getters and setters for those. The\nWire properties are Shape Material only, so they are in the Shape Material." },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "SetFrictionEnabled", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::AGX_MaterialBase_eventSetFrictionEnabled_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x04020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::AGX_MaterialBase_eventSetFrictionEnabled_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics
	{
		struct AGX_MaterialBase_eventSetRoughness_BP_Parms
		{
			float Roughness;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_Roughness;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::NewProp_Roughness = { "Roughness", nullptr, (EPropertyFlags)0x0010000000000080, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventSetRoughness_BP_Parms, Roughness), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::NewProp_Roughness,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Set Roughness" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "SetRoughness_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::AGX_MaterialBase_eventSetRoughness_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x04020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::AGX_MaterialBase_eventSetRoughness_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	struct Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics
	{
		struct AGX_MaterialBase_eventSetSurfaceViscosity_BP_Parms
		{
			float Viscosity;
		};
		static const UECodeGen_Private::FFloatPropertyParams NewProp_Viscosity;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Function_MetaDataParams[];
#endif
		static const UECodeGen_Private::FFunctionParams FuncParams;
	};
	const UECodeGen_Private::FFloatPropertyParams Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::NewProp_Viscosity = { "Viscosity", nullptr, (EPropertyFlags)0x0010000000000080, UECodeGen_Private::EPropertyGenFlags::Float, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(AGX_MaterialBase_eventSetSurfaceViscosity_BP_Parms, Viscosity), METADATA_PARAMS(0, nullptr) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::NewProp_Viscosity,
	};
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::Function_MetaDataParams[] = {
		{ "Category", "AGX Material Surface Properties" },
		{ "DisplayName", "Set Surface Viscosity" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FFunctionParams Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::FuncParams = { (UObject*(*)())Z_Construct_UClass_UAGX_MaterialBase, nullptr, "SetSurfaceViscosity_BP", nullptr, nullptr, Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::PropPointers, UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::PropPointers), sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::AGX_MaterialBase_eventSetSurfaceViscosity_BP_Parms), RF_Public|RF_Transient|RF_MarkAsNative, (EFunctionFlags)0x04020400, 0, 0, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::Function_MetaDataParams), Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::Function_MetaDataParams) };
	static_assert(UE_ARRAY_COUNT(Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::PropPointers) < 2048);
	static_assert(sizeof(Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::AGX_MaterialBase_eventSetSurfaceViscosity_BP_Parms) < MAX_uint16);
	UFunction* Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP()
	{
		static UFunction* ReturnFunction = nullptr;
		if (!ReturnFunction)
		{
			UECodeGen_Private::ConstructUFunction(&ReturnFunction, Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP_Statics::FuncParams);
		}
		return ReturnFunction;
	}
	IMPLEMENT_CLASS_NO_AUTO_REGISTRATION(UAGX_MaterialBase);
	UClass* Z_Construct_UClass_UAGX_MaterialBase_NoRegister()
	{
		return UAGX_MaterialBase::StaticClass();
	}
	struct Z_Construct_UClass_UAGX_MaterialBase_Statics
	{
		static UObject* (*const DependentSingletons[])();
		static const FClassFunctionLinkInfo FuncInfo[];
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam Class_MetaDataParams[];
#endif
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_Bulk_MetaData[];
#endif
		static const UECodeGen_Private::FStructPropertyParams NewProp_Bulk;
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_Surface_MetaData[];
#endif
		static const UECodeGen_Private::FStructPropertyParams NewProp_Surface;
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_Wire_MetaData[];
#endif
		static const UECodeGen_Private::FStructPropertyParams NewProp_Wire;
#if WITH_METADATA
		static const UECodeGen_Private::FMetaDataPairParam NewProp_ImportGuid_MetaData[];
#endif
		static const UECodeGen_Private::FStructPropertyParams NewProp_ImportGuid;
		static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
		static const FCppClassTypeInfoStatic StaticCppClassTypeInfo;
		static const UECodeGen_Private::FClassParams ClassParams;
	};
	UObject* (*const Z_Construct_UClass_UAGX_MaterialBase_Statics::DependentSingletons[])() = {
		(UObject* (*)())Z_Construct_UClass_UObject,
		(UObject* (*)())Z_Construct_UPackage__Script_AGXUnreal,
	};
	static_assert(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::DependentSingletons) < 16);
	const FClassFunctionLinkInfo Z_Construct_UClass_UAGX_MaterialBase_Statics::FuncInfo[] = {
		{ &Z_Construct_UFunction_UAGX_MaterialBase_CommitToAsset, "CommitToAsset" }, // 839138604
		{ &Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveForce_BP, "GetAdhesiveForce_BP" }, // 4111083277
		{ &Z_Construct_UFunction_UAGX_MaterialBase_GetAdhesiveOverlap_BP, "GetAdhesiveOverlap_BP" }, // 3144952737
		{ &Z_Construct_UFunction_UAGX_MaterialBase_GetFrictionEnabled, "GetFrictionEnabled" }, // 2462377554
		{ &Z_Construct_UFunction_UAGX_MaterialBase_GetRoughness_BP, "GetRoughness_BP" }, // 2971418267
		{ &Z_Construct_UFunction_UAGX_MaterialBase_GetSurfaceViscosity_BP, "GetSurfaceViscosity_BP" }, // 2870666357
		{ &Z_Construct_UFunction_UAGX_MaterialBase_SetAdhesion_BP, "SetAdhesion_BP" }, // 3352395543
		{ &Z_Construct_UFunction_UAGX_MaterialBase_SetFrictionEnabled, "SetFrictionEnabled" }, // 76298100
		{ &Z_Construct_UFunction_UAGX_MaterialBase_SetRoughness_BP, "SetRoughness_BP" }, // 1643095457
		{ &Z_Construct_UFunction_UAGX_MaterialBase_SetSurfaceViscosity_BP, "SetSurfaceViscosity_BP" }, // 3675181171
	};
	static_assert(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::FuncInfo) < 2048);
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UClass_UAGX_MaterialBase_Statics::Class_MetaDataParams[] = {
		{ "AutoExpandCategories", "Material Properties" },
		{ "Category", "AGX" },
		{ "ClassGroupNames", "AGX" },
		{ "Comment", "/**\n * Defines physical properties of AGX Shapes, AGX Terrains, AGX Wires, etc.\n *\n * Materials can exist in two different contexts: editing and play.\n *\n * Editing is the regular Unreal Editor mode, where we use the editor to set properties and assign\n * assets. In this case the material is an asset. New materials are created and existing materials\n * are edited in the Content Browser. Material properties, such as on an UAGX_ShapeComponent, are\n * pointers to these assets.\n *\n * During play things are a bit different. This is because we don't want changes made during play to\n * affect the on-disk assets. We therefore decouple edit-mode assets from play session objects by\n * creating clones of the edit mode assets for use during the duration of the play session. The\n * Instances are the only classes that has a native AGX Dynamics object associated with it.\n *\n * Both the instance and asset objects are of the same type, but the asset holds a reference to\n * its instance (if one has been created) and the instance always holds a reference to the asset\n * it was created from.\n *\n *\x09UCLASS()\n *\x09""class UMyClass : public UObject\n *\x09{\n *\x09\x09GENERATED_BODY()\n *\n *\x09\x09UPROPERTY()\n *\x09\x09UAGX_MaterialBase* MyMaterial; // Asset while in editor, Instance during gameplay.\n *\n *\x09\x09virtual void BeginPlay();\n * \x09};\n *\n * \x09void UMyClass::BeginPlay()\n * \x09{\n *\x09\x09if (GetWorld()->IsGameWorld())\n *\x09\x09{\n *\x09\x09\x09// We are being created in game mode, so get the non-Asset\n *\x09\x09\x09// instance and swap out the Asset pointer.\n *\x09\x09\x09UAGX_MaterialInstance* MaterialInstance =\n *\x09\x09\x09\x09""Cast<UAGX_MaterialInstance>(MyMaterial->GetOrCreateInstance());\n *\x09\x09\x09MyMaterial = Instance;\n *\x09\x09}\n * \x09}\n *\n * In addition to the Asset/Instance separation there are also multiple types of materials,\n * currently Shape and Terrain. What they all have in common is that a contact material may\n *  be created between any pair of materials, regardless of their types. Wires use Shape Material.\n *\n * Rules of UPROPERTY updates:\n * 1. Updating a UPROPERTY of an Asset from the Details Panel\n *\x09in Edit: [permanent property write in asset]\n *\x09in Play: [permanent property write in asset AND permanent property write in instance AND\n *\x09\x09propagation to AGX Dynamics]\n *\n * 2. Updating a UPROPERTY of an Asset by calling UFUNCTION\n *\x09in Edit: [permanent property write in asset]\n *\x09in Play: [permanent property write in instance AND DO NOT update asset property AND\n *\x09\x09propagation to AGX Dynamics]\n *\n * 3. Updating a UPROPERTY of an Instance from the Details Panel\n *\x09in Edit: [does not exists yet]\n *\x09in Play: [permanent property write in asset AND permanent property write in instance AND\n *\x09\x09propagation to AGX Dynamics]\n *\n * 4. Updating a UPROPERTY of an Instance by calling UFUNCTION\n *\x09in Edit: [does not exists yet]\n *\x09in Play: [permanent property write in instance AND DO NOT update asset property AND\n *\x09\x09propagation to AGX Dynamics]\n */" },
		{ "IncludePath", "Materials/AGX_MaterialBase.h" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
		{ "ToolTip", "Defines physical properties of AGX Shapes, AGX Terrains, AGX Wires, etc.\n\nMaterials can exist in two different contexts: editing and play.\n\nEditing is the regular Unreal Editor mode, where we use the editor to set properties and assign\nassets. In this case the material is an asset. New materials are created and existing materials\nare edited in the Content Browser. Material properties, such as on an UAGX_ShapeComponent, are\npointers to these assets.\n\nDuring play things are a bit different. This is because we don't want changes made during play to\naffect the on-disk assets. We therefore decouple edit-mode assets from play session objects by\ncreating clones of the edit mode assets for use during the duration of the play session. The\nInstances are the only classes that has a native AGX Dynamics object associated with it.\n\nBoth the instance and asset objects are of the same type, but the asset holds a reference to\nits instance (if one has been created) and the instance always holds a reference to the asset\nit was created from.\n\n    UCLASS()\n    class UMyClass : public UObject\n    {\n            GENERATED_BODY()\n\n            UPROPERTY()\n            UAGX_MaterialBase* MyMaterial; // Asset while in editor, Instance during gameplay.\n\n            virtual void BeginPlay();\n    };\n\n    void UMyClass::BeginPlay()\n    {\n            if (GetWorld()->IsGameWorld())\n            {\n                    // We are being created in game mode, so get the non-Asset\n                    // instance and swap out the Asset pointer.\n                    UAGX_MaterialInstance* MaterialInstance =\n                            Cast<UAGX_MaterialInstance>(MyMaterial->GetOrCreateInstance());\n                    MyMaterial = Instance;\n            }\n    }\n\nIn addition to the Asset/Instance separation there are also multiple types of materials,\ncurrently Shape and Terrain. What they all have in common is that a contact material may\n be created between any pair of materials, regardless of their types. Wires use Shape Material.\n\nRules of UPROPERTY updates:\n1. Updating a UPROPERTY of an Asset from the Details Panel\n    in Edit: [permanent property write in asset]\n    in Play: [permanent property write in asset AND permanent property write in instance AND\n            propagation to AGX Dynamics]\n\n2. Updating a UPROPERTY of an Asset by calling UFUNCTION\n    in Edit: [permanent property write in asset]\n    in Play: [permanent property write in instance AND DO NOT update asset property AND\n            propagation to AGX Dynamics]\n\n3. Updating a UPROPERTY of an Instance from the Details Panel\n    in Edit: [does not exists yet]\n    in Play: [permanent property write in asset AND permanent property write in instance AND\n            propagation to AGX Dynamics]\n\n4. Updating a UPROPERTY of an Instance by calling UFUNCTION\n    in Edit: [does not exists yet]\n    in Play: [permanent property write in instance AND DO NOT update asset property AND\n            propagation to AGX Dynamics]" },
	};
#endif
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Bulk_MetaData[] = {
		{ "Category", "Material Properties" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Bulk = { "Bulk", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UAGX_MaterialBase, Bulk), Z_Construct_UScriptStruct_FAGX_ShapeMaterialBulkProperties, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Bulk_MetaData), Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Bulk_MetaData) }; // 2905973179
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Surface_MetaData[] = {
		{ "Category", "Material Properties" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Surface = { "Surface", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UAGX_MaterialBase, Surface), Z_Construct_UScriptStruct_FAGX_ShapeMaterialSurfaceProperties, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Surface_MetaData), Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Surface_MetaData) }; // 2345263964
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Wire_MetaData[] = {
		{ "Category", "Material Properties" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
	};
#endif
	const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Wire = { "Wire", nullptr, (EPropertyFlags)0x0010000000000001, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UAGX_MaterialBase, Wire), Z_Construct_UScriptStruct_FAGX_ShapeMaterialWireProperties, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Wire_MetaData), Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Wire_MetaData) }; // 2043253637
#if WITH_METADATA
	const UECodeGen_Private::FMetaDataPairParam Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_ImportGuid_MetaData[] = {
		{ "Category", "AGX Dynamics Import Guid" },
		{ "Comment", "/*\n\x09 * The import Guid of this Component. Only used by the AGX Dynamics for Unreal import system.\n\x09 * Should never be assigned manually.\n\x09 */" },
		{ "ModuleRelativePath", "Public/Materials/AGX_MaterialBase.h" },
		{ "ToolTip", "* The import Guid of this Component. Only used by the AGX Dynamics for Unreal import system.\n* Should never be assigned manually." },
	};
#endif
	const UECodeGen_Private::FStructPropertyParams Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_ImportGuid = { "ImportGuid", nullptr, (EPropertyFlags)0x0010000000000014, UECodeGen_Private::EPropertyGenFlags::Struct, RF_Public|RF_Transient|RF_MarkAsNative, nullptr, nullptr, 1, STRUCT_OFFSET(UAGX_MaterialBase, ImportGuid), Z_Construct_UScriptStruct_FGuid, METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_ImportGuid_MetaData), Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_ImportGuid_MetaData) };
	const UECodeGen_Private::FPropertyParamsBase* const Z_Construct_UClass_UAGX_MaterialBase_Statics::PropPointers[] = {
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Bulk,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Surface,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_Wire,
		(const UECodeGen_Private::FPropertyParamsBase*)&Z_Construct_UClass_UAGX_MaterialBase_Statics::NewProp_ImportGuid,
	};
	const FCppClassTypeInfoStatic Z_Construct_UClass_UAGX_MaterialBase_Statics::StaticCppClassTypeInfo = {
		TCppClassTypeTraits<UAGX_MaterialBase>::IsAbstract,
	};
	const UECodeGen_Private::FClassParams Z_Construct_UClass_UAGX_MaterialBase_Statics::ClassParams = {
		&UAGX_MaterialBase::StaticClass,
		nullptr,
		&StaticCppClassTypeInfo,
		DependentSingletons,
		FuncInfo,
		Z_Construct_UClass_UAGX_MaterialBase_Statics::PropPointers,
		nullptr,
		UE_ARRAY_COUNT(DependentSingletons),
		UE_ARRAY_COUNT(FuncInfo),
		UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::PropPointers),
		0,
		0x001000A1u,
		METADATA_PARAMS(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::Class_MetaDataParams), Z_Construct_UClass_UAGX_MaterialBase_Statics::Class_MetaDataParams)
	};
	static_assert(UE_ARRAY_COUNT(Z_Construct_UClass_UAGX_MaterialBase_Statics::PropPointers) < 2048);
	UClass* Z_Construct_UClass_UAGX_MaterialBase()
	{
		if (!Z_Registration_Info_UClass_UAGX_MaterialBase.OuterSingleton)
		{
			UECodeGen_Private::ConstructUClass(Z_Registration_Info_UClass_UAGX_MaterialBase.OuterSingleton, Z_Construct_UClass_UAGX_MaterialBase_Statics::ClassParams);
		}
		return Z_Registration_Info_UClass_UAGX_MaterialBase.OuterSingleton;
	}
	template<> AGXUNREAL_API UClass* StaticClass<UAGX_MaterialBase>()
	{
		return UAGX_MaterialBase::StaticClass();
	}
	UAGX_MaterialBase::UAGX_MaterialBase(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer) {}
	DEFINE_VTABLE_PTR_HELPER_CTOR(UAGX_MaterialBase);
	struct Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_Materials_AGX_MaterialBase_h_Statics
	{
		static const FClassRegisterCompiledInInfo ClassInfo[];
	};
	const FClassRegisterCompiledInInfo Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_Materials_AGX_MaterialBase_h_Statics::ClassInfo[] = {
		{ Z_Construct_UClass_UAGX_MaterialBase, UAGX_MaterialBase::StaticClass, TEXT("UAGX_MaterialBase"), &Z_Registration_Info_UClass_UAGX_MaterialBase, CONSTRUCT_RELOAD_VERSION_INFO(FClassReloadVersionInfo, sizeof(UAGX_MaterialBase), 4082860971U) },
	};
	static FRegisterCompiledInInfo Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_Materials_AGX_MaterialBase_h_2394749108(TEXT("/Script/AGXUnreal"),
		Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_Materials_AGX_MaterialBase_h_Statics::ClassInfo, UE_ARRAY_COUNT(Z_CompiledInDeferFile_FID_GitLab_Runner_builds_9YzzThLq_0_algoryx_unreal_agxunreal_staging_selfhosted_build_AGXUnreal_HostProject_Plugins_AGXUnreal_Source_AGXUnreal_Public_Materials_AGX_MaterialBase_h_Statics::ClassInfo),
		nullptr, 0,
		nullptr, 0);
PRAGMA_ENABLE_DEPRECATION_WARNINGS
