Notice
Recent Posts
Recent Comments
Link
관리 메뉴

λͺ©λ‘μ „체 κΈ€ (1096)

KoreanFoodie's Study

Effective C++ | ν•­λͺ© 1 : C++ λ₯Ό μ–Έμ–΄λ“€μ˜ μ—°ν•©μ²΄λ‘œ λ°”λΌλ³΄λŠ” μ•ˆλͺ©μ€ ν•„μˆ˜

C++ ν”„λ‘œκ·Έλž˜λ¨Έμ˜ ν•„λ…μ„œμ΄μž 바이블인, 슀콧 λ§ˆμ΄μ–΄μŠ€μ˜ Modern Effective C++ λ₯Ό 읽고 κΈ°μ–΅ν•  λ‚΄μš©μ„ μš”μ•½ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. κΌ­ μ½μ–΄λ³΄μ‹œκΈΈ μΆ”μ²œλ“œλ¦½λ‹ˆλ‹€! ν•­λͺ© 1 : C++ λ₯Ό μ–Έμ–΄λ“€μ˜ μ—°ν•©μ²΄λ‘œ λ°”λΌλ³΄λŠ” μ•ˆλͺ©μ€ ν•„μˆ˜ 핡심 : 1. C++ λ₯Ό μ‚¬μš©ν•œ 효과적인 ν”„λ‘œκ·Έλž˜λ° κ·œμΉ™μ€, C++ 의 μ–΄λ–€ 뢀뢄을 μ‚¬μš©ν•˜λŠλƒμ— 따라 달라진닀! C++ 을 이루고 μžˆλŠ” ν•˜μœ„ μš”μ†Œ (Building Block) 은 크게 4 가지이닀. C (C μ—λŠ” ν…œν”Œλ¦Ώλ„ μ—†κ³ , μ˜ˆμ™Έλ„ μ—†κ³ , μ˜€λ²„λ‘œλ”©λ„ μ—†λ‹€) 객체 지ν–₯ κ°œλ…μ˜ C++ (클래슀λ₯Ό μ“°λŠ” C 에 κ΄€ν•œ λͺ¨λ“  것듀. μΊ‘μŠν™”, 상속, λ‹€ν˜•μ„±, κ°€μƒν•¨μˆ˜ λ“±) ν…œν”Œλ¦Ώ C++ (ν…œν”Œλ¦Ώ 메타 ν”„λ‘œκ·Έλž˜λ°κΉŒμ§€) STL (container, iterator, algorithm, fu..

Tutorials/C++ : Advanced 2022. 10. 25. 16:01
κ²Œμž„μˆ˜ν•™ - μ‚Όκ°ν•¨μˆ˜λ₯Ό ν™œμš©ν•œ 물체의 νšŒμ „

μ΄λ“μš°λ‹˜μ˜ 'μ΄λ“μš°μ˜ κ²Œμž„μˆ˜ν•™' 책을 보며 쒋은 λ‚΄μš©μ„ μ •λ¦¬ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 더 μžμ„Έν•œ λ‚΄μš©μ΄ κΆκΈˆν•˜μ‹œλ‹€λ©΄, 책을 ꡬ맀해 직접 μ½μ–΄λ³΄μ‹œκΈ°λ₯Ό μΆ”μ²œλ“œλ¦½λ‹ˆλ‹€! μ‚Όκ°ν•¨μˆ˜λ₯Ό ν™œμš©ν•œ 물체의 νšŒμ „ μ‚Όκ°ν•¨μˆ˜λ₯Ό 톡해 물체λ₯Ό νšŒμ „ν•˜λ©΄ μ’Œν‘œκ°’μ΄ μ–΄λ–»κ²Œ λ³€ν• κΉŒ? λ¨Όμ €, λ‹€μŒκ³Ό 같이 μ’Œν‘œ (1, 1) 을 θ 만큼 λ°˜μ‹œκ³„ λ°©ν–₯으둜 νšŒμ „ν•˜λ©΄, λ‹€μŒκ³Ό 같이 κ·Έλ €μ§€κ²Œ λœλ‹€. μœ„μ—μ„œ, 벑터 v λŠ” κΈ°μ € 벑터 e1 와 e2 의 ν•©μœΌλ‘œ ν‘œν˜„λ˜λ©°, 이λ₯Ό 각 θ 만큼 νšŒμ „ μ‹œν‚¨ 녀석을 (cosθ - sinθ, sinθ + cosθ) 둜 ν‘œν˜„ν•  수 μžˆμŒμ„ μ•Œ 수 μžˆλ‹€. λ™μΌν•œ μ›λ¦¬λ‘œ, μž„μ˜μ˜ 벑터 (x, y) λ₯Ό 각 θ 만큼 νšŒμ „μ‹œμΌœ (x', y') λ₯Ό κ΅¬ν•΄λ³΄μž. 식은 λ‹€μŒκ³Ό 같이 μ“Έ 수 μžˆλ‹€. 기저벑터λ₯Ό ν™œμš©ν•˜λ©΄, μž„μ˜μ˜ 벑터 u λ₯Ό 각 θ 만..

Game Dev/Game Math 2022. 10. 23. 23:39
Unreal μ—μ„œ Actor 와 ActorComponent 의 κ°œλ… (vs. Unity μ—μ„œμ˜ GameObject 와 비ꡐ)

Actor 와 ActorComponent μœ λ‹ˆν‹°μ—μ„œλŠ” κ²Œμž„ 였브젝트 μ•„λž˜μ— κ²Œμž„ 였브젝트λ₯Ό λ„£λŠ” μ‹μœΌλ‘œ Hierarchy λ₯Ό λ§Œλ“€μ–΄λ‚Ό 수 μžˆλ‹€. ν•˜μ§€λ§Œ 언리얼은 그런 μ‹μœΌλ‘œ λ™μž‘ν•˜μ§€ μ•ŠλŠ”λ‹€. μœ λ‹ˆν‹°μ—μ„œλŠ” 항곡기가 μžˆλ‹€κ³  ν–ˆμ„ λ•Œ, ν”„λ¦¬νŒΉμ— 각쒅 κ²Œμž„ 였브젝트λ₯Ό ν•˜μœ„μ— λ„£μ–΄ μ‘°ν•©ν•˜λŠ” λ°©μ‹μœΌλ‘œ ν•΄λ‹Ή 였브젝트λ₯Ό μ œμž‘ν•  수 μžˆλ‹€. 그런데 μ–Έλ¦¬μ–Όμ—μ„œ Actor λŠ” Bucket 같은 κ°œλ…μœΌλ‘œ, λ‹€μ–‘ν•œ μ•‘ν„° μ»΄ν¬λ„ŒνŠΈλ₯Ό λ‹΄κ³  μžˆλ‹€. 즉, 언리얼은 Bucket μ•ˆμ— λ‹€λ₯Έ Bucket 을 λ„£λŠ” λ°©μ‹μœΌλ‘œ 였브젝트λ₯Ό μƒμ„±ν•˜μ§€ μ•ŠλŠ”λ‹€. μ•‘ν„° μ»΄ν¬λ„ŒνŠΈλŠ” μž¬μ‚¬μš©κ°€λŠ₯ν•œ κΈ°λŠ₯을 μ •μ˜ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈμ— λŒ€ν•œ 베이슀 클래슀둜 좩돌, λ©”μ‹œ, μ›”λ“œ 이동, μ†Œλ¦¬ μž¬μƒ, λΉ›κ³Ό λͺ…μ•” λ“±μ˜ λ‹€μ–‘ν•œ κΈ°λŠ₯을 μ§€μ›ν•œλ‹€. μ–Έλ¦¬μ–Όμ—μ„œλŠ” νŠΈλžœμŠ€νΌμ„ 가진 μ•‘ν„° μ»΄..

Game Dev/Unreal C++ : Study 2022. 10. 20. 17:53
언리얼 가비지 컬렉터(GC) 심화 정리

언리얼 가비지 컬렉터(GC) 심화 정리 언리얼 엔진은 Reference Graph λ₯Ό λ§Œλ“€μ–΄ μ˜€λΈŒμ νŠΈλ“€μ˜ μ‚¬μš© μ—¬λΆ€λ₯Ό κ΅¬λΆ„ν•œλ‹€. 이 κ·Έλž˜ν”„ λ£¨νŠΈμ—λŠ” "Root Set" 이라고 μ§€μ •λœ 였브젝트 셋이 있으며, "Root Set" 에 ν¬ν•¨λœ 객체듀은 GC λŒ€μƒμ—μ„œ μ œμ™Έλœλ‹€(Mark & Sweep λ°©μ‹μœΌλ‘œ 좔적). μ„Έ 가지 κ·œμΉ™ : UPROPERTY μ„ μ–Έ : 클래슀 λ‚΄λΆ€ 멀버 λ³€μˆ˜κ°€ 클래슀의 객체의 수λͺ…κ³Ό 운λͺ…을 ν•¨κ»˜ν•  경우 μ„ μ–Έ 멀버가 κ°€λ¦¬ν‚€λŠ” 포인터 : 엔진이 μΈμ‹ν•˜κ±°λ‚˜ κ΄€λ¦¬ν•˜μ§€ μ•ŠλŠ” λ©”λͺ¨λ¦¬ μ˜μ—­μ„ 가리킀도둝 λ§Œλ“€λ©΄ μ•ˆλ¨ TArray λ₯Ό ν™œμš© : UObject λ˜λŠ” μžμ‹λ“€μ— λŒ€ν•œ 포인터λ₯Ό μ•ˆμ „ν•˜κ²Œ 담을 수 μžˆλŠ” μœ μΌν•œ μ»¨ν…Œμ΄λ„ˆ 기타 μΈν„°νŽ˜μ΄μŠ€ μ˜ˆμ‹œ : // Object λ₯Ό μ‚΄μ•„μžˆκ²Œ λ§Œλ“œλŠ” 3가지 방법; //..

Game Dev/Unreal C++ : Study 2022. 10. 14. 16:16
UML (클래슀 λ‹€μ΄μ–΄κ·Έλž¨, μ‹œν€€μŠ€ λ‹€μ΄μ–΄κ·Έλž¨) 간단 정리

UML (Unified Modeling Language) UML μ—λŠ” Class, Sequence, Use Case, Component λ“± λ‹€μ–‘ν•œ μ’…λ₯˜κ°€ μžˆμ§€λ§Œ, μ—¬κΈ°μ„œλŠ” 주둜 Class 와 Sequence λ‹€μ΄μ–΄κ·Έλž¨μ„ μ •λ¦¬ν•œλ‹€. 클래슀 λ‹€μ΄μ–΄κ·Έλž¨ (Class Diagram) ν΄λž˜μŠ€λ“€ μ‚¬μ΄μ˜ κ΄€κ³„λŠ” λ‹€μŒκ³Ό 같이 ν‘œν˜„λ  수 μžˆλ‹€(μ°Έκ³  링크). 각 관계λ₯Ό 쑰금 더 μžμ„Ένžˆ κΈ°μˆ ν•˜λ©΄ λ‹€μŒκ³Ό κ°™λ‹€. 관계 ν‘œμ‹œ μ„€λͺ… μ—°κ΄€ 관계 (association) μ‹€μ„ μ΄λ‚˜ ν™”μ‚΄ν‘œ μ—°κ΄€ κ΄€κ³„λŠ” 였랜 μ‹œκ°„ λ™μ•ˆ 같이할 κ°μ²΄μ™€μ˜ 관계λ₯Ό λ‚˜νƒ€λ‚Έλ‹€(e.g. μžλ™μ°¨μ™€ μ†Œμœ μžμ˜ 관계) 보톡 클래슀의 속성(멀버 λ³€μˆ˜)μ—μ„œ μ°Έμ‘°ν•  λ•Œ μ—°κ΄€ 관계λ₯Ό 가진닀. 단방ν–₯ μ—°κ΄€ κ΄€κ³„μ˜ 경우, ν™”μ‚΄ν‘œλ₯Ό μ‚¬μš©ν•˜μ—¬ 클래슀λ₯Ό μ°Έμ‘°ν•œλ‹€. μ–‘λ°©ν–₯ μ—°κ΄€ κ΄€κ³„μ˜ 경우..

R & D/Software Engineering 2022. 10. 14. 16:13
[MiniEssay] λΆˆνŽΈν•¨μ˜ λ―Έν•™

또각또각. λ”±λ”±ν•œ ꡬ두 μ†Œλ¦¬κ°€ μ λ§‰ν•œ νšŒμ˜μ‹€μ„ μšΈλ¦°λ‹€. ​ λ‚˜λŠ” 늘 μ—¬μžλ“€μ΄ μ™œ ꡬ두λ₯Ό μ’‹μ•„ν•˜λŠ”μ§€ κΆκΈˆν–ˆμ—ˆλ‹€. 기껏해야 λ“  생각은 'λΆˆνŽΈν•˜μ§€ μ•Šμ„κΉŒ?' μ •λ„μ˜ μ•„μ €μ”¨λ‹€μš΄ λ°œμƒ λΏμ΄μ—ˆλ‹€. ​ κ·Έλž˜μ„œ λˆ„λ‚˜μ˜ ꡬ두λ₯Ό λͺ°λž˜ μ‹ κ³  λ°© ν•œλ°”ν€΄λ₯Ό λŒμ•˜λ‹€. μ•„λ‹ˆ, 사싀 ν•œλ°”ν€΄κ°€ μ•„λ‹ˆλΌ μ„Έ 발자ꡭ 정도λ₯Ό κ±Έμ—ˆλ‹€. ​ λ„ˆλ¬΄ λΆˆνŽΈν–ˆλ‹€. 'λ„λŒ€μ²΄ μ—¬μžλ“€μ€ 이걸 μ–΄λ–»κ²Œ μ‹ κ³  λ‹€λ‹ˆλŠ”κ±°μ§€?' 그런 생각과 ν•¨κ»˜, λ‚΄ 마음 κΉŠμ€ κ³³μ—μ„œ λ¬΄ν•œν•œ 쑴경심이 μžλΌλ‚˜λŠ” 것을 λŠκΌˆλ‹€. ​ νŒ¨μ…˜μ— λ¬΄μ§€ν•œ λ‚˜μ‘°μ°¨λ„, μ–Όμ£½μ½”λΌλŠ” 말은 귀에 딱지가 μ•‰νžˆλ„λ‘ λ“€μ–΄μ™”λ‹€. 'μ–Όμ–΄ 죽어도 μ½”νŠΈ'. 그만큼 μ½”νŠΈκ°€ λ©‹μžˆμœΌμ‹œλ‹¨ 거지. ​ 그런데 μ™œ μ‚¬λžŒλ“€μ€ μ½”νŠΈκ°€ λ©‹μžˆλ‹€κ³  ν•˜λŠ”κ±ΈκΉŒ. λ”°λœ»ν•˜μ§€λ„ μ•Šμ€ 뢀직포λ₯Ό μ™œ 그리도 μ’‹μ•„ν• κΉŒ? ​ ꡬ두도 μ–΄λ–»κ²Œ 보면 λΉ„μŠ·ν•œ 쑴재..

일상/에세이 2022. 10. 8. 18:58
[MiniEssay] ν‘œμ ˆ

λ‚΄ 생각은 λ‚˜λ§Œμ˜ μƒκ°μΌκΉŒ. λ‚˜λŠ” κ·Έμ € λ‹€λ₯Έ μ‚¬λžŒλ“€μ˜ 생각을 κΉ”λŒ€κΈ°μ— ν•œλ²ˆ 걸러 κΈ°λ‘ν•˜λŠ” ν•˜μˆ˜μΈμ΄ μ•„λ‹κΉŒ. μ§€κΈˆμ˜ λ‚΄ 생각은 λˆ„κ΅¬μ˜ 생각인가. ​ μœ μž…μ΄ μžˆμ–΄μ•Ό 유좜이 μžˆλ‹€. 그렇기에 λ§Žμ€ μž‘κ°€λ“€μ€ μƒˆλ‘œμš΄ μžκ·Ήμ„ μ°Ύμ•„ λ– λ‚œλ‹€. 아무도 μ—†λŠ” κ³¨λ°©μ—μ„œ λ‚˜μ˜€λŠ” μž‘ν’ˆμ€ μ™Έλ‘œμ›€ μ„žμΈ 인간 내면에 λŒ€ν•œ 고찰만이 담겨 μžˆμ„κ±°μ•Ό, μ•„λ§ˆ. κ·ΈλŸ¬λ‹ˆ 글이 써지지 μ•Šμ„ λ•Œμ—λŠ” μ‚¬λžŒμ„ λ§Œλ‚˜μ•Ό ν•˜λŠ” 것이닀. 베껴와야 ν•˜λ‹ˆκΉŒ. ν›”μ³μ•Όλ§Œ ν•˜λ‹ˆκΉŒ. ​ μ˜€λŠ˜λ„ νƒ€μΈμ˜ 생각을 λ‚˜μ˜ μœ„λŒ€ν•œ μ‚¬κ³ μΈκ²ƒμ²˜λŸΌ 포μž₯ν•˜λŠ” μΌμ—μ„œ μ†Œμ†Œν•œ μΎŒλ½μ„ λŠλ‚€λ‹€. λ‚˜μ˜ 도벽. λ‚˜μ˜ ν‘œμ ˆ. 자수λ₯Ό ν•˜κΈ° μœ„ν•΄ 손가락을 λΆ€μ§€λŸ°νžˆ 놀린닀. μŠ¬ν”„κ²Œλ„ λ‚΄ 글은 λ‚˜μ˜ 범죄기둝에 λΆˆκ³Όν•œ κ²ƒμΌκΉŒ. κ·Έλ ‡λ‹€λ©΄ λˆ„κ΅¬λ₯Ό μœ„ν•΄ λ‚˜μ˜ μΉ˜λΆ€λ₯Ό λ“œλŸ¬λ‚΄μ•Ό ν•˜λŠ” 걸까. λ‚˜λ₯Ό μœ„ν•΄μ„œκ² μ§€. λΆ„λͺ… λ‚˜..

일상/에세이 2022. 10. 8. 18:57