You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb Will.Damon [FYI] Michael.Forot, Ola.Olsson #jira UE-108926 #rnx #ROBOMERGE-SOURCE: CL 15502203 in //UE5/Release-5.0-EarlyAccess/... #ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668) [CL 15503756 by lukas hermanns in ue5-main branch]
54 lines
2.5 KiB
Plaintext
54 lines
2.5 KiB
Plaintext
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
/*=============================================================================
|
|
PhysicsFieldSampler.ush
|
|
=============================================================================*/
|
|
|
|
#pragma once
|
|
|
|
#include "PhysicsFieldShared.ush"
|
|
|
|
#if FEATURE_LEVEL >= FEATURE_LEVEL_SM5
|
|
|
|
#if IS_MATERIAL_SHADER
|
|
// for materials, these are in the view UB
|
|
#define PhysicsFieldClipmapBuffer View.PhysicsFieldClipmapBuffer
|
|
#define PhysicsFieldClipmapCenter View.PhysicsFieldClipmapCenter
|
|
#define PhysicsFieldClipmapDistance View.PhysicsFieldClipmapDistance
|
|
#define PhysicsFieldClipmapResolution View.PhysicsFieldClipmapResolution
|
|
#define PhysicsFieldClipmapExponent View.PhysicsFieldClipmapExponent
|
|
#define PhysicsFieldClipmapCount View.PhysicsFieldClipmapCount
|
|
#define PhysicsFieldTargetCount View.PhysicsFieldTargetCount
|
|
#define PhysicsFieldTargets View.PhysicsFieldTargets
|
|
#else
|
|
Buffer<float> PhysicsFieldClipmapBuffer;
|
|
float3 PhysicsFieldClipmapCenter;
|
|
float PhysicsFieldClipmapDistance;
|
|
int PhysicsFieldClipmapResolution;
|
|
int PhysicsFieldClipmapExponent;
|
|
int PhysicsFieldClipmapCount;
|
|
int PhysicsFieldTargetCount;
|
|
int4 PhysicsFieldTargets[MAX_PHYSICS_FIELD_TARGETS]; // x (Vector), y (Scalar), z (Integer), w (Padding)
|
|
#endif
|
|
|
|
float3 MatPhysicsField_SamplePhysicsVectorField(float3 WorldPosition, int VectorTarget)
|
|
{
|
|
return PhysicsField_SamplePhysicsVectorField(WorldPosition, VectorTarget, PhysicsFieldTargets, PhysicsFieldTargetCount, PhysicsFieldClipmapCenter, PhysicsFieldClipmapDistance,
|
|
PhysicsFieldClipmapExponent, PhysicsFieldClipmapCount, PhysicsFieldClipmapResolution, PhysicsFieldClipmapBuffer);
|
|
}
|
|
|
|
float MatPhysicsField_SamplePhysicsScalarField(float3 WorldPosition, int ScalarTarget)
|
|
{
|
|
return PhysicsField_SamplePhysicsScalarField(WorldPosition, ScalarTarget, PhysicsFieldTargets, PhysicsFieldTargetCount, PhysicsFieldClipmapCenter, PhysicsFieldClipmapDistance,
|
|
PhysicsFieldClipmapExponent, PhysicsFieldClipmapCount, PhysicsFieldClipmapResolution, PhysicsFieldClipmapBuffer);
|
|
}
|
|
|
|
int MatPhysicsField_SamplePhysicsIntegerField(float3 WorldPosition, int IntegerTarget)
|
|
{
|
|
return PhysicsField_SamplePhysicsIntegerField(WorldPosition, IntegerTarget, PhysicsFieldTargets, PhysicsFieldTargetCount, PhysicsFieldClipmapCenter, PhysicsFieldClipmapDistance,
|
|
PhysicsFieldClipmapExponent, PhysicsFieldClipmapCount, PhysicsFieldClipmapResolution, PhysicsFieldClipmapBuffer);
|
|
|
|
}
|
|
|
|
#endif // FEATURE_LEVEL >= FEATURE_LEVEL_SM5
|