表示するサンプルコードの言語を指定できます。

チップ2D (Chip2D)

概要

主にマップオブジェクト2Dクラス等で使用する、チップを定義したものです。 描画するテクスチャやそれに適用するオプションが設定可能です。

テクスチャについては、テクスチャの項を御覧ください。

主なメソッド

なし

主なプロパティ

名称 説明
Texture 描画するテクスチャ
TextureFilterType テクスチャ描画の際に適用されるフィルタの種類
AlphaBlendMode テクスチャ描画の際に適用されるアルファブレンドの種類
Color テクスチャ描画の際の合成色
TurnLR テクスチャ描画の左右反転フラグ
TurnUL テクスチャ描画の上下反転フラグ
Src テクスチャ上の描画する切り出し範囲
CenterPosition テクスチャに適用する変換(拡大、回転、移動)の基準位置(マップオブジェクトから見た相対座標にて設定)
Position このチップの属するマップオブジェクト2Dに対する相対的な位置
Angle このチップの属するマップオブジェクト2Dに対する相対的な回転角度
Scale このチップの属するマップオブジェクト2Dに対する相対的な拡大率

使用方法

Chip2DはMapObject2Dと必ず組み合わして使用します。 そのため、MapObject2Dクラスのサンプルを提示します。

SS

C++


#include <Base.h>

/**
@brief  マップを表示するサンプル。
*/
int main()
{
    // Altseedを初期化する
    asd::Engine::Initialize(u"MapObject2D_Basic", 640, 480, asd::EngineOption());

    {
        //マップオブジェクトを生成する。
        auto mapObject = std::make_shared<asd::MapObject2D>();

        auto texture = asd::Engine::GetGraphics()->CreateTexture2D(u"Data/Texture/Chip1.png");

        //マップオブジェクトに16*12=184個のチップを登録する。
        for (int i = 0; i < 16; ++i)
        {
            for (int j = 0; j < 12; ++j)
            {
                //チップを生成する。
                auto chip = std::make_shared<asd::Chip2D>();

                //チップにテクスチャを設定する。
                chip->SetTexture(texture);

                //チップの描画先を指定する。
                chip->SetPosition(asd::Vector2DF(i * 40, j * 40));

                //マップオブジェクトにチップを追加する。
                mapObject->AddChip(chip);
            }
        }

        // マップオブジェクトのインスタンスをエンジンへ追加する。
        asd::Engine::AddObject2D(mapObject);
    }

    // Altseedのウインドウが閉じられていないか確認する。
    while (asd::Engine::DoEvents())
    {
        // Altseedを更新する。
        asd::Engine::Update();
    }

    // Altseedを終了する。
    asd::Engine::Terminate();
}

C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/// <summary>
/// マップを表示するサンプル。
/// </summary>
class MapObject2D_Basic
{
    public string Description
    {
        get { return "マップチップを並べて描画するサンプルです。"; }
    }

    public string Title
    {
        get { return "マップチップの描画"; }
    }

    public string ClassName
    {
        get { return "MapObject2D_Basic"; }
    }

    [System.STAThread]
    static void Main(string[] args)
    {
        // Altseedを初期化する。
        asd.Engine.Initialize("MapObject2D_Basic", 640, 480, new asd.EngineOption());

        {
            //マップオブジェクトを生成する。
            var mapObject = new asd.MapObject2D();

            var texture = asd.Engine.Graphics.CreateTexture2D("Data/Texture/Chip1.png");

            //マップオブジェクトに16*12=184個のチップを登録する。
            for (int i = 0; i < 16; ++i)
            {
                for (int j = 0; j < 12; ++j)
                {
                    //チップを生成する。
                    var chip = new asd.Chip2D();

                    //チップにテクスチャを設定する。
                    chip.Texture = texture;

                    //チップの描画先を指定する。
                    chip.Position = new asd.Vector2DF(i * 40, j * 40);

                    //マップオブジェクトにチップを追加する。
                    mapObject.AddChip(chip);
                }
            }

            //レイヤーにマップオブジェクトを追加する。
            asd.Engine.AddObject2D(mapObject);
        }

        // Altseedのウインドウが閉じられていないか確認する。
        while (asd.Engine.DoEvents())
        {
            // Altseedを更新する。
            asd.Engine.Update();
        }

        // Altseedの終了処理をする。
        asd.Engine.Terminate();
    }
}

Java

/**
 * マップを表示するサンプル。
*/
class MapObject2D_Basic 
{
    public java.lang.String getDescription() {
        return "マップチップを並べて描画するサンプルです。";
    }
    public java.lang.String getTitle() {
        return "マップチップの描画";
    }
    public java.lang.String getClassName() {
        return "MapObject2D_Basic";
    }
    public static void main(String args[])
    {
        // Altseedを初期化する。
        asd.Engine.Initialize("MapObject2D_Basic", 640, 480, new asd.EngineOption());

        // マップオブジェクトを生成する。
        asd.MapObject2D mapObject = new asd.MapObject2D();

        asd.Texture2D texture = asd.Engine.getGraphics().CreateTexture2D("Data/Texture/Chip1.png");

        // マップオブジェクトに16*12=184個のチップを登録する。
        for(int i = 0; (i < 16); ++i)
        {
            for(int j = 0; (j < 12); ++j)
            {
                // チップを生成する。
                asd.Chip2D chip = new asd.Chip2D();

                // チップにテクスチャを設定する。
                chip.setTexture(texture);

                // チップの描画先を指定する。
                chip.setPosition(new asd.Vector2DF((i * 40), (j * 40)));

                // マップオブジェクトにチップを追加する。
                mapObject.AddChip(chip);
            }
        }

        // レイヤーにマップオブジェクトを追加する。
        asd.Engine.AddObject2D(mapObject);

        // Altseedのウインドウが閉じられていないか確認する。
        while(asd.Engine.DoEvents())
        {
            // Altseedを更新する。
            asd.Engine.Update();
        }


        // Altseedの終了処理をする。
        asd.Engine.Terminate();
    }
}