๐ŸŽฎ *brkrs*: ํด๋ž˜์‹ ๋ธŒ๋ฆญ-๋ธŒ๋ ˆ์ดํ‚น์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์ ‘๊ทผ โ€“ ํ”Œ๋ ˆ์ดํ•˜๊ณ , ํŠœ๋‹ํ•˜๊ณ , ์†Œ์œ ํ•˜์„ธ์š”!

๋ฐœํ–‰: (2025๋…„ 12์›” 8์ผ ์˜ค์ „ 05:33 GMT+9)
8 min read
์›๋ฌธ: Dev.to

Source: Dev.to

๐Ÿš€ ์Šคํ† ๋ฆฌ: ๋ ˆํŠธ๋กœ ๊ฟˆ์—์„œ ํ˜„๋Œ€ ํ˜„์‹ค๋กœ

์šฐ๋ฆฌ ์ค‘ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์€ ์ข‹์•„ํ•˜๋Š” ํด๋ž˜์‹์„ ๋‹ค์‹œ ๋งŒ๋“ค๊ณ  ์‹ถ์–ด ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €์—๊ฒŒ๋Š” ์˜ค๋ž˜๋œ ์•„์นด๋…ธ์ด๋“œ ์Šคํƒ€์ผ ๊ฒŒ์ž„, โ€œYaAC ๐Ÿงโ€œ๋ฅผ ์˜ค๋Š˜๋‚  ์ตœ๊ณ ์˜ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ๋„๊ตฌ๋กœ ๋ถ€ํ™œ์‹œํ‚ค๋Š” ๊ฒƒ์ด ๊ทธ ๊ฟˆ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—” ์ˆ˜์ž‘์—… ์—ฌ์ •์œผ๋กœ ์‹œ์ž‘ํ–ˆ์ง€๋งŒ, ๊ณง ํ˜„๋Œ€ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ๊ด€ํ–‰์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ์‹ค์ œ ๊ฒŒ์ž„์œผ๋กœ ์ง„ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฒŒ์ž„์€ โ€œKaizen no michiโ€ (ๆ”นๅ–„ใฎ้“) ๋ผ๋Š” ์ฒ ํ•™์— ๊ธฐ๋ฐ˜ํ•ฉ๋‹ˆ๋‹คโ€”์ž‘์€ ๋ณ€ํ™”๋ฅผ ์ง€์†์ ์œผ๋กœ ์Œ“์•„๊ฐ€๋Š” ๋ฐฉ์‹. ์ฆ‰, ๊ฒŒ์ž„์€ ์–ธ์ œ๋‚˜ ์ง„ํ™”ํ•˜๊ณ , ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์‹ ์ค‘ํžˆ ๊ณ ๋ ค๋ฉ๋‹ˆ๋‹ค.

๐Ÿ•น๏ธ ์ง€๊ธˆ ๋ฐ”๋กœ ํ”Œ๋ ˆ์ด: ๋„์ „์ ์ธ ๋ ˆ๋ฒจ, ์ธ์ƒ์ ์ธ ๋ฌผ๋ฆฌ

๋‹ค์šด๋กœ๋“œ ์—†์ด ๋ฐ”๋กœ ์•ก์…˜์„ ์ฒดํ—˜ํ•ด ๋ณด์„ธ์š”!
์›น ๋ฒ„์ „์„ ์—ด๊ณ  ์—ฌ๊ธฐ์„œ ๋ฒฝ๋Œ์„ ๋ถ€์ˆ˜๊ธฐ ์‹œ์ž‘ํ•˜์„ธ์š”

ํ˜„์žฌ๋Š” 2๊ฐœ์˜ ๋ ˆ๋ฒจ๋งŒ ์ œ๊ณต๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(์ดˆ๊ธฐ ๊ฐœ๋ฐœ ๋‹จ๊ณ„). ๊ณง YAAC์—์„œ ๊ฐ€์ ธ์˜จ 70๊ฐœ์˜ ๋ ˆ๋ฒจ์ด ์ถ”๊ฐ€๋  ์˜ˆ์ •์ด๋‹ˆ ๊ธฐ๋Œ€ํ•ด ์ฃผ์„ธ์š”. ํ˜น์€ ์ง์ ‘ ๋„์™€์ฃผ์‹ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค!

brkrs๋Š” ํด๋ž˜์‹ ๊ณต์‹์— ๋ช‡ ๊ฐ€์ง€ ๋ฉ‹์ง„ ๊ธฐ๋Šฅ์„ ๋”ํ•ฉ๋‹ˆ๋‹ค:

  • ํด๋ž˜์‹ ๊ฒŒ์ž„ํ”Œ๋ ˆ์ด, ํ˜„๋Œ€์  ๊ฐ๊ฐ: ํŒจ๋“ค, ๊ณต, ๋ฒฝ๋Œ์€ ๊ทธ๋Œ€๋กœ์ง€๋งŒ, ๋‹ค๋“ฌ์–ด์ง„ ๋งŒ์กฑ์Šค๋Ÿฌ์šด ํƒ€๊ฒฉ๊ฐ ์ œ๊ณต.
  • ํ’๋ถ€ํ•œ ๋ฌผ๋ฆฌ (Rapier3D): ์ •ํ™•ํ•˜๊ณ  ๋ชฐ์ž…๊ฐ ์žˆ๋Š” ๊ณต ๋ฌผ๋ฆฌ๋กœ ๋งค๋ฒˆ ํŠ€์–ด์˜ค๋ฅด๋Š” ๋А๋‚Œ์„ ์‹ค๊ฐ.
  • ๋™์  ๋ ˆ๋ฒจ: ์ธ๊ฐ„์ด ์ฝ๊ธฐ ์‰ฌ์šด, ์ˆ˜์ •ํ•˜๊ธฐ ๊ฐ„ํŽธํ•œ ๋ ˆ๋ฒจ ์„ค์ • ํŒŒ์ผ์„ ํ†ตํ•ด ๋ฌดํ•œํžˆ ์ปค์Šคํ…€ ์Šคํ…Œ์ด์ง€ ๊ฐ€๋Šฅ.
  • ํŒจ๋“ค ํšŒ์ „: ์ƒˆ๋กœ์šด ์Šคํ‚ฌ๊ณผ ์ „๋žต ๋ ˆ์ด์–ด ์ถ”๊ฐ€.
  • ํฌ๋กœ์Šคโ€‘ํ”Œ๋žซํผ ์ฆ๊ฑฐ์›€: WebAssembly ๋•๋ถ„์— ๋ฐ์Šคํฌํ†ฑ์€ ๋ฌผ๋ก  ๋ธŒ๋ผ์šฐ์ €์—์„œ๋„ ๋ฐ”๋กœ ํ”Œ๋ ˆ์ด ๊ฐ€๋Šฅ.

๐Ÿ› ๏ธ ๋” ๊นŠ์ด ํŒŒ๊ณ ๋“ค๊ธฐ: ๋นŒ๋”๋ฅผ ์œ„ํ•œ ๊ฒŒ์ž„

์ข‹์•„ํ•˜๋Š” ๊ฒŒ์ž„์˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ํŒŒ๊ณ ๋“ค๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ brkrs๋Š” ๋ณด๋ฌผ์ฐฝ๊ณ ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹จ์ˆœํžˆ ํ”Œ๋ ˆ์ดํ•  ์ˆ˜ ์žˆ์„ ๋ฟ ์•„๋‹ˆ๋ผ, ์ž˜ ๊ตฌ์กฐํ™”๋œ Rust์™€ Bevy ํ”„๋กœ์ ํŠธ์˜ ํ›Œ๋ฅญํ•œ ์˜ˆ์‹œ์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๊ธฐ

# ํด๋ก , ๋นŒ๋“œ, ์‹คํ–‰
git clone https://github.com/cleder/brkrs.git
cd brkrs
cargo run --release

์กฐ์ž‘๋ฒ•

  • ๋งˆ์šฐ์Šค๋กœ ํŒจ๋“ค์„ ์›€์ง์ž…๋‹ˆ๋‹ค.
  • ์Šคํฌ๋กค ํœ ์„ ์‚ฌ์šฉํ•ด ํšŒ์ „ํ•ฉ๋‹ˆ๋‹ค(ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ).
  • Esc ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ์ผ์‹œ ์ •์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ๋‹จ์ˆœํžˆ ํ”Œ๋ ˆ์ดํ•˜๋Š” ๊ฒƒ์„ ๋„˜์–ด ์ง์ ‘ ์†๋ณผ ๊ธฐํšŒ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ํŒŒ์›Œ์—…์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ๋‚˜์š”? ๋ฒฝ๋Œ์ด ํญ๋ฐœํ•˜๋Š” ๋ฐฉ์‹์„ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‚˜์š”? ์ž์‹ ๋งŒ์˜ ๊ธฐ๋ฐœํ•œ ๋ ˆ๋ฒจ์„ ๋””์ž์ธํ•˜๊ณ  ์‹ถ๋‚˜์š”? brkrs๋Š” ์ด๋ฅผ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

๐Ÿง  ๋น„ํ•˜์ธ๋“œ ์Šคํ† ๋ฆฌ: ์‚ฌ์–‘โ€‘์ฃผ๋„ํ˜• ๋ฉ‹์ง

๊ฐœ๋ฐœ์ด ๋ฌด์ž‘์œ„ ์ฝ”๋”ฉ์ด ์•„๋‹ˆ๋ผ ์‚ฌ์–‘โ€‘์ฃผ๋„ํ˜• ๊ฐœ๋ฐœ (SDD) ์— ๊ธฐ๋ฐ˜ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ธฐ๋Šฅ์€ ๋ช…ํ™•ํ•˜๊ณ  ์ƒ์„ธํ•œ ๊ณ„ํš์„œ์—์„œ ์‹œ์ž‘๋˜๋ฉฐ, ์ด๋Š” ๋งˆ์น˜ ๊ฒŒ์ž„ ๋””์ž์ด๋„ˆ์˜ ์ฒญ์‚ฌ์ง„๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋Š” ๋˜ํ•œ GitHub์˜ specโ€‘kit์„ ์‚ฌ์šฉํ•ด ์ด๋Ÿฌํ•œ ๊ณ„ํš์„ ํ˜•์‹ํ™”ํ•˜๊ณ , ๊ฐ ํŒŒํŠธ๊ฐ€ ์ •ํ™•ํžˆ ์˜๋„๋Œ€๋กœ ๋™์ž‘ํ•˜๋„๋ก ํ•˜๋ฉด์„œ ๋ฒ„๊ทธ๋ฅผ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ตฌ์กฐํ™”๋œ ์ ‘๊ทผ ๋ฐฉ์‹์€ brkrs๋ฅผ AIโ€‘๋ณด์กฐ ์ฝ”๋”ฉ์— ์ตœ์ ํ™”๋œ ๋†€์ดํ„ฐ๋กœ ๋งŒ๋“ค๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. AI๋ฅผ ํ™œ์šฉํ•ด ์ƒˆ๋กœ์šด ๋ฒฝ๋Œ ํƒ€์ž…์„ ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜ ๊ฒŒ์ž„ ๋กœ์ง์„ ๋ฏธ์„ธ ์กฐ์ •ํ•œ๋‹ค๋ฉด, ๋ช…ํ™•ํ•œ ์‚ฌ์–‘ ๋•๋ถ„์— ๋†€๋ผ์šธ ์ •๋„๋กœ ํšจ์œจ์ ์œผ๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

๐Ÿ“ฃ ๋„์›€์„ ์ฒญํ•ฉ๋‹ˆ๋‹ค: ์—ฌ๋Ÿฌ๋ถ„์˜ ์Šคํ‚ฌ์ด brkrs๋ฅผ ๋ ˆ๋ฒจ์—… ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

์ฝ”๋“œ๋Š” ํƒ„ํƒ„ํ•˜์ง€๋งŒ, ํ›Œ๋ฅญํ•œ ๊ฒŒ์ž„์€ ๋…ผ๋ฆฌ ๊ทธ ์ด์ƒ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” brkrs๋ฅผ ์‹œ๊ฐ์ ยท์ฒญ๊ฐ์ ์œผ๋กœ ๋งค๋ ฅ์ ์ธ ๊ฒฝํ—˜์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์ฐฝ์˜์ ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฉค๋ฒ„๋ฅผ ์ ๊ทน ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์‚ฌ์šด๋“œ & ์Œ์•…: ๋ฒฝ๋Œ์ด ๊นจ์งˆ ๋•Œ ๋‚˜๋Š” ์พ… ์†Œ๋ฆฌ, ํŒŒ์›Œ์—…์ด ํ™œ์„ฑํ™”๋  ๋•Œ ๋‚˜๋Š” ๋”ธ๊น ์†Œ๋ฆฌ ๋“ฑ ๋งŒ์กฑ์Šค๋Ÿฌ์šด ํšจ๊ณผ์Œ๊ณผ ๋ชฐ์ž…๊ฐ ์žˆ๋Š” ๋ฐฐ๊ฒฝ์Œ์•….
  • ์•„ํŠธ & ํ…์Šค์ฒ˜: ๋…ํŠนํ•œ ๋ฒฝ๋Œ ํ…์Šค์ฒ˜, ์Šคํƒ€์ผ๋ฆฌ์‹œํ•œ ํŒจ๋“ค ๋””์ž์ธ, ๋ฐฐ๊ฒฝ ๋ฐ ๊ธฐํƒ€ ๊ทธ๋ž˜ํ”ฝ.
  • ๋ ˆ๋ฒจ ๋””์ž์ธ: ์ˆ˜์ •ํ•˜๊ธฐ ์‰ฌ์šด RON ๋ ˆ๋ฒจ ์„ค์ • ํŒŒ์ผ์„ ํ™œ์šฉํ•ด ์ƒˆ๋กญ๊ณ  ๋„์ „์ ์ด๋ฉฐ ์žฌ๋ฏธ์žˆ๋Š” ๋ ˆ๋ฒจ์„ ์ œ์ž‘.
  • ํ…Œ์ŠคํŠธ & ํ”ผ๋“œ๋ฐฑ: ๊ฒŒ์ž„์„ ํ”Œ๋ ˆ์ดํ•˜๊ณ  ๋ฒ„๊ทธ๋ฅผ ๋ณด๊ณ ํ•˜๊ฑฐ๋‚˜ ๋ฐธ๋Ÿฐ์Šค ์กฐ์ •์„ ์ œ์•ˆํ•˜๋Š” ์ผ์€ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

๋””์ž์ด๋„ˆ, ์•„ํ‹ฐ์ŠคํŠธ, ๋ฎค์ง€์…˜, ํ˜น์€ ๋””ํ…Œ์ผ์— ๊ฐ•ํ•œ ๊ฐ๊ฐ์„ ๊ฐ€์ง„ ๊ฒŒ์ด๋จธ๋ผ๋ฉด ์—ฐ๋ฝํ•˜๊ฑฐ๋‚˜ Pull Request๋ฅผ ํ†ตํ•ด ๊ธฐ์—ฌํ•ด ์ฃผ์„ธ์š”!

๐Ÿค ํ•จ๊ป˜ ์ฆ๊ธฐ๊ธฐ: ๋ฐฐ์šฐ๊ณ , ๊ธฐ์—ฌํ•˜๊ณ , ์ฐฝ์กฐํ•˜์„ธ์š”!

brkrs๋Š” ๋‹จ์ˆœํ•œ ๊ฒŒ์ž„์ด ์•„๋‹ˆ๋ผ โ€œSeika no Hoโ€ (ๆธ…่ฏใฎๆณ•), โ€œ๋ช…ํ™•ํ•œ ๊ณ„ํš์˜ ๊ธธโ€์„ ๋”ฐ๋ฅด๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • ๊ฒŒ์ž„ ํ”Œ๋ ˆ์ด: ํ˜„์žฌ ๋ ˆ๋ฒจ์„ ์ฆ๊ธฐ๊ณ  ์ƒˆ๋กœ์šด ์ „๋žต์„ ์ฐพ์•„๋ณด์„ธ์š”.
  • ์ฝ”๋“œ ํƒ์ƒ‰: ์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ํ˜„๋Œ€ Rust์™€ Bevy๊ฐ€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
  • ์•„์ด๋””์–ด ์ œ์•ˆ: ์–ด๋–ค ํŒŒ์›Œ์—…์ด๋‚˜ ๋ฒฝ๋Œ ํƒ€์ž…์„ ๋ณด๊ณ  ์‹ถ๋‚˜์š”?
  • ๊ธฐ์—ฌ: ์ž‘์€ ์ˆ˜์ •์ด๋‚˜ ์ƒˆ๋กœ์šด ๋ ˆ๋ฒจ ๋””์ž์ธ๋„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค!

์ „์ฒด ๋ฌธ์„œ, ๋น ๋ฅธ ์‹œ์ž‘ ๊ฐ€์ด๋“œ, ๊ฐœ๋ฐœ์ž ๋ฆฌ์†Œ์Šค๋Š” ํ”„๋กœ์ ํŠธ ํŽ˜์ด์ง€์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Back to Blog

๊ด€๋ จ ๊ธ€

๋” ๋ณด๊ธฐ ยป

SpecKit, Rust ๋ฐ Bevy๋ฅผ ํ™œ์šฉํ•œ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ

brkrs โ€” ์žฌ๋ฏธ์žˆ๊ณ  ํ”Œ๋ ˆ์ด ๊ฐ€๋Šฅํ•œ brickโ€‘breaker ๊ฒŒ์ž„ ๋ฐ ํ•™์Šต ๋†€์ดํ„ฐ brkrs๋Š” Rust ๐Ÿฆ€๋กœ ์ž‘์„ฑ๋œ ์‹ค์ œ ํ”Œ๋ ˆ์ด ๊ฐ€๋Šฅํ•œ Breakout/Arkanoidโ€‘style ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค https://rust-lang.or...

๊ธฐ์—ฌํ•  ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ ์ฐพ๊ธฐ

์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ์ฐพ๋Š” ๊ฒƒ์€ ๋ณดํ†ต ์‚ฌ๋žŒ๋“ค์ด ๋งํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ์‚ฌ๋“ค์€ ๊ฐ™์€ ํ‘œ์ค€ ์กฐ์–ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹คโ€” โ€œgood first โ€ฆโ€ ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ผ.

์ฃผ๋ง ๋ ˆํฌ ๋นŒ๋“œ: 3D ํ”„๋ฆฐํŠธ ์ถ”์ •๊ธฐ

์†Œ๊ฐœ ์ด ํ”„๋กœ์ ํŠธ๋Š” ํ˜•์ œ์˜ ๊ฐ„๋‹จํ•œ ์งˆ๋ฌธ์—์„œ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค: > โ€œ์ด๊ฒŒ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ํ•„๋ผ๋ฉ˜ํŠธ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๊ณ , ์–ผ๋งˆ๋‚˜ ๊ฑธ๋ฆด๊นŒ์š”?โ€ ๊ทธ๋Š” ์•ฝ 100๊ฐœ์˜ ๊ฐœ๋ณ„โ€ฆ