simplestarの技術ブログ

目的を書いて、思想と試行、結果と考察、そして具体的な手段を記録します。

Unity:高画質スクリーンショット

ゲーム画面を高画質で記録したい次のスクリプトをシーンに追加して、InputAction で KeyBoard > PrintScreen を指定したらできました。PrintScreenshot.cs using UnityEngine; using UnityEngine.Experimental.Input; public class PrintScreenshot : MonoBe…

Unity:ゲームの土台プロジェクト

前書き Unity ゲームエンジンそのものが土台といえば土台かもしれませんが、Unity でのゲーム作りの土台となると おおよそ形は決まってくるもので、ゲームの面白さのアイディアなどはその土台の上にのせるだけよく上司から勧められるゲームジャムのイベント…

Unity:InputSystemのInputActionsによるカメラ操作

ゲームパッドの左スティックでカメラの移動 右スティックでカメラのパン・チルト調整を行うように実装してみました。次のクラスを Camera にアタッチすると機能します。TPSCameraBehaviour.cs using UnityEngine; using UnityEngine.Experimental.Input; [Re…

Unity:uGUIボタンとゲームロジックの縫い合わせ方法

前書き ユーザーによる画面入力とゲームのロジックが接続される箇所を探すと、ボタンが大部分を占めます。 ボタンを押した時にどのプログラムが起動するかを UI オブジェクトから漏れなく、間違いなく辿れなければなりません。 (※個人的な意見です)が、そ…

Unity:InputSystemのInputActionを使ってみた

前書き まだ半年早いですが、これから作るゲームは新しい InputSystem で作っていきたいと思います。 ドキュメント読んで動作確認までできたので実装コードを記録しておきます。以下、自問自答した内容です。 Input System の InputAction でキー押下イベン…

Unity:動的NavMeshの確認

ゲームの3大AI(人工知能)の一つはナビゲーションAI ゲームAIを大きく分類すると次の三つがあることに気づけます キャラクターAI キャラの振る舞いを決定 ナビゲーションAI 目的地への経路を決定 メタAI ゲームの進行を決定 今回強く関係しているのはナビゲー…

Unity:改造方法の確認

前書き ゲーム開発者会議などで、ゲームユーザーの100人に一人はゲームを改造して不正を行っていることが明らかになっています。 Unityを利用して企業や個人でゲームをリリースしていますが、それらのゲームが容易に改造されなように対策されていることを確…

Tool:動画ファイルから連番画像ファイルを出力

機械学習の教師データとして特定のアニメの絵柄や色を利用できるものがほしい 具体的には Youtube などの動画を切り取って連番画像ファイルにするプログラムとかキャプチャソフトの使い方を探している簡単に調べたところ次のダウンロードページ「iWisoft Fre…

Unity:VRMのランタイムロードがなんもわからん

こちら「2019年なんもわからんカレンダー」1月3日の記事です。 前回の記事は Kazushige Mori(Cz_mirror) (@Cz_mirror) | Twitter さんによる「SmartRig Bipedなんもわからん。。」でした。cz-mirror.hatenablog.com 前書き 自分だけの3Dキャラクターをあら…

AI:「作って動かすALife」本を読んでの感想

読んだ本の情報 作って動かすALife ――実装を通した人工生命モデル理論入門 www.oreilly.co.jp著者の一人に、次の対談に出てくる池上高志さんがいたので気になってました。 boundbaw.comALife 人工生命の入門書として書かれています。 個人的なとらえ方によ…

Unity:Mathematics Noise 動作イメージをつかむ

前書き Unity は Mathf という一般的な数学関数ライブラリをGameObjectの計算に提供してきました docs.unity3d.com今後の高速化案件の Burst Compile が必要になるケースでは新しい Mathematics という数学ライブラリを使わなくてはならなくなりました。 git…

Unity:初心者向け最短学習コース2018版

前書き Unity を使う目的は人それぞれですが、最速で最新機能を学習したいと願うのが常だと思います。 最近、こうすれば Unity について素早く学習できるなと感じた学習方法を見つけましたので共有します。いや、私がここのところ、こういうことしていました…

Unity:HTTP通信のベストプラクティス

前書き ちょうどこのブログを閲覧しているみなさんは、HTTP と呼ばれるプロトコルを介して私の文章とやり取りをしています。 皆さんは HTTP についてどれくらいご存知でしょうか?インターネットには、目的地へ電気信号を届ける決まりごとがあります。(何で…

Game:IT社会の未来を予見するための情報源

■前置き 情報化社会の変化というものは制御が利かないものではなく、その変化には大きな流れがあって その流れを作る少数の技術者と、そこに巨大な金と大量の人をつぎ込むことで時間短縮を図る企業の存在があります。GAFA と呼ばれる Google, Amazon, Facebo…

Slack:WebAPIを用いてチャンネルに投稿する

Advanced REST clientからSlackへ投稿するテスト■前置き 一人 Slack は自分が管理者ですから、Slack App や Bot も入れ放題! いろいろなツールから Slack に対して通知を飛ばしたいので、今回は外部から Slack に投稿する方法を確認します。■tokenの取得次…

Slack:自分だけのワークスペースを作成

作った個人ワークスペース■前置き Facebook とか Twitter とか、そのほか似たようなソーシャルネットワーキングサービス(SNS)が世に浸透してしばらくたちましたが会社でのお仕事のコミュニケーションもまたSNSを利用するようになりました。最近は Slack が人…

Unity:新しいInputSystemを動かしてみた

■前置き Unity 2019 のロードマップを確認して、新しい InputSystem が来るヨ とのことなので、どんなものかだけ触ることにしました。正式導入は 2019.2 頃なので、2019年9月末ってところです。(予定通りに事が進めば) その後は現在の Input が廃止されて…

Unity:物理コンストレイント

■前置き このブログの一つ前のブログでも Unity に関する記事を定期的に書いてきました。 お仕事でも Unity 4 ~ Unity 5 での開発は行ってきており、Unity 歴はざっと 4 年ほどあります。 そんな私でも Unity について基礎ができているかと聞かれると、無い…

Unity:Blender連携によるスキンメッシュアニメーションとシェイプキーのインポート

Unity と Blender を連携させて、Blender で編集したら即時スキンメッシュアニメーションとシェイプキーが反映されるシーン再生を確認しました。 具体的な手順を以下に記録します。■前置き ゲームは芸術と科学の結晶です。 そのため、プログラムを書くだけで…

Android:storage/emulated/0/のファイルをPCで取得する

仲間の結婚式の余興ムービーの素材用に、音声を録音アプリで録音してきたのだけど データ保存フォルダがPCで閲覧できない場所になってて、ちょっと調べちゃった。(30分くらい)具体的には storage/emulated/0/VoiceRecorder に録音したよってアプリの設定に書…

Javascriptのコード整理でESLint

一番参考になった記事 Visual Studio CodeでESLintを使う – 山本隆の開発日誌ESLint にかけずに git に提出したら死罪だおらーみたいなプロジェクトに配属 Visual Studio Code と npm コマンドが機能する状態で ESLint について無知な私 手順を教えてくださ…

Unity:ECSとJobSystemsでFractal Brownian Motion(fBm)ノイズを生成

■実行結果 10000ブロックの高さの計算にバックグラウンド処理で 2.0 ms, メインスレッドは Job をキックするだけなので 0.05 ms でした。 なお ECS による高速化前は10000 ブロックの高さの更新に 68 ms を要していました。 およそ 1360 倍の高速化に成功し…

Unity2017~2018の追加機能の習熟作業を振り返る

前回の目標を達成しました。以下が前回の目標に掲げたこと Unity に頂点カラーのマテリアルは用意されていません。 そこで、シェーダを多少はいじれるようにしておきたいと考えました。 そのほかUnityのシェーダーを編集できる UI の確認 タイムラインもそろ…

Unity:Timelineでスクリプトの関数を呼ぶ具体的な手順

昨今のゲームはアイドルが歌って踊るシーンを眺めたりするものが多く、そういったシーンを作るときにタイムラインを制作することになります。各社が内製ツールで頑張っていたため、Unity 2017 で公式に導入されました。 docs.unity3d.com私たちが知りたいの…

Unity:ShaderGraph to ShaderCode

There is a way to convert shader graph to shader code.You can open the graph, right click the master node and select "Copy shader".Paste the shader code to your shader file.Example: Vertex Color Shader Shader "Unlit Master" { Properties { …

Unity:頂点カラーマテリアルの作り方

先週の予告通り、Unity で頂点カラーマテリアルを作る方法を習得しましたので、私のメンタルモデルを記録・共有します。 Unity のマテリアルは元となるシェーダーのインスタンスと捉えることができ、特殊なマテリアルが欲しい場合はシェーダーをカスタマイズ…

Unity:頂点生成三角柱のインスタンスの統合による高速化

前回 15 x 15 x 15 の計3375個の三角柱を生成したとき、その時のインスタンス作成処理に 0.3秒ほど要していました。 ここから先、画面を埋め尽くすほどのブロックの数を表示しようというのに、もう既に諦めなければならないほど低速です。 この処理を高速化…

Unity:頂点法線の計算と事前設定の速度の違い

2週間前に、Unityのパフォーマンス測定の差先端について調べた記事を書きました。 simplestar-tech.hatenablog.comここで調べた手法で、頂点生成系のプログラムのいくつかの負荷試験を行ってみます。 タイトルの通り、頂点法線の計算をランタイムで行うのと…

Unity:頂点生成による三角柱

頂点カラーシェーダーのテスト用にメッシュオブジェクトを用意します。ちょうど1年前に六角柱を作りましたが、やはり最も頂点数の少ない三角柱から作ろうと思います。 simplestar-tech.hatenablog.comもう既に書式は習っているので、知っていることを利用し…

Unity:レールに沿ったカメラを表現するCinemachine

前回、初めて Cinemachine を触ってみましたが、サクッと三人称視点のフリーカメラの動きを実現できました。 simplestar-tech.hatenablog.comCinemachine の見どころは多く、まだまだその機能を紹介しきれていません。 カメラワークのイメージと、それを Cin…