PixelMplus(ピクセル・エムプラス)というフォントを作成しました。 8bitゲーム機のビットマップフォントのような感じを出せるフリーフォントです。 特徴 ビットマップフォントのように見えるが、アウトラインのみのTrueTypeフォント。埋め込みビットマップは なし。ボールド体(太字)あり。 JIS第1・第2水準のすべての漢字を収録。ISO-8859-1(Latin-1)の文字も収録。そのほかにもいくつかの記号を追加。 ヿ〼 ヿ テハートのエレヘーター デパートのエレベーター 記号 紋章は☀♨☂ この武器は〠! 方向指示 ▷▶◁◀ トランプマーク ♤♠♢♦♡♥♧♣ 実体は単なるTrueType等幅フォント。テキストエディターで使用することもできる。 ライセンスは自由なM+ FONT LICENSE。 元にしたM+ bitmap fontsは10年以上前から使用されているので安
今回はUnity 5.6から可能になったSpriteでの9 Sliceについて紹介します。 Unity 5.6から搭載された 9 Slice(スプライト向け) 9 Sliceって? 9 Sliceを使ってみる スプライトの用意 タイリング(Tiled) TiledのTile Mode TiledとSlicedの違い Colliderの大きさをあわせる 注意点 FullRectが使用される 長さに限界がある UV Scrollは出来ない アニメーションは動くが使用するスプライトの大きさは固定にすべき 感想 関連 Unity 5.6から搭載された 9 Slice(スプライト向け) Spriteで表現しているスプライトのスケールを引き伸ばした場合、通常では下のように指定軸に引き伸ばされていました。 このため、ピクセルと一致するような連続したスプライトを表現したい場合下のような手法が必要でした。
Unity5ではSample Assets(Beta)をベースにStandardAssetsの内容が一新されました。 内容はベースとなるSample Assets(Beta)にあるものが基本ですが、幾つかの項目でSampleAssets(Beta)からリストラされたり、改変が加わっている節があります。 新 Standard Assets候補、Sample Assets (beta) - テラシュールブログ 目次 目次 2D Camera Character Closs Platform Input Effects Environment ParticleSystem Prototype Utility Vehicles 使い方について 2D Sample Assetsと同様、2Dのスクリプトやスプライトが含まれます。 以前紹介したPlatformerCharacter2Dも健在です。ただし
HUDのように、UIをキャラクターの上に表示する方法について、少し悩んだのでメモします。 World SpaceとScreen Spaceについて World座標をUIの座標へ変換する World Space を Screen Space Overlayへ World Space を Screen Space Cameraへ World SpaceをWorld Spaceへ ScreenSpace Overlayを他の座標系へ変換する UIの座標をWorld Spaceに変換する 関連 World SpaceとScreen Spaceについて UIを考える場合、二つの座標系について考える必要があります。つまりWorld SpaceとScreen Spaceです。 World spaceは3D空間上の座標で、XYZで指定します。この座標は世界の中心点(x:0, y:0, z:0)を基準にした
[GDC 2018]FFXVのゲームAIは,開発の工程にどう取り込まれたのか? 日本のゲームAI研究の第一人者が語る,FFXVのAI概論 ライター:徳岡正肇 本日(2018年3月20日),ゲーム開発者による国際的な技術カンファレンス「Game Developers Conference 2018」が始まった。その初日に,ゲームにおけるAI技術が集中的に語られるAI Summitの中で,「EOS IS ALIVE: THE AI SYSTEMS OF‘FINAL FANTASY XV'」という講演が行われている。 この講演はタイトルどおり,スクウェア・エニックスの「FINAL FANTASY XV」(PC/PS4/Xbox One 以下,FFXV)において使われているAI技術について,大きく7項目に分けてその概論を語るというものだ。スクウェア・エニックスのリードAIリサーチャーである三宅陽一
というわけで、今回はAnimatorControllerへのモーション設定に関するお話です。 新しくboneを追加した時や.fbx形式で取り込んでいる場合など、一度削除して再インポートしなければならないことは少なからずあります。その度にAnimatorControllerの各ステートへ再設定するのは面倒です。 そこで「モデルのアニメーションデータをAnimatorControllerに割り当てなおす」のを実行時にできないかと考えてみたお話です。 せっかちな方のために冒頭でまとめておきますが、 ・AssetDatabase.GetAssetPath()でアセットのパスを取得 ・LoadAllAssetsAtPath()でモデル内のアニメーションデータ取得 ・AnimatorControllerからステートを取得し一致するモーションを設定 という感じです。 以下、順番に詳細を書いていきます。
ポストエフェクトとは、カメラに映ったゲームシーンを一枚の画像として加工する処理のことです。UnityにはStandard Assetとして次のようなエフェクトが用意されています。 qiita.com 今回は画面を白黒にするモノクロのエフェクトを作りながらポストエフェクトの作り方を説明します。 今回の記事の内容は次の通りです。 カメラのメソッドをフックする Unityでモノクロシェーダとマテリアルを作る カメラにマテリアルをセットして実行する 参考書籍 カメラのメソッドをフックする まずはシーンビューに3Dオブジェクトを表示しておきます。これは、なんというか、雰囲気を出すためだけのものなので、あってもなくても良いです(笑) ここでは、とりあえずUnityちゃんを配置してみました。 カメラに映った画像を取得してポストエフェクトをかけるために、レンダリングする途中で画像をフックします。 プロジェ
ノイズといえば、砂嵐のようなランダムノイズから連続性を保ったパーリンノイズまで様々なノイズが考えられています。残念なことにUnityのシェーダにはノイズを生成するメソッドが用意されていないため、プログラムを作る必要があります。 この記事では、Unityでランダムノイズ、ブロックノイズ、バリューノイズ、パーリンノイズ、fBmを作る方法を見ていきましょう。 ランダムノイズ ブロックノイズ バリューノイズ パーリンノイズ fBmノイズ まとめ&参考書 ランダムノイズ ランダムノイズとは場所や時間に依存せずに全くのランダムに値を決めるノイズのことです。テレビの砂嵐(古い!)と同じものですね。 www.youtube.com まずはノイズ生成の基本になるランダムノイズを表示するシェーダを作ってみましょう!シーン中にノイズを表示するための平面モデルをUnityのシーンビューに配置して、そこにシェーダプ
プレイヤがゲームステージに配置されている障害物などの後ろ側に回り込むと、見えなくて操作しづらくなってしまいます。そこで、障害物によって隠れた部分は影だけ描いたりします。この記事では、Unityで隠れた部分を影で描画する方法を紹介します。 今回の記事は次のようになります。 ステンシルバッファの原理 ステンシルバッファ用のシェーダを作る ブロックのシェーダを作る ユニティちゃんのシェーダを作る ステンシルバッファの原理 ステンシルバッファといっても、特殊なものではなく、一般的な画像と同じと考えて問題ありません。画像と違うのは、ステンシルバッファは画面に表示するためのものではなく、描画する際に使用する「裏方の値」ということです。 では、どのようにしてスプライトの裏側の画像を描画するかを説明します。 まずは画面上にブロックを描くと同時に、ステンシルバッファには「1」を書き込みます。これによりブロッ
今日はその方法を忘れないうちに書き留めておこうと思います。 Unityのテキストの内容を変更する方法 早速、Unityのテキストの変更方法を書いておきます。 例として、 クリックすると、テキストが変更される というゲームを作成していきますよ。 適当にゲーム内にテキストを配置しちゃってください。 Step1. スクリプト作成 Unityのテキスト内容を変更するスクリプトを作成していきます。 ここではとりあえず、 TextChange.sc とでもしておきましょう。 Step2. UnityEngine.UIを追加 先ほど追加したコードを編集していきます。 まず、UI要素のテキストをコード内で呼び出すために、 using UnityEngine.UI をスクリプト冒頭に追加する必要がありますね。 using System.Collections; using System.Collection
退廃的なビジュアル表現が魅力のPS4アクションRPG『 NieR:Automata』。その独創的な色彩の作品世界では、各空間での光の美しさがひときわ目を引く。本作の動的な間接光による照明効果を生み出しているのが、高品質なGIソリューションとして名高い「Enlighten」だ。 Product Info 対応プラットフォーム:PC Games for Windows、Linux、Mac OS X、Xbox One、PlayStation®4、PlayStation®Vita、Android、Android x86、64-bit Android、iOS、64-bit iOS、Windows RT、Nintendo Switch™ 問:シリコンスタジオ 価格:要見積もり www.siliconstudio.co.jp/enlighten/ 次世代ゲームとしてのカギを握る「Enlighten」とい
public float flap = 1000f; void Update () { if (Input.GetKeyDown("space")) { rb2d.AddForce(Vector2.up * flap); } } これを追加すればスペースを押したらジャンプ →このコードだと何段階でもジャンプできちゃいます 飛ぶ量を変えたいときはflap変更 速さを変えたいときはInspentorタブのRigidbody2DのGravityScaleの数値を上げればok 1段ジャンプ制限 bool jump = false; void Update () { if (Input.GetKeyDown("space") && !jump) { rb2d.AddForce(Vector2.up * flap); jump = true } } void OnCollisionEnter2D(Co
5.5になり、UnityEngine.Typesが使えなくなりました。 `UnityEngine.Types.GetType(string, string)' is obsolete: `This was an internal method which is no longer used' というエラーログが出ます。 エディター拡張(スクリプトからそれがアタッチされたゲームオブジェクトを作成する拡張)でこれをつかっていたものがあったので対応する必要がありました。 対応方法は別のメソッドを使うだけです。Unityで有名なこちらのブログ 【Unity】クラス名からTypeを取得する(テラシュールブログより) の記事がわかりやすいと思います。 System.Reflection.Assembly.Load("Assembly-CSharp").GetType(className); と直して問
本記事は、下記の記事の翻訳です。著者の許可を得て翻訳しました。 この記事はフォースクエアの技術的リーダーシップを簡潔に説明したガイドだ。 ベン・ホロウィッツの「良いプロダクトマージャー、悪いプロダクトマージャー」からインスピレーションを得ている。 チームワーク / Teamwork 良いテックリードはチームの一員として振る舞い、自分の成功とはチームが成功することだと考える。面倒で退屈な仕事の一部を担って障害物を取り除き、チームが100%のパフォーマンスで稼働できるようにする。チームの技術的能力を拡大し、システムの重要な知識が属人化しないように務める。 悪いテックリードは注目の集まる仕事で自分の成果を示すことを好む。その成果は部分最適に留まり、開発チームのアウトプットを増やすにはエンジニアの人数を増やすしかない、という状況から脱することができない。 技術的ビジョン / Technical v
個人の開発環境で使っているツール 個人開発で使っている、便利なツール集を備忘のためにまとめました。 色々なアプリを使っていますが、マジで使えるものだけを紹介しています! ※Mac専用、有料のツールもあります。 紹介するツール紹介 便利系 Clipy Wunderlist FontPreview Mini Calender Memory Clean Sequel Pro Transmit Spectacle Chrome拡張系 HTMLエラーチェッカー JavaScript Errors Notifier shell系 fish shell 便利系ツール 1.Clipy Clipy - @econa77 ※いつも使わせていただいております クリップボードを拡張できるアプリです。 コピー&ペーストを繰り返して作業するときに、コピーのページまで戻って、またペーストしてって作業あったりしますよね。
LITALICO CTOの岸田崇志(@takish)です。 2017年のアドベントカレンダーもついに最終日となりました。 入社して2年経ち、エンジニアも順調に人数が増え、新卒採用からの育成、そして新規事業ラインへのエンジニアラインがスケールアウトできるようになってきました。 特に前職ではインターネット事業の急激な成長を経験したので、エンジニア育成サイクルの礎を築いて置くことの重要性は身にしみて感じていたので、最初からそれを念頭に組織を組み立てています。 はじめに 筆者はエンジニア組織の立ち上げは3回目なので「デジャヴ?!」と感じる事も多々あり(笑)、既視感ありまくりの2年でした。 一方で既視感があるということは、どこも成長のフェーズにおいて同じ課題に直面するということでもあるという事でもあります。 そのため、そのような経験を基に過去失敗した轍をもう一度踏まないことを心がけました。 成長フェ
プロジェクト直下に以下のスクリプトを突っ込んで実行して下さい。 上記のエントリで書いてある作業を実行します。 自動的にフォルダ構成と.gitignoreを生成します。 #!/bin/sh function init() { arr=("Scenes" "Prefabs" "Scripts" "Animations" "Materials" "Physics Materials" "Fonts" "Textures" "Audio" "Resources" "Editor" "Plugins") for var in "${arr[@]}"; do #echo $var mkdir Assets/"$var" done cat << EOT > .gitignore /[Ll]ibrary/ /[Tt]emp/ /[Oo]bj/ /[Bb]uild/ /[Bb]uilds/ /Assets/
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く