メモ
GW期間中から21日間でFINAL STAGEというゲームを作りました。 ゲームを公開したツイートはこちらです。 GWあたりからUnity, Houdini, Substance Designerの学習と実践がてら作っていたゲームを公開しました!そこそこやりがいがある感じになったのでオンライ…
Shader - Shadertoy BETA 今までいろんなShadertoyの作品で使ってきてましたが、正直理解が浅すぎたので改めていろいろな記事を参考に再実装しました。 用語の整理等もでき始めたのでそこそこ理解が進んだ気がします。 特にこのシリーズはとても参考にさせて…
HDRPを弄れる環境はこちらで既に整えました nanka.hateblo.jp 今回は実際にカスタマイズして周作に最適なアウトラインパスを追加してみます。(Render Graphがリリースされたらここの情報は無になります(多分...)) 使用するバージョン Unity 2019.2.0f1 H…
カスタマイズするか不明ですが、UPMでインストールしたパッケージはカスタマイズしずらいので、公式リポジトリをforkした物を使うプロジェクトを準備しておく。 フォークする 後で使うのでHDRPが含まれているこちらのSRP公式リポジトリをforkする。 github.c…
そろそろUnityも触らないとなぁと思ったので、LWRPを少しずつ学習していこうと思います。 手始めに、目標を達成するためにレンダリングパスを追加してみます。 今回はいずれシャドウマップを使ってエフェクトを作成したかったので、Screen Space Shadowパス…
最近Shader Graphを触る機会があるので、いろいろお試しで作っていたんですが、remapノードというのが便利だったのでShaderToyとかでも今後使っていこうと思ってます。 github.com float remap(float val, float inMin, float inMax, float outMin, float ou…
必要だったのでメモ 二次元ベクトルであれば、90度回転させると垂直なベクトルになります(当たり前) 90度の回転であれば、行列計算の結果がコンポーネントと符号の入れ替えになるため、わざわざ回転行列を用意する必要はなく vertical = vec2(-vec.y, vec.x)…
設定をいじった記憶もないし、元に戻す設定を探しても無いしで困り果てたので 結局ドライバーを入れ直して解決した サウンドのドライバをアンインストール ハードウェア変更のスキャンで再インストール
2週間ほどTTFというフォントのデータ形式を使っていろいろやっていたので近いうちにまとめたい
この前新しく買ったノートパソコンはWindows10でvisual stuidoやvscodeを使用しているときにF5でビルド開始できなくなっていて なんでだろう?と思っていたのですが、特に調べもせずにメニューをポチポチクリックして実行していました 今日もポチポチ押して…
デモシーン制作では音楽も重要なので今週は音楽関連を学んでいました 検討した方法としては 映像同様シェーダーで生成する shadertoyでは音楽を生成するシェーダーが書けたりしますよね 4klang等の軽量ソフトシンセを使用する 4kデモシーンではこちらが一般…
小さいexeを作っているときに _fltused が未解決だからどーのというエラーが出てしまってビルドできなくなってしまいました。。 ググると↓のページを見つけて コスミー報告書[社外秘] - CSTLを使ってDLLを小さくするっていう話 EXTERN_C int _fltused = 0x98…
最近shadertoyでシェーダーを書いてるんですが かなり肥大化してきて、コンパイルに20秒ぐらいかかる & たまにブラウザがクラッシュするという問題が発生していました windowsのchromeはOpenGL ESがANGLE経由で動いているのでglslコードがhlslコードに変換さ…
最近4kbデモを作りたくてグラフィック面でいろいろ勉強していたんですが、今週は小さい実行ファイルを生成する手法を学びました 開発環境 visual studio 2017 comunity crinkler20a 空のプロジェクトを作成する 最近めっきりvisual studioを触る機会がなかっ…
画像をモザイクにしようと思ってこんなシェーダーを作成していました uniform sampler2D tex; void main() { vec2 uv = floor(texCoord * 30.0) / 30.0; gl_FragColor = texture2D(tex, uv); } 実際に使ってみると↓のような見た目になり、なにやらモザイクの…
一般的にシェーダーでの条件分岐は遅いという話がある 今回作ったシェーダーではブレンドモードや使用するマスクのチャンネルをアプリから送信してシェーダー内で利用するということをした これを条件分岐を使って素直に実装するとこんな感じになる(空で書…
最近Unityを触っていてマテリアルエディタを拡張したくなったのでテクスチャのプロパティを表示するところから始めてみた 最初は自前でUIを組み立ててどうやらするのかと思ってその方面で調べていたけど、標準のテクスチャプロパティのスタイルであれば Text…
go-glというgolangのopenglラッパーをgo getしようとしたところ、cgoを利用しているようでgccが必要という旨が表示されたのでインストールした MSYS2/MinGW-w64 (64bit/32bit) インストール手順 メモ · GitHub こちらをみて64bitMsys2インストール pacman -S…
今日はボクセルコーントレーシングで2Bounce以上はどうやって実現するんだろうと考えてました unityで有名なこちらのアセットを30分ほど眺めてみたところ、どうやらフィードバックループによって実現しているみたいでした github.com フレーム間で交互にボク…
昨日の続き php-fpmをインストールする php5.6を使っているのでremiリポジトリを追加後インストールする sudo yum install yum --enablerepo=remi-php56,remi,epel install php-fpm その他は下記記事を参考に設定 qiita.com /etc/nginx/conf.d/default.conf …
思うところがあり、今動いているrailsアプリケーションをnginxに移している まだまだやることはあるけど今日やった作業の備忘録を残す 環境 CentOS6 rails 5.0.1 yumからインストール sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-r…
思うところがあり、メールが来た時に本文を見て一部をslackに通知したくなった そこで、少し調べているとIMAP4というプロトコルがあるということを知りメール通知 + 本文取得を実装したのでメモ IMAP4プロトコルとは www.sophia-it.com IMAP4は、オンライン…
思うところがあり今日はブラウザ操作の自動化を行っていた 丁度golangを勉強中ということもあり、phantomJS + agoutiの組み合わせでやってみた(別にgoでやる必要はありませんが..) 環境 centos6 go version go1.8.3 linux/amd64 phantomjs 2.1.1 インストー…
前提として個人で制作後、その後の運営は他人がやっているサイトがあります そのサイトを先日知った、Google PageSpeed Insightsで採点すると100点中0点だった… そこで指摘されたうちいくつか対策をしたのでメモ 画像を最適化する jpg画像を投稿することが多…
今日windowsで作業中にUNIX系で作られたリポジトリをcloneした時にタイトルの状態になってしまって、無駄に時間を使ってしまった 解決策としてはcloneする前に↓をする git config --global core.autocrlf input するとclone時は改行コードを変換せず、コミッ…
公式ページからインストーラーを拾ってきて、「C++によるデスクトップ開発」「C++によるゲーム開発」にチェックを入れてインストールを試みたが、windows 10 sdkのインストールでリターンコード1011エラーで失敗してしまう。 調べてみると、とりあえずスタン…
luaの否定演算子をいつもピンポイントで忘れてしまうのでメモ.. luaでは `!` ではなく `not` 論理演算子は全部英語と覚えておこう..
↓の記事でwhile readしないとうまく動かない理由がわかったので、slack通知の部分を変更した nanka.hateblo.jp 動かない理由はこちら nanka.hateblo.jp 改善版 require 'net/http' require 'uri' require 'json' uri = URI.parse("https://hooks.slack.com/s…
matchを使うと正規表現で文字列を抽出できる hoge = 'ip = 255.255.255.255' ip = hoge.match(/ip = (\d+\.\d+\.\d+\.\d+)/)[1] puts ip $ ruby -e "hoge = 'ip = 255.255.255.255'; ip = hoge.match(/ip = (\d+\.\d+\.\d+\.\d+)/)[1]; puts ip" 255.255.255…
昨日の記事に関連するメモ nanka.hateblo.jp 完全に勘違いしていました。 パイプを繋ぐと左からコマンドが順次実行されるとばかり思い込んでいましたが、並列でそれぞれ動作してるんですね.. 極端なはなしですが↓を実行すると即座に2が出力されて3秒後に1が…