public static FDatasmithFacadeTexture CreateSimpleTextureElement(string InTextureFilePath) { global::System.IntPtr cPtr = DatasmithFacadeCSharpPINVOKE.FDatasmithFacadeMaterialsUtils_CreateSimpleTextureElement__SWIG_1(InTextureFilePath); FDatasmithFacadeTexture ret = (cPtr == global::System.IntPtr.Zero) ? null : new FDatasmithFacadeTexture(cPtr, false); return(ret); }
public static FDatasmithFacadeTexture ParseTexture(RhinoTextureInfo TextureInfo) { Texture RhinoTexture = TextureInfo.RhinoTexture; if (!TextureInfo.IsSupported()) { return(null); } FDatasmithFacadeTexture TextureElement = new FDatasmithFacadeTexture(TextureInfo.Name); TextureElement.SetLabel(TextureInfo.Label); TextureElement.SetFile(TextureInfo.FilePath); TextureElement.SetTextureFilter(FDatasmithFacadeTexture.ETextureFilter.Default); TextureElement.SetRGBCurve(1); TextureElement.SetTextureAddressX(RhinoTexture.WrapU == TextureUvwWrapping.Clamp ? FDatasmithFacadeTexture.ETextureAddress.Clamp : FDatasmithFacadeTexture.ETextureAddress.Wrap); TextureElement.SetTextureAddressY(RhinoTexture.WrapV == TextureUvwWrapping.Clamp ? FDatasmithFacadeTexture.ETextureAddress.Clamp : FDatasmithFacadeTexture.ETextureAddress.Wrap); FDatasmithFacadeTexture.ETextureMode TextureMode = FDatasmithFacadeTexture.ETextureMode.Diffuse; if (RhinoTexture.TextureType == TextureType.Bump) { TextureMode = FDatasmithFacadeTexture.ETextureMode.Bump; } TextureElement.SetTextureMode(TextureMode); return(TextureElement); }
public static void ExportMaterials(FDatasmithFacadeScene DatasmithScene, DatasmithRhinoSceneParser SceneParser) { int TextureAndMaterialCount = SceneParser.TextureHashToTextureInfo.Count + SceneParser.MaterialHashToMaterialInfo.Count; int TextureAndMaterialProgress = 0; foreach (RhinoTextureInfo CurrentTextureInfo in SceneParser.TextureHashToTextureInfo.Values) { FDatasmithRhinoProgressManager.Instance.UpdateCurrentTaskProgress((float)(++TextureAndMaterialProgress) / TextureAndMaterialCount); FDatasmithFacadeTexture TextureElement = ParseTexture(CurrentTextureInfo); if (TextureElement != null) { DatasmithScene.AddTexture(TextureElement); } } foreach (RhinoMaterialInfo CurrentMaterialInfo in SceneParser.MaterialHashToMaterialInfo.Values) { FDatasmithRhinoProgressManager.Instance.UpdateCurrentTaskProgress((float)(++TextureAndMaterialProgress) / TextureAndMaterialCount); FDatasmithFacadeUEPbrMaterial DSMaterial = new FDatasmithFacadeUEPbrMaterial(CurrentMaterialInfo.Name); DSMaterial.SetLabel(CurrentMaterialInfo.Label); ParseMaterial(DSMaterial, CurrentMaterialInfo.RhinoMaterial, SceneParser); DatasmithScene.AddMaterial(DSMaterial); } }
public FDatasmithFacadeTexture GetTexture(int TextureIndex) { global::System.IntPtr cPtr = DatasmithFacadeCSharpPINVOKE.FDatasmithFacadeScene_GetTexture(swigCPtr, TextureIndex); FDatasmithFacadeTexture ret = (cPtr == global::System.IntPtr.Zero) ? null : new FDatasmithFacadeTexture(cPtr, false); return(ret); }
public void AddTexture(string InPropertyName, FDatasmithFacadeTexture InTexture) { DatasmithFacadeCSharpPINVOKE.FDatasmithFacadeMasterMaterial_AddTexture(swigCPtr, InPropertyName, FDatasmithFacadeTexture.getCPtr(InTexture)); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(FDatasmithFacadeTexture obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
public void RemoveTexture(FDatasmithFacadeTexture InTexturePtr) { DatasmithFacadeCSharpPINVOKE.FDatasmithFacadeScene_RemoveTexture(swigCPtr, FDatasmithFacadeTexture.getCPtr(InTexturePtr)); }