spIntro.htm 4.53 KB
<HTML>

<HEAD>

<TITLE>HTML 文書</TITLE>

<META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.0j">
</HEAD>

<BODY>

<P>
<B><FONT FACE="Arial">spIntro(3P) <BR>
</FONT></B>
<P>
<B>関数名</B>
<P>
sp, spIntro
<P>
→ スプライト操作関数の紹介  <BR>

<P>
<B>構文<BR>
</B>
<P>
#include &lt;sp.h&gt; #include &lt;sp.h&gt; <BR>

<P>
void spInit( Gfx *glistp );
<P>
void spFinish( Gfx *glistp );
<P>
void spMove( Sprite *sp, s32 xpos, s32 ypos );
<P>
void spScale( Sprite *sp, f32 xscale, f32 yscale
);
<P>
void spFlip( Sprite *sp, u32 fliph, u32 flipv );
<P>
void spSetZ( Sprite *sp, s32 z );
<P>
void spColor( Sprite *sp, u8 red, u8 green, u8 blue,
u8 alpha );
<P>
void spSetAttribute( Sprite *sp, u32 attributes );
<P>
void spClearAttribute( Sprite *sp, u32 attributes
);
<P>
void spScissor( u32 xmin, u32 xmax, u32 ymin, u32
ymax );
<P>
Gfx *spDraw( Sprite *sp );  <BR>

<P>
<B>説明<BR>
</B>
<P>
sp.h は、データ構造体のタイプ定義、シンボル属性の名称、関数の型を含みます。スプライトライブラリによって使用されるデータ構造体はN64プログラミングマニュアルのスプライトの章で詳細が記述されています。属性はリストアップされ、他のマンページである<a href="../sp/spSetAttribute.htm">spSetAttribute</a>
<a href="../sp/spSetAttribute.htm">spClearAttribute</a>に適切な記述がされております。 <BR>

<P>
<a href="../sp/spInit.htm">spInit</a> はスプライトの描画の先頭でコールされるルーチンです。RCPをスプライトのレンダリングに適したモードに構成するためには、いくつかのGBIディスプレイ・リスト・コマンドを実行する必要があります。このルーチンはユーザが指定したディスプレイリスト
glistp に,RCPのデフォルトのテクスチャーモードを構成するために必要なコマンドを追加します。
<BR>

<P>
<a href="../sp/spFinish.htm">spFinish</a> はスプライトの描画の最後にコールされるルーチンです。RCPに未処理状態の描画操作を全て終了させ、RCPを通常の状態にリセットするためには、幾つかのGBIディスプレイ・リスト・コマンドを実行する必要があります。このルーチンは,ユーザが指定したディスプレイリスト
glistp に,RCPの状態をリセットするために、必要なコマンドを追加します。また、このルーチンは,最後に<a href="../gsp/gSPEndDisplayList.htm">gSPEndDisplayList()</a>を自動的に付加します。
<BR>

<P>
<a href="../sp/spMove.htm">spMove</a>は、スプライトの左上隅のスクリーン上での位置を設定するルーチンです。
<BR>

<P>
<a href="../sp/spScale.htm">spScale</a> はスプライトのサイズを決定するためのルーチンです。イメージを小さくしたいときは1.0未満の値を,イメージ拡大したいときは1.0以上の値を指定して下さい。
<BR>

<P>
<a href="../sp/spFlip.htm">spFlip</a>はスプライトの向きを制御します。(現在サポートされていません。)
<BR>

<P>
<a href="../sp/spSetZ.htm">spSetZ</a> はスプライトの Zバッファの深度を設定するルーチンです。
<P>
このルーチンをコールすると、前もって描画されていた、Z値の浅いスプライトによって、新しいスプライトがおおい隠されてしまうことがあります。(現在サポートされていません)
<BR>

<P>
<a href="../sp/spColor.htm">spColor</a> はスプライトの色を設定するルーチンです。
<P>
スプライトのカラーは,描画方法に応じて PRIMITIVE_COLOR あるいは
FILL_COLOR のどちらかにすることができます。<BR>

<P>
<a href="../sp/spSetAttribute.htm ">spSetAttribute</a> はスプライトにユーザが指定したアートリビュートを設定することが出来ます。
<P>
多くのアートリビュートをドット単位に OR演算(論理和)した値を指定することが出来ます。
<BR>

<P>
<a href="../sp/spSetAttribute.htm ">spClearAttribute</a>はスプライトからユーザが指定したアートリビュートを解除するルーチンです。attrフィールドには,多くのアートリビュートをビット単位にOR演算(論理和)した値を指定することができます。
<BR>

<P>
<a href="../sp/spScissor.htm">spScissor</a> はスプライトを描画する領域を設定する関数です。デフォルト値は、xmin=0,xmax=319,ymin=0,ymax=239です。描かれる領域の境界を示します。
<P>
この領域から完全にはずれるスプライトのタイルは、出力ディスプレイリストに加えられません。バンダリを交差するタイルは適切にクリップされます。
<BR>

<P>
<a href="../sp/spDraw.htm">spDraw</a>は、sp-&gt;next_dl から始まるディスプレイリストを構築するコマンドです。出来上がったディスプレイリストを呼び出すと,ユーザが指定した方法で,スプライトがフレームバッファに書き込まれます。このディスプレイリストは、常に
<a href="../gsp/gSPEndDisplayList.htm">gSPEndDispalyList()</a> というエントリ で終わります。リストの終わりに達すると
sp-&gt;next_dlエントリの値はすぐ次のエントリを指すように更新されます。
<P>
返り値として,完成したディスプレイリストの開始点を指すポインタが戻ります。
<BR>

<P>
<B>参照<BR>
</B>
<P>
<A NAME="_Toc359072551"></A><a href="../tool/mksprite.htm">mksprite ( 1P )</a><BR>

</BODY>

</HTML>