76 lines
2.1 KiB
C#
Raw Normal View History

2024-11-01 16:55:46 +08:00
using System;
using System.Runtime.InteropServices;
namespace X.Rendering.Feature
{
public static class RenderingPlugin
{
2024-11-22 12:09:31 +08:00
#if (PLATFORM_IOS || PLATFORM_TVOS || PLATFORM_BRATWURST || PLATFORM_SWITCH) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("GfxPluginNativeRender")]
#endif
public static extern void SetTimeFromUnity(float t);
#if (PLATFORM_IOS || PLATFORM_TVOS || PLATFORM_BRATWURST || PLATFORM_SWITCH) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("GfxPluginNativeRender")]
#endif
public static extern IntPtr GetRenderEventAndDataFunc();
#if (PLATFORM_IOS || PLATFORM_TVOS || PLATFORM_BRATWURST || PLATFORM_SWITCH) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("GfxPluginNativeRender")]
#endif
private static extern bool GetFeatureSupport(int feature);
//#if (PLATFORM_IOS || PLATFORM_TVOS || PLATFORM_BRATWURST || PLATFORM_SWITCH) && !UNITY_EDITOR
// [DllImport("__Internal")]
//#else
// [DllImport("GfxPluginNativeRender")]
//#endif
// public static extern bool DoFGExtrapolation(IntPtr src, IntPtr data, IntPtr dst);
2024-11-01 16:55:46 +08:00
public enum NativeRenderingEvent
{
EnableVRS = 1,
DisableVRS,
2024-11-22 12:09:31 +08:00
DoFGExtrapolation,
2024-11-01 16:55:46 +08:00
}
public enum VRSPluginShadingRate
{
X1_PER_PIXEL,
X1_PER_2X1_PIXELS,
X1_PER_1X2_PIXELS,
X1_PER_2X2_PIXELS,
X1_PER_4X2_PIXELS,
X1_PER_2X4_PIXELS,
X1_PER_4X4_PIXELS,
};
2024-11-22 12:09:31 +08:00
public enum GraphicsFeature
{
VRS_DRAW = 0,
VRS_PRIMITIVE,
VRS_ATTACHMENT,
HW_SPATIAL_SR,
HW_AISR,
HW_ADAPTIVE_VRS,
HW_FG_INTERPOLATE,
HW_FG_EXTRAPOLATION,
METAL_FX_SPATIAL_SR,
METAL_FX_TEMPORAL_SR,
VIVO_TEMPORAL_SR,
QCOM_AFME,
MAX_CNT
};
public static bool GetFeatureSupport(GraphicsFeature feature)
{
return GetFeatureSupport((int)feature);
}
2024-11-01 16:55:46 +08:00
}
}