Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
3か月前の自分に伝えたいUEFN / Verseの知見5選
Search
Kenta Iwasaki
October 18, 2023
Technology
0
1.4k
3か月前の自分に伝えたいUEFN / Verseの知見5選
2023年 10月13日 UEFN.Tokyo 勉強会 02 にて登壇
Kenta Iwasaki
October 18, 2023
Tweet
Share
More Decks by Kenta Iwasaki
See All by Kenta Iwasaki
31歳男性としての人生資本バランス & ウェルビーイング
iwaken71
0
110
Iwaken Lab. 説明スライド 2024.04.01
iwaken71
0
5.1k
Coding Stoicだった 自分を思い出す
iwaken71
0
190
HoloLensと謎解きの融合: 「TARGET」開発物語 - 企画から一般公開に向けての道のり
iwaken71
0
150
Iwaken Lab.紹介スライド2023.05.14
iwaken71
0
3.8k
Babylon.js書籍出版の裏側。ツイートから始まった奇跡の1年を振り返る
iwaken71
0
480
XR好き学生支援コミュニティIwaken Lab.が今熱い
iwaken71
0
200
オンライン時代の 技術仲間の増やし方 ~3つのコミュニティ事例を添えて~
iwaken71
0
880
やりたいことを仕事にして会社を楽しもう「会社員+コミュニティ型個人」 な生き方の勧め
iwaken71
1
360
Other Decks in Technology
See All in Technology
世界最速級 memcached 互換サーバー作った
yasukata
0
340
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
340
re:Invent2025 コンテナ系アップデート振り返り(+CloudWatchログのアップデート紹介)
masukawa
0
360
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
430
5分で知るMicrosoft Ignite
taiponrock
PRO
0
360
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
6
1.5k
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
380
re:Inventで気になったサービスを10分でいけるところまでお話しします
yama3133
1
120
AI-DLCを現場にインストールしてみた:プロトタイプ開発で分かったこと・やめたこと
recruitengineers
PRO
2
120
MapKitとオープンデータで実現する地図情報の拡張と可視化
zozotech
PRO
1
140
IAMユーザーゼロの運用は果たして可能なのか
yama3133
1
170
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
320
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
For a Future-Friendly Web
brad_frost
180
10k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to train your dragon (web standard)
notwaldorf
97
6.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Transcript
3か月前の自分に伝えたい UEFN / Verseの知見5選 10月13日 UEFN.Tokyo 勉強会 02 株式会社サイバーエージェント エンジニア
イワケン/岩﨑 謙汰/@iwaken71
イワケン / 岩﨑謙汰 / @iwaken71 iwaken7 1 2018年 Unityエンジニア VTuber
/ VRアプリ / Vキャラライブ 2020年 UEエンジニア バーチャルプロダクション 2023年 UEFNエンジニア New! Fortniteのレベルは現在109 (ゼロビルド勢) フォロワー 7050人 XR界の吉田松陰
UEFNと自分 2023.3 UEFN発表 2023.5 UEFN面白そう! 2023.7 個人Map公開 会社でもやるぞ! 企業様のマップ制作 2023.10
技術記事投稿 ・Mapを3つ公開 ・UEFN Qiita記事数ランキング1位 (6個/9個)
UEFNわからん Verseわからん 3か月前の自分 UE/Unityだったら こう実装できるのに...
今: UEFNプレゼンも作れるように
「UEFNプレゼン」を元に知見解説 3か月前の自分に伝えたいUEFN / Verseの勘所 • スライド公開予定 • 詳細記事公開予定 知識のインデックスを貼れると良いと思います
UEFN / Verse知見5選 • 早く知りたかった仕掛け3選 • Verseスタイルガイド • Verse UI実装
• マルチプレイでデバッグしよう • 生のコードを見よう
早く知りたかった Devices(仕掛け) 3選
174種類覚えるのは大変 • Devices (仕掛け)とは、島で特定のインタラクティブな体験を 設定することのできるクリエイティブ用ツールです。
早く知りたかった仕掛け3選 早く知りたかった仕掛けランキング • Mutator Zone • Prop Manipulator • Tracker
Mutator Zone 使い方 • このZoneに入ったら〇〇というイベントが取れる! • Zoneに入ったら武器の付与 他にできること • エモート検出
• 武器使用の禁止 • ジャンプ禁止 • 重力変更 • スピード倍率変更
Prop Manipulator 小道具操作機 使い方 • このPropがダメージを受けたら◦◦というイベントが取れる! • 撃たれたらスライドを進める 他の使い方 •
Propを破壊できなくする • Propを見せる/隠す • Propの体力変更
Tracker 使い方 • 目標の設定 左に出るミッション、クエスト的なもの 使い方パターン • 経過時間 • Score
• 撃破数 20種類以上活用可能
Verseスタイルガイド
Verseの書き方に慣れる Why: メンテナンスが容易で一貫性のあるVerse コード 1つだけ紹介 ・タイプには lower_snake_case ・その他のすべては PascalCase C#と逆なんだよなぁ...
https://dev.epicgames.com/documentation/ja-jp/uefn/verse-code-style-guide-in-unreal-editor-for-fortnite
あとで見ると良いかもです https://dev.epicgames.com/documentation/ja-jp/uefn/verse-code-style-guide-in-unreal-editor-for-fortnite
Verse UI実装
今回のVerse UI実装 • Texture • Text 現在のスライド を表示
Verse UI実装 初見ムズすぎ問題
サンプルコードを載せました • まずは写経から • 全体像を理解しながらコードを書くことで理解が進む
VerseUIで話すこと • Verse UIの全体像 • Canvas内配置の数値 • Textureの呼び出し方 • マルチプレイ対応でmap活用
[全体像] Verse UI classの依存関係
classの依存関係からわかること • playerに対してwidgetを付与する • widgetにはたくさんの種類がある canvas button_load (ボタンのUI要素) texture_block (TextureのUI要素)
text_block (文字のUI要素) • canvasの中にwidgetを複数持つことができる (厳密にはcanvas_slotの中) canvas texture Add Widget Player text
Widget配置の数値わからん問題
Widget作って数値を参考に
TextureをVerseから呼び出す ① TextureをAssets.digest.verseに登録する ② TextureをVerseコードで使用する Verse
Assets.digest.verseに登録する • Contents以下にフォルダを作る • 画像データをを保存する • Menuバーの[Verse]>[Build Verse Code]からビルドする
TextureをVerseコードで使用する方法 • using {/Verse.org/Assets}を追加 • {フォルダ名/module名}.{ファイル名/変数名}として使用可能 例 Textures.Slide001
なんでmapでWidget定義? • Player毎にWidgetを保持しているから • マルチプレイの時にこの実装じゃないと不具合が発生する • 私はWidget情報をまとめたclassの実装をmapのValueに設定しています。 mapとは、Key-Valueで情報を持つ プログラミングの書き方 canvas
texture Add Widget Player text
マルチプレイで デバッグしよう
PC + Switchでデバッグ • シングルプレイではうまくいっても、 マルチプレイでうまくいかないことも (特にUI実装) • Switchスペックでも動くMapに PC
Switch
生のコードを見よう
VSCode見る & 検索 • 仕掛けを右クリック「Open Definition in Visual Studio Code」
「Damaged」で検索
最後に • Xフォロー @iwaken71 よろしく! • 今年はUEFNの日本語記事30本は書きたい 参考にしていただけると嬉しいです! • 一緒にUEFN勉強・マップ制作する仲間をゆる募してます!
個人でも会社でも ゼロビルドしたい