PDF 参考ツイート Unityについてのノウハウをまとめました。パフォーマンス改善とデータサイズ削減を中心として書いています。https://t.co/J0LGIoNDA1#Unity #UnityTips— 坂本龍 (@SakamotoRyuu) August 5, 2019
UnityでUIを作ると言えば、まずはUnityEngine.UIです。 中身のことを考える必要もなく、ドカドカとImageやTextを置けば 動くので大変有り難いわけですが、不意に猛烈に処理が遅くなることがあります。 本記事では、たまたま見つけた現象と、そこから疑問を持って UnityEngine.UIの処理速度についていろいろ調べてみたことを、 技術部平山が書いてみます。 お急ぎの方のために結論を箇条書きにしておきましょう。 Graphic.color、RectTransform.sizeDelta、Text.textをいじると遅い 動かすだけでは大して遅くないが、動かさないよりは遅い リッチテキストは遅い 気になりましたら以下をどうぞ。 なお、Unityのバージョンは2017.4.8f1です。2018では改善している、 ということも多々ありそうですが、そのへんはご容赦ください。 UI
はじめに はめまして、カヤックの技術基盤チームの Unity エンジニアのアファトです。この記事はカヤックUnityアドベントカレンダー2016の21日目の記事になります。 ゲーム開発には機能やゲームプレイを実装するたびにシーンやコードだんだんコンプレックスになって、ターゲットFPSまでパフォーマンスが出なくるというパターンは開発中にはよくありますが、リリースするまではターゲットデバイスのスペックに応じて、特に低スペックなデバイスでゲームが遊べないほどもっさりしてる可能性があります。そのためにパフォーマンスチューニングが必要です。なぜパフォーマンスが出ないか、どうやって改善できるか、軽く紹介します。 FPSについて Frame per secondsというい用語は1秒の中にフレームが何回か更新されるという意味です。一般的なゲームには 30FPS か 60FPS か その間でフレームが更新さ
Exercise 冬太りを防ぐ分かれ道…痩せやすい身体を維持する生活習慣とは 更新日:2019.09.27 | ダイエットメニュー | フィットネス | 基礎代謝 | 急に冷え込む日が増え、屋外へ出かけるのがつらくなる季節。一方、食べ物はおいしいものが増え、体重は増加傾向になります。しかし、この季節ならではのダイエットを始めれば、冬本番になっても太りにくい身体を維持することも可能です。 室内でできる基礎代謝アップのエクササイズを 冬はとにかく外に出るのがおっくうになります。そのため、ランニングやウォーキングなどはダイエットには向きません。 そこで取り入れたいのが、基礎代謝をアップさせるエクササイズ。少ない活動量でも体脂肪が燃えやすくなるのでおすすめです。部屋の中でできるので、外に出る必要もありません。 おすすめのエクササイズをここでは一つご紹介します。 レッグレイズツイスト 仰向けに寝て、
最適化というか、改善する話です。 モバイル向けに作った時に妙に遅かった場合、この辺りの要因が絡んでいるケースが多い印象です。この辺りは作る際に確認しながら作ると、後々痛みが少なくて良いかなと思います。 目次 目次 プロファイラで確認する エディタ上で動かすプロファイラの注意点 メソッド毎の負荷について DrawMeshを抑える バッチングされない謎の理由 バッチングしやすくする為には フィルレートに気をつける よくあるフィルレートで死ぬパターン フィルレート対策 uGUIにおけるフィルレート対策 Unity 2Dにおけるフィルレート対策 解像度を下げる ゲーム画面は低解像度、UIは高解像度 バッチについて注意すべき事 フォントの扱いについて テクスチャ更新時のスパイク 2つの対策 UIを動かす(変形させる)コストについて 物理演算について その他… VSYNCについて Tweenとか Pi
パフォーマンスの確認と言えばInstrumentsが上がりますが、最近のXcodeはもっとシンプルにパフォーマンスをプロファイル出来るみたいです。 Xcodeでゲームを実行した状態で、真ん中付近のタブを押すと、CPUの使用率やメモリ消費量、それにフレーム単位のGPUとCPUの負荷等が判るようになっています。 コレを使えば、GPUの負荷が高ければGPU・CPUの負荷が高ければCPU、アプリが落ちるならメモリ等々、何がボトルネックになっているのか概ね把握する事ができます。 また、このFPSチェック時にAnalyzeボタンをクリックすると、どの描画時に一番時間がかかっているのかが判りやすく表示されます。詳細を確認すると、負荷の高い処理は何を描画している最中なのか等も分かり便利です。 ドローコールを一つ一つ確認し、どのタイミングで描画されているかを確認する事も簡単に可能です。 上手く使えば、負荷が
12/09/05 監視対象のWebサービスのURLを間違えていたため修正しました RailsのAdvent Calendarを待ちわびていました. 今回は,WEB+DBの最新号のRails高速化記事で紹介されていたパフォーマンス監視サービスのNew Relicを使ってみた話です. New Relicは.newrelic_rpmというgemをインストールすることにより,レスポンスタイムやスロークエリなど,パフォーマンスに関するさまざまな統計情報をNew Relicのサイトでみることができます. Railsに限らずPythonやJavaなどいろいろな言語に対応しているようです. さらに,HerokuやDotCloudなどのPaaSにも対応していてやばい. HerokuのNew Relicプラグイン Herokuにホストしたアプリケーションを監視するためにはNew Relicプラグインを導入する
C#ではメモリ管理はガベージコレクション(GC)ですので、deleteする必要が無く気楽です。 が、GCはメモリ回収時に全動作を止める(所謂Stop the world)事が良く知られています。 デスクトップ環境向けのプログラムを書く分にはあまり気にしなくても良いところなのですが、スマートフォン向けのプログラムの場合、ちょっと問題です。 (実はサーバー環境でも問題なのですが) スマートフォンは性能が上がってきているとはいえ、デスクトップに比べるとまだまだ非力です。 ガベージコレクタがメモリを回収、つまり使われていない領域を開放する処理は案外重たいため、パフォーマンス上悪影響を与える事が多々あります。 パフォーマンス上の目安 あくまで個人的な目安ですが、GC間隔が1秒を超えていればチューニングの必要は無いと考えています。 逆に言えば1秒を切っている場合、無駄なオブジェクト生成が潜んでいると見
WordPressのパフォーマンス向上の目的で、パフォーマンスチューニングを始めました。 httpd層では、別記事に記載したように、mod_chche、mod_disk_cacheを使用して、最低レベルの対策を実施しています。もちろん、まだ上のレベルがありますが、ここでは、DB層のパフォーマンスチューニングを実施します。 WordPressですので、DB層はMySQLです。現時点で最新のバージョン5.5.10を使用しています。 さて、まずは、現状を知ることから。 そこで、MySQLTuner を使用してみます。MySQLTuner は稼働中のMySQLの設定情報やログ情報からセキュリティ、パフォーマンスに関する診断結果と推奨情報を提供してくれるperlスクリプトです。 実際の利用には、まずは MySQLTuner をダウンロードします。 [root ~]# wget mysqltuner.
2014.05.22 ITニュース スマートデバイスやクラウド技術の急速な発展によって、次々と新たなテクノロジービジネスが生まれている。BtoC市場では、コミュニケーションツール『LINE』やアイコン着せ替えアプリ『CocoPPa』などの国産サービスが海外進出に成功しているが、BtoB市場はどうだろう。 国内市場こそ、2016年に始まるマイナンバー制度やメガバンク各社のシステム更新需要、民間企業のデータ経営へのシフトなどに後押しされ、リーマン・ショック以降停滞していたIT投資が回復基調にあるが、国際市場で日本のシステムベンダーの存在感を感じる機会はほとんどない。 ではなぜ、SalesforceやAWSのような世界的なBtoBサービスは欧米で生まれ、日本からは生まれないのか。 先ごろ出版大手KADOKAWAとの経営統合を発表したドワンゴをはじめ、数々の有名企業で取締役を担う夏野剛氏に、エンタ
ユーザーに届ける価値を徹底的に追求する マーケティングを提供します © Copyright 2022 バズ部. All rights reserved. WordPressの数少ない欠点の一つは、サイトの表示速度が遅くなりがちなことである。あなたも読み込みが遅いサイトに出くわし、見るのをやめた経験があるのではないだろうか。 サイトの表示速度が遅くなるとユーザビリティが低下し、SEOにも悪影響を与えかねない。 米国のSEO会社の調査によると、40%のユーザーが、読み込み時間が3秒を超えると訪問を諦めてしまう。また、Googleは、「良好なユーザー体験を提供するためには、LCP2.5秒以下を目指すべき」と公言している。 ※LCP(Largest Contentful Paint)とは、ページのメインコンテンツが読み込まれるまでの時間を指す。 そこで今回は、3秒以内に読み込まれるサイトを目標に、
もりよしさんにSkypeで教えてもらったのですが、Mac版のSkypeクライアントってデータベースにsqlite3を使用しているんですね。少なくとも3年前には既に知られているネタみたいなのですが、ぜんぜん知りませんでした。 http://d.hatena.ne.jp/shishimaruby/20101214/1292288183 というわけで、Mac版のSkypeをお使いの方は ~/Library/Application Support/Skype/(自分のアカウント名)/ 以下にsqlite3のデータベースファイルがあるので、Skypeを一度終了した状態で sqlite3 main.db VACUUM sqlite3 main.db REINDEX という感じでVACUUMとREINDEXを実行すると劇的にパフォーマンスが改善します。特に仕事とかで大量のログを見ている方におすすめです。
https://blog.twitter.com/2013/new-tweets-per-second-record-and-how 少し前、8月のTwitterエンジニアブログのエントリーですが、アーキテクチャー変更について触れているポストなので、取り上げてみます。 1) 背景 2010年のワールドカップ時点でのトラフィックがさばききれなかった時点での状況は、 200人のエンジニアが、単一のRailsのコードベースで大量のユーザとトラフィックに対応する構造であった。 MySQLのストレージシステムは、一つのマスタと一時的にシャーディングされるスレーブの構成で、読込み/書込みともにスループットの限界にきている箇所がでていた。 フロントエンドのRubyマシンは期待通りのトラフィックをさばけていなかったが、技術的な解決ではなく、サーバの追加でしのいでいた。 コードベースは、可読性とパフォーマン
JavaScriptなどのスクリプト言語は動作が遅く、最適なパフォーマンスを得るにはC/C++で実装しなければならないという常識に挑んだ先進的な講演が話題になっています。この話題の発端は2012年10月7日から10月8日までベルリンで開催されたJSConf.euでFelix Geisendörfer氏が行った講演です。 彼の講演の題材はnode.jsからMySQLに接続する為のバインディングのパフォーマンスに着目しています。2010年当時、node.jsにはMySQLのバインディングが存在しておらず、増井さん作のnode-mysqlモジュールが開発中の状態でした。このモジュールはJavaScriptでバイナリを解析しておりJavaScriptのみで開発されていました。この状況を受けてFelix氏が新たにnode-mysqlモジュールを新規に開発を始めました。このモジュールもJavaScri
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く