๊ฒ์ํด๋ ๋์ ํ ๋ชป ์ฐพ์์ ์ฌ๊ธฐ๋ค ๊ธ ์ฌ๋ฆผ.
ํ์ฌ ์ธ๋ฆฌ์ผ์ ์ฌ์ฉํ ์๊ฐ ์์ด์ ์คํ์ ์ง์ ๋ชป ํด์.
์ธ๋ฆฌ์ผ ๊ฐ๋น์ง ์ฝ๋ ํฐ๋
UPROPERTY()
UObject* MyObject;
TWeakObjectPtr<UObject> AnotherObject;
์ด๋ฐ์์ผ๋ก UPROPERTY()๋ก ์ ์ธ๋ ๋งด๋ฒ ๋ณ์๋ UObject ์ ์ฉ ํฌ์ธํฐ๋ฅผ ์ถ์ ํ์์์?
๊ทธ๋ฐ๋ฐ ๋ง์ฝ
USTRUCT()
struct FMyStruct
{
UPROPERTY()
UObject* MyObject;
TWeakObjectPtr<UObject> AnotherObject;
}
์ด๋ฐ์์ UStruct๊ฐ ์๊ณ
TSharedPtr<FMyStruct> MySharedStruct;
๊ทธ UStruct๋ฅผ ์ฐธ์กฐํ๋ ์์ด๋ ํฌ์ธํฐ๊ฐ ๋งด๋ฒ ๋ณ์๋ก ์๋ค๊ณ ํ๋ค๋ฉด,
์์ด๋ ํฌ์ธํฐ๊ฐ ์ฐธ์กฐํ๋ UStruct์์ ๋งด๋ฒ ๋ณ์๋ ๊ฐ๋น์ง ์ฝ๋ ํฐ๊ฐ ์ถ์ ํ ์ ์๋์?
์์ด๋ ํฌ์ธํฐ๋ ์ธ๋ฆฌ์ผ ์ค๋ธ์ ํธ(UObject ์ ์ด๋ก๋ถํฐ ํ์๋ ํด๋์ค)์ ํธํ๋์ง ์์ต๋๋ค. ์ธ๋ฆฌ์ผ ์์ง์ โUObject' ๊ด๋ฆฌ๋ฅผ ์ํ ๋ณ๋์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์์คํ ์ด ์์ผ๋ฉฐ (์ธ๋ฆฌ์ผ ์ค๋ธ์ ํธ ์ฒ๋ฆฌ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ์ธ์) ๋ ์์คํ ์ ์์ ํ ๋ค๋ฅธ ์์คํ ์ ๋๋ค
์ธ๋ฆฌ์ผ ๋ฌธ์์๋ ์์ด๋ ํฌ์ธํฐ๋ UObject๋ ์ฌ์ฉํ ์ ์๊ณ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์์คํ
์ด ์์ ํ ๋ค๋ฅด๋ค๊ณ ๋์์๋๋ฐ,
UStruct๋ ์ฌ์ฉํ ์ ๊ทธ UStruct์์ ๋งด๋ฒ ๋ณ์๋ ๊ฐ๋น์ง ์ฝ๋ ํ
์ด ๊ฐ๋ฅํ์ง ๊ถ๊ธํฉ๋๋ค.
์ถ์ ์๋จ - dc App
https://m.dcinside.com/board/game_dev/86711
์ฐธ๊ณ ํ์
- dc App
์ ๊ณ ๋ง์์
๋ด๊ฐ TWeakObjectPtr์ ๋ํด ์ ๋ชป ์๊ณ ์์๋ค ์ด์์๋์ง๋ง ์ ์ ์๊ณ ๊ฐ๋น์ง ์ฝ๋ ํฐ๊ฐ ์ถ์ ์ ์ ํ๊ตฌ๋
ใ ใ ์ฐธ๊ณ ๋ก ๊ตฌ์กฐ์ฒด ์์ UPROPERTY ์ง์ ๋ MyObject๋ ์ถ์ ์๋์ ์ํํจ - dc App
ํน์ ๊ทธ๋ผ ์์ด๋ ํฌ์ธํฐ๊ฐ ์ฐธ์กฐํ๋ ๊ตฌ์กฐ์ฒด์์ TWeakObjectPtr๋ก Object๊ฐ ์ด์์๋์ง๋ ์ ์ ์๋์?
ใ ใ TWeakObjectPtr์ด ๊ทธ๋ฌ๋ผ๊ณ ์๋๋์ด๋๊น - dc App
๊ตณ! ์ง์ง ๊ณ ๋ง์์~