[UE5] ๐Ÿš€ Project Galaga (12)

Singery00ยท2024๋…„ 5์›” 21์ผ
0

Project Galaga

๋ชฉ๋ก ๋ณด๊ธฐ
12/15
post-thumbnail

๊ฐœ์š”

๐Ÿš€ Project Galaga ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

Unreal C++๊ณผ ๊ฒŒ์ž„์ˆ˜ํ•™์„ ์ ‘๋ชฉํ•ด์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.

2024.05.04 ~ 2024.05.21์˜ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„์œผ๋กœ, ์ด 17์ผ ๋™์•ˆ ๊ฐœ๋ฐœ์„ ์™„๋ฃŒํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๊ฑฐ์ฐฝํ•˜๊ฒŒ ์‹œ์ž‘ํ•œ ํ”„๋กœ์ ํŠธ๋ณด๋‹จ ์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐ์šด ๊ฒƒ๋“ค์„ ์ข…ํ•ฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ ๊ฒฐ๊ณผ๋ฌผ์„ ๋งŒ๋“ค์–ด ๋‚ด๋ณด๊ฒ ๋‹ค๋Š” ๋งˆ์Œ์œผ๋กœ ์™„์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

ํ•ด๋‹น ์‹œ๋ฆฌ์ฆˆ์—๋Š” ๊ฐœ๋ฐœ ์ผ์ง€๋ฅผ ์ •๋ฆฌํ•˜๋ฉฐ, ๊ฐœ๋ฐœ ๋‚ด์šฉ์— ๋Œ€ํ•œ ์„ค๋ช…๊ณผ ์ด์Šˆ๋ฅผ ์ •๋ฆฌํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

๐Ÿš€ Project Galaga Github Repository


๋ณธ๋ก 


๊ฐœ๋ฐœ ๋ฐฉํ–ฅ์„ฑ

๊ฐœ๋ฐœ ์ค‘ ์ž‘์—… ์ง„ํ–‰ ๋ฐฉํ–ฅ์— ๋Œ€ํ•ด์„œ ๊ฐ•์‚ฌ๋‹˜์—๊ฒŒ ์กฐ์–ธ์„ ๊ตฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ๋ชจ๋“  ์ž‘์—…์„ C++๋กœ ์ง„ํ–‰ํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค.
์ดํŽ™ํŠธ๋‚˜ UI ์ž‘์—…๋“ค์€ ํŽธ์˜์„ฑ๊ณผ ์•ˆ์ •์„ฑ์œผ๋กœ ์ธํ•ด C++๋ณด๋‹ค๋Š” ์—๋””ํ„ฐ์—์„œ ์ž‘์—…ํ•œ๋‹ค.

์—ํ”ฝ๊ฒŒ์ž„์ฆˆ์—์„œ C++์—ฐ๋™ ์ข€ ์ž˜ ๋งŒ๋“ค์–ด์ฃผ๋ฉด ์ข‹๊ฒ ๋‹ค.

๊ทธ๋ž˜์„œ ๊ณ ์‹ฌ ๋์— ์ดํŽ™ํŠธ, UI, ์‚ฌ์šด๋“œ ์ž‘์—…์€ Blueprint๋กœ ์ง„ํ–‰ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

UFUNCTION()

C++๋กœ ๊ตฌํ˜„ํ•œ ๊ธฐ๋Šฅ์— ์ดํŽ™ํŠธ ํšจ๊ณผ๋ฅผ ๋„ฃ๊ธฐ ์œ„ํ•ด UFUNCTION(BlueprintNativeEvent)๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๊ฐœ๋… ์„ค๋ช…

BlueprintCallable์€ ๋ธ”๋ฃจํ”„๋ฆฐํŠธ ๊ทธ๋ž˜ํ”„์—์„œ ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅํ•˜๋‚˜, ๋ณ€๊ฒฝ์ด๋‚˜ ๋ฎ์–ด์“ฐ๊ธฐ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฅผ ์œ„ํ•ด BlueprintNativeEvent ํ˜น์€ BlueprintImplementableEvent๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์˜ˆ์‹œ

ํ•จ์ˆ˜ ์„ ์–ธ์œ„์— UFUNCTION()๊ณผ ํ•จ๊ป˜ ์ธ์ž๋“ค์„ ๋„ฃ์–ด ์ค๋‹ˆ๋‹ค.

	UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "LaserEffect")
	void laserEffect();

๋˜ํ•œ ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•  ๋•Œ๋Š” ํ•จ์ˆ˜๋ช…_Implementation()์˜ ํ˜•ํƒœ๋กœ ์ด๋ฆ„์„ ์ž‘์„ฑํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

void AEnemyBase::laserEffect_Implementation()
{
}

ํ•˜์ง€๋งŒ ์‹ค์ œ ํ•จ์ˆ˜๋ฅผ ์ฝ”๋“œ ์ƒ์—์„œ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์„ ์–ธ๋œ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ธ”๋ฃจํ”„๋ฆฐํŠธ ๊ตฌํ˜„

์ด๋ฒคํŠธ๊ฐ€ ํ˜ธ์ถœ๋  ์‹œ ์‹คํ–‰๋˜๋Š” Add Event ๋…ธ๋“œ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ์ถ”๊ฐ€๋กœ ๋ถ€๋ชจ์˜ ๋‚ด์šฉ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก Parent๋ฅผ ์—ฐ๊ฒฐํ•ด์ค๋‹ˆ๋‹ค.

์ดํ›„ ์ถ”๊ฐ€ํ•  ์ดํŽ™ํŠธ์™€ ์‚ฌ์šด๋“œ์— ๋Œ€ํ•œ ๋‚ด์šฉ์„ ๊ตฌํ˜„ํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์œ„ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ํšจ๊ณผ์— ๋Œ€ํ•˜์—ฌ ์ดํŽ™ํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์•„๋ž˜์— ์ถ”๊ฐ€ํ•œ ํšจ๊ณผ๋“ค์„ ๋ช‡๊ฐ€์ง€ ์ฒจ๋ถ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

ํญํƒ„ ์‚ฌ์šฉ ํšจ๊ณผ

ํ•„์‚ด๊ธฐ ์‚ฌ์šฉ ํšจ๊ณผ

ํ”ผ๊ฒฉ ์‹œ ํšจ๊ณผ

์‚ฌ๋ง ์‹œ ํšจ๊ณผ


๋งˆ๋ฌด๋ฆฌ

์—ฌ๊ธฐ๊นŒ์ง€ ์ดํŽ™ํŠธ์™€ ์‚ฌ์šด๋“œ ํšจ๊ณผ์— ๋Œ€ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

์‚ฌ์šด๋“œ๋Š” ๋…นํ™”์— gif์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†์–ด ๋„ฃ์„ ์ˆ˜ ์—†์—ˆ์œผ๋‹ˆ ํ”Œ๋ ˆ์ด ์˜์ƒ์—์„œ ํ™•์ธํ•ด์ฃผ์„ธ์š”.

profile
๊ฒŒ์ž„ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜์–ด๋ณด์ž

0๊ฐœ์˜ ๋Œ“๊ธ€