C#のConditionalAttributeの条件をandやorしたい

こんにちは。技術部平山です。 今回は図もサンプルもない地味な小ネタです。C#の言語機能の話なのでUnityに限りませんが、 Unity屋にわかりやすいサンプルになっています。 なお、同じことに関する記事があるので英語で良い方はそちらをご覧ください。 結論 …

ComputeShaderで追尾GPGPU-Particle

はじめに 技術部に5日間のインターンに参加させていただいた高石です。 この記事ではその期間に実装した追尾機能を搭載したParticleシステム についてこの記事ではまとめます。また平山さんが書かれていた記事を参考にJobSystemで並列化されていた部分をComp…

UnityのDebug.Logの負荷とコールスタックの深さ

こんにちは。技術部平山です。 Debug.Logにかかる時間が コールスタックの深さに影響される、というお話で、結論はそれで全てです。 深い所でDebug.Logすると重くなります。 大した話ではないので、ヒマでない方は読む必要はありません。 何この重さ?尋常じ…

終わりがないサービス開発を支える理想の分析基盤とは?クラシコムxカヤック合同勉強会11月号

毎度お世話になっております、カヤックの谷脇です。 10月にクラシコムさんと合同勉強会を行った様子を以前紹介させていただきましたが、今月も合同の「Hygge」を開催しました。 前回は、クラシコムさんのオフィスで開催させていただきましたが、今回は鎌倉の…

CircleCI API v2で自由自在に業務ワークフローのタスクを実行する

ごきげんよう、CI日和ですね。技術部の谷脇です。 先日Jenkinsでテストを実行したり、Slack Botからトリガーして実行していた業務ワークフローの必要なタスクをえいやっとCircleCIに持っていったのでその話をします。 長いので要約すると ヘビーにJenkins使…

物理シミュレーションで紙吹雪エフェクトを作ってみた

画面をクリックするとwebGLサンプルに飛びます。動画もあります。 こんにちは。技術部平山です。 最近たまたま紙吹雪っぽいエフェクトを作る機会があったので、これを、 「これまで書いてきた基本的な技法を組み合わせる応用例」という位置付けで紹介しよう…

月間1600万PVを誇るECサイトの裏側を聞く!クラシコム×カヤック合同勉強会

こんにちわ、こんばんわ、おはようございます、谷脇です。 今回は、北欧、暮らしの道具店を運営している株式会社クラシコムさんとカヤックで、合同勉強会を行いました。この記事では、その模様をお伝えします。 クラシコムさんの社内勉強会「ヒュッゲ」 クラ…

(アーティストさんへ)LDRなブルームの注意点、そしてHDRとLDRについて

こんにちは。技術部平山です。 以前LDR(Low Dynamic Range)なブルームエフェクトについて書きましたが、 今回はLDRでブルームをやる時に起こる問題点について、アーティストさん向けに書いてみます。 結論から言うと、「後から足すのはそう簡単じゃない」と…

UnityEditorからスマホに直転送して確認したい

こんにちは。技術部平山です。 今回は、スマホでhttpサーバを動かした話 の続編でして、UnityEditorから直接スマホにデータを送って即確認する仕組みのお話です。 コードはgithubに全て置いてありますが、まだ実製品の開発には投入しておりません。 現状はプ…

Unityで画素密度を固定する解像度設定(FixedDPI)

こんにちは。技術部平山です。 今回は小ネタで、サンプルもありません。ビルドの解像度設定についてです。 スクリーンショットにあるように、PlayerSettingsのResolution and Presentation の項に、Resolution Scalingというものがあり、 Resolution Scaling…

スキニングを使ってインスタンシングのような大量描画

画面写真をクリックするとWebGLビルドに飛びます。 こんにちは。技術部平山です。 今回はスキニングを使って同じものをたくさん出す処理について書きます。 上の画面写真では立方体がたくさん(2000個くらい)出てますが、 シーンにSkinnedMeshRendererが一つ…

メッシュを.objにしてUnityから出す

画面写真をクリックするとサンプルのWebGLビルドに飛びます。が、本題の「アセットにする」部分は エディタでしか動かないので、あまり意味はありません。 こんにちは。技術部平山です。 今回は、MeshをUnity外に持ち出せる形(.obj)で保存するお話をします。…

クォータニオンを使った、トラックボール風カメラ制御

画面写真をクリックするとサンプルのWebGLビルドに飛びます。 こんにちは。技術部平山です。 今回は、トラックボール 状のものを操作してカメラを動かす機能を作ってみました。 上のサンプルを触ってみてください。 右上の球をトラックボールだと思って回し…

地味にヤバい、シェーダ変数の精度について

画面写真をクリックするとサンプルのWebGLビルドに飛びます。 こんにちは。技術部平山です。 今日はシェーダでの精度指定について、地味なお話をいたします。 詳しいことに興味がなければ、 非常に簡潔にまとめられた記事 をLIGHT11さんが書いてらっしゃいま…

スマホ実機でサウンドのスペクトル解析を見たい

こんにちは。技術部平山です。 今回は小ネタで、実機上にサウンドのスペクトル解析を表示するツールを作りました。 ソースコードはgithubに置いてあり、 持っていってテキトーなgameObjectにつければ動きます。 ImageやTextと同様、 UnityEngine.UI.Graphic …

B-スプライン曲線がサッパリわからない

画面写真をクリックするとサンプルアプリに飛びます。 今回はサンプルがhtml5ですので、それがそのままソースコードですが、 一応githubにも置いてあります。 内部に「ここからここまでライブラリ」的なコメントがあるので 、その部分だけ持っていけばライブ…

高さの影響を受けるフォグ 〜「低い所にガスが溜まってる」感を出す〜

画面写真をクリックするとWebGLビルドに飛びます。 こんにちは。技術部平山です。 今回は「高さ方向に変化があるフォグ」について扱います。 Unityに標準では入っていない奴で、 「地面付近に水蒸気が溜まってる感」とか「毒の沼地から怪しい霧が立ち登って…

Unityで音にフィルタをかける

こんにちは。技術部平山です。 今日は実行時に音にフィルタをかけることで、 元々のデータをゲームの状況に合わせて変化させる方法について書きます。 私も実際の製品でフィルタを活用して作り込んだ経験まではないので、 初歩的なことしか書けませんが、 皆…

好き好き対数正規分布

動画をクリックするとWebGLビルドに飛びます。 今回のサンプルコードもgithubに置いておきましたが 、あまり役には立たないと思います。 こんにちは。技術部平山です。 今回は軽いお話です。 対数正規分布 をご紹介します。 動機 前回の記事では、 ランダム…

Unityアプリを無差別タップで自動テストする

画面写真をクリックするとWebGLビルドに飛びます。ソースコードはGitHubに置いてあります。かつて製品で使ったものに著しい拡張を施した直後なため、 まだ実戦経験が浅いコードです。バグがあったら教えていただけると助かります。 こんにちは。技術部平山で…

Lobiの画像変換サーバーをImageFlux+Lambda@Edgeで置き換えたはなし

SREチームの長田です。 先日Lobiの画像変換サーバーをImageFluxに移行したので、その過程を紹介します。 画像変換って? Lobiはチャットを主軸としたコミュニティサービスです。 ユーザーはチャットメッセージに画像を添付することができます。 また、ユーザ…

3Dゲームで丁度よく画面に収めたい!自動で!

動画をクリックするとWebGLビルドに飛びます。 また、ソースコードはgithubに置いてあります。 こんにちは。技術部平山です。 今回は、3D空間にある物をいい具合に画面に収めるための計算について説明します。 動画では16個の球が好き放題動き回っており、 …

スマホ向け3Dゲームにおける「とりあえず」のレンダリング設定

画像をクリックするとWebGLビルドに飛びます。 こんにちは。技術部平山です。 この記事は、スマホ向けに3Dゲームを作る際に 「とりあえず」やっておく描画設定について考えたり試したりしたことの記録です。 設定の項目は主に、 ライトマップ 影 ライトプロ…

ベクトルを3D空間で回す

画面写真をクリックするとWebGLビルドに飛びます。 ソースコードはgithubに置いてあります。 こんにちは。技術部平山です。 今日は、球面に点を散らす方法を使って、 3D空間でベクトルをいろんな方向に曲げてみます。 これができて初めて、「ビームが敵に当…

円や球面にランダムに点を散らしたい〜高校数学を使って分布関数を作る〜

画面写真をクリックするとWebGLビルドに飛びます。ソースコードはgithubに置いてあります。 こんにちは。技術部平山です。 今日は先日のビーム に関連したネタです。 ビームのサンプルではビームが敵に当たると火花が散りますが、 それぞれの火花が飛ぶ方向…

ビームやミサイルの追尾(ホーミング)計算

こんにちは。技術部平山です。 2019/06/25に4社合同のLT大会があったのですが、 お客さんがIT業界の方々ということで何を話していいかわからず、 たまたま趣味でやったことをそのまましゃべってしまいました。 今回の記事は、このデモの追尾計算に絞って説明…

デシベルのすすめ

画面写真をクリックするとWebGLビルドに飛びます。 こんにちは。技術部平山です。 今日は、デシベル(db)のお話です。どうでしょう?使い慣れてますか? 使い慣れている方は読む必要がないお話です。 Unity屋にとっての音量 Unity上で音量を調整しようとすれば…

WEB+DB PRESSでカヤックSREチームによる連載が始まりました!

SREチームの長田です。 先日技術評論社様から発売されたWEB+DB PRESS vol.111にて、 カヤックのSREチームメンバーによる連載が開始されました。 WEB+DB PRESS Vol.111作者: 松田明,y-yagi,佐藤建太,夜道,村田賢太,伊藤英明,見川孝太,新井剛,関陽介,海老原圭…

スマホでデバグ用Httpサーバ(2) ファイル階層表示とその場編集

こんにちは。技術部平山です。 今回はhttpサーバをスマホで動かす記事の続編です。 テキストファイルをブラウザ上で編集できるようにし、 また、StreamingAssets以下のファイル階層を見られるようにしました。 テキストならその場で編集できますし、それ以外…

Raycasterを自作してデバグUIをUGUI非依存にしてみた

こんにちは。技術部平山です。 以前デバグUIのライブラリを作ったことについて書きました が、HoloLensで動かないことがわかり、改良しました。 前のコードに上書きしてありますが 、前回と違って実製品でのテストを経ていない上に、 以前とはインターフェイ…