という2点が重要になってくることはご存じかと思います。このうち1番目の描画に関しては比較的簡単に行える最適化手法が色々とあるのですが、2番目に関してはネット上に情報がほとんどなく個人的には全くの手探りで行うしかありませんでした。 ただ最近になってようやく
この記事は第二のドワンゴ Advent Calendar 2017の記事です。 qiita.com 2013年までドワンゴにいたtrapezoidです。今は居ません。 今はモバイルゲームの基盤開発エンジニアをしています。 猛烈に忘れていたので、今日はUnityにおいて手軽に少しでもパフォーマンスを出すための実装テクニックというみじんもドワンゴに関係のない話を雑にします。 あんまり実際にこれがパフォーマンス上役に立つ知識かというと非常にアレなんですが、豆知識としては面白いんじゃないか程度の気持ちで読んで下さい。 IL2CPPを使う 大前提です。 旧来、iOSではMonoによるAOTコンパイル、Android等ではMonoのVM上でスクリプトが動作していたUnityですが、 時代は変わりました。iOS 64bit対応で先行してiOS向けに導入されたIL2CPPも比較的安定した挙動を示すようにな
本記事は 【unityプロ技】 Advent Calendar 2019 16日目の記事です。 本記事で記載されたソースコードはすべてパブリックドメインです。 修正履歴 ・12/18 インスタンシングの説明を修正 はじめに Unityアプリを安定化させるために試行錯誤を繰り返しているyoship1639です。 社内ではフロント側の開発基盤構成選定や共通基盤開発、ロジック、物理シミュレーション、ビジュアル周り(カメラワーク、シェーダ、演出)、最適化等様々なタスクを担当しています。 Unityはゲーム開発を大幅に効率化できる素晴らしいツールですが、そのすべての最適化が自動で行われる訳ではない事はご存じかと思います。詰まるところ、開発者側が最適化の手法を知っていなければUnityアプリの安定した動作を確保することはできません。しかし、参考文献が散見されどこを見直せばいいのか分からなかったりリファ
このエントリーは、KLab Advent Calendar 2015 の16日目の記事です。 Unityを使ったゲーム開発業務に取り組んでいる、こうさかです。 デバッグ時に便利な、Unityのエディタ拡張を作ったので紹介します。 前提 Unity4.6.9&C#の環境で実装・確認してます。 開発中デバッグめんどくさい問題 もりもりコード書いて、いざ実行すると意図した挙動をしてくれないとき、バグっていそうな箇所にログを仕込む・デバッガを使い内部の状態を見る・気合でコード読むなどの調査をすると思います。しかし、いちいちログ出力コードを書いたり、デバッガを起動したりするのは面倒です。臭い場所が絞れている場合はコードを読めばわかりますが、そもそもあたりがつけられない場合に大量のコードを読むのも時間がかかります。特にゲームなど状態が多く複雑なアプリケーションを開発している場合、バグの調査に多くの時間
Unityのスプライトの描画順は「SortingLayer、Order In Layer、Z値」の順番で設定します。 このSortingLayerですが、実はLineRendererやParticleRenderer、Trail RendererといったSpriteRenderer以外にも適応されます。正しくは透明やブレンドを利用するレンダラーはSorting LayerがDefaultに設定されており、その描画順に影響を受けます。 そのため、Defaultより前のSortingLayerが指定されたスプライトがある場合、例えZ値的に手前にあったとしても奥に描画されます。 下の画像はスフィアを表示したMeshRendererにTransparentのシェーダーを付与して描画した結果です。球のZ値の方が手前に描画されているのですが、描画順はSortingLayerの順番に従って描画されていま
uGUIを使ってノベルゲームというか会話シーンを作る方法を紹介していきます。 実際は「宴」とか「ジョーカースクリプト」とか使うお勧めです。 というか、この記事は「手軽にノベルゲームとかRPG作るとか言うけど、その手のシステムをスクラッチするのは簡単だけど面倒なんだよゴルァ」という意味を込めて書いてます。既存品マジさいこー もっと単純なアプローチ(new) UIを並べる 文字列の表示部分を制御する 発展 もっと単純なアプローチ(new) tsubakit1.hateblo.jp UIを並べる まず文字を表示する所ですが、uGUIのTextを使います。 メニューバー>GameObject>UI>Panel で、UIのベースを作成します。 作成したCanvasを選択しCanvas ScalerをScale With Screen Sizeに変更、さらにScreen Match ModeをExpa
こんにちは! ガレージスタジオ部の岩間です。 『GREE Advent Calendar 2014』8日目の記事を書かせていただくのですが、実は私はエンジニアではありません! 12/1の記事で紹介していますが、私の所属するガレージスタジオ部では3ヶ月でNativeタイトルをリリースをするというプログラムを社内で行っています。 『Lv.2』は、プランナーとエンジニアがチームを組んで2か月でオリジナルタイトルをリリースするというプログラムなのですが、私の場合はタイミングなどの都合上、企画から実装までプランナーの私1人でチャレンジすることになりました。 今回の記事は、その2か月間に躓いた部分を中心にUnity4.6で実装された新UIエディタのことを書かせていただきます。 ◇目次 Unity4.6で実装された新UIエディタとは? ガレージ部で作ったゲームの紹介(新UIエディタ使用例) 開発環境 新
はじめに Prefab in Prefabは、Unityさんが公式で対応すると言っていますが、待ちきれなかったので作っちゃいました。 http://feedback.unity3d.com/suggestions/editor-nested-prefabs Play時だけではなく、Edit時にも動作します! バグ報告、ご意見、ご感想、お待ちしております。 http://twitter.com/kyubuns http://forum.unity3d.com/threads/244380-FREE-OpenSource-Prefab-in-Prefab-for-Unity4-x どんな時に使うの? 1つのPrefabの中に、似たようなボタンを2つ入れたい。 コピーして作ってしまうと、「ボタンの背景素材を入れ替える」とかなったときにめんどくさいなぁ・・・ でも、今のUnityはPrefabの中
はじめに 近年の GPU の進化に伴い 3D 周りの表現力がとても豊かになりました。そしてこの多彩な表現を可能としているのはシェーダによるところが大きく、シェーダを理解して書くことが出来ると、表現できることの幅がとても広がります。 Unity では素晴らしいことにシェーダを強力にサポートしていて、多様なデフォルトのシェーダに加え、カスタムシェーダを簡単に作るための土台が用意されています。しかしながら、パッとリファレンスや色々なサイトを見ただけでは、何がどうなっていて何をどうすれば良いのかなかなか分からないところがあります。 そこで、これから始める人の参考になればと思い、勉強しながら理解したことをまとめておこうと思います。調べながら書いているので、間違いなども多々あると思いますが、見つけた際はコメントや Twitter などでご指摘いただけると嬉しいです。 シェーダで色々出来る例 Unity
先日Unity公式のテストフレームワークが公開された。 Unity Test Tools 機能はUnit Test(単体テスト)とIntegration Test(統合テスト)の2種類で、Unit Testはメソッド単位の挙動の確認、Integration Testはアプリ挙動のテストを行える。 特にIntegration Testは実際にゲームを再生し値を検証するので、かなりそれっぽい挙動のテストが出来るかもしれない。(サンプルは玉を生成し接触判定云々のテストをしていた) Unit Test Unit Testを行う場合、Editorフォルダ以下にテストコードを作成し、メニュー>Unity Test Tool>Unit Test RunnerからUnit Test Runnerを開き、緑色の三角ボタンを押してテストを行う。 その際、テストコードは以下のフォーマットで記述する。publ
ゲームを作っていると、リプレイ機能が欲しくなることが多々あると思います。 全部動画にして撮れば間違いないのですがそうはいかないのでここではプログラムで状況再現する方法を投稿します。 大切なことを書き忘れていました。 Rigidbodyなど使うと、リプレイはずれてしまいます。 なので、物理演算などは自前のプログラムを使いましょう。 リプレイなのにサンプルがないとはどういうことだ! ということでサンプルを作りました。 http://www.unitygames.jp/game/ug7000800 プロジェクトはこちら http://www1.axfc.net/u/3115412 出てくるキューブをクリックで消すだけのサンプルです。 1.乱数のシードを保存しよう! 何においても乱数が毎回同じにならなければ結果は変わってしまいます。 ゲームモードで乱数のシードを決めるのか、読み込むのかを変えましょ
所謂「拡張メソッド」というものをUnityも使うことが出来る。 拡張メソッドは、要するに既にあるメソッドに機能を追加する方法。 継承でも追加したり出来るが、継承すると継承元を参照しているクラスを総とっかえしなければならないので、若干面倒…といった場合に使える。 追加方法は、以下のようなメソッドを作るだけ public static class 適当なクラス { public static void Method(this 拡張したいクラス self) { 適当な処理 } } これで拡張したいクラスに対して void Method() が追加される。 試しにTransformクラスを拡張し、rootオブジェクトもしくは特定のタグを持つオブジェクトを探す機能を追加してみる。 使い方はこんな感じ。 ラクガキ忍者制作秘話が参考になった
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
MacでUnityに同梱されているMonoDevelopを使っている方はUnityのバージョンアップ毎に以下のページで解説している手順をやっている事かと思います。 MacのMonoDevelopの日本語表示の文字化けの直し方(3.5に同梱されているものの場合) - 強火で進め http://d.hatena.ne.jp/nakamura001/20120306/1331046562 この手順、Unityのマイナーバージョンアップの時にも実行する必要があり、会社と自分のマシンで毎回やってるのは流石に面倒くさくなったのでターミナルで実行する用のコマンドを作りました。以下の記述をターミナルで実行すると書き換えてくれます。 ※意図的に2行にして有りますので1行にして実行しない様に注意して下さい。 sed -i -e "s/font = \"Lucida Grande 14\"/font = \"L
Mac版のUnityではPreferences(ショートカットは command+, )の「Always Show Project Wizard」にチェックを入れ、 ターミナルで以下のコマンドを実行すると複数起動が可能です。 open -n /Applications/Unity/Unity.app※起動時にoption(alt)キーを押しっぱなしすれば「Always Show Project Wizard」のチェックは必要無し。 しかし、この方法では毎回起動時にプロジェクトを選択しなといけないのでちょっとだけ面倒くさいと思っていました。 そんな思いを解決してくれる方法がこちらのブログに書かれていました。そう言えばUnityはコマンドラインからの起動時には開くプロジェクトを指定出来るのでした(すっかり忘れてましたw)。 Opening Multiple Unity3D Instances
【研究課題レポート抜粋】Jenkins+Unityで構築するスマフォアプリビルドサーバー | サイバーエージェント 公式エンジニアブログ
2020/10/18 エンジニア D4DJ Groovy Mix オープンベータ開始 2020/10/18 DJ 秋葉原(を夢見る)パラダイスレイディオ Vol.1 @ twitch配信 2020/10/25 エンジニア D4DJ Groovy Mix リリース 2020/11/14 DJ UNDER Freaks 2nd anniv. @ 渋谷Cafe W (渋谷WOMB 1F) ゲームプログラミング未経験の素人が、Unityを使って7日間1日1本クソゲーを作ってみて、気がついたことをまとめてみました。 ※2017/01/21 更新 VRでも7日間クソゲーを作り続けてみました! 【Unity】あの素人がOculusでVRクソゲーを7日間作り続けてみた | uinyan.com ※2013/12/28 更新 後日談も書きました!あわせてどうぞ! 【Unity】クソゲーを作って晒したら世界が
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く