Newer
Older
Cactus-CleanArchitecture / app / src / main / java / org / ntlab / radishforandroidstudio / framework / RWT / RWTSprites.java
s-iwatani on 17 May 2018 1 KB 設計変更
package org.ntlab.radishforandroidstudio.framework.RWT;

import org.ntlab.radishforandroidstudio.java3d.GraphicsContext3D;

import java.util.ArrayList;

/**
 * スプライト管理クラス
 *
 * @author s.iwatani
 */
public class RWTSprites {
    private ArrayList<RWTDrawable> sprites = new ArrayList<>();

    public RWTSprites() {}

    /**
     * スプライトの追加
     *
     * @author s,iwatani
     * @param sprite 追加したいRWTSprite
     */
    public void addSprite(RWTSprite sprite) {
        sprites.add(sprite);
    }

    /**
     * スプライトの削除
     *
     * @author s.iwatani
     * @param sprite 削除したいRWTSprite
     */
    public void removeSprite(RWTSprite sprite) {
        sprites.remove(sprite);
    }

    /**
     * 登録されたスプライトの描画
     *
     * @param gc3D GraphicsContext3D
     */
    public void draw(GraphicsContext3D gc3D) {
        gc3D.startDrawImage();

        // 描画
        for (RWTDrawable sprite : sprites) {
            sprite.draw(gc3D);
        }

        // 戻し
        gc3D.endDrawImage();
    }
}