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
3か月前の自分に伝えたいUEFN / Verseの知見5選
Search
Kenta Iwasaki
October 18, 2023
Technology
0
1.1k
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
Iwaken Lab. 説明スライド 2024.04.01
iwaken71
0
2.5k
Coding Stoicだった 自分を思い出す
iwaken71
0
150
HoloLensと謎解きの融合: 「TARGET」開発物語 - 企画から一般公開に向けての道のり
iwaken71
0
120
Iwaken Lab.紹介スライド2023.05.14
iwaken71
0
3.7k
Babylon.js書籍出版の裏側。ツイートから始まった奇跡の1年を振り返る
iwaken71
0
400
XR好き学生支援コミュニティIwaken Lab.が今熱い
iwaken71
0
160
オンライン時代の 技術仲間の増やし方 ~3つのコミュニティ事例を添えて~
iwaken71
0
810
やりたいことを仕事にして会社を楽しもう「会社員+コミュニティ型個人」 な生き方の勧め
iwaken71
1
270
HoloLens2とMetaQuest2どちらも動くWebXRアプリをBabylon.jsで作る
iwaken71
1
1.4k
Other Decks in Technology
See All in Technology
コロプラのオンボーディングを採用から語りたい
colopl
5
1.3k
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
270
あなたの人生も変わるかも?AWS認定2つで始まったウソみたいな話
iwamot
3
850
Evolving Architecture
rainerhahnekamp
3
250
EMConf JP の楽しみ方 / How to enjoy EMConf JP
pauli
2
150
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
1
140
embedパッケージを深掘りする / Deep Dive into embed Package in Go
task4233
1
210
ABWGのRe:Cap!
hm5ug
1
120
2025年のARグラスの潮流
kotauchisunsun
0
790
When Windows Meets Kubernetes…
pichuang
0
300
「隙間家具OSS」に至る道/Fujiwara Tech Conference 2025
fujiwara3
7
6.5k
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
How to Ace a Technical Interview
jacobian
276
23k
Writing Fast Ruby
sferik
628
61k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
Documentation Writing (for coders)
carmenintech
67
4.5k
Building an army of robots
kneath
302
45k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Designing for humans not robots
tammielis
250
25k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
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勉強・マップ制作する仲間をゆる募してます!
個人でも会社でも ゼロビルドしたい