개발실/Assimp

CCd.AssimpNet Basic Example

copycd 2024. 1. 12. 16:22
반응형

netget에서 CCd.AssimpNet으로 검색하여 라이브러리를 참조하고 사용함.

 

Import Base

string srcModelPath = "model file full-path";
using (AssimpContext importer = new AssimpContext())
{
    Scene scene = importer.ImportFile(srcModelPath, PostProcessPreset.None);
}

 

 

Export Base

using (AssimpContext importer = new AssimpContext())
{
    Scene scene = importer.ImportFile(srcPath);

    var e = ModelConverter.getModelExportFormatDescription(ModelType.glb2);
    String outputFilePath = "model file full-path";
    importer.ExportFile(scene, outputFilePath, e.FormatId, PostProcessSteps.None);
}

 

 

Export Model With Embedded Texture ( only GLB )

using (AssimpContext importer = new AssimpContext())
{
    var originalModelPath = "ModelFile FullPath";
    Scene scene = importer.ImportFile(originalModelPath, PostProcessSteps.ValidateDataStructure);

    var e = ModelConverter.getModelExportFormatDescription(ModelType.glb2);
    var outputFilePath = Path.Combine("output directory", "NoShading.glb");
    ExportUtil.exportFileWithEmbeddedTex(importer, scene, outputFilePath, e.FormatId, originalModelPath);
}

 

 

Export Only Texture in Scene

ExportUtil.exportTextures(scene, srcModelFilePath, outputModelFilePath );

 

반응형