ひろひろの生活日記(LIFE Of HIROHIRO)

パソコン講習とソフト開発をしています。自作小説も掲載しています。ネット情報発信基地(上野博隆)Hirotaka Ueno

腕に影をつけてみました。

2021年12月25日 16時26分56秒 | ゲーム開発(Game development)


wcol = "#f5deb3";


        s1col = parseInt(wcol.substr(1,2),16);
        s2col = parseInt(wcol.substr(3,2),16);
        s3col = parseInt(wcol.substr(5,2),16);

        for(i=5;i > 0; i--){

          so1col = s1col - i*10;
          so2col = s2col - i*10;
          so3col = s3col - i*10;
          wkcolor = "rgb(" + so1col + "," + so2col + "," + so3col + ")";


          sax = 5 - i; say = 0;
          ctx.beginPath();
          ctx.lineWidth = 1*mgf;
          ctx.moveTo(sx*mgf+dfsx+sax,sy*mgf+dfsy+say);
          ctx.lineTo(x1*mgf+dfsx+sax,y1*mgf+dfsy-say);
//全て座標を指定(腕下・影)

          ctx.strokeStyle = wkcolor;
          ctx.stroke();
        }

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

改造人間。

2021年12月25日 11時22分44秒 | ゲーム開発(Game development)

 

アクテイス? 「不思議なハートの力」の剣道大会をゲームで作れたらいいなぁ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

腕の動作を描画してみました。

2021年12月25日 09時14分04秒 | ゲーム開発(Game development)

     

腕を30度動かしてみました。

    dr = 30;
        yp = Math.sin(dr*(Math.PI/180));
        xp = Math.cos(dr*(Math.PI/180));
        yp1 = Math.sin((dr+180)*(Math.PI/180));
        xp1 = Math.cos((dr+180)*(Math.PI/180));

(35,45)は、腕の付け根の中心。6は、半径。  

      sy = (6*yp1+45);
        sx = (6*xp1+35);
        sy1 = (6*yp+45);
        sx1 = (6*xp+35);

6度を腕を細める。
        y1 = 25*Math.sin((dr+90-6)*(Math.PI/180))+sy;
        x1 = 25*Math.cos((dr+90-6)*(Math.PI/180))+sx;
        y2 = 25*Math.sin((dr+90+6)*(Math.PI/180))+sy1;
        x2 = 25*Math.cos((dr+90+6)*(Math.PI/180))+sx1;

        wkcolor = 1;
        ctx.beginPath();
//        ctx.moveTo(29*mgf+dfsx,45*mgf+dfsy);
        ctx.moveTo(sx*mgf+dfsx,sy*mgf+dfsy);
        ctx.lineTo(sx1*mgf+dfsx,sy1*mgf+dfsy);
        ctx.lineTo(x2*mgf+dfsx,y2*mgf+dfsy);
        ctx.lineTo(x1*mgf+dfsx,y1*mgf+dfsy);

//        ctx.lineTo(38*mgf+dfsx,70*mgf+dfsy);
//        ctx.lineTo(32*mgf+dfsx,70*mgf+dfsy);
//全て座標を指定(腕上・右)多角形

        ctx.closePath();
        ctx.fillStyle = bordcolor[wkcolor];
        ctx.fill();

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする