묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[유니티6] 따라하면서 배우는 고박사의 Top-Down Shooting 게임
behavior 패키지 관련
#30 behavior영상중 2:57현 사용 unity 버전6000.0.32f1behavior가 패키지 매니저에 없어서add package by name으로 com.unity.behavior를 추가하였습니다.해당 패키지는 packages - unity에 들어가 있습니다.완전 처음 설치하는 사람에게 안뜨는건지저만 오류가 있는지는 향후 설치 이력이 없는컴퓨터에서 확인해봐야하지 않을까 싶습니다.
-
미해결유니티 머신러닝 에이전트 완전정복 (기초편)
설치 프로그램 버전 질문있습니다.
현재 프로그램들의 버전이 꽤나 많이 나온 것 같은데 전부 강의에 맞춰서 설치하는게 좋을까요?
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
통합 에셋
이번 강의는 통합 에셋이 따로 제공되지 않을까요?감사합니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
타일 팔레트 깔았는데도 안돼요
타일맵도 설치했는데2D object에 Tilemap이 없어요
-
해결됨AI 시대의 혁신적인 게임 개발 입문 with Unity6
Input Setting 관련해서 질문있습니다!
안녕하십니까! 완강한 시점에서 궁금한 점이 생겨서 질문드립니다! 먼저는 Unity6를 이용한 강의가 많이 없어서 좋은 강의 제공해주심에 감사 인사드립니다. 다름이 아니고 Input관련 함수를 사용하려고 하면 Project Settings에서 Both로 바꾸어야 하는 점, 그리고 사용하셨던 함수들은 옛날버전이어서 곧 지원이 끊긴다는 점을 생각한다면, 앞으로 배워나갈 제 입장에서는 공부할때부터 새로 제공되는 함수를 주로 사용하려고 하는 편이 아무래도 낫겠죠...?사실 현재 시중에 있는 여러 프로젝트들도 왠만하면 다 레거시 함수들을 쓰고 있을거라 생각이 드네요..너무 당연한 질문일 수도 있지만 유니코티님의 의견이 궁금합니다.
-
미해결[유니티6] 따라하면서 배우는 고박사의 Top-Down Shooting 게임
볼륨 확인 요청
재화시스템에서4:10에 키보드 소리가 마이크에 들어가서 볼륨을 낮추셨는지,11:08에서의 스크립트 생성 한다는 이야기의 볼륨이 너무 낮아져있는듯합니다. 19:28에 갑자기 볼륨이 돌아와서이어폰으로 듣고있었으면 불편했을수도 있겠습니다.중요한건 아니지만
-
미해결[Unity] 함께 만들어가는 방치형 게임 개발
TextMeshPro, TextMeshProUGUI, 그리고 Text의 차이점이 궁금합니다
안녕하세요 강사님의 강의에서 TextMeshPro에서 제공하는 TextMeshProUGUI를 사용하시는 것을 보고 다음과 같은 궁금증이 생겨 질문 남기게 되었습니다.1. TextMeshPro와 TextMeshProUGUI는 서로 어떤 점이 다른가요? 2. 기존 Text와 TextMeshProUGUI는 서로 어떤 장단점이 존재하나요?
-
미해결절대강좌 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG
Netcode 사용시 운영관점 질문
안녕하세요 강사님,먼저 좋은 강의에 감사드립니다.1회차 완강하고 실습 병행하면서 2회차 들으려고 합니다. Netcode로 실서비스를 운영하면서 강의에서는 안 다루지만 실무에서 꼭 알아야 했던 것이 있을까요?예를 들어 서버 배포 자동화, 모니터링 툴 구성, 아니면 설계 단계에서 미리 고려했어야 했던 확장성 이슈 같은 것이 있었는지 강의 외적으로 실전 팁을 미리 알고 싶습니다!그리고 유니티6 이전의 방식과 이후의 방식간에 운영관점에서 어떻게 달라졌는지 궁금합니다.
-
미해결이득우의 꼭 배워야하는 게임 알고리즘
강의에서 나온 알고리즘 외에 추천 하시는 알고리즘이 있을까요?
안녕하세요. 게임 개발을 공부하고 있는데 KD트리는 처음 접하는 이론이어서 무척 감탄하면서 강의를 들었습니다 !아래 질의를 보고 저도 궁금해져서 질문을 달아봅니다. 혹시 동적 충돌을 구현하기 위해서 선행으로 알아야 될 지식이나 게임 개발에 필요한 다른 알고리즘도 존재 할까요?또한 게임을 만들 때 따로 충돌 로직을 구현하나요 아니면 유니티나 언리얼에 존재하는 로직을 사용하면 될까요?
-
해결됨절대강좌 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG
캐릭터 이동 방식을 A* Pathfinding 에셋으로도 한번 부탁드립니다.
좋은 강의 감사드립니다. 클라이언트만 작업하다 네트워크로 구현하는 방법을 따라해보고 있는데요.캐릭터 이동 방식을 A* Pathfinding Project Pro 에셋으로 구현하는 방법도 한번 알려주시면 너무나도 감사할 것 같습니다. :)평상시 A* Pathfinding Project Pro 에셋을 쓰고있는데 제가 잘 쓰고 있는건지 궁금하기도 하고 네트워크에서 이 에셋을 사용한다고 해서 별다른 이슈가 있는지 없는지도 알고 싶어서 의견 드려봅니다.마치 별책부록처럼 이 것만 한번더 다뤄주시면 정말 감사드리겠습니다~!!
-
미해결유니티 머신러닝 에이전트 완전정복 (기초편)
env 환경경로 입력방법
안녕하세요! 9강에서 3d ball 학습할 때 적는 env 경로는 프로젝트에서 3d ball을 빌드한 다음에 적어야 하는 경로일까요?
-
미해결고현철의 Unity 3D 장르별 실전 게임 프로젝트 - 디펜스게임
혹시 Unity 6.2 버전으로 개발해도 문제 없을까요?
지금 Unity 최신 버전인 6.2 버전으로 진행해도 문제 없는지 궁금합니다.
-
해결됨절대강좌 유니티6 - 네트워크 게임 개발 마스터클래스 (Part3) : Netcode로 개발하는 2D RPG
여기에 쓰인 기술이 적합할지 궁금하네요.
강사님의 다른 강좌들을 보니 네트워크 게임쪽에 상당한 경험이 있으신거 같아 조언을 구하고자 합니다. 현재 네트워크 대전 디펜스 게임을 만들고 있는데, 로비가 별도로 있고 여기서 대전신청을 하면 조건에 맞는 유저를 찾아서 1:1로 방 생성해서 대전을 하는 구조입니다.실제 인게임 내에서는 미니언들이 양쪽 모두 공평하게 생성되는 상황이고 내 크리처도 내보내고 타워도 지으면서 적의 미니언들을 막아내고 적의 본성을 부수면 이기는 게임을 작업 중에 있습니다. 한 화면으로 구성되며 한 화면에 최대한 등장하는 적들은 양쪽 합쳐서 30~60마리정도가 있을 수도 있을거 같습니다. 평균 10마리 내외일거 같구요.사실 기존에 순수 C#서버에 gRPC 프로토콜로만 작동하던 게임이 있었는데 좀 옛날거라 요즘 기술로 다시 만들고 있습니다. 서론이 좀 길었는데 질문은 이것입니다. 위 상황으로 짐작해 봤을 때 Netcode for GameObjects 방식으로 작업이 가능할까요? 아니면 다른 솔루션을 이용해야 할까요? (포톤, Netfish, Netcode for Entitiese등) 솔직히 로비나 로그인 처리등은 기술적으로 크게 부담은 없는데 인게임내에서 다량의 적이 싸울때 싱크로 문제가 있을거 같아 걱정입니다.
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
구글 AD 미디에이션
미디에이션을 구현하는 방법이나 방법이 잘 설명이 되어있는 주소를 알려주세요
-
미해결[실전 게임 코드 리뷰] 유니티 클리커 게임
dotween pro와 dotween
안녕하세요. 프로젝트에서 dotween 무료버전말고 dotween pro를 쓰신이유는 다른 파트와의 협업을 위해서일까요??
-
해결됨[실전 게임 코드 리뷰] 유니티 캐주얼 게임 (엘리스팡)
DataLoader에 대해
[Serializable]의 용도가 무엇인가요?class를 인스펙터에 노출되게 하는 기능으로 알고 있었는데 다른 기능이 있을까요?dataloader가 컴포넌트로 부착되는 스크립트도 아니고, dataloader 내에 있는 데이터를 참조하는 다른 스크립트(UI)에서도 인스펙터에 노출이 안 되는 거 같아서 질문드립니다.유튜브 영상에서 [SerializeReference]를 통해 인스펙터에 노출시키던데 개발 과정 중에 필요하면 한 번씩 그렇게 사용하는 걸까요?수정) 유니티 Part3 DataManager에서 한 번 설명하셨네요메모리에서 들고 있는 것을 파일로 변환할 수 있다. 이정도로 알고만 있으면 될까요?validate() 함수의 효과단순히 true값만 반환하는 함수인데 어떤 함수인 걸까요?기존에 다른 로직이 있지만 이 프로젝트에서는 필요 없어서 제거한 걸까요?좋은 강의 항상 감사드립니다. 이번 AI Creative GameDev 챌린지도 잘 부탁드립니다.
-
해결됨[유니티6] 따라하면서 배우는 고박사의 2D 플랫포머 게임 제작
02-01 이동 발판 (Platform_00_Moving) 질문
안녕하세요컴포넌트 관리를 위해서 오브젝트에 자식 오브젝트를 두어 여러 컴포넌트를 나눠서 배치할 때 어떤 기준으로 나뉘는건가요?Platform_00_Moving에 있던 Rigidbody2D를 Platform에 배치해보니까 OnCollisionEnter2D의 코드가 작동하지 않더라구요
-
미해결[Unity6] 함께 만들어가는 서바이벌 게임 개발 - 스팀 출시 도전기
카드 Database ~ 스킬 구슬 강의 질문
누락된 부분이 있는거 같아서 질문드립니다CardSelector.cs 에서 SelectCard 함수를 정의는 했지만 사용하는 곳이 없음Base_Canvas.cs 에서 SetSkillFrame() 함수를 정의했지만 사용하는 곳이 없음.추후 강의에 나올 순 있지만 섹션3 까지 들은 상태에서는 찾을 수 없어서 질문 남깁니다. 추가로, 위 부분들을 사용하려면 카드 클릭(선택) 하는 함수 A를 만들고 A -> 1번 -> 2번 흐름으로 실행되어야 할 것 같은데, 카드 선택하여 1,2번을 호출하는건 직접 만들어야 하는 부분일까요?
-
미해결유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
구글로그인 인증 에러 문제 살려주세요 ㅠㅠ
DllNotFoundException: Unable to load DLL 'native-googlesignin'. Tried the load the following dynamic libraries: Unable to load dynamic library 'native-googlesignin' because of 'Failed to open the requested dynamic library 처음에 강의를 따라하다가 에러가 떠서 Q&A내용들 확인하고 동일한 에러가 있는걸 발견하고 따라했습니다. https://github.com/googlesamples/google-signin-unity/issues/106 이 깃허브 내용도 확인했습니다. 깃허브 및 Q&A 내용대로 1.srcarr -> arr로 변경하고 2. .arr파일에서 android 체크edm4u resolve (깃허브에는 ./Plugins/Andoid/ 산하에 .jar파일들이 생성된다고했는데 전 안됬습니다.) 진행했습니다. 그러니까 이번에는 로그캣에 61페이지 분량 크래시 로그가뜨면서 종료되는데 혹시 어떻게 해봐야할까요? 2025-10-08 23:26:35.716 21847 21879 Fatal tSoft.MyProject java_vm_ext.cc:616] JNI DETECTED ERROR IN APPLICATION: mid == null2025-10-08 23:26:35.716 21847 21879 Fatal tSoft.MyProject java_vm_ext.cc:616] in call to CallStaticVoidMethodV2025-10-08 23:26:35.716 21847 21879 Fatal tSoft.MyProject java_vm_ext.cc:616] from boolean com.unity3d.player.UnityPlayer.nativeRender()2025-10-08 23:26:35.776 21847 21879 Warn tSoft.MyProject sched_getscheduler(22014): No such process2025-10-08 23:26:35.776 21847 21879 Warn tSoft.MyProject sched_getparam(22014, &sp): No such process2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] Runtime aborting...2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] Dumping all threads without mutator lock held2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] All threads:2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] DALVIK THREADS (41):2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] "main" prio=10 tid=1 Native2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | group="" sCount=1 ucsCount=0 flags=1 obj=0x72cfd3a8 self=0xb4000079b91d37b02025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | sysTid=21847 nice=-10 cgrp=top-app sched=0/0 handle=0x7c82484d282025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | state=S schedstat=( 334617993 29619772 266 ) utm=22 stm=11 core=6 HZ=1002025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | stack=0x7fcbb05000-0x7fcbb07000 stackSize=8188KB2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | held mutexes=2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #00 pc 000bd788 /apex/com.android.runtime/lib64/bionic/libc.so (__epoll_pwait+8) (BuildId: 3549de9a967b5089252c4ca16436800c)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #01 pc 00010fa0 /system/lib64/libutils.so (android::Looper::pollOnce+216) (BuildId: 880c071958aa3788bc08025b2e2bae17)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #02 pc 0018e6b4 /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce+44) (BuildId: 2e949cb5813b36a6c68d06191a1b108e)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at android.os.MessageQueue.nativePollOnce(Native method)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at android.os.MessageQueue.next(MessageQueue.java:346)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at android.os.Looper.loopOnce(Looper.java:214)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at android.os.Looper.loop(Looper.java:342)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at android.app.ActivityThread.main(ActivityThread.java:9634)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at java.lang.reflect.Method.invoke(Native method)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:619)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] 2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] "FinalizerDaemon" prio=5 tid=6 Waiting2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | group="" sCount=1 ucsCount=0 flags=1 obj=0x2b40378 self=0xb4000079b91d53802025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | sysTid=21854 nice=4 cgrp=top-app sched=0/0 handle=0x793cf585f02025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | state=S schedstat=( 3540231 0 2 ) utm=0 stm=0 core=3 HZ=1002025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | stack=0x793cb55000-0x793cb57000 stackSize=4109KB2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] | held mutexes=2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #00 pc 0008029c /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28) (BuildId: 3549de9a967b5089252c4ca16436800c)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #01 pc 00201230 /apex/com.android.art/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks+136) (BuildId: eb4ec0f1d1c7267591d83fa87cb36390)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] native: #02 pc 004af4ec /apex/com.android.art/lib64/libart.so (art::Monitor::Wait+1088) (BuildId: eb4ec0f1d1c7267591d83fa87cb36390)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] at java.lang.Object.wait(Native method)2025-10-08 23:26:35.901 21847 21879 Fatal tSoft.MyProject runtime.cc:709] - waiting on <0x0654f29f> (a java.lang.Object)
-
미해결[Unity] 함께 만들어가는 방치형 게임 개발
피격테스트 30:20
안녕하세요 강사님 학습중 궁금한게 있어 질문드립니다 30:20 부분 코드에서 몬스터 피격 할때 텍스트에 랜덤값을 붙일때 pos.x 는 좌 우 인건 알겠는데 pos.z는 앞 뒤 아닌가요?? 제가 잘 몰라서 .. 제 생각에 위 아래 랜덤성이면 pos.z가 아닌 pos.y가 맞지 않나 싶어서요 .. 초보여서 궁금해서 질문드려봅니다!