<?xml version="1.0"?>
<materialx version="1.38">
<!-- Do not hand edit.

    Generated by SGUtil.generateNodeDefs
    2025-02-27 00:16:42 +0000
    
-->



<nodedef name="ND_InternalRealityKitTextureRead_vector4" node="InternalRealityKitTextureRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dfloat" />
	<input name="default" type="vector4" value="0.0,0.0,0.0,0.0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="vector4" />
</nodedef>

<nodedef name="ND_InternalRealityKitTextureRead_color4" node="InternalRealityKitTextureRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dhalf" />
	<input name="default" type="color4" value="0.0,0.0,0.0,1.0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureRead" nodedef="ND_InternalRealityKitTextureRead_vector4" function="InternalRealityKitTextureRead_vector4"/>

<implementation name="IMP_InternalRealityKitTextureRead" nodedef="ND_InternalRealityKitTextureRead_color4" function="InternalRealityKitTextureRead_half4"/>

<nodegraph name="NG_RealityKitTextureRead" nodedef="ND_RealityKitTextureRead_vector4">

    <InternalRealityKitTextureRead name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="default" type="vector4" interfacename="default"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="vector4" />
    </InternalRealityKitTextureRead>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureRead" nodedef="ND_RealityKitTextureRead_color4">

    <InternalRealityKitTextureRead name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="default" type="color4" interfacename="default"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="color4" />
    </InternalRealityKitTextureRead>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTexture2DArrayRead_vector4" node="InternalRealityKitTexture2DArrayRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayfloat" />
	<input name="default" type="vector4" value="0.0,0.0,0.0,0.0" />
	<input name="index" type="integer" value="0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="vector4" />
</nodedef>

<nodedef name="ND_InternalRealityKitTexture2DArrayRead_color4" node="InternalRealityKitTexture2DArrayRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayhalf" />
	<input name="default" type="color4" value="0.0,0.0,0.0,1.0" />
	<input name="index" type="integer" value="0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArrayRead" nodedef="ND_InternalRealityKitTexture2DArrayRead_vector4" function="InternalRealityKitTexture2DArrayRead_vector4"/>

<implementation name="IMP_InternalRealityKitTexture2DArrayRead" nodedef="ND_InternalRealityKitTexture2DArrayRead_color4" function="InternalRealityKitTexture2DArrayRead_half4"/>

<nodegraph name="NG_RealityKitTexture2DArrayRead" nodedef="ND_RealityKitTexture2DArrayRead_vector4">

    <InternalRealityKitTexture2DArrayRead name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="default" type="vector4" interfacename="default"/>
        <input name="index" type="integer" interfacename="index"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArrayRead>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayRead" nodedef="ND_RealityKitTexture2DArrayRead_color4">

    <InternalRealityKitTexture2DArrayRead name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="default" type="color4" interfacename="default"/>
        <input name="index" type="integer" interfacename="index"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArrayRead>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTexture3DRead_vector4" node="InternalRealityKitTexture3DRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dfloat" />
	<input name="default" type="vector4" value="0.0,0.0,0.0,0.0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="z" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="vector4" />
</nodedef>

<nodedef name="ND_InternalRealityKitTexture3DRead_color4" node="InternalRealityKitTexture3DRead" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dhalf" />
	<input name="default" type="color4" value="0.0,0.0,0.0,1.0" />
	<input name="x" type="integer" />
	<input name="y" type="integer" />
	<input name="z" type="integer" />
	<input name="lod" type="integer" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DRead" nodedef="ND_InternalRealityKitTexture3DRead_vector4" function="InternalRealityKitTexture3DRead_vector4"/>

<implementation name="IMP_InternalRealityKitTexture3DRead" nodedef="ND_InternalRealityKitTexture3DRead_color4" function="InternalRealityKitTexture3DRead_half4"/>

<nodegraph name="NG_RealityKitTexture3DRead" nodedef="ND_RealityKitTexture3DRead_vector4">

    <InternalRealityKitTexture3DRead name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="default" type="vector4" interfacename="default"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="z" type="integer" interfacename="z"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DRead>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DRead" nodedef="ND_RealityKitTexture3DRead_color4">

    <InternalRealityKitTexture3DRead name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="default" type="color4" interfacename="default"/>
        <input name="x" type="integer" interfacename="x"/>
        <input name="y" type="integer" interfacename="y"/>
        <input name="z" type="integer" interfacename="z"/>
        <input name="lod" type="integer" interfacename="lod"/>
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DRead>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTextureSampleAutomaticLOD_vector4" node="InternalRealityKitTextureSampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleAutomaticLOD" nodedef="ND_InternalRealityKitTextureSampleAutomaticLOD_vector4" function="InternalRealityKitTextureSampleAutomaticLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTextureSampleExplicitLOD_vector4" node="InternalRealityKitTextureSampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="lod" type="level" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleExplicitLOD" nodedef="ND_InternalRealityKitTextureSampleExplicitLOD_vector4" function="InternalRealityKitTextureSampleExplicitLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTextureSampleGradient_vector4" node="InternalRealityKitTextureSampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient2d" type="gradient2d" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleGradient" nodedef="ND_InternalRealityKitTextureSampleGradient_vector4" function="InternalRealityKitTextureSampleGradient_vector4"/>

<nodedef name="ND_InternalRealityKitTextureSampleAutomaticLOD_color4" node="InternalRealityKitTextureSampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleAutomaticLOD" nodedef="ND_InternalRealityKitTextureSampleAutomaticLOD_color4" function="InternalRealityKitTextureSampleAutomaticLOD_half4"/>

<nodedef name="ND_InternalRealityKitTextureSampleExplicitLOD_color4" node="InternalRealityKitTextureSampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="lod" type="level" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleExplicitLOD" nodedef="ND_InternalRealityKitTextureSampleExplicitLOD_color4" function="InternalRealityKitTextureSampleExplicitLOD_half4"/>

<nodedef name="ND_InternalRealityKitTextureSampleGradient_color4" node="InternalRealityKitTextureSampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="no_flip_v" type="boolean" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient2d" type="gradient2d" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureSampleGradient" nodedef="ND_InternalRealityKitTextureSampleGradient_color4" function="InternalRealityKitTextureSampleGradient_half4"/>

<nodegraph name="NG_RealityKitTexture2D_vector4" nodedef="ND_RealityKitTexture2D_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DLOD_vector4" nodedef="ND_RealityKitTexture2DLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DGradient_vector4" nodedef="ND_RealityKitTexture2DGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2D_color4" nodedef="ND_RealityKitTexture2D_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DLOD_color4" nodedef="ND_RealityKitTexture2DLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DGradient_color4" nodedef="ND_RealityKitTexture2DGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureSampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixel_vector4" nodedef="ND_RealityKitTexture2DPixel_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelLOD_vector4" nodedef="ND_RealityKitTexture2DPixelLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelGradient_vector4" nodedef="ND_RealityKitTexture2DPixelGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture2dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixel_color4" nodedef="ND_RealityKitTexture2DPixel_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelLOD_color4" nodedef="ND_RealityKitTexture2DPixelLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelGradient_color4" nodedef="ND_RealityKitTexture2DPixelGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTextureSampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture2dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2D_color3" nodedef="ND_RealityKitTexture2D_color3">
    <RealityKitTexture2D name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2D>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DLOD_color3" nodedef="ND_RealityKitTexture2DLOD_color3">
    <RealityKitTexture2DLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DGradient_color3" nodedef="ND_RealityKitTexture2DGradient_color3">
    <RealityKitTexture2DGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient_dPdx" type="vector2" interfacename="gradient_dPdx" />
	<input name="gradient_dPdy" type="vector2" interfacename="gradient_dPdy" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixel_color3" nodedef="ND_RealityKitTexture2DPixel_color3">
    <RealityKitTexture2DPixel name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DPixel>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelLOD_color3" nodedef="ND_RealityKitTexture2DPixelLOD_color3">
    <RealityKitTexture2DPixelLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DPixelLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DPixelGradient_color3" nodedef="ND_RealityKitTexture2DPixelGradient_color3">
    <RealityKitTexture2DPixelGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient_dPdx" type="vector2" interfacename="gradient_dPdx" />
	<input name="gradient_dPdy" type="vector2" interfacename="gradient_dPdy" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DPixelGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleAutomaticLOD_vector4" node="InternalRealityKitTexture2DArraySampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleAutomaticLOD" nodedef="ND_InternalRealityKitTexture2DArraySampleAutomaticLOD_vector4" function="InternalRealityKitTexture2DArraySampleAutomaticLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleExplicitLOD_vector4" node="InternalRealityKitTexture2DArraySampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="lod" type="level" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleExplicitLOD" nodedef="ND_InternalRealityKitTexture2DArraySampleExplicitLOD_vector4" function="InternalRealityKitTexture2DArraySampleExplicitLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleGradient_vector4" node="InternalRealityKitTexture2DArraySampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient2d" type="gradient2d" />
	<input name="offset" type="offset" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleGradient" nodedef="ND_InternalRealityKitTexture2DArraySampleGradient_vector4" function="InternalRealityKitTexture2DArraySampleGradient_vector4"/>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleAutomaticLOD_color4" node="InternalRealityKitTexture2DArraySampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleAutomaticLOD" nodedef="ND_InternalRealityKitTexture2DArraySampleAutomaticLOD_color4" function="InternalRealityKitTexture2DArraySampleAutomaticLOD_half4"/>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleExplicitLOD_color4" node="InternalRealityKitTexture2DArraySampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="lod" type="level" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleExplicitLOD" nodedef="ND_InternalRealityKitTexture2DArraySampleExplicitLOD_color4" function="InternalRealityKitTexture2DArraySampleExplicitLOD_half4"/>

<nodedef name="ND_InternalRealityKitTexture2DArraySampleGradient_color4" node="InternalRealityKitTexture2DArraySampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture2darrayhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector2" />
	<input name="index" type="integer" />
	<input name="no_flip_v" type="boolean" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient2d" type="gradient2d" />
	<input name="offset" type="offset" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture2DArraySampleGradient" nodedef="ND_InternalRealityKitTexture2DArraySampleGradient_color4" function="InternalRealityKitTexture2DArraySampleGradient_half4"/>

<nodegraph name="NG_RealityKitTexture2DArray_vector4" nodedef="ND_RealityKitTexture2DArray_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayLOD_vector4" nodedef="ND_RealityKitTexture2DArrayLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayGradient_vector4" nodedef="ND_RealityKitTexture2DArrayGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArray_color4" nodedef="ND_RealityKitTexture2DArray_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayLOD_color4" nodedef="ND_RealityKitTexture2DArrayLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayGradient_color4" nodedef="ND_RealityKitTexture2DArrayGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTexture2DArraySampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" interfacename="no_flip_v" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixel_vector4" nodedef="ND_RealityKitTexture2DArrayPixel_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelLOD_vector4" nodedef="ND_RealityKitTexture2DArrayPixelLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelGradient_vector4" nodedef="ND_RealityKitTexture2DArrayPixelGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture2darrayfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture2DArraySampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixel_color4" nodedef="ND_RealityKitTexture2DArrayPixel_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelLOD_color4" nodedef="ND_RealityKitTexture2DArrayPixelLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelGradient_color4" nodedef="ND_RealityKitTexture2DArrayPixelGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient2d name="gradient2d" type="gradient2d">
    <input name="dPdx" type="vector2" interfacename="gradient_dPdx"/>
<input name="dPdy" type="vector2" interfacename="gradient_dPdy"/>
</INTERNAL_gradient2d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel2D>

    <InternalRealityKitTexture2DArraySampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture2darrayhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector2" interfacename="texcoord" />
		<input name="index" type="integer" interfacename="index" />
		<input name="no_flip_v" type="boolean" value="false" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient2d" type="gradient2d" nodename="gradient2d" />
		<input name="offset" type="offset" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture2DArraySampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture2darrayhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArray_color3" nodedef="ND_RealityKitTexture2DArray_color3">
    <RealityKitTexture2DArray name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArray>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayLOD_color3" nodedef="ND_RealityKitTexture2DArrayLOD_color3">
    <RealityKitTexture2DArrayLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArrayLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayGradient_color3" nodedef="ND_RealityKitTexture2DArrayGradient_color3">
    <RealityKitTexture2DArrayGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="no_flip_v" type="boolean" uniform="true" interfacename="no_flip_v" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient_dPdx" type="vector2" interfacename="gradient_dPdx" />
	<input name="gradient_dPdy" type="vector2" interfacename="gradient_dPdy" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArrayGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixel_color3" nodedef="ND_RealityKitTexture2DArrayPixel_color3">
    <RealityKitTexture2DArrayPixel name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArrayPixel>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelLOD_color3" nodedef="ND_RealityKitTexture2DArrayPixelLOD_color3">
    <RealityKitTexture2DArrayPixelLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArrayPixelLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture2DArrayPixelGradient_color3" nodedef="ND_RealityKitTexture2DArrayPixelGradient_color3">
    <RealityKitTexture2DArrayPixelGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector2" defaultgeomprop="UV0" interfacename="texcoord" />
	<input name="index" type="integer" interfacename="index" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient_dPdx" type="vector2" interfacename="gradient_dPdx" />
	<input name="gradient_dPdy" type="vector2" interfacename="gradient_dPdy" />
	<input name="offset" type="integer2" interfacename="offset" />
    </RealityKitTexture2DArrayPixelGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTexture3DSampleAutomaticLOD_vector4" node="InternalRealityKitTexture3DSampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset3" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleAutomaticLOD" nodedef="ND_InternalRealityKitTexture3DSampleAutomaticLOD_vector4" function="InternalRealityKitTexture3DSampleAutomaticLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTexture3DSampleExplicitLOD_vector4" node="InternalRealityKitTexture3DSampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="lod" type="level" />
	<input name="offset" type="offset3" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleExplicitLOD" nodedef="ND_InternalRealityKitTexture3DSampleExplicitLOD_vector4" function="InternalRealityKitTexture3DSampleExplicitLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTexture3DSampleGradient_vector4" node="InternalRealityKitTexture3DSampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dfloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient3d" type="gradient3d" />
	<input name="offset" type="offset3" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleGradient" nodedef="ND_InternalRealityKitTexture3DSampleGradient_vector4" function="InternalRealityKitTexture3DSampleGradient_vector4"/>

<nodedef name="ND_InternalRealityKitTexture3DSampleAutomaticLOD_color4" node="InternalRealityKitTexture3DSampleAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="offset" type="offset3" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleAutomaticLOD" nodedef="ND_InternalRealityKitTexture3DSampleAutomaticLOD_color4" function="InternalRealityKitTexture3DSampleAutomaticLOD_half4"/>

<nodedef name="ND_InternalRealityKitTexture3DSampleExplicitLOD_color4" node="InternalRealityKitTexture3DSampleExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="lod" type="level" />
	<input name="offset" type="offset3" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleExplicitLOD" nodedef="ND_InternalRealityKitTexture3DSampleExplicitLOD_color4" function="InternalRealityKitTexture3DSampleExplicitLOD_half4"/>

<nodedef name="ND_InternalRealityKitTexture3DSampleGradient_color4" node="InternalRealityKitTexture3DSampleGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texture3dhalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradient3d" type="gradient3d" />
	<input name="offset" type="offset3" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTexture3DSampleGradient" nodedef="ND_InternalRealityKitTexture3DSampleGradient_color4" function="InternalRealityKitTexture3DSampleGradient_half4"/>

<nodegraph name="NG_RealityKitTexture3D_vector4" nodedef="ND_RealityKitTexture3D_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DLOD_vector4" nodedef="ND_RealityKitTexture3DLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DGradient_vector4" nodedef="ND_RealityKitTexture3DGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient3d name="gradient3d" type="gradient3d">
    <input name="dPdx" type="vector3" interfacename="gradient3d_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradient3d_dPdy"/>
</INTERNAL_gradient3d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient3d" type="gradient3d" nodename="gradient3d" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3D_color4" nodedef="ND_RealityKitTexture3D_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DLOD_color4" nodedef="ND_RealityKitTexture3DLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DGradient_color4" nodedef="ND_RealityKitTexture3DGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient3d name="gradient3d" type="gradient3d">
    <input name="dPdx" type="vector3" interfacename="gradient3d_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradient3d_dPdy"/>
</INTERNAL_gradient3d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized3D>

    <InternalRealityKitTexture3DSampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient3d" type="gradient3d" nodename="gradient3d" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixel_vector4" nodedef="ND_RealityKitTexture3DPixel_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelLOD_vector4" nodedef="ND_RealityKitTexture3DPixelLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelGradient_vector4" nodedef="ND_RealityKitTexture3DPixelGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient3d name="gradient3d" type="gradient3d">
    <input name="dPdx" type="vector3" interfacename="gradient3d_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradient3d_dPdy"/>
</INTERNAL_gradient3d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleGradient name="sampleCall" type="vector4">
        <input name="texture" type="texture3dfloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient3d" type="gradient3d" nodename="gradient3d" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="vector4" />
    </InternalRealityKitTexture3DSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture3dfloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixel_color4" nodedef="ND_RealityKitTexture3DPixel_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelLOD_color4" nodedef="ND_RealityKitTexture3DPixelLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelGradient_color4" nodedef="ND_RealityKitTexture3DPixelGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradient3d name="gradient3d" type="gradient3d">
    <input name="dPdx" type="vector3" interfacename="gradient3d_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradient3d_dPdy"/>
</INTERNAL_gradient3d>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerPixel3D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="pixel" />
		<input name="u_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="w_wrap_mode" type="pixel_address" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="filter" type="filter" enum="nearest,linear" interfacename="filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerPixel3D>

    <InternalRealityKitTexture3DSampleGradient name="sampleCall" type="color4">
        <input name="texture" type="texture3dhalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradient3d" type="gradient3d" nodename="gradient3d" />
		<input name="offset" type="offset3" interfacename="offset" />
        <output name="out" type="color4" />
    </InternalRealityKitTexture3DSampleGradient>

    <INTERNAL_GetTexture name="getTexture" type="texture3dhalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3D_color3" nodedef="ND_RealityKitTexture3D_color3">
    <RealityKitTexture3D name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3D>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DLOD_color3" nodedef="ND_RealityKitTexture3DLOD_color3">
    <RealityKitTexture3DLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3DLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DGradient_color3" nodedef="ND_RealityKitTexture3DGradient_color3">
    <RealityKitTexture3DGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="mag_filter" type="string" uniform="true" enum="nearest,linear" interfacename="mag_filter" />
	<input name="min_filter" type="string" uniform="true" enum="nearest,linear" interfacename="min_filter" />
	<input name="mip_filter" type="string" uniform="true" enum="none,nearest,linear" interfacename="mip_filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient3d_dPdx" type="vector3" interfacename="gradient3d_dPdx" />
	<input name="gradient3d_dPdy" type="vector3" interfacename="gradient3d_dPdy" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3DGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixel_color3" nodedef="ND_RealityKitTexture3DPixel_color3">
    <RealityKitTexture3DPixel name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="bias" type="float" interfacename="bias" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3DPixel>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelLOD_color3" nodedef="ND_RealityKitTexture3DPixelLOD_color3">
    <RealityKitTexture3DPixelLOD name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="lod" type="float" interfacename="lod" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3DPixelLOD>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodegraph name="NG_RealityKitTexture3DPixelGradient_color3" nodedef="ND_RealityKitTexture3DPixelGradient_color3">
    <RealityKitTexture3DPixelGradient name="imageNode" type="color4">
    	<input name="file" type="filename" interfacename="file" />
	<input name="u_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
	<input name="v_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
	<input name="w_wrap_mode" type="string" uniform="true" enum="clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="w_wrap_mode" />
	<input name="border_color" type="string" uniform="true" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
	<input name="filter" type="string" uniform="true" enum="nearest,linear" interfacename="filter" />
	<input name="max_anisotropy" type="integer" uniform="true" interfacename="max_anisotropy" />
	<input name="max_lod_clamp" type="float" uniform="true" interfacename="max_lod_clamp" />
	<input name="min_lod_clamp" type="float" uniform="true" interfacename="min_lod_clamp" />
	<input name="default" type="color4" nodename="color3to4" />
	<input name="texcoord" type="vector3" interfacename="texcoord" />
	<input name="dynamic_min_lod_clamp" type="float" interfacename="dynamic_min_lod_clamp" />
	<input name="gradient3d_dPdx" type="vector3" interfacename="gradient3d_dPdx" />
	<input name="gradient3d_dPdy" type="vector3" interfacename="gradient3d_dPdy" />
	<input name="offset" type="integer3" interfacename="offset" />
    </RealityKitTexture3DPixelGradient>

    <convert name="color3to4" type="color4">
        <input name="in" type="color3" interfacename="default"/>
    </convert>

    <swizzle name="swizzle" type="color3">
        <input name="in" type="color4" nodename="imageNode" />
        <input name="channels" type="string" value="rgb" uniform="true" />
    </swizzle>

    <output name="out" type="color3" nodename="swizzle" />
</nodegraph>

<nodedef name="ND_InternalRealityKitTextureCubeAutomaticLOD_vector4" node="InternalRealityKitTextureCubeAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubefloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeAutomaticLOD" nodedef="ND_InternalRealityKitTextureCubeAutomaticLOD_vector4" function="InternalRealityKitTextureCubeAutomaticLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTextureCubeExplicitLOD_vector4" node="InternalRealityKitTextureCubeExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubefloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="lod" type="level" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeExplicitLOD" nodedef="ND_InternalRealityKitTextureCubeExplicitLOD_vector4" function="InternalRealityKitTextureCubeExplicitLOD_vector4"/>

<nodedef name="ND_InternalRealityKitTextureCubeGradient_vector4" node="InternalRealityKitTextureCubeGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubefloat" />
	<input name="sampler" type="sampler" />
	<input name="default" type="vector4" />
	<input name="texcoord" type="vector3" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradientcube" type="gradientcube" />
	<output name="out" type="vector4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeGradient" nodedef="ND_InternalRealityKitTextureCubeGradient_vector4" function="InternalRealityKitTextureCubeGradient_vector4"/>

<nodedef name="ND_InternalRealityKitTextureCubeAutomaticLOD_color4" node="InternalRealityKitTextureCubeAutomaticLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubehalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="bias" type="bias" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeAutomaticLOD" nodedef="ND_InternalRealityKitTextureCubeAutomaticLOD_color4" function="InternalRealityKitTextureCubeAutomaticLOD_half4"/>

<nodedef name="ND_InternalRealityKitTextureCubeExplicitLOD_color4" node="InternalRealityKitTextureCubeExplicitLOD" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubehalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="lod" type="level" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeExplicitLOD" nodedef="ND_InternalRealityKitTextureCubeExplicitLOD_color4" function="InternalRealityKitTextureCubeExplicitLOD_half4"/>

<nodedef name="ND_InternalRealityKitTextureCubeGradient_color4" node="InternalRealityKitTextureCubeGradient" nodegroup="realitykit_internal" target="realitykit">
	<input name="texture" type="texturecubehalf" />
	<input name="sampler" type="sampler" />
	<input name="default" type="color4" />
	<input name="texcoord" type="vector3" />
	<input name="dynamic_min_lod_clamp" type="min_lod_clamp" />
	<input name="gradientcube" type="gradientcube" />
	<output name="out" type="color4" />
</nodedef>

<implementation name="IMP_InternalRealityKitTextureCubeGradient" nodedef="ND_InternalRealityKitTextureCubeGradient_color4" function="InternalRealityKitTextureCubeGradient_half4"/>

<nodegraph name="NG_RealityKitTextureCube_vector4" nodedef="ND_RealityKitTextureCube_vector4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeAutomaticLOD name="sampleCall" type="vector4">
        <input name="texture" type="texturecubefloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureCubeAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texturecubefloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureCubeLOD_vector4" nodedef="ND_RealityKitTextureCubeLOD_vector4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeExplicitLOD name="sampleCall" type="vector4">
        <input name="texture" type="texturecubefloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureCubeExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texturecubefloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureCubeGradient_vector4" nodedef="ND_RealityKitTextureCubeGradient_vector4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradientcube name="gradientcube" type="gradientcube">
    <input name="dPdx" type="vector3" interfacename="gradientcube_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradientcube_dPdy"/>
</INTERNAL_gradientcube>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeGradient name="sampleCall" type="vector4">
        <input name="texture" type="texturecubefloat" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="vector4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradientcube" type="gradientcube" nodename="gradientcube" />
        <output name="out" type="vector4" />
    </InternalRealityKitTextureCubeGradient>

    <INTERNAL_GetTexture name="getTexture" type="texturecubefloat">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="vector4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureCube_color4" nodedef="ND_RealityKitTextureCube_color4">
<INTERNAL_bias name="bias" type="bias">
    <input name="in" type="float" interfacename="bias"/>
</INTERNAL_bias>

<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeAutomaticLOD name="sampleCall" type="color4">
        <input name="texture" type="texturecubehalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="bias" type="bias" nodename="bias" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureCubeAutomaticLOD>

    <INTERNAL_GetTexture name="getTexture" type="texturecubehalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureCubeLOD_color4" nodedef="ND_RealityKitTextureCubeLOD_color4">
<INTERNAL_level name="lod" type="level">
    <input name="in" type="float" interfacename="lod"/>
</INTERNAL_level>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeExplicitLOD name="sampleCall" type="color4">
        <input name="texture" type="texturecubehalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="lod" type="level" nodename="lod" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureCubeExplicitLOD>

    <INTERNAL_GetTexture name="getTexture" type="texturecubehalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>

<nodegraph name="NG_RealityKitTextureCubeGradient_color4" nodedef="ND_RealityKitTextureCubeGradient_color4">
<INTERNAL_min_lod_clamp name="dynamic_min_lod_clamp" type="min_lod_clamp">
    <input name="in" type="float" interfacename="dynamic_min_lod_clamp"/>
</INTERNAL_min_lod_clamp>

<INTERNAL_gradientcube name="gradientcube" type="gradientcube">
    <input name="dPdx" type="vector3" interfacename="gradientcube_dPdx"/>
<input name="dPdy" type="vector3" interfacename="gradientcube_dPdy"/>
</INTERNAL_gradientcube>

<INTERNAL_max_anisotropy name="max_anisotropy" type="max_anisotropy">
    <input name="in" type="integer" interfacename="max_anisotropy"/>
</INTERNAL_max_anisotropy>

<INTERNAL_lod_clamp name="lod_clamp" type="lod_clamp">
    <input name="min" type="float" interfacename="min_lod_clamp"/>
<input name="max" type="float" interfacename="max_lod_clamp"/>
</INTERNAL_lod_clamp>

    <SamplerNormalized2D name="sampler" type="sampler">
    	<input name="coord" type="coord" enum="normalized,pixel" value="normalized" />
		<input name="u_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="u_wrap_mode" />
		<input name="v_wrap_mode" type="address" enum="repeat,mirrored_repeat,clamp_to_edge,clamp_to_zero,clamp_to_border" interfacename="v_wrap_mode" />
		<input name="border_color" type="border_color" enum="transparent_black,opaque_black,opaque_white" interfacename="border_color" />
		<input name="mag_filter" type="mag_filter" enum="nearest,linear" interfacename="mag_filter" />
		<input name="min_filter" type="min_filter" enum="nearest,linear" interfacename="min_filter" />
		<input name="mip_filter" type="mip_filter" enum="none,nearest,linear" interfacename="mip_filter" />
		<input name="max_anisotropy" type="max_anisotropy" nodename="max_anisotropy" />
		<input name="lod_clamp" type="lod_clamp" nodename="lod_clamp" />
    </SamplerNormalized2D>

    <InternalRealityKitTextureCubeGradient name="sampleCall" type="color4">
        <input name="texture" type="texturecubehalf" nodename="getTexture"/>
        <input name="sampler" type="sampler" nodename="sampler"/>
    	<input name="default" type="color4" interfacename="default" />
		<input name="texcoord" type="vector3" interfacename="texcoord" />
		<input name="dynamic_min_lod_clamp" type="min_lod_clamp" nodename="dynamic_min_lod_clamp" />
		<input name="gradientcube" type="gradientcube" nodename="gradientcube" />
        <output name="out" type="color4" />
    </InternalRealityKitTextureCubeGradient>

    <INTERNAL_GetTexture name="getTexture" type="texturecubehalf">
        <input name="file" type="filename" interfacename="file"/>
    </INTERNAL_GetTexture>

    <output name="out" type="color4" nodename="sampleCall" />
</nodegraph>


</materialx>