Skip to content

ADAWalkieTalkie/Glayer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

756 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Glayer - 곡간 μ†μ—μ„œ μ‹œλ„€λ§ˆν‹±ν•œ λ¬΄λ“œλ₯Ό λ””μžμΈν•˜κΈ°

Go to download: AppStore v1.0.0

Glide Through Layers, Glayer

3D 곡간 속에 이미지λ₯Ό λ°°μΉ˜ν•˜κ³ , μ‚¬μš΄λ“œλ‘œ 감정을 λ”ν•˜μ„Έμš”. μ˜ν™”μ²˜λŸΌ 곡간을 μ—°μΆœν•˜λŠ” μƒˆλ‘œμš΄ λ¬΄λ“œλ³΄λ“œ, Glayer

GlayerλŠ” 이미지λ₯Ό 3D 곡간에 자유둭게 λ°°μΉ˜ν•˜κ³ , μ‚¬μš΄λ“œλ₯Ό 더해 μ˜ν™”μ˜ λ¬΄λ“œλ₯Ό κ΅¬μ„±ν•˜λŠ” 감각적 μ°½μž‘ νˆ΄μž…λ‹ˆλ‹€. λ‹Ήμ‹ λ§Œμ˜ 세계λ₯Ό ν•œ μž₯면처럼 κ΅¬μ„±ν•˜κ³ , λͺ°μž…ν˜•μœΌλ‘œ κ°μƒν•΄λ³΄μ„Έμš”!

μ£Όμš” κΈ°λŠ₯

  • 2D 이미지 뢈러였기 및 λˆ„λΌ 제거 지원
  • 이미지 λ ˆμ΄μ–΄λ§μœΌλ‘œ 깊이감 μžˆλŠ” 곡간 ꡬ성
  • 배경음과 효과음으둜 λ¬΄λ“œ λ””μžμΈ
  • Full Immersive View둜 μ™„μ„±λœ 곡간 μ²΄ν—˜
  • μ™„μ„±λœ 곡간 λ¬΄λ“œλ³΄λ“œμ— 직접 λ“€μ–΄κ°€ 감상

GlayerλŠ” λ‹¨μˆœν•œ νŽΈμ§‘ 도ꡬ가 μ•„λ‹Œ, λ‹Ήμ‹ μ˜ 감정과 상상을 κ³΅κ°„μœΌλ‘œ ν‘œν˜„ν•˜λŠ” μƒˆλ‘œμš΄ μ‹œλ„€λ§ˆν‹± ν”Œλž«νΌμž…λ‹ˆλ‹€.


About Glayer

Team WalkieTalkie

Problem

μ˜ν™” λ―Έμˆ κ°λ…μ€ λ¬΄λ“œλ³΄λ“œλ₯Ό λ§Œλ“€μ–΄κ°€λ©°, κ°λ…μ—κ²Œ β€˜μ΄λ ‡κ²Œ λ§Œλ“€λ©΄ λ κΉŒμš”?’ ν•˜κ³  μ»¨νŽŒμ„ λ°›μœΌλŸ¬ κ°‘λ‹ˆλ‹€.
λ¬Έμ œλŠ” μ΄λ•Œ λ°œμƒν•˜κ²Œ λ©λ‹ˆλ‹€.
*λ¬΄λ“œλ³΄λ“œ: μ˜ν™”μ˜ λΆ„μœ„κΈ°λ₯Ό ν•œ 곳에 λͺ¨μ€ 이미지 λͺ¨μŒμ§‘
κ°λ…μ˜ 머릿속 이미지와 λ―Έμˆ κ°λ…μ΄ λ§Œλ“  λ¬΄λ“œλ³΄λ“œκ°€ 달라
β€œμ΄λŸ° λŠλ‚Œμ΄ μ•„λ‹Œλ°β€¦?β€λΌλŠ” ν”Όλ“œλ°±μ΄ 계속 λ°˜λ³΅λ©λ‹ˆλ‹€.

감독은 곡간을 μ‹€μ œλ‘œ 보기 μ „κΉŒμ§€ 상상이 잘 μ•ˆ 되고,
λ―Έμˆ κ°λ…μ€ κ·Έ 간극을 쀄이기 μœ„ν•΄ 계속 보완해야 ν•˜μ£ .

μ΄λ ‡κ²Œ λŠμž„μ—†μ΄ μ΅œμ’…, μ΅œμ΅œμ’…, μ§„μ§œ μ΅œμ’… λ²„μ „μ˜ λ¬΄λ“œλ³΄λ“œλ₯Ό λ§Œλ“€λ©΄μ„œ
정말 λ§Žμ€ μ‹œκ°„κ³Ό μ—λ„ˆμ§€λ₯Ό 쏟게 λ©λ‹ˆλ‹€.
ν•˜μ§€λ§Œ 이 과정은 μ˜ν™” μ œμž‘μ— μžˆμ–΄ ν•„μˆ˜μ μ΄κΈ° λ•Œλ¬Έμ— ν”Όν•  μˆ˜λŠ” μ—†λŠ”λ°μš”

Solve

κ·Έλž˜μ„œ μ €ν¬λŠ” μ˜ν™” λ―Έμˆ κ°λ…μ—κ²Œ λ°˜λ³΅λ˜λŠ” ν”Όλ“œλ°±μ„ 쀄일 수 μžˆλŠ”
μƒˆλ‘œμš΄ μ›Œν¬ν”Œλ‘œμš° Glayerλ₯Ό μ œμ•ˆν•©λ‹ˆλ‹€.


πŸͺΌ Target User

Primary Target

πŸŽ¬λ―Έμˆ κ°λ…

  • κ°λ…μ—κ²Œ 곡간 톀, λ¬΄λ“œ, 감정적 λΆ„μœ„κΈ°λ₯Ό 더 μ •ν™•ν•˜κ²Œ 전달해야 ν•˜λŠ” μ‚¬λžŒλ“€
  • κ³΅κ°„λ””μžμΈ, μ†Œν’ˆ λ“± μ˜ν™” 속 비주얼적인 μš”μ†Œλ₯Ό μ±„μ›Œλ‚˜κ°€μ•Ό ν•˜λŠ” μ‚¬λžŒλ“€
  • SceneΒ·Set λΆ„μœ„κΈ°λ₯Ό λΉ λ₯΄κ²Œ μ‹œκ°μ Β·κ³΅κ°„μ μœΌλ‘œ ꡬ성해야 ν•˜λŠ” νŒ€

Secondary Target

πŸΏμ—°μΆœνŒ€

  • λ¬΄λ“œλ³΄λ“œ 기반 ν”Όλ“œλ°± μ‹œκ°„ λ‹¨μΆ•ν•˜λ©΄ 쒋은 μ‚¬λžŒλ“€
  • 감각적 톀을 κ³΅κ°„μ μœΌλ‘œ μ¦‰μ‹œ 이해할 ν•„μš”κ°€ μžˆλŠ” μ—­ν• 

🟦 Features

2D 이미지 뢈러였기 및 λ°°κ²½ μ œκ±°ν•˜κΈ° 이미지 λ ˆμ΄μ–΄λ§μœΌλ‘œ 깊이감 μžˆλŠ” 곡간 κ΅¬μ„±ν•˜κΈ°
이미지 νŒŒμΌμ„ 가져와
배경을 μ†μ‰½κ²Œ μ œκ±°ν•˜κ³  곡간에 λ°°μΉ˜ν•˜κΈ°
λ‹€μΈ΅ ꡬ쑰의 이미지 배치둜
κ³΅κ°„μ˜ κΉŠμ΄μ™€ μ‹œμ μ„ 자유둭게 μ—°μΆœν•˜κΈ°
Image Image
μ‚¬μš΄λ“œ 기반 감정 λ””μžμΈν•˜κΈ° Full Immersive View둜 곡간 μ²΄ν—˜ν•˜κΈ°
배경음과 νš¨κ³ΌμŒμ„ 곡간에 더해
감정적 λͺ°μž…감 κ°•ν™”ν•˜κΈ°
μ™„μ„±λœ 곡간을 Vision Proμ—μ„œ
κ°μƒν•˜κ³  κ³΅μœ ν•˜κΈ°
Image Image

🟦 Tutorial

이미지 λˆ„λΌλ”°κΈ° 이미지 λ°”λ‘œ μΆ”κ°€ν•˜κΈ° 이미지 μΆ”κ°€ μ™„λ£Œ
Image Image Image
에셋 λ°°μΉ˜ν•˜κΈ° 이미지 νšŒμ „ν•˜κΈ° 이미지 μŠ€μΌ€μΌ μ‘°μ ˆν•˜κΈ°
Image Image Image

πŸͺΌ Member

이가원
(@Monica LEE)
κ³ μŠΉμ•„
(@ohesko)
졜윀
(@Yoon)
Image Image Image
μ˜€μ„Έκ΄‘
(@Potalzz)
μ •λ―Όμ§€
(@wjdalswl)
차봉쀀
(@bongjooncha)
Image Image Image

πŸŽ₯ User Flow

Image

πŸ”· Issue Naming Rule

[Feat] - μ΄μŠˆλ‚΄μš©

ex) [Feat] - 였브젝트 ν™•λŒ€ Custom gesture κ΅¬ν˜„

πŸ”· PR Naming Rule

feat: μž‘μ—…λ‚΄μš©

ex) feat: 였브젝트 ν™•λŒ€ Custom gesture κ΅¬ν˜„

πŸ’™ Commit Rule

  • Branch Naming feat/#이슈번호/μž‘μ—… λ‚΄μš©(Camel case μ‚¬μš©)

  • Commit Message feat: μž‘μ—… λ‚΄μš©

πŸ“– Development Environment and Using Library

  • Development Environment

  • πŸ“˜ Library
라이브러리 μ‚¬μš© λͺ©μ  Version Management Tool
Lottie μ• λ‹ˆλ©”μ΄μ…˜ κ΅¬ν˜„ 4.5.2 SPM

  • πŸ”Ή framework
ν”„λ ˆμž„μ›Œν¬ μ‚¬μš© 이유
SwiftUI UI κ΅¬ν˜„ (라이브러리, 에디터, ν† μŠ€νŠΈ λ“± 전체 UIλ₯Ό μ„ μ–Έμ μœΌλ‘œ ꡬ성)
RealityKit μ΄λ¨Έμ‹œλΈŒ 3D 씬 ꡬ성, μ—”ν‹°ν‹°(이미지/μ‚¬μš΄λ“œ 였브젝트/ν”Œλ‘œμ–΄ λ“±) λ°°μΉ˜Β·μ΄λ™Β·νšŒμ „, 머티리얼/μ• λ‹ˆλ©”μ΄μ…˜ 처리
RealityKitContent λ²ˆλ“€μ— ν¬ν•¨λœ κΈ°λ³Έ 3D λ¦¬μ†ŒμŠ€(.usdz λ“±) λ‘œλ“œ 및 μƒ˜ν”Œ μ—”ν‹°ν‹° μ‚¬μš©
AVKit μ‹œμŠ€ν…œ AVPlayer UI 연동 및 μ˜μƒ/μ˜€λ””μ˜€ μž¬μƒ ν™”λ©΄ ꡬ성(ν•„μš” μ‹œ ν”Œλ ˆμ΄μ–΄ λ·° 제곡)
AVFoundation μ˜€λ””μ˜€ 파일 메타데이터/길이/μƒ˜ν”Œ 읽기, νŒŒν˜• 계산, μ‚¬μš΄λ“œ μž¬μƒ μ œμ–΄ λ“± μ €μˆ˜μ€€ λ―Έλ””μ–΄ 처리
UIKit UIPasteboard, ν…μŠ€νŠΈ μž…λ ₯ μ»€μŠ€ν…€(SelectAllTextField), 일뢀 iOS 곡용 μ»΄ν¬λ„ŒνŠΈ/μœ ν‹Έ μ‚¬μš©
CryptoKit 에셋 파일의 SHA-256 ν•΄μ‹œ κ³„μ‚°μœΌλ‘œ contentHash@filename ν˜•νƒœμ˜ μ•ˆμ •μ μΈ assetId 생성
ImageIO 이미지 메타데이터/크기 쑰회, μΈλ„€μΌΒ·λΉ„νŠΈλ§΅ 정보 λ“± μ €μˆ˜μ€€ 이미지 처리
UniformTypeIdentifiers 파일 μž„ν¬νŠΈ/λ“œλž˜κ·Έ&λ“œλ‘­ μ‹œ UTType 기반으둜 μ΄λ―Έμ§€Β·μ‚¬μš΄λ“œ λ“± 지원 ν˜•μ‹ 필터링
PhotosUI PhotosPickerλ₯Ό 톡해 사진 μ•±μ—μ„œ 이미지/λ™μ˜μƒ 선택 ν›„ 라이브러리둜 κ°€μ Έμ˜€κΈ°
SwiftData ν”„λ‘œμ νŠΈ/씬/ν™˜κ²½ μƒνƒœ λ“± 둜컬 데이터 λͺ¨λΈμ„ μ„ μ–Έμ μœΌλ‘œ μ •μ˜ν•˜κ³  μ˜μ† μ €μž₯Β·λ‘œλ“œ

πŸ“‚ Foldering

└── πŸ“‚ Glayer
    β”œβ”€β”€ πŸ“‚ App
    β”œβ”€β”€ πŸ“‚ Resource
    └── πŸ“‚ Sources
        β”œβ”€β”€ πŸ“‚ Common
        β”‚   β”œβ”€β”€ πŸ“‚ Enum
        β”‚   β”œβ”€β”€ πŸ“‚ Gesture
        β”‚   β”œβ”€β”€ πŸ“‚ Modifier
        β”‚   └── πŸ“‚ UIComponent
        β”œβ”€β”€ πŸ“‚ Data
        β”‚   β”œβ”€β”€ πŸ“‚ Repositories
        β”‚   β”œβ”€β”€ πŸ“‚ Services
        β”‚   └── πŸ“‚ UseCase
        β”œβ”€β”€ πŸ“‚ Extension
        β”œβ”€β”€ πŸ“‚ Helpers
        β”œβ”€β”€ πŸ“‚ Models
        └── πŸ“‚ Presentations

Image

About

πŸŽ₯ Glayer - 곡간 μ†μ—μ„œ μ‹œλ„€λ§ˆν‹±ν•œ λ¬΄λ“œλ₯Ό λ””μžμΈν•˜κΈ° (2025 Apple Developer Academy@Postech)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages