fix: add lost GetTexture in BMapSharp for BMMaterial
This commit is contained in:
@@ -269,6 +269,16 @@ namespace BMapSharp.BMapWrapper {
|
|||||||
public float GetSpecularPower() => GetGenericValue<float>(BMap.BMMaterial_GetSpecularPower);
|
public float GetSpecularPower() => GetGenericValue<float>(BMap.BMMaterial_GetSpecularPower);
|
||||||
public void SetSpecularPower(float val) => SetGenericValue<float>(BMap.BMMaterial_SetSpecularPower, val);
|
public void SetSpecularPower(float val) => SetGenericValue<float>(BMap.BMMaterial_SetSpecularPower, val);
|
||||||
|
|
||||||
|
public BMTexture GetTexture() {
|
||||||
|
BMapException.ThrowIfFailed(BMap.BMMaterial_GetTexture(GetPointer(), GetCKID(), out uint out_texid));
|
||||||
|
if (out_texid == Utils.INVALID_CKID) return null;
|
||||||
|
else return new BMTexture(GetPointer(), out_texid);
|
||||||
|
}
|
||||||
|
public void SetTexture(BMTexture tex) {
|
||||||
|
uint texid = (tex is null) ? Utils.INVALID_CKID : tex.GetCKID();
|
||||||
|
BMapException.ThrowIfFailed(BMap.BMMaterial_SetTexture(GetPointer(), GetCKID(), texid));
|
||||||
|
}
|
||||||
|
|
||||||
public VxColor GetTextureBorderColor() {
|
public VxColor GetTextureBorderColor() {
|
||||||
BMapException.ThrowIfFailed(BMap.BMMaterial_GetTextureBorderColor(GetPointer(), GetCKID(), out uint out_val));
|
BMapException.ThrowIfFailed(BMap.BMMaterial_GetTextureBorderColor(GetPointer(), GetCKID(), out uint out_val));
|
||||||
return new VxColor(out_val);
|
return new VxColor(out_val);
|
||||||
|
|||||||
@@ -68,6 +68,10 @@ namespace BMapSharpTest.TestSuits {
|
|||||||
|
|
||||||
Console.WriteLine($"\tSpecular Power: {mtl.GetSpecularPower()}");
|
Console.WriteLine($"\tSpecular Power: {mtl.GetSpecularPower()}");
|
||||||
|
|
||||||
|
var current_texture = mtl.GetTexture();
|
||||||
|
var texture_name = current_texture is null ? "<null>" : current_texture.GetName();
|
||||||
|
Console.WriteLine($"\tTexture: {texture_name}");
|
||||||
|
|
||||||
Console.WriteLine($"\tTexture Border Color: {mtl.GetTextureBorderColor().ToManagedRGBA()}");
|
Console.WriteLine($"\tTexture Border Color: {mtl.GetTextureBorderColor().ToManagedRGBA()}");
|
||||||
|
|
||||||
Console.WriteLine($"\tTexture Blend Mode: {mtl.GetTextureBlendMode()}");
|
Console.WriteLine($"\tTexture Blend Mode: {mtl.GetTextureBlendMode()}");
|
||||||
|
|||||||
Reference in New Issue
Block a user