indiegamemaker
@indiegamemaker
Students
708
Reviews
80
Course Rating
4.9
Posts
Q&A
ํ๋ ์ด์ด๋ฅผ ์ ECS๋ก ๋ง๋๋ ๊ฑด๊ฐ์?
์๋ ํ์ธ์. moonfgg ๋,๋ง์ํ์ ๋ฐ๋ก Player๋ ํ๋๋ง ์์ฑ๋๊ธฐ์ ๋๋ ์ฒ๋ฆฌํ๋ ๋ถ๋ถ์ด ํ์ ์์ต๋๋ค. ๋จ์ํ ECS ํ์ตํ๊ธฐ ์ํจ์ด๋ผ๊ณ ์๊ฐํด์ฃผ์ธ์. ํน๋ณํ ์๋ฏธ๋ ์์ต๋๋ค.~
- Likes
- 0
- Comments
- 1
- Viewcount
- 31
Q&A
์น์ 7 ์์ ์๋ฃ ์ ๋ก๋ ๋ถํ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์. rani goo๋,์ ๋ก๋ ๋ฆ์ด์ง์ ์ฌ๊ณผ๋ง์ ๋๋ฆฝ๋๋ค.๋ฆ์ด๋ 6์ ์ค์๊น์ง ์๋ฃํ ์ ๋ก๋ ํด๋๋ฆฌ๊ฒ ์ต๋๋ค. ๋ง์ด ๊ธฐ๋ค๋ฆฌ์ จ์ ํ ๋ฐ ๋ค์ ํ๋ฒ ์ฌ๊ณผ๋๋ฆฌ๋ฉฐ, ์๋ฃ๋ ํ ๋ต๊ธ ๋ฐ ์ฌ๋์ ๊ณต์ง๊ธ ์ฌ๋ฆฌ๊ฒ ์ต๋๋ค.
- Likes
- 0
- Comments
- 2
- Viewcount
- 35
Q&A
Scene ์ ํ์์
์๋ ํ์ธ์. ์ง๋ฌธ์ ๋ต์ ๋๋ฆฌ์๋ฉด ๋ฒ๊ทธ๋ ์๋๋๋ค.ECS๋ World๋ผ๋ ๊ณต๊ฐ์์ Entity๋ฅผ ๊ด๋ฆฌํด์ผ ํ์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด GameObject ๊ณต๊ฐ๊ณผ๋ ๋ณ๋๋ก ๋ถ๋ฆฌ๋ ๊ณต๊ฐ์ ๋๋ค. ๋ฐ๋ผ์, Entity๋ ์ง์ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค. Scene๊ณผ Entity์ ์๋ช ์ฃผ๊ธฐ๋ ์๋ก ๋ค๋ฅด๋ค๋ ์ ์ ๊ผญ ๊ธฐ์ตํ์๊ณ , World๊ฐ ์ด์ ์๋ค๋ฉด Entity๋ ๊ทธ๋๋ก ์ ์ง๋๋ค๋ ๊ฒ์ด ํต์ฌ์ ๋๋ค. ๋๋ฒ์งธ ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ ๋๋ค.Entities for All ์ ์ฑ ์ด ์คํ๋๋ค๊ณ ํ๋๋ผ๋ ๊ธฐ์กด์ ECS ์ค๊ณ ์ฒ ํ์ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. Entites for All์ ๊ธฐ์กด GameObject์ ECS๋ฅผ ํตํฉํด ์ฌ์ฉํ๊ธฐ ํธํ๊ฒ ํ๋ ๊ฒ์ผ๋ก ์๊ฐ๋๋ฉฐ, ์ํฌํ๋ก์ฐ๊ฐ ๋ง์ด ํธํด์ง ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ฌ ์ ํ๋ก์ง๊น์ง ์ค์ จ์ผ๋ฉด ๋ง์ง๋ง๊น์ง ์์ฃผํ์ จ๊ตฐ์. ์ถํํฉ๋๋ค. ~
- Likes
- 0
- Comments
- 1
- Viewcount
- 37
Q&A
์ฌ์ ํ์ต ๊ฐ์
์๋ ํ์ธ์. jkjk950๋,ํ์ธ์ด ๋ฆ์์ต๋๋ค. Git & Github ์ฌ์ ํ์ต ๊ฐ์ ๋ฑ๋กํด๋๋ ธ์ต๋๋ค.ํน์๋ผ๋ ์ด์์ด ์์ผ์๋ฉด ๋ค์ ๋ง์ ๋ถํ๋๋ฆฌ๋ฉฐ, ์ฑ๋ฆฐ์ง ์์์ ๊น์ง Git ์์ ์ ์ถฉ์คํ ์งํํ์ ๋ค๋ฉด ์ฑ๋ฆฐ์ง ์งํ์ด ํจ์ฌ ์์ํ์ค๊ฒ์ผ๋ก ์๊ฐํฉ๋๋ค.๊ฐ์ฌํฉ๋๋ค.
- Likes
- 0
- Comments
- 1
- Viewcount
- 60
Q&A
48๊ฐ์ ํ์ํ ์์คํค์ํธ ์๋ฃ๊ฐ ์ฒจ๋ถ๋์ด ์์ง ์์ต๋๋ค.
์๋ ค์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ์์ ์๋ฃํ์ต๋๋ค.
- Likes
- 0
- Comments
- 2
- Viewcount
- 56
Q&A
Rider์์ .ignore ํ๋ฌ๊ทธ์ธ์ผ๋ก .gitignore ํ์ผ ๋ด์ฉ ์์ฑ์ Csharp์ผ๋ก ๊ฒ์๋๋ ๋ด์ฉ์ด ์์ต๋๋ค.
์ ๋ณด ๊ณต์ ๊ฐ์ฌํฉ๋๋ค.~
- Likes
- 1
- Comments
- 2
- Viewcount
- 71
Q&A
26๊ฐ [๊ฒ์ ๋ฉ์ธ ๋ฃจํ ๋ฐ ๋ฉ๋ด ๊ตฌํ]์์ 2๊ฐ์ง ์ค๋ฅ๊ฐ ์์ด์ ๋จ๊ธฐ๊ฒ ๋์์ต๋๋ค.
์๋ ค์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ์์ ์๋ฃ ํ์ต๋๋ค.~
- Likes
- 0
- Comments
- 2
- Viewcount
- 72
Q&A
๋ฐ์ฌ์ฒด ๋๊ธฐํ ๋ถ๋ถ ์ง๋ฌธ์ ๋๋ค!
1๋ฒ ํ๋ ์ด์ด์ 2๋ฒ ํ๋ ์ด์ด ๋์์ ๋ณด์ฌ์ผ ์ ์์ ๋๋ค.๋จผ์ ์๋ฒ์ชฝ UDPGameServer.cs ์ HandlePlayerFire ๋ถ๋ถ๊ณผ BroadcastPlayerFire ๋ฉ์๋๋ฅผ ๋ค์ ํ์ธํด์ฃผ์ธ์. private void HandlePlayerFire(NetworkPacket packet, IPEndPoint clientEP) { // ์๋ฒ์์ ํด๋น ํ๋ ์ด์ด ์ ๋ณด ์กฐํ if (_players.TryGetValue(packet.PlayerId, out var player)) { // ํด๋ผ์ด์ธํธ ์ฃผ์ ๊ฒ์ฆ if (player.EndPoint.Equals(clientEP)) { Console.WriteLine($"[์๋ฒ] ํ๋ ์ด์ด {player.PlayerId} ๋ฐ์ฌ ์ด๋ฒคํธ ์ฒ๋ฆฌ ์๋ฃ"); // ๋ฐ์ฌ ์ด๋ฒคํธ๋ฅผ ๋ค๋ฅธ ํ๋ ์ด์ด๋ค์๊ฒ ์ ์ก BroadcastPlayerFire(packet, clientEP); } else { Console.WriteLine($"[์๋ฒ] ํ๋ ์ด์ด {player.PlayerId} ๋ฐ์ฌ ์ด๋ฒคํธ ์ฒ๋ฆฌ ์คํจ - ํด๋ผ์ด์ธํธ EP ๋ถ์ผ์น"); } } } ๊ทธ๋ฆฌ๊ณ ์ ๋ํฐ TankController.cs ์์๋ ๋ค์ ์ฝ๋๋ฅผ ํ์ธํด์ฃผ์ธ์. #region ์ด๋ฒคํธ ํธ๋ค๋ฌ private async void OnFire(InputAction.CallbackContext ctx) { Debug.Log("Fire"); if (!ntv.isMine) return; await NetworkManager.Instance.SendFireAsync(ntv.playerId, firePos.position, Vector3.up * firePos.rotation.eulerAngles.y); // FireBullet(); } private void OnMove(InputAction.CallbackContext ctx) { moveInput = ctx.ReadValue(); } #endregion
- Likes
- 0
- Comments
- 2
- Viewcount
- 57
Q&A
Enemy HP ์ฐ๋ ํํธ์์ Job์ ์์ฑํ, System์์ Job์ ์ค์ผ์ฅด๋ง ํด์ผํฉ๋๋ค.
์๋ ค์ฃผ์ ๋ถ๋ถ ํ์ธํด ๋ณด์์ต๋๋ค. ํธ์ง๋ณธ์์ ๋๋ฝํ ๋ถ๋ถ์ด ์์ด์ ๋ค์ ์์ ํด์ ์ ๋ก๋ ์๋ฃํ์ต๋๋ค.๋ค์ ํ๋ฒ ์๋ ค์ฃผ์ ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค~
- Likes
- 0
- Comments
- 3
- Viewcount
- 79
Q&A
Enemy HP ์ฐ๋ ํํธ์์ Job์ ์์ฑํ, System์์ Job์ ์ค์ผ์ฅด๋ง ํด์ผํฉ๋๋ค.
์๋ ํ์ธ์. dopple๋, ํธ์ง์ ์ค์๊ฐ ์์์ต๋๋ค. ๋ถํธ์ ๋๋ ค ์ฃ์กํฉ๋๋ค. ์ด๋ถ๋ถ์ ์์ ํ๋๋ก ํ๊ฒ ์ต๋๋ค. ์๋ ค์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ์ข์ ํ๋ฃจ๋์ธ์.
- Likes
- 0
- Comments
- 3
- Viewcount
- 79




