Exemplo n.º 1
0
 internal static extern bool ShaderVariation_HasTextureUnit(IntPtr handle, TextureUnit unit);
Exemplo n.º 2
0
 /// <summary>
 /// Return whether uses a texture unit (only for pixel shaders.) Not applicable on OpenGL, where this information is contained in ShaderProgram instead.
 /// </summary>
 public bool HasTextureUnit(TextureUnit unit)
 {
     Runtime.ValidateRefCounted(this);
     return(ShaderVariation_HasTextureUnit(handle, unit));
 }
Exemplo n.º 3
0
 internal static extern IntPtr Material_GetTextureUnitName(TextureUnit unit);
Exemplo n.º 4
0
 /// <summary>
 /// Return name for texture unit.
 /// </summary>
 public static string GetTextureUnitName(TextureUnit unit)
 {
     Runtime.Validate(typeof(Material));
     return(Marshal.PtrToStringAnsi(Material_GetTextureUnitName(unit)));
 }
Exemplo n.º 5
0
 /// <summary>
 /// Return texture by unit.
 /// </summary>
 public Texture GetTexture(TextureUnit unit)
 {
     Runtime.ValidateRefCounted(this);
     return(Runtime.LookupObject <Texture> (Material_GetTexture(handle, unit)));
 }
Exemplo n.º 6
0
 internal static extern IntPtr Material_GetTexture(IntPtr handle, TextureUnit unit);
Exemplo n.º 7
0
 /// <summary>
 /// Set texture.
 /// </summary>
 public void SetTexture(TextureUnit unit, Texture texture)
 {
     Runtime.ValidateRefCounted(this);
     Material_SetTexture(handle, unit, (object)texture == null ? IntPtr.Zero : texture.Handle);
 }
Exemplo n.º 8
0
 internal static extern void Material_SetTexture(IntPtr handle, TextureUnit unit, IntPtr texture);
Exemplo n.º 9
0
        public void SetTextureName(TextureUnit unit, string name)
        {
            UrhoString nameStr = new UrhoString(name);

            switch (unit)
            {
            case TextureUnit.Diffuse:
                TextureName0 = nameStr;
                break;

            case TextureUnit.Normal:
                TextureName1 = nameStr;
                break;

            case TextureUnit.Specular:
                TextureName2 = nameStr;
                break;

            case TextureUnit.Emissive:
                TextureName3 = nameStr;
                break;

            case TextureUnit.Environment:
                TextureName4 = nameStr;
                break;

            case TextureUnit.Volumemap:
                TextureName5 = nameStr;
                break;

            case TextureUnit.Custom1:
                TextureName6 = nameStr;
                break;

            case TextureUnit.Custom2:
                TextureName7 = nameStr;
                break;

#if !IOS && !ANDROID
            case TextureUnit.Lightramp:
                TextureName8 = nameStr;
                break;

            case TextureUnit.Lightshape:
                TextureName9 = nameStr;
                break;

            case TextureUnit.Shadowmap:
                TextureName10 = nameStr;
                break;

            case TextureUnit.Faceselect:
                TextureName11 = nameStr;
                break;

            case TextureUnit.Indirection:
                TextureName12 = nameStr;
                break;

            case TextureUnit.Depthbuffer:
                TextureName13 = nameStr;
                break;

            case TextureUnit.Lightbuffer:
                TextureName14 = nameStr;
                break;

            case TextureUnit.Zone:
                TextureName15 = nameStr;
                break;
#endif

            default:
                throw new InvalidOperationException("Invalid texture unit");
            }
        }