Gaming Life

一日24時間、ゲームは10時間

夏休みの目標

 ようやく夏季休暇に入ってある程度落ち着いて考える時間ができたので今年度中にやっちゃいたいことを羅列してみる。3月になったら答え合わせをしたい。

  • ゲーム制作 これは少し具体的な話になってきた。先輩に感謝

  • processingで作品制作  Youtubeに上がってるジェネラティブアートを自分でも作りたい。ただアートよりになるか、シミュレーションになるかは未定。本も何冊か買ったしこれは早いうちにやっちゃいたい。

  • 数学の勉強  ある方の影響で数学の必要性をひしひしと感じている。とりあえず高校数学を簡単に復習してから、ゲーム制作やシミュレーションに役立つような学部レベルの数学を学びたい。

  • javaお勉強  後期にjavaを使った講義があるが実質14回×1コマでシラバスを見ても入門書の前半に書いてあるようなとこまでしかやらないっぽい。基礎の基礎は既に勉強してるので単純なAndroidアプリ作れるくらいにはしときたいなーって願望。しかし上3つが最優先。多分殆どやれない。

  • 積みゲー消化  最低ウィッチャー3、DQ11、Horizon、月箱、バイオ7VR、(マリオサンシャインポケモンUSUM)はやっちゃいたいところ。

  • アニメ300話視聴  今現在dアニメの視聴本数が499話なので800話までは行きたいところ。しかし同じアニメを何回も見るタイプなのでできるか怪しい(アホガール1話は8回はみた)

  • 水瀬いのり1stライブ参戦  今年最大の目標。これ以上言うことはあるまい。

【ネタバレあり】Fate\Grand Order Epic of Remnant アガルタの女感想

 なんだか久々にメンテ延長なしに新規イベントが配信された気がするがまあ何時もの如く配信直後からぶっ続けでプレイし4時くらいに終わらせた。ちゃんとした考察するにはもう一度くらい読み返す必要がありそうだがとりあえずの感想を書いておく。


 



 以下、ネタバレ&駄文&辛口感想につき注意























 今までとは毛色が違い(露骨過ぎる性的な描写、メインストーリーにカルデアのサーヴァントがガッツリ絡む)新鮮なストーリーではあったが、イマイチ期待はずれだった。主な不満点は以下の通り。

  1. 逆リョナ描写多すぎ

 三大勢力全てが逆リョナ万歳帝国で途中から飽きる。それぞれアプローチが違うとはいえこういう猟奇的な描写はあまり得意じゃないので章を通してやられると気が滅入ってしまった。

  1. ダユー筆頭にサーヴァントの末路が雑

 ダユー初戦はまあ生きてるんだろうナーと気にせずにいられたが、竜宮城での戦闘は流石に雑過ぎるんじゃと感じた。今際の際にドレイクが正気を取り戻したとはいえ別に彼女のガワを借りてまでダユーを出す必要性を感じずどうしてこうなったと消化不良感が強い。

  1. ネットスラングが多すぎる

 多すぎて具体的な例が示せないくらいネットスラングが多かった。いくらこういうのがウケる層に向けて作ってるゲームとはいえこうもやられると……

  1. イベントシナリオ並にぐだの選択肢が頭のネジ外れてる

 最大の不満。イベントシナリオなら許せるが、本筋のシナリオで男の娘に反応したり、マシュにセクハラ発言はしないでほしかった(今更過ぎる気もするが)。フォウくんが美しいものをみたからプライミッツマーダーにならずに済んだーって言ってたけど君の近くにいるぐだーず、フェルグスにゲス発言繰り返してまっせ……


 もちろん雑魚mobのグラフィックが相変わらず優れてたり、カルデアにいる王様だって生前は奴隷使ってたじゃん、俺と何もかわんないじゃーんなんて奴隷にすら無駄な人はいなかったというウルクで一ヶ月生活している主人公たちに向かって、奴隷を十把一絡げのモノの如く扱っていたことを棚上げして開き直っていたド外道コロンブスと良い点もあったが今回のシナリオは自分とは合わなかった。

<processing>段々線が太くなる螺旋円

 かなり評判のいいジェネラティブアートの本を最近読んでるんですが(リンク下、アフィは貼ってないよ)、めちゃくちゃ面白くて一章ごとになんか作りたくなる。で、Part2を参考にとりあえず一つ作ってみた。

[普及版]ジェネラティブ・アート―Processingによる実践ガイド

[普及版]ジェネラティブ・アート―Processingによる実践ガイド

作品

f:id:ai_gaminglife:20170621224835j:plain

ソースコード

float startx,starty;
float ribbonwidth;
float turn = 8;
float radius;
float x,y;

void setup(){
  size(900,600,P2D);
  smooth();
  frameRate(2);
  background(0);

  startx = 450;
  starty = 300;

  float lastx = -999;
  float lasty = -999;

  radius = 1.5;
  ribbonwidth = 0.25;
  color col = color(random(255),random(255),random(255));
  fill(col);
  stroke(col);
  for(float ang = -180; ang <= turn*360; ang += 5){
    radius += 1;
    float rad = radians(ang);
    x = startx + (radius * cos(rad)) ;
    y = starty + (radius * sin(rad)) ;
    ribbonwidth += 0.04;
    strokeWeight(ribbonwidth);
    if(lastx > -999){
      line (x,y,lastx,lasty);
    }
    lastx = x;
    lasty = y;
  }
  save("hogehoge.jpg");
}

void draw(){
}

解説

 Chapter4「円を書く間違った方法」に載っているものを少し改変。線の色は毎回ランダム。

反省

  • RGB値を完全にランダムに決めているのでブログアップ用の見栄えのいい色が中々出なかった。鮮やかな色が出やすくなるようにしたい。
  • 本当は新体操のリボンみたいなのを作りたかったけどまだ無理。そのうちリベンジってことで

<processing>ゲームのロード画面でよくみるアレを作ってみた

 OpenProcessingで見かけた作品のソースコードを少し改変して作ってみた。大部分が元の作品に近いのであまり自慢できるようなものでもないが、それでもブログで進捗晒すことで整理したい&モチベを保ちたいので晒すことにする。

作品(Gif)

f:id:ai_gaminglife:20170618190126g:plain

ソースコード

import gifAnimation.*;

GifMaker gifExport;

final int NUM = 24;
color c1 = color(191, 255, 0);
int click = 0;
void setup(){
  size(640,640);
  noStroke();
  smooth();
  frameRate(50);

  gifExport = new GifMaker(this, "export.gif");
  gifExport.setRepeat(0);
  gifExport.setQuality(10);
  gifExport.setDelay(20);
}

void draw(){
  background(0);
  translate(width/2, height/2);
  for(int i = 0; i < NUM; i++){
    float angle = i * 2*PI / NUM;
    float v = pow(abs(sin(angle / 2 + frameCount * 0.03)), 4);
    float r = map(v, 0, 1, 10, 20);
    fill(lerpColor(color(0,0,0), c1, v));
    ellipse((150 + r + click) * cos(angle),(150 + r + click) * sin(angle), r * 2, r * 2);
  }
  if(frameCount <= 50*3){
   gifExport.addFrame();
 } else {
   gifExport.finish();
 }
}

void keyPressed(){
  if(key == 'r'){
    c1 = color(255,50,50);
  }else if(key == 'g'){
    c1 = color(0,255,0);
  }else if (key == 'b'){
    c1 = color(0,50,255);
  }else if(key == 'y'){
    c1 = color(191, 255, 0);
  }else if(key == ENTER){
    click += 10;
  }else if(key == BACKSPACE){
    click = 0;
  }
}

解説らしき何か

 ・Enterをクリック->円拡大、BackSpaceで元に戻す
 ・r,g,b,yをクリック->それぞれ赤、緑、青、黄色に変化する

まとめ

 ファミチキたべたい