そろそろ再開

なんかかなり放置してたけど最近やっと再開したので投稿。
時間もあるので(いや、そんな事やってる場合じゃないけど)ちょくちょくやってみようかと。


とりあえず、コア部分だけ。

template<
    unsigned int D,
    typename value_t = float
>
struct vec{
    
    typedef value_t value_t;
    enum{ dimension = D };
    
    value_t    value[ dimension ];
    
    vec(){}
    vec(const vec& rhs){
        (*this) = rhs;
    }
    const vec& operator =(const vec& rhs){
        memset(value, rhs.value, sizeof(value_t) * dimension);
        return *this;
    }
};



前書いたよりもかなり削りました。
コレを中心としてどんどん処理を付け足していきます!


あとコンセプトはこんな感じ。

visitor を用いた拡張性、目指すところはpstadeライブラリ
他のベクトルクラス(DirectXPhysX等)との連携
式テンプレートを用いた高速性

まぁきっかけ自体はあまりにもベクトルクラスの種類が多すぎるので、
自由に使いまわせるようにするって言うのが根本にあったりします。


つーことでしばらくはこんな感じでいくのかな?
p_stade ライブラリみたいに素敵に拡張できるような感じにしたいです。