Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[Unity] Presetでちょっぴり楽するUI組み立て / Assemble the UI...
Search
lycoris102
August 03, 2019
Technology
0
2.5k
[Unity] Presetでちょっぴり楽するUI組み立て / Assemble the UI using Preset
Unity UIエンジニアリング勉強会
https://unity-ui-avengers-outgame.peatix.com/view
lycoris102
August 03, 2019
Tweet
Share
More Decks by lycoris102
See All by lycoris102
コンプリボドゲ2024 ジグザグザクザク 遊び方
lycoris102
0
280
イラレの生成AI + Unity (VectorGraphics) で遊びたい! / Illustrator Generative AI and Unity Vector Graphics
lycoris102
0
580
⌨️ a Key is Landmine 💣のデザイン / Design of "a Key is Landmine"
lycoris102
0
170
[Unity] プレビュー版 Cinemachine 3.0 紹介
lycoris102
1
1.6k
Unityとキャリアとコミュニティの話 / Unity, Carrier, Community
lycoris102
1
180
GOOLF!のデザイン⛳️ / Design of GOOLF!
lycoris102
0
630
[Unity] Mobile3D(2D)テンプレートとモバイル向けパッケージ紹介 / Mobile templates and packages for mobile
lycoris102
0
9.3k
期待値と言語化の話 / Verbalize Expectations
lycoris102
1
4.8k
Sweet^2 Honey Hive
lycoris102
2
1.4k
Other Decks in Technology
See All in Technology
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
950
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
5.8k
これからSREになる人と、これからもSREをやっていく人へ
masayoshi
6
4.1k
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
5.1k
High Performance PHP
cmuench
0
140
AWSでRAGを実現する上で感じた3つの大事なこと
ymae
3
1k
株式会社EventHub・エンジニア採用資料
eventhub
0
4.2k
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
480
Googleマップ/Earthが一般化した 地図タイルのイマ
mapconcierge4agu
1
200
RSNA2024振り返り
nanachi
0
500
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
2.7k
家電アプリ共通PF "Linova" のAPI利用とPostman活用事例ご紹介
yukiogawa
0
130
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
67
4.6k
Speed Design
sergeychernyshev
25
780
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
We Have a Design System, Now What?
morganepeng
51
7.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Statistics for Hackers
jakevdp
797
220k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Site-Speed That Sticks
csswizardry
3
370
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
99
18k
Automating Front-end Workflow
addyosmani
1367
200k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Transcript
Unity UIエンジニアリング勉強会 LT枠 青木とと@lycoris102 Presetで楽する UI組み立て ちょっぴり
だれ? 2 @lycoris102 青木とと ねんれい:29 しごと: 株式会社キッズスター かぞく: 妻と3歳の息子 ・Unityアンバサダー
・Gotanda.unity ・UnityDesigner’sCafe ・勉強会主催/サポート ・ゆるふわゲームクリエイター
だれ? 3 #unity1week でゲームを作るのも好きです https://unityroom.com/users/lycoris102
4 Preset Presetについて 今日のお題 Unity2018でリリースされた機能です
5 Presetについて コンポーネントの設定を保存できる コンポーネント右上の アイコンを選択し Select Preset Window を開いて [Save
current to…] 導線から現状の設定を保存できる
6 Presetについて 保存したPresetをコンポーネントに適応できる
7 Presetについて アセットの設定も保存/適応できる
8 Presetについて ProjectSettingsも保存/適応できる 設定配布したり、ビルド試す前にバックアップ取ったり、なんか色々使えそう
9 Presetについて 保存したPresetをデフォルト値に設定できる Presetを選択した状態で [Set as (ComponentName) Default]を適応
10 Presetについて 保存したPresetをデフォルト値に設定できる デフォルト値に設定したPresetは 自動的に適応される
11 Presetについて 保存したPresetをデフォルト値に設定できる デフォルト値は ProjectSettings -> PresetManager で確認できる
12 Presetについて 保存したPresetをデフォルト値に設定できる ただしHierarchy/Menu経由でCreateした場合に デフォルト値が適応されないので注意が必要 明示的にPresetを適当するかResetする必要がある
13 Presetについて 保存したPresetをデフォルト値に設定できる ただしHierarchy/Menu経由でCreateした場合に デフォルト値が適応されないので注意が必要 Unity2019.2 リリースノート uGUIオブジェクトをHierarchy/Menu経由で 生成したときに default
Presets を使用するよ! やったー!
14 Presetについて PresetをUI組み立てに 適応できそうなパターンを見ていくぞ!
15 パターン(1) 予期しない当たり判定の無効化 パターン(1) 予期しない当たり判定の無効化
16 パターン(1) 予期しない当たり判定の無効化 クリックすると俺たちの冒険が始まる… このLTのために素材探してタイトル画面だけ作りました……
17 パターン(1) 予期しない当たり判定の無効化 始まらない
18 パターン(1) 予期しない当たり判定の無効化 EventSystem下部から閲覧できるEventSystemビューから 現在のPointerEventDataを確認することができる
19 パターン(1) 予期しない当たり判定の無効化 犯人は前面に配置したFrame(枠)
20 パターン(1) 予期しない当たり判定の無効化 FrameのImageコンポーネントのraycastTarget = falseにして ようやく俺たちの冒険が始まる……
21 パターン(1) 予期しない当たり判定の無効化 FrameのImageコンポーネントのraycastTarget = falseにして ようやく俺たちの冒険が始まる…… raycastTargetに 気遣って生きたくない! Textコンポーネントでも結構やりがち
22 パターン(1) 予期しない当たり判定の無効化 Presetを使って解消する raycastTarget = false の状態にした Imageコンポーネント /
TextコンポーネントのPresetを作って デフォルト値に設定しておく プロジェクト作ったら最初にやりましょう!
23 パターン(2) デザインガイドラインを作る パターン(2) デザインガイドラインを作る
24 パターン(2) デザインガイドラインを用意する どういう場面でどういう文字設定にするか決まっていると 迷わなくてよいし、アプリ全体で統一感が出る 一覧できるSceneを作っておくと色々試せて良い
25 パターン(2) デザインガイドラインを用意する それぞれのTypographyルールを Presetで用意するアプローチ ちょっと待ちな! CanvasのSortOrder周りもこんな感じで定義しておくと良さそう
26 パターン(2) デザインガイドラインを用意する Preset Prefab 変更に追従できる 様々なコンポーネント 変更に追従できない 単一コンポーネント 責務が大きい
責務が小さい 既に配置したものに反映できない 配置済みのものに一括反映が可能 PrefabとPresetは一長一短
27 パターン(2) デザインガイドラインを用意する TextBody TextBody-Dialog TextBody-Default Text以外のコンポーネントの差異を Prefabで吸収する TextコンポーネントのTypographyルールを持つ (ルールをUnity上に置いておくことで適応しやすく)
変更時には各Prefabに適応する (修正範囲をなるべく小さく) チーム/中・大規模プロジェクトになると触る人が増えるのである程度ルールがあると破綻しない SceneB SceneA SceneC
28 パターン(3) 画像アセットのデフォルト設定を作る パターン(3) 画像アセットのデフォルト設定を作る
29 パターン(3) 画像アセットのデフォルト設定を作る Pixels Per Unit / Wrap Mode 等
素材毎に共通させたい項目は デフォルトPresetを作って インポート時に反映させる
30 パターン(3) 画像アセットのデフォルト設定を作る 【Unity】新機能のPresets について - ゴイサギ日記 より https://goisagi-517.hatenablog.com/entry/2018/05/28/090245 Texture/SpriteでPresetの設定を分けたいケース等
インポート時に任意のPresetを適応する AssetPostprocessor を用意するアプローチも!
31 まとめ Presetはいいぞ! UI組み立て以外でもバリバリ使えるはずなので活用していきましょう!
Unity UIエンジニアリング勉強会 LT枠 青木とと@lycoris102 Presetで楽する UI組み立て ちょっぴり