コード例 #1
0
        /// <summary>
        /// Create native instance given preset name.
        /// </summary>
        /// <param name="presetName">Name of the material located in the TerrainMaterials directory.</param>
        /// <returns>Terrain material instance, valid if string.IsNullOrEmpty( instance.getLastError() ).</returns>
        public static agxTerrain.TerrainMaterial CreateNative(string presetName)
        {
            var terrainMaterial = new agxTerrain.TerrainMaterial();

            if (!agxTerrain.TerrainMaterialLibrary.loadMaterialProfile(presetName,
                                                                       terrainMaterial,
                                                                       DefaultTerrainMaterialsPath))
            {
                var errorMessage = string.Empty;
                if (Array.IndexOf(GetAvailablePresets(), presetName) < 0)
                {
                    errorMessage = $"Unable to find material name {presetName} in the library.";
                }
                else
                {
                    errorMessage = terrainMaterial.getLastError();
                }
                Debug.LogWarning($"Unable to load preset {presetName}: {errorMessage}");
            }
            return(terrainMaterial);
        }
コード例 #2
0
 protected override bool Initialize()
 {
     Native = new agxTerrain.TerrainMaterial(name);
     return(true);
 }