public AssetCreator(AssetDataLoader assetDataLoader, ILogger logger) { _loadedAssets = new Dictionary <string, Asset>(); _assetDataLoader = assetDataLoader; _logger = logger; }
public void LoadAssets(AssetDataLoader assetDataLoader) { var shaderFilenameWithoutExtension = ShaderFilename.Split('.').FirstOrDefault(); var compiledShadersExist = new string[] { $"{shaderFilenameWithoutExtension}.vs.spirv", $"{shaderFilenameWithoutExtension}.fs.spirv" }.Aggregate(true, (shadersExist, filename) => shadersExist && assetDataLoader.Exists(AssetType.Shader, filename) ); if (!_isWindows && compiledShadersExist) { // TODO: Wait for https://github.com/mellinoe/veldrid-spirv/pull/2 and remove this? Or keep em for mobile? _vertexShaderSource = ShaderImporter.Instance.Import(assetDataLoader.Load( AssetType.Shader, $"{shaderFilenameWithoutExtension}.vs.spirv" )); _fragmentShaderSource = ShaderImporter.Instance.Import(assetDataLoader.Load( AssetType.Shader, $"{shaderFilenameWithoutExtension}.fs.spirv" )); } else if (assetDataLoader.Exists(AssetType.Shader, ShaderFilename)) { var shaderSource = ShaderImporter.Instance.Import( assetDataLoader.Load(AssetType.Shader, ShaderFilename) ); _vertexShaderSource = _fragmentShaderSource = shaderSource; } else { throw new FileNotFoundException($"Shader not found: {ShaderFilename}"); } }
protected Game() { World = new World(); LimitFrameRate = true; DesiredFrameLengthSeconds = 1.0 / 60.0; _assetDataLoader = new AssetDataLoader(); }
protected Game() { World = new World(); LimitFrameRate = true; DesiredFrameLengthSeconds = 1.0 / 60.0; _assetDataLoader = new AssetDataLoader(Assembly.GetCallingAssembly(), AssetDirectoryPaths); }
/// <summary> /// Creates an instance of Asset Manager. /// </summary> /// <param name="savedAssetsFolderPath">Full path to the folder, in which state will be saved and loaded from.</param> /// <param name="logger">Logger.</param> public AssetManager(string savedAssetsFolderPath, ILogger logger) { _savedAssetsFolder = savedAssetsFolderPath; _logger = logger; _thumbnailManager = new ThumbnailManager(logger); _assetDataLoader = new AssetDataLoader(_thumbnailManager, logger); _assetCreator = new AssetCreator(_assetDataLoader, logger); _assetGroupSaver = new AssetGroupSaver(_savedAssetsFolder, logger); _assetGroupLoader = new AssetGroupLoader(_assetDataLoader, logger); }
public ComponentAssetLoader(World world, AssetDataLoader assetDataLoader) : base(world) { _assetDataLoader = assetDataLoader; }
public AssetGroupLoader(AssetDataLoader assetDataLoader, ILogger logger) { _assetDataLoader = assetDataLoader; _logger = logger; }