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
gocon-2022-spring_sponsor-session.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Cluster, Inc.
April 27, 2022
Technology
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
gocon-2022-spring_sponsor-session.pdf
Cluster, Inc.
April 27, 2022
More Decks by Cluster, Inc.
See All by Cluster, Inc.
iOSDC2023_Cluster
clusterinc
1
2.7k
Cluster_Extended Tokyo_WWDC 2023
clusterinc
0
3.8k
2023-05-24_Qiita_Night_AWS_vol.2_Cluster
clusterinc
0
530
cluster_SwiftUI
clusterinc
0
1.2k
cluster_Android_JetpackCompose
clusterinc
0
1.1k
AvatarMakerを支える技術 / cluster_avatarmaker_engineering
clusterinc
0
1.7k
clusterでLOD対応したときの話 / cluster LOD
clusterinc
0
2k
クラスター株式会社紹介資料 / Company Deck
clusterinc
5
340k
Other Decks in Technology
See All in Technology
データ基盤をDataformで整えた話 〜 開発環境を添えて 〜
takapy
0
140
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
370
RSA暗号を手計算したくなること、ありますよね?? (20260615_orestudy6_rsa)
thousanda
0
130
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
470
AGENTS.mdとSkillsで始めるAIエージェント活用
sonoda_mj
2
190
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.9k
2026TECHFRESH畢業分享會 - Lightning Talk - 資料也要 CI/CD? 用 Airbyte 自動化資料同步
line_developers_tw
PRO
0
620
なぜ Platform Engineering の土台に Kubernetes を選ぶのか
r4ynode
1
550
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
4
1.1k
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
160
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
220
日本 Fintech 未来予測レポート 2027〜2028年(オリジナル版)
8maki
0
910
Featured
See All Featured
Writing Fast Ruby
sferik
630
63k
Paper Plane (Part 1)
katiecoart
PRO
0
8.8k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
190
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
230
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
140
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
200
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Transcript
ϝλόʔεΛࢧ͑Δٕज़ ʙUGCʹᷓΕΔ3DۭؒͷϦΞϧλΠϜ௨৴Λࢧ͑ΔGoʙ Ϋϥελʔגࣜձࣾ thara 2022-04-23 Go Conference 2022 Spring (Online)
Cluster, Inc. All Rights Reserved. ࣗݾհ 2 thara • Tomochika
Hara (ݪ Ѫ) • ѪݝࡏॅϦϞʔτϫʔΧʔ • ࢠͷ • झຯ • NESΤϛϡϨʔλ࣮ @zetta1985
Cluster, Inc. All Rights Reserved. ϝλόʔεϓϥοτϑΥʔϜ cluster ͱ 3
Cluster, Inc. All Rights Reserved. ϝλόʔεϓϥοτϑΥʔϜ cluster ͱ 4
Cluster, Inc. All Rights Reserved. ϝλόʔεϓϥοτϑΥʔϜ cluster ͱ 5
Cluster, Inc. All Rights Reserved. ࠓ͢͜ͱ 6 • ϝλόʔεΛߏ͢Δཁૉٕज़ •
ϝλόʔεϓϥοτϑΥʔϜͷόοΫΤϯυͱGo • room serverͷมભͱ෦ΞʔΩςΫνϟ
ϝλόʔεΛߏ͢Δཁૉٕज़
Cluster, Inc. All Rights Reserved. ϝλόʔεΛߏ͢Δཁૉٕज़ 8 3࣍ݩͷԾۭؒ UGC ΤίγεςϜ
Cluster, Inc. All Rights Reserved. 3࣍ݩͷԾۭؒ 9 • Unity3d •
ϦΞϧλΠϜಉظ • Ξόλʔͷ࢟ใ • ϘΠενϟοτ • ϞϊͷҐஔɾ͖
Cluster, Inc. All Rights Reserved. UGC ( = User Generated
Contents) 10 • Ξόλʔ • ϫʔϧυ • Ϋϥϑτ
Cluster, Inc. All Rights Reserved. ΤίγεςϜ 11 • ΞϓϦ௨՟ •
UGCͷചങ • Πϕϯτνέοτ • ΠϕϯτͰͷ͛મ
ϝλόʔεϓϥοτϑΥʔϜͷόοΫΤϯυͱGo
Cluster, Inc. All Rights Reserved. શମߏ 13
Cluster, Inc. All Rights Reserved. શମߏ 14 6($ ΤίγεςϜ ࣍ݩͷԾۭؒ
Cluster, Inc. All Rights Reserved. APIαʔόʔ 15 The Go gopher
was designed by Renée French. • Ϣʔβʔೝূ • ϑϨϯυ • UGCཧ • ೖࣨཧ • ܾࡁ
Cluster, Inc. All Rights Reserved. UGCύΠϓϥΠϯ 16 The Go gopher
was designed by Renée French. • VRM, glTF • reduction • native texture
Cluster, Inc. All Rights Reserved. glTF 17 • JSONʹΑΔ3DϞσϧγʔϯΛදݱ͢ΔσʔλϑΥʔϚοτ •
૬ޓӡ༻ɾ༰ྔɾϥϯλΠϜॲཧͷޮԽ • ʮ3Dʹ͓͚ΔJPEGʯ IUUQTHJUIVCDPN,ISPOPT(SPVQHM5'CMPCNBJOTQFDJ fi DBUJPO fi HVSFTHM5'@3(#@+VOFTWH
Cluster, Inc. All Rights Reserved. VRM 18 • ϓϥοτϑΥʔϜඇґଘͷ3DΞόλʔϑΝΠϧϑΥʔϚοτ •
glTF-2.0Λϕʔεʹ͍ͯ͠Δ • ώϡʔϚϊΠυɾඪ४ͷإૢ࡞ɾҰਓশࢹ࠶ݱɾϥΠηϯε IUUQTWSNEFW
Cluster, Inc. All Rights Reserved. VRMΛGoͰѻ͏ 19 https://github.com/qmuntal/gltf ΛϕʔεʹVRMʹରԠ type
VRMExtension struct{ ... } func init() { gltf.RegisterExtension("VRM", func(data []byte) (interface{}, error) { var vrm VRMExtensio n err := json.Unmarshal(data, vrm ) return vrm, er r } ) } func DecodeVRM(raw []byte) (*gltf.Document, *VRMExtension, error) { var doc gltf.Documen t if err := gltf.NewDecoder(bytes.NewReader(raw)).Decode(&doc); err != nil { // error handling } return &doc, doc.Extensions["VRM"].(*VRMExtension), nil }
Cluster, Inc. All Rights Reserved. reduction/GPU native texture 20 func
(c *converter) bufferViewImage ( src *gltf.Document, index uint32, dst *gltf.Document) (uint32, string, error) { bv := src.BufferViews[index ] buf, err := modeler.ReadBufferView(src, bv ) if err != nil { // error handling } // reduction & GPU native texture encoding converted, mimeType, err := converter.Convert(buf ) if err != nil { // error handling } newIndex := modeler.WriteBufferView(dst, gltf.TargetNone, converted ) return newIndex, mimeType, nil }
Cluster, Inc. All Rights Reserved. room server 21 The Go
gopher was designed by Renée French.
room serverͷมભͱ෦ΞʔΩςΫνϟ
Cluster, Inc. All Rights Reserved. pubsubͷΈ (room serverҎલ) 23 •
ۭؒಉظͰ͋Ε͜ΕͰे • messageͷׯবͰ͖ͳ͍ • = ࣮ݱͰ͖Δػೳʹ੍ݶ
Cluster, Inc. All Rights Reserved. pubsubͷΈ (room server) 24 •
୯ʹMQTTΛ͠ΌΔ͚ͩͷ GoTCPαʔόʔ • hack͢ΔͨΊͷԼ
Cluster, Inc. All Rights Reserved. Actor 25 • client͝ͱͷॲཧ͕Մೳʹ •
messageͷfiltering • LOD • Ξόλʔ࢟ใ • ϘΠε
Cluster, Inc. All Rights Reserved. Actor 26
Cluster, Inc. All Rights Reserved. Actor + global state 27
• globalͳঢ়ଶΛߋ৽Մೳʹ • ϫʔϧυΫϥϑτ • = ஔ͍ͨϞϊͷӬଓԽ
Cluster, Inc. All Rights Reserved. Actor + global state 28
Cluster, Inc. All Rights Reserved. Next…? 29 • ͍ͩͿͷཧղ͕ਐΜͩ •
൚༻తͳ݁߹͔ΒɺΑΓҙຯ Λ࣋ͬͨߏ • ߋͳΔ௨৴ྔݮ • UDPϕʔεͷಠࣗϓϩτίϧ
·ͱΊ
Cluster, Inc. All Rights Reserved. ·ͱΊ 31 • ϝλόʔεΛߏ͢Δཁૉٕज़ •
3࣍ݩͷԾۭؒ • UGC • ΤίγεςϜ • clusterͰͦͷόοΫΤϯυΛ Go Ͱ࣮ݱͯ͠·͢
IUUQTSFDSVJUDMVTUFSNVFOHJOFFS
Thanks for Listening