Create a filter that calculates the specular illumination from a distant light source, interpreting the alpha channel of the input as the height profile of the surface (to approximate normal vectors). @param x The direction to the distance light (X component) @param y The di
(float x, float y, float z, int lightColor, float surfaceScale, float ks, float shininess, @Nullable ImageFilter input, @Nullable Rect crop)
| 971 | * @return filter that applies distant specular lighting |
| 972 | */ |
| 973 | @NotNull @Contract("_, _, _, _, _, _, _, _, _ -> new") |
| 974 | public static ImageFilter makeDistantLitSpecular(float x, float y, float z, int lightColor, float surfaceScale, float ks, float shininess, @Nullable ImageFilter input, @Nullable Rect crop) { |
| 975 | try { |
| 976 | Stats.onNativeCall(); |
| 977 | return new ImageFilter(_nMakeDistantLitSpecular(x, y, z, lightColor, surfaceScale, ks, shininess, Native.getPtr(input), crop)); |
| 978 | } finally { |
| 979 | ReferenceUtil.reachabilityFence(input); |
| 980 | } |
| 981 | } |
| 982 | |
| 983 | @NotNull @Contract("_, _, _, _, _, _, _, _, _ -> new") |
| 984 | public static ImageFilter makeDistantLitSpecular(float x, float y, float z, int lightColor, float surfaceScale, float ks, float shininess, @Nullable ImageFilter input, @Nullable IRect crop) { |
no test coverage detected