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.8k
[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
340
イラレの生成AI + Unity (VectorGraphics) で遊びたい! / Illustrator Generative AI and Unity Vector Graphics
lycoris102
0
780
⌨️ a Key is Landmine 💣のデザイン / Design of "a Key is Landmine"
lycoris102
0
200
[Unity] プレビュー版 Cinemachine 3.0 紹介
lycoris102
1
2k
Unityとキャリアとコミュニティの話 / Unity, Carrier, Community
lycoris102
1
210
GOOLF!のデザイン⛳️ / Design of GOOLF!
lycoris102
0
690
[Unity] Mobile3D(2D)テンプレートとモバイル向けパッケージ紹介 / Mobile templates and packages for mobile
lycoris102
0
10k
期待値と言語化の話 / Verbalize Expectations
lycoris102
2
4.9k
Sweet^2 Honey Hive
lycoris102
2
1.5k
Other Decks in Technology
See All in Technology
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
200
pprof vs runtime/trace (FlightRecorder)
task4233
0
160
VCC 2025 Write-up
bata_24
0
180
非エンジニアのあなたもできる&もうやってる!コンテキストエンジニアリング
findy_eventslides
3
910
実装で解き明かす並行処理の歴史
zozotech
PRO
1
320
How to achieve interoperable digital identity across Asian countries
fujie
0
110
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
1
880
KMP の Swift export
kokihirokawa
0
330
SwiftUIのGeometryReaderとScrollViewを基礎から応用まで学び直す:設計と活用事例
fumiyasac0921
0
140
AI駆動開発を推進するためにサービス開発チームで 取り組んでいること
noayaoshiro
0
160
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
23
17k
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Producing Creativity
orderedlist
PRO
347
40k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Scaling GitHub
holman
463
140k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
A Tale of Four Properties
chriscoyier
160
23k
It's Worth the Effort
3n
187
28k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
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組み立て ちょっぴり