묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[실전 게임 코드 리뷰] 유니티 캐주얼 게임 (엘리스팡)
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가 맞지 않나 싶어서요 .. 초보여서 궁금해서 질문드려봅니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
2D로 그냥 만들어도 되나요?
프로젝트 그냥 universial 2D 이거로 새로 만들어도 되나요?
-
미해결절대강좌! 유니티6 - 네트워크 게임 개발 마스터클래스 (Part 1)
7강 재생이 안됩니다
다른 강의는 괜찮은 것 같은데 7강만 재생이 안되네요win10 크롬 사용 중이고 시크릿모드에서도 마찬가지로 재생이 안되고 있습니다아이패드 크롬에서도 똑같습니다만 사파리에선 10초 정도 기다리면 소리는 나옵니다.
-
미해결[Unity6] 함께 만들어가는 서바이벌 게임 개발 - 스팀 출시 도전기
선택 카드 UI 강의 중 발생 에러
안녕하세요. 강의 잘 보고 있습니다.선택 카드 UI 강의대로 진행 중 Selector의 Card 배열에 Card GameObject를 넣는 도중 아래 사진과 같은 에러가 발생해서 Q&A 드립니다.사용 Unity 버전은 6.0(6000.0.58f2) 입니다. 아래는 게임 실행 시 발생하는 콘솔 로그 입니다.혹시 이슈가 뭔지 아실까요?(첫번째 로그를 보면 Image 가 없다고 하는거 같은데 관련없는 내용인 것 같네요.) 추가로, 게임 시작할 때 다른 GameObject의 Inspector를 띄워놨다가 Seletor를 선택하는 순간 error 발생하고 게임이 멈추네요. 다른 Inspector를 선택하고 있는 상태로 계속 진행하면 잘 되네요! 혹시 이것과 관련해서 비활성화상태임에도 Selector를 클릭하는 순간 강제로 start나 awake 같은 유니티 함수가 실행되어서 문제가 발생하는걸까요?
-
미해결[Unity6] 함께 만들어가는 서바이벌 게임 개발 - 스팀 출시 도전기
UI 구현하기 챕터 문의
이전 데미지 구현하기 에서 Base_Canvas 를 붙인 Canvas가 있었는데 갑자기 사라지고 <MANAGER>, EventSystem 등이 씬에 붙어 있는 상태로 UI 구현하기 챕터로 넘어왔는데요, 순서가 안맞는거 같은데 확인 부탁드립니다.
-
해결됨2. 유니티가 어려운 입문자를 위한 입문용 게임 제작
적 스프라이트가 게임뷰에 안보이는 오류 질문입니다.
안녕하세요. 학교 동아리 수업으로 좋은 강의를 수강하게 된 수강생 입니다. 적 리스폰 강의 부분에서 원래 잘 보이던 적 오브젝트와 적 총알 오브젝트가 적 오브젝트를 프리팹으로 만들고 적 스포너 스크립트와 적 이동 스크립트를 추가하여 실행한 후 부터 씬뷰에서만 확인이 가능하고 게임뷰에서는 보이지 않습니다. 정확히 언제부터 이런 상태가 됐는지는 확인하지 못하였으나 일단 스크립트 오류 메세지는 뜨지 않으며 스프라이트만 보이지 않을 뿐 오브젝트 자체는 정상적으로 동작합니다. 플레이어 오브젝트는 제대로 보이고 오브젝트끼리 상호작용도 제대로 동작하며 카메라 범위 밖을 벗어난 것도 아닙니다. 임의로 order in layer 부분도 올려보고 스크립트도 확인해 보았으나 해결이 되지 않아 문의 드립니다.
-
미해결절대강좌! 유니티6 - 네트워크 게임 개발 마스터클래스 (Part 1)
카메라 문제
현재 탱크를 움직여도 무조건 화면의 가운데로만 옵니다. 혹시 어떤 부분이 잘 못됐을까요?
-
미해결레트로의 유니티 C# 게임 프로그래밍 에센스
코루틴 관련 질문 있습니다.
챕터5 코루틴 편에서 코루틴은 순차적 처리가 아닌 여러 차례를 병렬로 실행 가능하게 해준다고 소개해주고 있는데, 여러곳에서 알아본 결과 말이 달라서 질문 드립니다.코루틴이 병렬 처리가 가능한 명령어가 맞나요?
-
해결됨4. 유니티가 어려운 초보자를 위한 유니티 기초 강의
Time.deltaTime 질문입니다
time -= Time.deltaTime time += Time.deltaTime 델타타임을 +해줄때와 -해줄때의 개념이 궁금합니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
receive하는 부분과 send하는 부분의 차이
강의를 쭉 듣다 궁금한게 생겨서 질문올립니다강의에선 receive하는 부분에서는 lock을 걸지 않고, send하는 부분에서는 lock을 걸어서 경합을 방지해주는데요 send도 receive도 둘다 async계열의 함수를 사용해서 비동기로 작동하기때문에 멀티쓰레드가 들어갈거같은데요. 왜 send에만 lock을 걸어서 경합을 방지하고, receive에는 lock을 걸지 않는지가 궁금해요
-
미해결[Unity6] 함께 만들어가는 서바이벌 게임 개발 - 스팀 출시 도전기
수료증 문의입니다
12강이 안나온 상황에서 수료증이 필요해서 이전에 문의 드렸고 지식공유자님이 12강을 닫아주셨는데요지금 현재 상황이 학습하기를 눌러서 목록 리스트에서는 100퍼센트라고 뜨는데요 아래 2개의 사진대로 98.11%로 되어서 수료증이 나오지 않는상황입니다. 이거는 시스템상 문제인것같은데, 확인 부탁드립니다.
-
해결됨데이터베이스를 결합한 Unity 실전 게임 만들기
유니티 PUN2 아니면 UnityNetCode
유니티를 이용한 파이어 베이스 연동은 잘들었고 별점도 최고 점수를 드렸습니다.Pun2 포톤네트워크나 UnityNetcode로 멀티 게임을 만들면서 FireBase 연동 해서 랭킹 이라던지 킬수 저장 이런 것의 영상강의를 해주셨으면 합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
커서의 위치의 중요성
커서의 위치의 중요성은 채팅 때문에 그런가요?
-
해결됨[Unity6] 함께 만들어가는 서바이벌 게임 개발 - 스팀 출시 도전기
12강이 아직안나왔는데 이수증을 먼저 주실 수 있나요?
이수증이 빨리 필요해서요. 12강이 안나온상태라 수강완료가 안되서 이수증이 안나오는데시스템상으로 먼저 이수증이 가능하도록 해주시면 안될까요?
-
미해결[유니티6] 따라하면서 배우는 고박사의 Top-Down Shooting 게임
2d게임에서 의복 교체는 어떻게해야할까요?
이번 강의에서 무기교체는 배웠는데,모자, 망토, 상의, 하의, 부츠 이런것을 교체하려고하면 어떻게 해야할지 모르겠습니다.
-
해결됨[유니티6] 따라하면서 배우는 고박사의 2D 플랫포머 게임 제작
Rigidbody2D의 linearVelocity 제어
안녕하세요 유니티 공식문서에서는 리지드바디의 속력 제어는 Update()가 아닌 FixedUpdate()에서 처리하라고 권고하던데 그렇게 하지 않으시는 이유가 있나요?많은 사람들이 그렇게 사용하지 않는 것 같아서 질문드려요.