- 55 名前:デフォルトの名無しさん mailto:sage [04/09/19 02:25:00]
- floatangle_r = (PI / (float)ring);
floatangle_s = (2.0f * PI / (float)segment); // リンググループを生成する for(DWORD i=0; i<ring; i++){ floatr0 = sinf((float)(i + 0) * angle_r); floatr1 = sinf((float)(i + 1) * angle_r); floaty0 = cosf((float)(i + 0) * angle_r); floaty1 = cosf((float)(i + 1) * angle_r); // 現在のリングについてセグメントグループを生成する for(DWORD j=0; j<segment+1; j++){ floatx0 = sinf(j * angle_s); floatz0 = cosf(j * angle_s); floatx1 = sinf(j * angle_s); floatz1 = cosf(j * angle_s); // 頂点データを入力する vert->vPos = D3DXVECTOR3(r0 * x0, y0, r0 * z0) * radius; vert->vNormal = D3DXVECTOR3(x0, y0, z0); vert->fU = -((float)j) / (float)segment; vert->fV = (float)(i + 0) / (float)ring; vert++; vert->vPos = D3DXVECTOR3(r1 * x1, y1, r1 * z1) * radius; vert->vNormal = D3DXVECTOR3(x1, y1, z1); vert->fU = -((float)j) / (float)segment; vert->fV = (float)(i + 1) / (float)ring; vert++; } } 頂点シェーダで球を作るものですが、 rがsinでyがcosの理由がよく分からないのですが。 長文コピペすみません。
|

|