
/* _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	FILE	: Clipping.h

+ ------ Explanation of file --------------------------------------------------------------------------

	○×つくろーどっとコムより引用、改変
	http://marupeke296.com/DXG_No54_StencilClipping.html

	使用方法
	beginMask();
	...マスク部分の描画
	endMask();

	beginClip();
	...マスク適応状態での描画
	endClip();

	各draw()内で呼んでその場で生成して使う感じになる

+ _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ */

#ifndef _Clipping_H_
#define _Clipping_H_

enum{
	MASK_TRANS	= 0x00,	// 透過色
	MASK_FILL	= 0x01,	// マスク色
	MASK_NON	= 0xff,	// 無判定色
};

class Clipping
{
	private:
		DWORD	m_zTest;		// Zテストの有無コピー 
		DWORD	m_zFunc;		// Zテスト比較関数コピー

	public:
		void beginMask	(bool isExcept);	// マスク作成開始
		void endMask	(void);			// マスク作成終了
		void beginClip	(void);			// クリッピング描画開始
		void endClip	(void);			// クリッピング描画終了
};

#endif /* _Clipping_H_ */