(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

描画に関する処理をC#で書けるSRP(Scriptable Render Pipeline)とは【Unity】【SRP】


この記事でのバージョン
Unity 2018.2.14f1


はじめに

Unity関連でSRPというワードをちょこちょこ目にするようになったので、

どんなモノか軽く調べてみた系の記事です!


先に箇条書きでざっくりとまとめてみると以下のような感じ。

  • SRPとは描画に関する処理をC#で書けるようにしたもの
  • SRPは1から全部自作する事も可能だが、テンプレも用意されている
  • テンプレはローエンド(モバイルとか)用のLWRPハイエンド(PS4以上)用のHDRPの2種類
  • LWRPはSRPを使わない状態より軽いが、一部機能が使えない。
  • HDRPは高機能かつ高品質なので、負荷もそれなりに高い。
  • SRPを使うと今までのShaderをそのまま使う事は出来ない
  • SRPで使える標準的なShaderは用意されている(LWRP用とHDRP用が別々にある)
  • SRPを使うとSurface Shaderが使えない
  • SRPを使うとCameraのコールバックが効かない(ImageEffect等を実装しなおす必要がある)
  • 上記のような欠点があるので、既存プロジェクトをSRPに移行するのは大変
  • SRPはプレビュー版なので、今後大幅な仕様変更の可能性がある



Scriptable Render Pipelineとは

続きを読む

GameViewの設定をプログラムから作成、また設定するヘルパークラスと色々な端末のサイズに変更できるエディタ拡張【Unity】【エディタ拡張】


この記事でのバージョン
Unity 2018.2.14f1


はじめに

UnityのGameViewは左上からプルダウン比率やサイズを変更や設定を行う事が出来ます。


f:id:kan_kikuchi:20181104175418j:plain


今回はこれをプログラムから、つまりエディタ拡張で操作したい場合の話です。


GameViewSizeHelper

続きを読む

Unityで使える「レイヤードストーリーズ ゼロ」のオープンソース素材【Unity】【ゲーム素材】

この記事でのバージョン
Unity 2018.2.14f1


はじめに


皆さんはレイヤードストーリーズ ゼロという作品をご存知でしょうか。


f:id:kan_kikuchi:20181108095201j:plain


アニメやゲーム、マンガと複数の媒体に展開していた、いわゆるマルチメディアな作品なのですが、

(残念ながら既にサービスは終了済み)

なんと、ゲーム中で実際に使われている3Dモデルやサウンドをオープンソース素材として公開しており、

しかもその素材はUnityでそのまま使えるらしいのです!


という事で、今回はレイヤードストーリーズ ゼロの

オープンソース素材をUnityでちょっと触ってみた感じの記事です!


f:id:kan_kikuchi:20181108093859g:plain
f:id:kan_kikuchi:20181108084929j:plain


使い方

続きを読む

ショートカットキー(ホットキー)の重複を警告してくれたり、検索や変更が出来たりする新機能、Shortcut Manager【Unity】

この記事でのバージョン
Unity 2019.1.0a7


はじめに

Unityには他のアプリケーションと同様にショートカットキー(ホットキー)がいくつもありますし、



自分で実装する事も簡単に出来ます。



しかし、簡単にショートカットが作れるゆえに、(特にエディタ拡張系のアセットを使っていると)

「どんなショートカットがあるか分からない、重複してるかも分からない」という問題があります。


これらの問題を解決すべく、Unityでは新しいショートカットシステムの開発が進んでいましたが、


f:id:kan_kikuchi:20181103090219j:plain
【Unite Tokyo 2018】エディター拡張マニアクス2018 - YouTube


ついにUnity 2019.1から新システム「Shortcut Manager」が使えるようになりました!



今回はこれを使ってみようという感じの記事です。


基本的な使い方

続きを読む

週2更新を4年間続け、456本の技術記事を書いた僕が考える技術ブログの続け方、書き方、広め方【雑記】

はじめに

いわゆる技術記事を書き続けると、

勉強になる、実績になる、仕事に繋がる、人の役にたてる、アウトプット欲求を満たせる

などなど、色々良いことがあるという話はよく聞きますよね。



しかし、実際に始めてみても「やる気がない」「書く事がない」「全然読んでもらえない」

といった具合に続かない事が多いのではないでしょうか。


という事で今回は、本ブログ(基本Unity関連の技術ブログ)の週2更新を4年間続けた経験を生かして、

実際に技術ブログをどう続けたか、書いているか、広めているかをまとめてみました!


f:id:kan_kikuchi:20181030171407j:plain


ちなみに4年で456本書いたわけではなく、それ以前(定期更新を始める前)の記事や

この記事のような雑記も多少含まれていますので、あしからず。

あと、456という連番になったのは偶然だったりします。


目次

  • はじめに
  • 目次
  • 目的と手段
  • 続け方
    • 習慣化
      • 低過ぎるくらい低い目標を立てる
      • 記事を書くタイミングや時間を決める
      • テンプレ化で効率化
      • すぐに投稿せず、定期更新にする
    • やる気の向上と維持
      • 連続達成日数を数える
      • 快適な作業環境を構築する
      • 目標を公言する、達成も公言する
      • やる気の消費を抑える
  • 書き方
    • 何を書けばいいのか
      • 新しく知った事を列挙する
      • 知らない事、分からない事を調べる
      • 詰まった事や困った事を書く
      • 情報をまとめる
      • 他の人の記事から着想を得る
      • 自分が当たり前だと思っている事を書いてみる
      • 既に同じような記事があっても気にしない
    • より良い記事を書くために
      • 先に記事の内容や結論を端的に伝える
      • 読者を想定して説明の範囲を変える
      • 画像をふんだんに使う
      • 無駄に文章を捻らない
      • 見やすさと読みやすさ
  • 広め方
    • タイトルの付け方
    • シェアをする時のひと工夫
    • 他の人のシェアを拡散する
    • イベントに参加する
    • きちんと広めてほしいと言う
  • おわりに



目的と手段

続きを読む

Unityで乱数の再現【Unity】

この記事でのバージョン
Unity 2018.2.8f1


はじめに

UnityではRandomクラスを使って簡単に乱数(ランダムな値)を生成する事が出来ます。

//0 ~ 1の間でランダムな数(float)を取得
float floatValue = Random.value;

//0 ~ 9の間でランダムな数(int)を取得 
int intValue = Random.Range(0, 10);


今回はこの乱数を再現させる方法の話です。


乱数の再現

続きを読む

Oculus Go向けアプリを申請したら「キーの承認のみ」でストアに並べてもらえず、問い合わせしても「理由は教えないけどリジェクト」と言われて相手にされない件【Oculus Go】【リジェクト】

はじめに

前に開発合宿で作ったOculus Go向けアプリ「札束風呂VR」をOculus Storeに申請したのですが、




タイトル通りが「キーの承認のみ」でストアに並べてもらえず、

問い合わせしても「理由は教えないけどリジェクト」と言われて相手にされませんでした。


今回はその時の流れをまとめてみた感じの記事です。

なお、解決方法が載ってるわけではないのであしからず。

(むしろ解決方法があるなら教えて欲しいです……。)


目次

  • はじめに
  • 目次
  • キーの承認のみ(サイレントリジェクト)
  • 問い合わせるも「理由は教えないけどリジェクト」
  • 再度問い合わせるも無視
  • さらに問い合わせるもテンプレ返答
  • 試した事
    • 申請時にコメント追加
    • パフォーマンス改善
    • アプリサイズ削減
    • レーティング変更
    • ストア画像や動画修正
  • よくある事らしい
  • おそらくエロ系が原因
  • おわりに


キーの承認のみ(サイレントリジェクト)

続きを読む

モデルの形状からアセットを検索したり、シーン上で3Dモデルをプレビューしたり出来るUnity Visual Search【Unity】【アセット】

この記事でのバージョン
Unity 2018.2.8f1


はじめに

今回はUnity Visual Searchというモデルの形状からアセットを検索したり、

シーン上で3Dモデルをプレビューしたり出来るアセットの紹介です。



イメージとしては以下のような感じ。


f:id:kan_kikuchi:20181020093639g:plain


また、本記事に出てくる3Dモデルは以下のものを使っています。




使い方

続きを読む

任意のキャラでアニメーションが確認でき、1アニメごとの購入も出来るMotion Library【Unity】【アセット】

この記事でのバージョン
Unity 2018.2.8f1


はじめに

今回はMotion Libraryというちょっと変わったアニメーション用アセットの紹介です。



イメージとしては以下のような感じ。


f:id:kan_kikuchi:20181018092711g:plain


また、本記事に出てくる3Dモデルは以下のものを使っています。





Motion Libraryとは

続きを読む

Unity製Oculus Go用アプリをストアへ申請する際の手順【Unity】【Oculus Go】

この記事でのバージョン
Unity 2017.4.7f1


はじめに

今回はUnityで作ったOculus Go向けのアプリをOculusストアに申請する手順の紹介です!


なお、アプリが完成した後の話なので、

UnityでAndroidアプリの開発環境を整えたい場合は以下の記事を、



Oculus Go用アプリの開発環境を整えたい場合は以下の記事をご参照ください。





目次

  • はじめに
  • 目次
  • リリース用APKの作成
    • AndroidManifestの作成
    • Keystore作成
    • Minimum API Levelの設定
    • ビルド
  • APKのアップロード
  • ストア情報の設定
    • スペック(アプリ要件)
      • カテゴリ、快適性、ネット接続、サブスクリプション
      • 対応デバイス、入力機器
      • プレイ人数、ジャンル、言語
    • 基本データ(このアプリについて)
    • コンテンツ評価(レーティング)
    • 翻訳(ストアの説明文)
    • アセット(ストア用素材)
    • 価格設定
      • 支払い情報
    • 送信する
  • おわりに
  • 参考



リリース用APKの作成

続きを読む