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
SceneKitでふんわりした影を描画する/potatotips58
Search
noppefoxwolf
January 28, 2019
Programming
2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SceneKitでふんわりした影を描画する/potatotips58
noppefoxwolf
January 28, 2019
More Decks by noppefoxwolf
See All by noppefoxwolf
High performance GIF playback/iOSDC25
noppefoxwolf
1
580
Spice up your notifications/try!Swift25
noppefoxwolf
3
830
iOSの隠されたAPIを解明し、開発効率を向上させる方法/iOSDC24
noppefoxwolf
2
1.3k
今から理解するApp Intentエコシステム/WWDC24Recap
noppefoxwolf
0
70
既存アプリをvisionOS対応してリリースした話/visionOS LT vol5
noppefoxwolf
0
230
UIのブラックボックスを探る/iOSDC23
noppefoxwolf
3
5k
CoreGraphicsでドット絵を描こう/iOSDC22
noppefoxwolf
0
3.2k
ランタイムデバッグのススメ/iOSDC21
noppefoxwolf
1
5.6k
google/mediapipe で始めるARアプリ開発/iOSDC2020
noppefoxwolf
1
1.7k
Other Decks in Programming
See All in Programming
RTSPクライアントを自作してみた話
simotin13
0
610
Oxlintのカスタムルールの現況
syumai
6
1.1k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
290
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
150
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
410
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
180
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
200
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
200
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
200
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
710
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
700
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Abbi's Birthday
coloredviolet
2
8.1k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Test your architecture with Archunit
thirion
1
2.3k
Design in an AI World
tapps
1
250
How to build a perfect <img>
jonoalderson
1
5.7k
Transcript
4DFOF,JUͰ;ΜΘΓͨ͠ӨΛ࡞Δ QPUBUPUJQT
ϥΠϒ৴ΞϓϦ1PDPDIB IUUQTNFEJVNDPNQPDPDIBFOHJOFFSJOH
OPQQF !OPQQFGPYXPMG ! 1PDPDIBJ04ΤϯδχΞ " ͖ͭͶ͔Θ͍͍ # J04%$ͰඳըपΓͷΛͨ͠ $ ࠷ۙ"3ʹڵຯ͋Γ
ϥΠϒ৴ΞϓϦ
J04͔ΒVTE[Λαϙʔτ VTE["QQMFͱ1JYFSͰڞಉ։ൃͨ͠%ϑΝΠϧϑΥʔ Ϛοτ
'JMFͰϓϨϏϡʔ "3ஔՄೳ
'JMFͷϓϨϏϡʔͷ Өʹ
88%$Ͱ$POUBDU4IBEPXͱදݱ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED UJNF
$POUBDU4IBEPXʢ ৮Өʣͱ ײɾॏͳΓײΛग़ͨ͢Ίͷ ͷ IUUQTUXJUUFSDPNVOSFBMFOHJOFKQTUBUVT
$POUBDU4IBEPXͬͯΈ͍ͨʂ
4DFOF,JUͰӨΛ͚ͭͯΈΔ w 4$/-JHIUͷDBTUT4IBEPXΛ0/ʹ͢Δ w EJSFDUJPOBM͔ɺTQPUλΠϓΛ͏ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOTDFOFLJUTDOMJHIU DBTUTTIBEPX
// ΦϒδΣΫτ let scene = SCNScene(named: "stratocaster.scn")! // ϥΠτ let
light = SCNLight() light.type = .directional light.castsShadow = true let lightNode = SCNNode() lightNode.light = light // চ let floor = SCNFloor() ...
4$/-JHIUͰ͖ͬΓͨ͠Өʹ ͳͬͯ͠·͏ɻ
ҰԠ4IEBPX3BEJVT͋Δ͕ɺϘ Χ͠ํ͕ࡶ lightNode.light!.shadowRadius = 16 lightNode.light!.shadowSampleCount = 16
άά͍ͬͯΔͱɺήʔϜͷهࣄ͕ώοτ IUUQCMPHTJNPOSPESJHVF[GSBSUJDMFTBGFXTDOUFDIOJRVFFYBNQMFTIUNM
TDSFFOTQBDFBNCJFOUPDDMVTJPO ମ͕ۙͯ͠ڱ͘ͳͬͨͱ͜Ζ෦ͷ۱ͳͲʹɺपғͷޫʢڥ ޫʣ͕ःΒΕΔ͜ͱʹΑͬͯӨ͕ݱΕΔݱΛΞϯϏΤϯτɾΦΫ ϧʔδϣϯʢڥःṭڥด࠹ɺӳBNCJFOUPDDMVTJPOʣͱݺ Ϳɻ44"0%ը໘ͷϨϯμϦϯά݁ՌʹޙॲཧΛ͔͚ΔϙετΤ ϑΣΫτͷҰछͰ͋ΓɺٖࣅతͳϨϯμϦϯά݁ՌʹՃ͢ΔͷͰ ͋Δɻ IUUQTKBXJLJQFEJBPSHXJLJ44"0
44"0 camera?.screenSpaceAmbientOcclusionIntensity = 5 camera?.screenSpaceAmbientOcclusionNormalThreshold = 0.1 camera?.screenSpaceAmbientOcclusionDepthThreshold = 0.08
camera?.screenSpaceAmbientOcclusionBias = 0.33 camera?.screenSpaceAmbientOcclusionRadius = 3.0
໘Ҏ֎ͷՕॴͷӨ͋Δ
;ΜΘΓͨ͠ӨࣗલͰඳը͠ͳ͍ ͱμϝͦ͏
4$/5FDIOJRVF w ϚϧνύεϨϯμϦϯάͷͨΊͷΫϥε ը໘̍ճͷߋ৽ͷؒʹɺҟͳΔγʔϯΛෳճϨϯ μϦϯάͯ͠߹ͨ݁͠ՌΛදࣔ͢Δػೳɻ .FUBM0QFO(-&4ͰγΣʔμΛॻ͘ࣄ͕ग़དྷΔɻ ೖྗʹγʔϯͷ৭ใਂใ͕͑Δ
ͬͯΈͨ ΧϝϥΛೋͭஔͯ͠ɺԼ͔ΒͷೖྗΛਂʹม͠ ͯϒϥʔΛ͔͚Δɻ
IUUQCMPHTJNPOSPESJHVF[GSBSUJDMFTBGFXTDOUFDIOJRVFFYBNQMFTIUNM
Ө͚ͩ࡞ͬͯΈͨ w Α͘ΈΔͱϞΞϨʢࣶ༷ʣ ͕ʜ w ͦͦΧϝϥஔ͘ͷʜ w γΣʔμਅ໘ʹॻ͜͏ͱ͢Δ ͱαΫοͱग़དྷͳͦ͏
ସҊΛ୳͢
HPCP 4$/-JHIUͷӨΛࣗલͷը૾Ͱඳ ը͢Δػೳ ӨΛൃࣹ͢ΔϥΠτ ϦΞϧλΠϜͰߋ৽ग़དྷͳ͍
HPCP w 4$/5FDIOJRVFͰਂը૾ʹม w 4$/7JFXͷTOBQTIPUͰ6**NBHFΛऔಘ w $*'JMUFSͰϒϥʔΛ͔͚Δ w 4$/-JHIUͷHPCPʹը૾Ληοτ
݁Ռ
՝ w Өͷೱ୶ͳͲ·ͩ'JMFͷදݱʹୡ͍ͯ͠ͳ͍ w 4$/5FDIOJRVFͰશͯ݁ग़དྷΔ͔ w TIBEFS.PEJpFSTͰϥΠςΟϯάγΣʔμ͕࿔ΕΔ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ