simplestarの技術ブログ

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

Programming

Javascriptのコード整理でESLint

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

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

記事制作は途中ですが、近いうちに完成させます。■前提知識ECS は 2018年8月に自分が書いた記事を読み直して、再度頭に叩き込みます。(うむ、全然わからないな、自分の記事なのに) Unity:CEDEC2018のECSの発表から学ぶ - simplestarの技術ブログ2018年9月…

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:パフォーマンス表示uGUIの作り方(2018版)

最近 ECS + Job Systems + Burst Compile と SRP の習熟度を上げましたが、今度は開発中にゲーム内のUIでパフォーマンスをチェックする機構について興味がわいたので 最新の Unity のパフォーマンス計測テクニックを参考に作ってみたいと思います。ちょっと…

Unity:ScriptableRenderPipeline(SRP)の書式確認

Unity の Scriptable Render Pipeline(SRP) とは端的に言うと、Unity がフレームをどのようにレンダーするかをデベロッパーが C# で制御できるようにするものです。(大事なことなので何度でも)前回の記事でSRPの導入方法はバッチリ simplestar-tech.hatena…

Unity:2018のScriptable Render Pipelineに慣れる

Scriptable Render Pipeline(SRP) とは端的に言うと、Unity がフレームをどのようにレンダーするかをデベロッパーが C# で制御できるようにするものです。ついに Unity のブラックボックスに手を入れられる時代が始まろうとしています。 これを活用できるか…

Unity:job-system-cookbookからC#JobSystemの実例を確認

ちょっと前の私の記事 simplestar-tech.hatenablog.com こちらでメッシュの変形やCubeの移動、画像処理などのサンプルをみつけたので、今回はそのサンプルの実装を確かめていきます。Unity 2108.2.5f1 PackageManager にて Burst 0.2.4-preview.26 Entities …

Unity:OpenCVを直接使う4

今回は Android 端末で OpenCV を直接使う Unity 製アプリを作ってみます。先に Unity 側のコードを書くと次の通り 前回の WebCam 画像の取得の枠組みを用意して、そこの Update 関数にて次のようにカメラ画像の pixel 配列の先頭アドレスを固定して渡します…

Unity:OpenCVを直接使う3

Unity は WebCamTexture でカメラ画像テクスチャを管理します。 OpenCV は Mat (行列) でカメラ画像情報を管理します。目標は Unity の WebCamTexture を Mat に変換して、OpenCV の機能を存分に活用し たとえば次のような MarkerlessAR Example の実行を行…

TerraformでAWSのインスタンス管理

そういえばしばらく前にサーバー技術を学ぼうとしたんだっけ simplestar-tech.hatenablog.comAWS そういえば触ってたな(3か月前の作業だけど、もう忘れかけている) simplestar-tech.hatenablog.comAWS のコンソールページでポチポチクリックしてひな形(AMI…

Unity:OpenCVを直接使う2

他人の記事に惑わされずに、公式のドキュメントを読むべき その公式ドキュメントは、リリースされている OpenCV の Source をダウンロードして platforms フォルダにある。 フォルダにはテキストファイルが一つ入っており、次のリンク先のイントロを読むべし…

Distributed TensorFlow with Cloud ML Engine (Implementation Details)

■前置き 今現在、世界中の天才と呼ばれる人類層が、必死になって神秘のヴェールをはがしている領域で ごく最近使われるようになってきた単語を使って説明するので、かなり知的負荷が高いこと書きます。 筆者もいっぱいいっぱいで、わからなくても気にせず、…

TensorFlow GAN メモ

■前置き 今から半年ほど前の Google AI Blog の記事ai.googleblog.com TFGAN: A Lightweight Library for Generative Adversarial Networks 要約すると「GANってのは、コンテンツ生成という新しい研究領域を広げてます。 例を見てみ、すごいっしょ! すぐに…

Google Cloud Machine Learning Engine で分散ディープラーニング

■前置き TensorFlow をクラウド環境で分散実行したい公式のチュートリアルが分かりやすかったです。本記事はGoogle Cloud ML って何?て状態の人が そのチュートリアルにたどり着くまでの記録■手順 参考サイト www.topgate.co.jpGoogle アカウントを作成 コ…

TensorFlowの導入記録(エラー無かった)

■前置き 近頃はやりの Deep Learning を触ってみることにした。Deep Learning はホントに流行っていて、覚えきれないくらいツールが溢れている(+_+)未来があると思われる、Googleが開発したTensorflow(テンサーフロー) の Hello, World なる MNIST の学習…

goでjson文字列からオブジェクトを生成

■前置きGoで書いたWebAPIサーバが今 json 文字列を受け取っています。 json文字列に含まれる情報から必要な値をピックアップして、外部のグラフ表示ソフトが期待しているようなフォーマットでファイル出力しなければなりません。さて、つまり json 文字列か…

Webページからオブジェクトをjson文字列に変換してPOST

■前置き Webページから文字列をPOSTする際、クエリストリングのように連想配列を文字列で送信できることは確認済み さて、ユーザーアクティビティってのはそう単純なデータ構造じゃないんです。 ユーザ定義のデータ構造の配列の配列なんてこともあって、これ…

Goでローカルファイルにテキストファイルを書き出す

■前置き WebページをユーザのクライアントマシンからWebブラウザで見てもらい ユーザアクティビティを短い文字列情報でPOSTしてもらうことで、ユーザ端末で何が起きたのかを収集します。ログを出すだけじゃ意味がなく、受け取った情報をファイルに保存しなけ…

GoのAPIサーバの疎通確認

■前置き 何かしらのユーザアクティビティを収集するWebページをjavascriptで書いていて、セキュリティの関係でクライアントのローカルストレージに一切アクセスできないということに気づいたとき Webサーバ側にクライアントの情報を送信するしかないってこと…

Webサーバーがブラウザから情報を受け取るサンプル

メモ書き、あとで消します。■前置き Webサイトを閲覧する iPad で行われる操作ログをファイルとして保存しようにも、保存することができない仕様なので詰む 解決するにはブラウザで処理した内容をサーバーに送るしかない どうやって?■前提知識 HTTP という…

WindowsでWeb アプリ開発環境作る

■前置き とにかく今こうして作業しているマシンがローカルネットワーク環境でWebサーバーとして機能すればいい index.html を配置したフォルダがルートになって Web サーバーとなる仕組みがほしい■本題 IIS がキーワード、導入手順は以下のどれも同じ手順を…

Go言語の通信スケルトンコード例

■前置きGoってのはマルチコア処理で効率的に同時アクセスをさばく、現時点で最強?のネットワークプログラミング言語ですので その機能を最大限に発揮するスケルトンコードをチュートリアルで公開しているものと思っていました。 が、あまりにプリミティブな…

GoのIDE試し

■前置き1 Go言語学習を、ずっとテキストファイルで進めてきましたけど、そろそろ限界 C#のようにVisual Studio のインテリセンスがあるなら使いたいVisual Studio Code で、Go サポートがあるので、設定して試してみます。■本題Visual Studio CodeVSCode 入…

Goはローカルで通信確認できる?

■前置き1Go 環境整って Hello World 動きます。 言語の目的がマルチコアのネットワークブログラムなんだから、数行でサーバーとして機能するんだよね? どういう書式か確認させてもらおう■前置き2先に書式を学んで行け、馬鹿野郎 とドキュメントに怒られた…