プログラミングの為の数学と算数 vol.2at TECHプログラミングの為の数学と算数 vol.2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト52:デフォルトの名無しさん 04/09/16 14:47:46 以記より求められる式は log(x)/2 = (x-1)/(x+1) + ((x-1)/(x+1))^3/3 + うんこ + ((x-1)/(x+1))^(2k-1)/(2k-1) + うんこ 53:デフォルトの名無しさん 04/09/16 15:02:52 >>51 ありがとうございます参考にします 54:デフォルトの名無しさん 04/09/17 08:25:19 log( (1+x)/(1-x) ) = 2*tanh^-1(x) 逆双曲線関数を使うって事か? 逆双曲線関数を使うなら、CORDICも使えそうだね 55:デフォルトの名無しさん 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の理由がよく分からないのですが。 長文コピペすみません。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch