전체 글 95

24-09-25 Text RPG 구현하기

오늘 드디어 Text RPG를 마무리하고 재출하는 날이 되었다. 그동안 작성한 코드들이 정말 많았으나,어떻게든 이 글에서 구현하는동안 배운것과 구현한 과정들을 요약 정리 해보도록 하겠다.  프로젝트를 한 클래스 안에서 클래스를 또 정의하고 메소드를 만들고하다가 몇백 줄이 넘어갔었는데,유니티에서 했던것처럼 스크립트 파일을 class별로 나누어 정리를 하다보니 이번엔 폴더를 쫙 펼치니 파일 주소 목록이 이렇게 길어졌다 ㅋㅋ 하지만 이렇게 나누어 관리를 하는것이 그렇지 않은것보다 몇백배는 더 편했고, 또 기존에 정의한 class를 파일로 빼는 단축키로..아....................어...............지금은 까먹어 버렸다......GPT 비서야 도와줘! [GPT가 답변해준 것] {Visual..

게임개발/C# 2024.09.25

24-09-24 C# 프로그래밍 기초 04

3) 델리게이트, 람다 및 LINQ{이 부분에서 꽤나 자주 사용되는 문법들이 등장한다고 한다!! 그리고 강의를 들어보니 진짜 잘 활용할수있을것같다!물론 이해를 완벽하게 했다면 말이다!     델리게이트{델리게이트란 메서드를 참조하는 타입이다(??) 이말은 잘 안와닿으니.. 메서드를 변수에 저장 할수 있다는걸로 이해하자.. 예제 1: 델리게이트를 선언해준뒤 메소드 두개도 선언, 그리고 메인에서 메소드들을 연결해서 한번에 호출해주는 모습이다.이걸 이용하면 대화문이라던지 여러가지 방식으로 사용할수 있을것 같다.  예제 2: 다음 예제에서도 무언갈 배울수 있었는데, event함수로 선언한 OnAttack 메소드(이벤트?)를 호출할때? 물음표를써서 null 조건부 연산자로 만들수 있다는것이다.OnAttack이 n..

게임개발/C# 2024.09.24

24-09-23 C# 프로그래밍 기초 03

어제 쓰던거에 이어서,,, 1) 인터페이스와 열거형{ 인터페이스 ( Interface ){ 인터페이스란, 클래스가 구현해야하는 맴버들을 정의하는 것이라 한다.즉 인터페이스가 클래스의 일종인것은 아니고, 클래스의 제약 조건을 명시하는 것이다.     예시 1 : 이동 구현 더보기   이렇게 interface와 그 맴버를 선언하고  후에 클래스를 선언해  클래스에 인터페이스를 달아줘 제약을 걸어주게되면 빨간줄이 뜬다 ; 인터페이스 맴버를 구현하지 않았기 때문에.    이렇게 클래스를 선언할때 클래스의 구성 요소를 인터페이스가 결정하는 방식이 되어, 클래스를 하나하나 선언할 필요 없이 인터페이스를 수정하고 적용시키는 방식으로 용이하게 작업할수 있게되는 것으로 이해했다.   메인에서 불러와 실행시킬땐 이런식으로..

게임개발/C# 2024.09.23

24-09-22 C# 프로그래밍 기초 02.7

오늘은 남은 강의를 마저 들으며 정리를 해보고자 한다. 강의 들은 내용)더보기1) 인터페이스와 열거형{ 인터페이스 ( Interface ){ 인터페이스란, 클래스가 구현해야하는 맴버들을 정의하는 것이라 한다.즉 인터페이스가 클래스의 일종인것은 아니고, 클래스의 제약 조건을 명시하는 것이다.    예시 1 : 이동 구현  이렇게 interface와 그 맴버를 선언하고  후에 클래스를 선언해  클래스에 인터페이스를 달아줘 제약을 걸어주게되면 빨간줄이 뜬다 ; 인터페이스 맴버를 구현하지 않았기 때문에.    이렇게 클래스를 선언할때 클래스의 구성 요소를 인터페이스가 결정하는 방식이 되어, 클래스를 하나하나 선언할 필요 없이 인터페이스를 수정하고 적용시키는 방식으로 용이하게 작업할수 있게되는 것으로 이해했다. ..

게임개발/C# 2024.09.22

24-09-21 C# 프로그래밍 기초 02.5

주말이라도 공부를 해야한다,, 왜냐면 C#의 길은 험난하니까,, 아무튼 어제 하던걸 이어서 정리해보겠다 out, ref 키워드{out, ref 는 메소드에 데이터를 전달할때 쓰는 키워드이다. out 은 메소드에서 값을 매개변수로 전달할때 쓰이고,ref 메소드에서 매개변수를 수정하여 원래 값에 전달하는데 쓰인다고 한다. Divide 메서드에서 매개변수 quotient와 remainder 앞에 out을 사용하여 값을 할당받고 호출 후에도 사용할수 있도록 하고,Main 메서드에서 Divide를 호출할때 quotient와 remainder를 전달, a와 b는 각각 7과 3이므로  quotient는 7 / 3의 결과인 2가,remainder는 7 % 4 의 결과인 1이 할당된다. 그렇게 값이 할당 되었으므로 Co..

게임개발/C# 2024.09.21

24-09-20 C# 프로그래밍 기초 02

휴일 지나고 나선 미니 프로잭트 기간때처럼 탠션과 집중력이 유지가 되질 않는다.. 의외로 혼자 공부하는건 적성에 맞지 않는걸까? 아니면 C#이 생각보다 어려운 탓인걸까? 오늘 뭘 배웠길래 이런 감상이 나왔는지 다음과 같이 서술하겠다.. 1)클래스와 객체{객체 지향 프로그래밍{ 객체 지향 프로그래밍 ( Object-Oriented Programming, OOP ) 에 대한 특징을 간단히 요약하자면 1. 캡슐화 : 관련 데이터와 기능을 한 단위로 묶어 안전성과 유지보수성을 높임 2. 상속 : 동물 안에 포유류가 있고, 포유류 안에 식육목 등이 있듯이 클래스를 확장시키는 메커니즘이다.이는 코드의 중복을 줄이고, 구조화와 유지보수를 용이하게 해준다. 3. 다형성 : 오버로딩과 오버라이딩을 통해 하나의 메소드로 ..

게임개발/C# 2024.09.20

24-09-19 C# 프로그래밍 기초 01

더보기visual studio 내에서 F9를 눌러 코드가 멈출 부분을 설정하고 디버그할때 사용할수 있다. 코드를 한칸 진행시키는건 F10 한번에 코드를 주석처리하는법은 Ctrl + K , C 주석을 푸는 방법은 Ctrl + K, U C#문법 종합반 1주차와 2주차를 완강했다. 1주차의 내용은 완전 기본적인 내용 복습하는 느낌이였지만 숙제에서부터 좀 어려워지기 시작했다 문제1 : 사용자로부터 입력 받기 이 문제는 이름과 나이를 입력받고 출력하는 간단한 코드를 작성하는 것이다. 단순히 Console.WriteLine()과 Console.ReadLine()을 사용해서 풀이했다.더보기Console.WriteLine("이름을 입력해주세요"); string name = Console.ReadLine(); Conso..

게임개발/C# 2024.09.19

24-09-13 카드 뒤집기 미니프로젝트 발표

아침 일찍 일어나서 발표 준비를 마저 했다 7시반쯤에 일어나 발표 영상을 촬영 편집했고, 발표 자료까지 완성했다 팀원들도 도착해서 본인 파트의 발표 자료 를 완성해줘서 탈없이 발표 준비 마칠수 있었다. https://youtu.be/iLXQ9LPLITk?si=DbZ8B9DX5S0M84fM  기능 위주 설명은 노션으로 서술했다.  https://rectangular-saver-7f7.notion.site/a751c84958aa405a98b0f50b454e3ddc

게임개발/Unity 2024.09.13

24-09-11 카드뒤집기 미니프로젝트 03

오늘 구현한것 :  카드뒷면 등의 리소스 제작과 씬에 적용과 애니메이션 제작 및 적용이다. 화면위에 있는 초상화 오브젝트를 모든 씬에서통일 해주기로 했고, 코르크 보드 도한 통일했다. 모든 일이 코르크 보드 안에서 일어나는 것처럼. 팀장님이 스테이지와 해금을 구현했고, 심지어 세이브 기능까지 생겼다. 나는 카드를 맞출때 카드 주인이 기뻐하는 연출을 만드려고 애니메이션을 작업했다.  애니메이션 출력에는 새로운 방법을 사용했는데, 기존엔 Bool값만 알고있었으나 이번엔 Trigger를 사용했다. 그러나 관건은이 Trigger를 작동하는 메소드.. 처음엔 GameManager 안에 카드를 맞추는 판정을 하는 동시에 트리거를 발동시키려 했으나, 이 트리거 방동시에도 카드 인덱스와 카드주인을 맞춰줘야 하기 때문에..

게임개발/Unity 2024.09.11