묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[Unity6] 유니티6로 배우는 실전 멀티플레이 디펜스
프리팹 변경할때 가상플레이어 껏다 키면 됩니다!!
10:36초에서 프리팹 변경될때 virtual gamemode에서 해당 player를 껏다 키면 다시 적용 되어서 굳이 유니티 안끄고도 잘 플레이 되더라구여 다른 분들 위해서 혹시나 해서 올려봅니다!!!
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
로컬라이즈 어셋 각 언어별 폰트적용
안녕하세요. Part1부터 수강중인 학생입니다!수업 잘 듣고 있습니다.로컬라이즈 어셋을 활용한 다국어 지원 시스템에서 각 언어마다 font를 다르게 지정할 수 있는 방법이 있나요? 구글링과 gpt를 사용하여 검색을 해보았지만 처리하기 어려워 질문을 남깁니다!
-
해결됨유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
CSVReader 자세하게 설명 가능하신가요?
다른 프로젝트에서 사용하고 싶은데 자세하게 설명 가능하신가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Camera #3 에서 질문입니다. 카메라가 캐릭터 position으로 이동됩니다.
using UnityEngine; public class CameraController : MonoBehaviour { [SerializeField] Define.CameraMode _mode = Define.CameraMode.QuaterView; [SerializeField] Vector3 _delta = new Vector3(0f, 0f, 0f); [SerializeField] GameObject _player = null; void Start() { } void LateUpdate() { if (_mode ==Define.CameraMode.QuaterView) { RaycastHit hit; if (Physics.Raycast(_player.transform.position, _delta, out hit, _delta.magnitude, LayerMask.GetMask("Wall"))) { float dist = (hit.point - _player.transform.position).magnitude * 0.8f; transform.position = _player.transform.position + _delta.normalized * dist; } else { transform.position = _player.transform.position + _delta; transform.LookAt(_player.transform); } } } public void SetQuaterView(Vector3 delta) { _mode = Define.CameraMode.QuaterView; _delta = delta; } } 대체 어디가 잘 못 된건지 모르겠습니다 ㅠ
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
클라이언트쪽 Session 재사용
유니티수업에서 Networkmanger class 질문입니다. 클라이언트에서 서버와 통신 도중 통신 연결이 갑자기 해제한 된 경우(사용자가 의도하지 않은 경우 랜선이 뽑혔다거나..) Connector는 새로 생성해서 기존 Session 객체를 넘겨주면 되는건가요? 소켓은 다시 생성하고 session객체는 재사용이 되는걸까요? 이때 session객체가 이미 사용중이라는 메세지가 뜨는 것 같아서요. 서버와 통신 중 어떤 이유로 연결 해제 시 클라쪽에서 서버와 자동 재접속을 해보고 싶어 질문드립니다.
-
미해결C#과 유니티, 실전 게임으로 제대로 시작하기 (저자 직강)
Invoke 오류
코드 상으로는 오류는 뜨지 않는데 실행을 시키면 Invoke가 제대로 실행이 되지 않습니다.
-
해결됨Unity 6 Shader Graph 입문과 활용
물결 효과 파트 질문
안녕하세요? 강의 중 궁금한 점이 몇 가지 있어 질문 드립니다.Tiling And Offset에 UV 노드를 연결하셨는데 이유가 혹시 있을까요? 연결하지 않아도 똑같이 동작해서 궁금합니다.UV가 텍스처의 좌표값이라면 Tilling And Offset은 2차원 벡터인 이유는 이해가 갑니다. 근데 일반 UV 노드의 output은 4차원 벡터인 이유가 궁금합니다. Sine Time을 Sine 노드에 연결하셨는데, 이렇게 되면 sin(sin(time)) 이렇게 작동하는게 맞을까요? sin이 -1~+1 사이를 왔다갔다 한다면 sin(sin(time))의 실제 Output은 절댓값이 1에 못미치는 값으로 왔다갔다 할텐데 제 생각이 맞는지 궁금합니다.감사합니다.
-
해결됨[Unity] 함께 만들어가는 방치형 게임 개발
nova, dice, z 이펙트(프리팹)들이 깨져서 나오는데 해당 파일들을 혹시 받을 수 있을까요?
다름이 아니고 유니티 패키지를 받아오는데 z 프리팹이 깨져서 나오고 dice와 nova 프리팹이 유니티 패키지 임포트 목록에 보이질 않아서요 혹시 따로 좀 받을 수 있다면 부탁드리겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
SendBuffer 질문
스레드에게 고유한 SendBuffer를 두는게 세션마다 SendBuffer를 두고 자기꺼만 담는것보단 일꾼(스레드)가 SendBuffer를 들고다니면서 세션에서 보내는걸 담는게 부하가 덜 걸리기 때문에 외부에 만드는걸로 이해해도 될까요?
-
해결됨[Unity6] 나만의 서바이벌 게임 만들기
인터렉티브 키 24:14 Destory 질문
질문1.foreach(var iconEntry in activeIcons){if (!currentObjects.Contains(iconEntry.Key)){iconEntry.Value.GetComponent<UIAnimationHandler>().AnimationChange("OUT");Destroy(iconEntry.Value);toRemove.Add(iconEntry.Key);}}이 코드에서 파괴명령이 있어서 또다른 파과명령은 안 내려도 되지 않나요? 저는 멀어지면 아이콘이 잘 파괴되서 여줘봅니다. ->해결(Destory옮긴 건을 못 봤네요. ) 질문2.foreach(Collider obj in nearbyObjects){Transform targetTransform = obj.transform;float distance = Vector3.Distance(transform.position, targetTransform.position);if(distance <= activationDistance){ShowIcon(targetTransform);currentObjects.Add(targetTransform);}}제가 이해하기에는 currentObjects목록에는 항상 실시간으로 부딪힌 collider들의 transform만 가질 수 있도록 update가 돼야 작동하는 게 맞는 것 같은데요. 추가하는 코드만 있는데 갱신이 되려면 거리를 충족시키지 못하면 이미 있는 transform들을 삭제하는 코드가 있어야 맞는 거 아닌지 의문이 들어요. -> HashSet<Transform> currentObjects = new HashSet<Transform>(); 이부분에서 계속 초기화가 된다고 생각하면 될까요?
-
해결됨[Unity6] 나만의 서바이벌 게임 만들기
move함수
안녕하세요 선생님move 함수에서 카메라 백터 로0으로 기준을 잡아서 horizontal, vertical 값을 줘서 움직이는건가요camerForward,cameraRight기준으로 코드는 처음봐서요!헷갈립니다
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
강의 : Addressables를 활용한 어셋 관리 및 로딩 처리 문의
현재 사용중인 기기 : 맥북SettingsUI 어드레서블 에셋 등록 시 폰트 리소스 렌더링 이슈강의와 차이점 : OpenGLES3 없음 -> OpenGLCore(Deprecated) 로 대체폰트 렌더링이 되지 않고 있습니다.해결 방법 아시는분 계시면 공유 부탁드립니다. 추가Mac Silicon Chips 은 Metal 사용Canvas Renderer 충돌로 보임플레이 시Material -> shader 옵션 변경 시 텍스트 전체 보임폰트 설정 시 해당 텍스트 보임대체 안폰트도 어드레서블 등록해서 리소스 관리할지
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
세계 시간 API 서버 이슈로 대체할만한 API 아시는분 계신가요?
세계시간 API 서버 SSL Connection 에러로 호출이 되지않아 대체 API 를 찾고있습니다.대체 API 아시는 분은 공유 부탁드립니다.강의 예제 세계 시간 API : https://worldtimeapi.org/api/ip상태 체크 : https://status.worldtimeapi.org/
-
미해결[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작
상업적 출시에 대한 질문입니다.
강의 정말 도움이 많이 되었습니다.스킬 이펙트, 아이콘, 폰트등 제가 사용해도 되는것들이 있을까요??감사합니다.
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
TaskGroupState에 대하여 질문이 있습니다
이것저것 수정하면서 알아챈 점이 있는데 TaskGroup의 public bool IsAllTaskComplete => tasks.All(x => x.IsComplete); public bool IsComplete => State == TaskGroupState.Complete;이 부분에서 IsAllTaskComplete이 참이 되면 어짜피 태스크 그룹의 State도 클리어가 되어야하고 Iscomplete 참이 되어야하는데 왜 이렇게 되어있는지 여쭤보고싶습니다.혹시 강의 내용에 사유를 말씀하셨다면 죄송합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
코드 관련한 몇 가지 질문입니다!
안녕하세요.서버 쪽에 HandleSkill() 함수를 보면 스킬 사용이 문제 없다면 주석에 info.PosInfo.State = EntityState.Skill 코드가 있는데요. 지금 시점에서는 사용되지 않는 코드인 것 같은데 나중에 사용될까요? 당연히 지금 로직에서는 없어도 동작에 지장이 없습니다.클라이언트의 PlayerController.cs에서 CoStartPunch() 함수를 호출할 때 쿨타임을 위해(?) CheckUpdateFlag()를 호출하는데 이게 기본적으로 이동 패킷이라서 지금 로직에서는 없어도 되는 코드로 보입니다. 강의에서 설명해주신 기능에 실제로 이 코드가 필요한 게 맞는지 궁금합니다쿨타임 관련해서 클라/서버 둘 다 처리해야 한다고 말씀하셨는데 작성된 코드를 보면 클라에서만 코루틴을 사용해서 처리하신 것 같습니다. 서버에서는 시간 관련한 로직이 없으니까요.감사합니다.
-
해결됨두고두고 써먹는 유니티 비동기 프로그래밍
강의 사운드가 너무 작습니다.
강의 감사히 잘 듣고 있습니다.다만 강의 사운드가 너무 작다 보니시스템 사운드 제차를 많이 키워서 듣고 있습니다.그러다 보니 다른 알람 같은게 오면 무척 소리가 커서 강의듣다가 깜짝깜짝 놀라게 되네요.그리고 소리 자체도 조금 울림이 있어서 이어폰으로 들으면피로감이 좀 있습니다. ㅠ_ㅠ 조금 수고스러우시겠지만 영상 편집 프로그램에서 사운드 분리 하셔서 증폭 시키고 울림이나 이런거 좀 조정해서 강의다시 업데이트 하시면 좋을거 같아서 건의 드려 봅니다.감사합니다.
-
미해결유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
안녕하세요 구글로그인 SDK 적용하고 빌드문제가있어 질문드립니다.
영상처럼구글 SDK 를 적용하고 MinimumAPI Api23targetApiLevel 34로 선택하고빌드를진행하면 이렇게 오류가뜨는데 어떻게 해결할까요..어제 부터 계속 구글링하며 찾고있는데 못찾아서.. 질문드립니다.. Starting a Gradle Daemon, 1 incompatible and 4 stopped Daemons could not be reused, use --status for details> Configure project :launcherWARNING:The option setting 'android.bundle.enableUncompressedNativeLibs=false' is deprecated.The current default is 'true'.It will be removed in version 8.0 of the Android Gradle plugin.You can add the following to your build.gradle instead:android {packagingOptions {jniLibs {useLegacyPackaging = true}}}WARNING:We recommend using a newer Android Gradle plugin to use compileSdk = 34This Android Gradle plugin (7.1.2) was tested up to compileSdk = 32This warning can be suppressed by addingandroid.suppressUnsupportedCompileSdk=34to this project's gradle.propertiesThe build will continue, but you are strongly encouraged to update your project touse a newer Android Gradle Plugin that has been tested with compileSdk = 34> Task :unityLibrary:FirebaseApp.androidlib:preBuild UP-TO-DATE> Task :unityLibrary:preBuild UP-TO-DATE> Task :unityLibrary:preReleaseBuild UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:preReleaseBuild UP-TO-DATE> Task :unityLibrary:packageReleaseRenderscript NO-SOURCE> Task :unityLibrary:FirebaseApp.androidlib:packageReleaseRenderscript NO-SOURCE> Task :unityLibrary:FirebaseApp.androidlib:compileReleaseRenderscript NO-SOURCE> Task :unityLibrary:compileReleaseRenderscript NO-SOURCE> Task :unityLibrary:generateReleaseResValues UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:generateReleaseResValues UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:generateReleaseResources UP-TO-DATE> Task :unityLibrary:generateReleaseResources UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:packageReleaseResources UP-TO-DATE> Task :unityLibrary:packageReleaseResources UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:extractDeepLinksRelease UP-TO-DATE> Task :unityLibrary:extractDeepLinksRelease UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:processReleaseManifest UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:compileReleaseLibraryResources UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:compileReleaseAidl NO-SOURCE> Task :launcher:preBuild UP-TO-DATE> Task :launcher:preReleaseBuild UP-TO-DATE> Task :launcher:compileReleaseRenderscript NO-SOURCE> Task :launcher:generateReleaseResValues UP-TO-DATE> Task :launcher:generateReleaseResources UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:generateReleaseBuildConfig UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:javaPreCompileRelease UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:writeReleaseAarMetadata UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:mergeReleaseShaders UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:compileReleaseShaders NO-SOURCE> Task :unityLibrary:FirebaseApp.androidlib:generateReleaseAssets UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:packageReleaseAssets UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:processReleaseJavaRes NO-SOURCE> Task :unityLibrary:FirebaseApp.androidlib:bundleLibResRelease NO-SOURCE> Task :unityLibrary:FirebaseApp.androidlib:mergeReleaseJniLibFolders UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:mergeReleaseNativeLibs NO-SOURCE> Task :unityLibrary:compileReleaseLibraryResources UP-TO-DATE> Task :unityLibrary:compileReleaseAidl NO-SOURCE> Task :unityLibrary:generateReleaseBuildConfig UP-TO-DATE> Task :unityLibrary:javaPreCompileRelease UP-TO-DATE> Task :unityLibrary:writeReleaseAarMetadata UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:copyReleaseJniLibsProjectOnly UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:prepareReleaseArtProfile UP-TO-DATE> Task :unityLibrary:mergeReleaseShaders UP-TO-DATE> Task :unityLibrary:compileReleaseShaders NO-SOURCE> Task :unityLibrary:generateReleaseAssets UP-TO-DATE> Task :launcher:mergeReleaseResources UP-TO-DATE> Task :launcher:createReleaseCompatibleScreenManifests UP-TO-DATE> Task :launcher:extractDeepLinksRelease UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:parseReleaseLocalResources> Task :unityLibrary:parseReleaseLocalResources> Task :unityLibrary:FirebaseApp.androidlib:generateReleaseRFile> Task :unityLibrary:processReleaseManifest> Task :launcher:checkReleaseDuplicateClasses UP-TO-DATE> Task :launcher:compileReleaseAidl NO-SOURCE> Task :launcher:generateReleaseBuildConfig UP-TO-DATE> Task :launcher:javaPreCompileRelease UP-TO-DATE> Task :launcher:checkReleaseAarMetadata UP-TO-DATE> Task :launcher:mergeReleaseShaders UP-TO-DATE> Task :launcher:compileReleaseShaders NO-SOURCE> Task :launcher:generateReleaseAssets UP-TO-DATE> Task :launcher:processReleaseJavaRes NO-SOURCE> Task :launcher:mergeReleaseJniLibFolders UP-TO-DATE> Task :launcher:collectReleaseDependencies UP-TO-DATE> Task :launcher:configureReleaseDependencies UP-TO-DATE> Task :launcher:parseReleaseIntegrityConfig UP-TO-DATE> Task :launcher:writeReleaseAppMetadata UP-TO-DATE> Task :launcher:validateSigningRelease UP-TO-DATE> Task :unityLibrary:packageReleaseAssets> Task :unityLibrary:FirebaseApp.androidlib:compileReleaseJavaWithJavac> Task :unityLibrary:FirebaseApp.androidlib:bundleLibCompileToJarRelease UP-TO-DATE> Task :unityLibrary:FirebaseApp.androidlib:bundleLibRuntimeToJarRelease UP-TO-DATE> Task :launcher:processReleaseMainManifest> Task :launcher:processReleaseManifest UP-TO-DATE> Task :launcher:processApplicationManifestReleaseForBundle UP-TO-DATE> Task :launcher:bundleReleaseResources UP-TO-DATE> Task :launcher:processReleaseManifestForPackage UP-TO-DATE> Task :launcher:mergeReleaseAssets> Task :unityLibrary:processReleaseJavaRes UP-TO-DATE> Task :unityLibrary:bundleLibResRelease UP-TO-DATE> Task :unityLibrary:mergeReleaseJniLibFolders UP-TO-DATE> Task :unityLibrary:mergeReleaseNativeLibs UP-TO-DATE> Task :unityLibrary:copyReleaseJniLibsProjectOnly UP-TO-DATE> Task :unityLibrary:prepareReleaseArtProfile UP-TO-DATE> Task :launcher:mergeReleaseJavaResource UP-TO-DATE> Task :launcher:mergeReleaseNativeLibs UP-TO-DATE> Task :launcher:stripReleaseDebugSymbols UP-TO-DATE> Task :launcher:mergeReleaseArtProfile UP-TO-DATE> Task :unityLibrary:generateReleaseRFile> Task :launcher:extractReleaseNativeSymbolTables UP-TO-DATE> Task :unityLibrary:compileReleaseJavaWithJavac UP-TO-DATE> Task :launcher:processReleaseResources UP-TO-DATE> Task :unityLibrary:bundleLibRuntimeToJarRelease UP-TO-DATE> Task :unityLibrary:bundleLibCompileToJarRelease UP-TO-DATE> Task :launcher:compileReleaseJavaWithJavac UP-TO-DATE> Task :launcher:dexBuilderRelease UP-TO-DATE> Task :launcher:desugarReleaseFileDependencies> Task :launcher:mergeExtDexRelease UP-TO-DATE> Task :launcher:mergeDexRelease FAILEDDeprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.See https://docs.gradle.org/7.6/userguide/command_line_interface.html#sec:command_line_warnings71 actionable tasks: 11 executed, 60 up-to-dateUnityEditor.BuildPipeline:BuildPlayer (UnityEditor.BuildPlayerOptions)BuildManager:StartAOSBuild () (at Assets/02.Scripts/Editor/BuildManager.cs:89)
-
해결됨[Unity6] 나만의 서바이벌 게임 만들기
폰트에 따라 번집니다.
안녕하세요위에는 liberationsans bold는 괜찮은데,아래 notosanskr-bold, maplestory bold 폰트를 쓰면 번집니다. 폰트에 따라 번지는 건지 궁금합니다.
-
해결됨Unity 6 Shader Graph 입문과 활용
Fresnel을 활용하면 DissolveEffect에 경계선을 만들수 있을까요
타들어서 사라지는것을 구현하려고 하는데Fresnel을 활용하면 테두리를 만들수는 있다 까지는 알겠는데 그 테두리 부분만 빛나게 하려면 어떻게 해야하나요