:: 게시판
:: 이전 게시판
|
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다. 통합 규정을 준수해 주십시오. (2015.12.25.)
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
20/11/26 16:59
1. 아뇨.
2. 코드 읽으실 줄 알면 연습풀이 보단 만들어진 코드 뜯어보는 게 빨리 느십니다. 3. 원래 처음 빌드 할 땐 오래 걸립니다. 근데 지나치게 느린 경우는 무한 루프 돌거나 하는 부분 있는지 확인해보세요.
20/11/26 17:00
1. 어떤 문제가 생겼는데 원인을 잘 모를 경우 로우레벨까지 따져가면서 보기는 합니다만, 공부 시작 단계에서는 불필요할수도 있습니다.
물론 알아서 나쁠건 없는데, 공부하는데 시간이 많이 걸리실겁니다. 2. 학교에서 아무리 학습해봤자 회사 오면 아무것도 모른다고 생각하고 시킵니다. 학교에서도 특별한 경우 아니면 이론공부 + 책보고 따라하는 수준이라, 책보고 따라하는 정도로만 하셔도 될 것 같습니다. 3. 프로그램 최적화에 따라 다른데, 오래 걸리는건 몇분씩 걸리기도 합니다. 프로그램이 게임 수준으로 컴퓨팅 파워를 쓰기 때문에 게임용 바로 아랫급으로 맞추셔야 할겁니다. 맥은 아이폰용이나 그래픽쪽 개발할거 아니면 잘 안쓸겁니다.
20/11/26 17:11
1. 유니티 같은 게임 엔진 만드는게 목표가 아닌 이상 필요 없습니다.
2. 말슴 하시는 목표 대로라면 지금 공부 하시는 방법 보다 유니티 툴 부터 익히시는걸 추천 합니다. 취미로 접근 하시는데 C# 문법 부터 하시면 너무 오래 걸립니다. 캐릭터 움직이는걸 먼저 목표로 접근해 보세요. 업이 아닌 이상 코드 효율 뭐 이런거 보다 직접 눈으로 돌아 가는거 보는게 더 나아요.
20/11/26 17:30
다들 C문법까진 필요없다하셔서 맘이 편해지네요
일단은 C#공부도 재미있어서 기간을 정해서 하려고 하로있었습니다 빨리 유니티로 가야겠네요..
20/11/26 17:24
1. 필요없습니다. 아주 간혹 필요한 경우가 있는데, 그런경우는 유니티 에셋스토어를 뒤지시는게 더 빠를겁니다. 왠만한 플러그인은 다 있습니다.
2. 일단 쉬워보이는 것부터 차례차례 해보시는걸 권합니다. 한번에 완벽하게 만드는건 전문가들도 힘듭니다. 화면에 맵을 표시하는 것부터 시작해서, 이동, 상호작용, 충돌처리, 점수처리... 등등 하나씩 해결해가다 보면 어느샌가 게임이 만들어져 있을겁니다. 3. 최적화는 프로그래밍의 꽃이자 끝판왕입니다. 원래 어렵습니다. "생각하는 프로그래밍"이라는 책을 권해드립니다.
20/11/26 18:22
csproj 가 들어 있는 디렉토리의 서브디렉토리를 찾아보시면 실행 파일이 만들어져 있을 겁니다.
bin\Debug\net5.0 에 .exe 가 있을 텐데, 소스가 변하지 않았다면 그냥 실행시킬 수 있습니다.
20/11/26 19:10
옙, .exe 를 만드는 것을 빌드라고 합니다.
파이썬 같이 인터프리터 방식에서는 파이썬 프로그램이 중간 실행자 역할을 맡기에 빌드를 따로 하지 않지만, C 계열은 소스를 컴파일하고 다시 연결하여 (compile & link) 실행 파일을 만들죠. 빌드 시간이 필요한 대신, 일단 실행 파일이 만들어지면, 실행 파일의 실행 속도는 인터프리터 방식보다 많이 빠른 것이 보통입니다.
20/11/26 18:55
1. 그냥 지나가는 개소리로 듣고 흘리시면 됩니다. 그거 생각하면서 짤 환경 아니면요.
2. 최종 목표를 생각하면 C#보다 Unity 툴부터 익숙해지시는게 어떨까 싶습니다만...? 3. 굳이 비교를 하자면 엑셀은 계산준비가 다 되어 있는 상태에서 데이터만 넣어서 결과를 내는것이고, 프로그램으로 돌릴 경우 해당 연산을 위한 네이티브 코드를 생성 후 그 네이티브 코드를 통해 연산을 하고 결과를 내니 좀 늦어보일수는 있습니다. 다만 프로젝트 내부에 실행파일로 돌릴 경우에는 엑셀만큼 빠르게 볼 수 있을꺼구요.
20/11/26 19:36
조금 더 디테일하게 설명 들어가자면...
1. 진짜 꼰대나 하는 소리입니다. 옛날처럼 메모리 한조각이라도 최적화할려고 난리칠때면 C, C++ 쓰는게 맞고 지금도 쓰는 환경이 있습니다. 단적으로 임베디드 S/W같은 경우 제한된 H/W 스펙 내에서 최대 성능을 뽑아내야하기 때문에 C++도 모자라서 C로만 제어하는 경우도 있습니다. 대신 극한의 메모리 관리가 개발자 수준에서 이루어져야 하죠. 그거 진짜 머리 빠집니다. 하나라도 삐끗하면 터지는건 예사입니다.(......) 그런데 요새 파이썬이나 C#, JAVA 같은 경우 저 중요한 메모리 관리를 가비지 컬렉터(이건 자바에서 쓰이는 용어이긴 한데, 그냥 뭉뚱그려 이 단어로 퉁칩니다.)라는 별도 시스템에서 [알아서] 합니다. 메로리 영역을 개발자가 신경 끊어도 되고, 신경써서도 안되는 영역이 되어버리는 것이죠. 그만큼 퍼포먼스와 성능은 옛날보다 상대적으로 좀 떨어질지 몰라도 H/W가 워낙 발전을 많이 해서 커버치고도 남아돕니다. 2. 제가 Unity는 안해봤지만, Unity 자체가 C# 비중이 크다고 알고 있지는 않습니다. 그래서 글쓴이분께 여쭈어봅니다. 게임 개발이 목적이십니까? 아님 프로그래밍을 통한 게임 개발이 목적이십니까? 이거 선후관계 의외로 중요합니다. 전자가 목적이라면 Unity 툴부터 익숙해지면서 공개되어 있는 다른 API나 관련 자료들을 통해서 원하는 수준의 구현을 목표로 해야 할 것이고, 후자가 목적이라면 언어 자체의 기본 사용법과 성능을 어떻게 뽑아낼지에 대한 공부가 선행되어야겠죠. 두가지 중에서 혼동하지 마시길 바랍니다.
20/11/26 20:34
C#으로 간단간단한거 개발 할거면 C 필요 없죠. 목표가 그냥 간단한 게임 개발이면 C#만 계속 열심히 하셔도 충분 합니다. 그런데 고급 개발자 중에 C/C++모르는 사람 아무도 없는것도 맞습니다. 게임쪽도 깊게 들어가면 필수입니다. 유니티도 엔진 자체는 C++로 개발된걸로 압니다. 이게 당장 3번이랑 연결되는데, C# 프로그램은 그냥 hello world만 찍어도 .net 프레임워크를 메모리에 로딩 해야합니다. 가비지 컬렉터랑 이런저런거 주렁주렁 딸려오죠. C/C++을 쓰면 자기가 필요한 코드만 메모리에 올릴 수 있고 최적화 측면에서 컴파일된 코드 크기/속도를 수십배까지도 끌어 올릴 수 있습니다. 요즘 워낙 C# 개발환경이 좋고 게임쪽도 지원을 많이 하긴 하지만 윈도우/엑박 종속적이고 가비지 컬렉터 같은것 때문에 깊게 가면 한계가 있는 것도 맞습니다.
|