/* * Copyright 2015 MovingBlocks * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * This package provides an Asset System - a way of creating, loading and managing assets. An asset is a shared resource that can be resolved by a uri or partial uri. For a * game, some potential assets are sounds, textures, and object definitions. * <p> * The main classes of the asset system are: * </p> * <ul> * <li>AssetType, a manager for a type of Asset</li> * <li>Asset, a fully loaded asset. This should be subclassed for each type of asset</li> * <li>ResourceUrn, the identifier for an asset</li> * <li>AssetData, an implementation independent representation of an asset. This should be subclassed for each type of asset</li> * <li>AssetDataProducer, a provider of AssetData</li> * <li>AssetFactory, that converts an AssetData into full blown Asset</li> * </ul> */ package org.terasology.assets;