๐ Project Galaga ์์ํฉ๋๋ค.
Unreal C++๊ณผ ๊ฒ์์ํ์ ์ ๋ชฉํด์ ํ๋ก์ ํธ๋ฅผ ์งํํ์ต๋๋ค.
2024.05.04 ~ 2024.05.21์ ๊ฐ๋ฐ ๊ธฐ๊ฐ์ผ๋ก, ์ด 17์ผ ๋์ ๊ฐ๋ฐ์ ์๋ฃํ์์ต๋๋ค.
๊ฑฐ์ฐฝํ๊ฒ ์์ํ ํ๋ก์ ํธ๋ณด๋จ ์ง๊ธ๊น์ง ๋ฐฐ์ด ๊ฒ๋ค์ ์ข ํฉ์ ์ผ๋ก ์ฌ์ฉํด์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ง๋ค์ด ๋ด๋ณด๊ฒ ๋ค๋ ๋ง์์ผ๋ก ์์ฑํ์์ต๋๋ค.
ํด๋น ์๋ฆฌ์ฆ์๋ ๊ฐ๋ฐ ์ผ์ง๋ฅผ ์ ๋ฆฌํ๋ฉฐ, ๊ฐ๋ฐ ๋ด์ฉ์ ๋ํ ์ค๋ช ๊ณผ ์ด์๋ฅผ ์ ๋ฆฌํ ์์ ์ ๋๋ค.
๊ฒ์์๋ ์งํ์ํฉ์ ์ ์ฅํ ์ ์๋ ์ธ์ด๋ธ ๊ธฐ๋ฅ์ด ์์ด์ผ ๊ฒ ์ฃ .
์ธ๋ฆฌ์ผ์์๋ ๊ฒ์์ ์ธ์ด๋ธ ๊ธฐ๋ฅ์ ์ ๊ณตํด์ค๋๋ค.
๊ฒ์ ์งํ ์ํฉ, ์ต์ ์ค์ ๋ฑ ์ ์ฅ์ด ํ์ํ ๋ด์ฉ๋ค์ ๋ํด์ C++๋ก ํด๋์ค๋ฅผ ์์ฑํด์ฃผ์์ต๋๋ค.
UCLASS()
class GALAGA_API USaveStage : public USaveGame
{
GENERATED_BODY()
public:
USaveStage();
public:
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SaveData")
int32 ClearStageIndex;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SaveData")
TArray<float> SoundVolumns;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SaveData")
float totalScore;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SaveData")
int ScreenMode;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "SaveData")
int Resolution;
//UPROPERTY()
//FString PlayerName;
};
์๋ก ํ๋ ์ด ๊ฒ์์ด๋ฏ๋ก SaveSlot์ 'Player1'์ผ๋ก ๊ณ ์ ํ์ฌ ๊ฐ๋ฐ์ ์งํํ์ต๋๋ค.
์ ์ฅํ ๋ฐ์ดํฐ์ ๋ํ ๋ด์ฉ์ ์๋์ ๊ฐ์ต๋๋ค.
UI์ ์ฐ๋ํ์ฌ ๊ธฐ๋ฅ์ ๊ตฌํํ์ต๋๋ค.
Slot Name์ด Player1์ธ ์ธ์ด๋ธ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ฉด ๋ก๋ํด์ค๋๋ค.
ํด๋น ๋ฐ์ดํฐ๋ฅผ ์ ํฌ๊ฐ ๋ง๋ Save Class๋ก Castํด์ฃผ์ด ๋ฐ์ดํฐ๋ฅผ ํ ๋นํด์ค๋๋ค.
Save Stage ํด๋์ค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก Create Save Game Object ๋
ธ๋๋ก ๋ง๋ค์ด ์ค๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ์ฌ ์ํ๊ฐ๋ค์ ํ ๋นํด์ฃผ๊ณ Player1์ Slot Name์ผ๋ก ์ ์ฅํด์ค๋๋ค.
๊ฒ์์ ์ข ๋ฃํ์ฌ๋ ํด๋ฆฌ์ดํ ์คํ ์ด์ง๊น์ง๋ง ์ ํํ ์ ์์ต๋๋ค.
์คํ
์ด์ง ์ธ๋ฑ์ค๋ฅผ ๋ฐ์์ ํด๋ฆฌ์ดํ ์คํ
์ด์ง๊น์ง๋ง ๋ฒํผ์ Enabled์ true๋ก ์ค์ ํ์์ต๋๋ค.
Startํด๋ณด๋ฉด ์๋์ฒ๋ผ 3์คํ
์ด์ง๊น์ง ํด๋ฆฌ์ด ์ ๋์ ์ด ๊ฐ๋ฅํ 4์คํ
์ด์ง๊น์ง๋ง ์ ํ์ด ๊ฐ๋ฅํฉ๋๋ค.
์์ ์ค๋ช ๊ณผ ๊ฐ์ด ํฌ๊ฒ 3๊ฐ์ง ์ต์ ์ด ์์ต๋๋ค.
์ ์ฒดํ๋ฉด, ์ ์ฒดํ๋ฉด ์ฐฝ๋ชจ๋, ์ฐฝ๋ชจ๋ 3๊ฐ์ง ์ต์
์ ์ ํํ ์ ์์ต๋๋ค.
Get Game User Settings - Set Fullscreen Mode์ ์ฌ์ฉํ์ฌ ํ๋ฉด ๋ชจ๋๋ฅผ ์กฐ์ ํ์์ต๋๋ค.
์ฌ๋ฌ๊ฐ์ง ํด์๋์ ๋ํด์ ์ ํํ ์ ์์ต๋๋ค.
Get Game User Settings - Set Screen Resolution์ ์ฌ์ฉํ์ฌ ํด์๋๋ฅผ ์กฐ์ ํ์์ต๋๋ค.
๊ฐ ์์๋ณ๋ก ์ฌ์ด๋๋ฅผ ๊ฐ๋ณ ์กฐ์ ํ ์ ์์ต๋๋ค.
Sound Class Mix์ Sound Class๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ด๋ ์์ค๋ฅผ ๊ตฌ๋ถํด์ ์กฐ์ ํ ์ ์๋๋ก ํ์์ต๋๋ค.
Set Sound Mix Class Override ๋
ธ๋์์ SCM์ Sound Class๋ฅผ ์ ํํด์ Volume๊ฐ์ ์กฐ์ ํ ์ ์๋๋ก ํ์์ต๋๋ค.
์ฌ๊ธฐ๊น์ง ๋ฐ์ดํฐ ์ธ์ด๋ธ์ ๋ํด์ ๊ตฌํํ๊ณ ์์ ฏ๊ณผ ์ฐ๋ํ ๋ด์ฉ์ ์ ๋ฆฌํ์์ต๋๋ค.