コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

std::cout << "C++完全に理解した" << std::endl;

UE4に手を出したはなし

おはようございます、タイトル通りC++を完全に理解した(大嘘)僕です。C++を完全に理解してしまったので本日はコア部分がC++で構成されているといわれるUE4を触っていきたいと思います。件のUE4とは何者なのかといいますと以下のようなやつです。

Unreal Engineはエピックゲームズが自社で開発した『Unreal』、『Unreal Tournament』シリーズ、『Gears of War』シリーズおよび『Infinity Blade』はもちろんの事、同業他社が開発した『レインボーシックス』シリーズ、『レッドスティール』、『バイオショック』および『ミラーズエッジ』など多くのゲームで採用されている。その他にも、NASAの宇宙飛行士訓練やウォルト・ディズニー・カンパニーの映画製作とテーマパークに利用されるなど様々なジャンルで使われ、「最も成功したビデオゲームエンジン」としてギネス世界記録にもなってる。

はい、Unreal Engineのバージョン4のことです。ゲームエンジンのことです。

公式
アンリアル・エンジン 4 とは?



使い方全然わかんね


そういったわけで、なんにも操作がわからない状態ですが触っていきます。インストール方法などについては公式の指示通りに落としてくればなんとかなります。

f:id:andron:20180528092034p:plain
C++を完全に理解してしまったのでこんなのができてしまった。ハロワ的なやつしか作ってない。やったことは左上のメッセージ出すだけです。でもこれは一人の人間にとっては小さな一歩だが、人類にとっては偉大な飛躍だから(意味不明)。

よくわかんないなりにいじってみた結果、とりあえずアクタ作っておけばひとまずなんかできるらしいっすね。
ソースコード
MyFirstClass.cpp

#include "MyFirstClass.h"
#include "Engine.h"

// (デフォルト値を設定) 
AMyFirstClass::AMyFirstClass()
{
 	//  (フレーム毎に Tick() を呼び出すようにこのアクタを設定)
        //  (必要がなければパフォーマンスを向上させるためにオフにすることができます)
	PrimaryActorTick.bCanEverTick = true;
}

// (ゲーム開始時またはスポーン時に呼び出されます)
void AMyFirstClass::BeginPlay()
{
	Super::BeginPlay();
	const int32 AlwaysAddKey = -1;
	GEngine->AddOnScreenDebugMessage(AlwaysAddKey, 50.0f, FColor::Red, L"C++完全に理解した");	
}

// (フレーム毎に呼び出されます)
void AMyFirstClass::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);
}

まったく大したことしてないのに日本語出力が文字化けして小一時間詰みました……。結局文字コードの問題だったから、VSとVSCodeを行き来しながら文字コードUTF-8に対応させるなどという意味わかんない利用をすることでことなきを得た。あと、UE4ググってもほとんどブループリントの話しかでなくて、きつい。というよりもブループリントでやればいいのでは……?まあ、多分今後ブループリントしか使わないと思う。それが触ってみたいがために手を出したところあるからね……。

参考:メッセージ出すやつ
UEngine::AddOnScreenDebugMessage | Unreal Engine



といった感じにUnityと並行してUE4もぼちぼちいじってみようかと思ったのでした。なお、今後C++について突っ込んだことをやっていくかは不明。なんなんだこの記事は……。

生きているだけで褒められたさすぎて自分のサイトをつくりました

褒められたい

はい、おはようございます。生きているだけで褒められたい僕です。本日もブログを更新しましたので褒めてください。ブログを書く……、それだけですごいことなんだなって最近思わざるえません。だからこそ、褒めてください。僕を褒めるのです。


さぁ……。



ということで、ホームページ(死語)つくりました。

またホームページを作ってしまった……。

僕のブログの右にある制作物コーナーがまたにぎわってしまう……。今回はWebnodeを使っての作成です。

Webnode
ホームページを無料で作成 - Webnode

無料でホームページを作ろう!
世界で3000万人ユーザーの仲間になって自分だけのウェブサイトを作りませんか?
Webnodeならプロ仕様のホームページ が簡単に作れます。

件のやつはこんなやつです。プロ仕様かどうかはよくわかりませんがUIは触りやすかったです。



こんなのつくった
inujini.webnode.jp
褒められたいとかいう欲求が増すとまれに更新されるかもしれませんが一応これで完成。

中身についてはいつものように酷いので言うことはないですが、つかえる機能は割とモダンな要素がそろっているような感じがします。ただカスタマイズ性は他よりも気になる感じはある。そんな感じです。

ブルマ……いいよね……

突然のフェチトーク

アレは僕が小学校ぐらいの話になるんですけどね。通学路って言うんですかね。そこから外れたところに、ちょっとした雑木林がありましてね。分かる人はいると思うんですけど、そういったところって稀にいやらしい雑誌とかそういうのが色々捨てられていたりするんですよ。んで、僕のところのそういうやつは下着ものだったんですよね……。



と言う話を考えて、今回サムネ頑張って描いていたけど飽きたので違うブルマの話をします。



Bulmaのはなし

世の人達は Bootstrap を推すのでしょうけど、僕は Bulma を薦めたいなって思うの。だから今日は Bulma 記事を意味もなく書くよ。Bulmaって何かというとCSSフレームワークのことです。

公式
Bulma: a modern CSS framework based on Flexbox

公式によると以下の特徴があるそうですよ。
・100パーセントレスポンシブ(モバイルも対応可能)
・モジュラリティ(必要に応じて使える)
・モダン(FlexBoxで構築したよ)
・フリー(GitHubにあるオープンソース


で、いつものように勢いで書いてしまったので何ができるのかまるでわからないんですけど、とりあえず大まかな機能を拾ってなんかつくってみることにします。

こんなのつくってみました。

けもフレ好きすぎて、またこんなの作ってしまったよ……。埋め込むとレスポンシブ感を実感できない感じになってしまうね。「Edit in JSFiddle」からフルサイズで見ることができるので見たい方は是非そちらのほうをよろしくです。


んで、大したことやってませんが使ってみた感想としては……。

<div class="columns">
  <div class="column">
    1カラム
  </div>
  <div class="column">
    2カラム
  </div>
  <div class="column">
    3カラム
  </div>
  <div class="column">
    4カラム
  </div>
</div>

これでカラムつくれちゃうのは覚えること少なくていいなって思いました。特に columns と column だけで好きにレイアウト組めるのが覚えること少なくていいなって……。これのおかげでHTMLのコンポーネント化が捗るような気がします。そして、flexboxでできているのでレイアウトがちょっとやそっといじっただけで崩れない堅牢さが良い感じです。


おまけ

■ タイトル釣り用に書いたイラスト
f:id:andron:20180714004414p:plain
無料写真でいいやとか思って探したらなかったので描いてしまった。サムネだとそれっぽく見えるけど元サイズだと荒いね。まあ、イラストのほうはもっと頑張ります。ちなみに、体操着のブルマの綴りは「Bloomer」です。Bulma だとドラゴンボールの方になります。そして、件のCSSフレームワークの名前の元ネタがなんのかは僕もよくわかってないです。