lucar 님의 블로그

고정 헤더 영역

글 제목

메뉴 레이어

lucar 님의 블로그

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (87)
    • 스파르타 코딩캠프 (64)
      • '24 Today I Learned (56)
    • 블렌더 3D 모델링 (4)
      • Today I Learned (4)
    • Python (4)
      • Today I Learned (4)
    • C (2)
      • Today I Learned (2)
    • Kotlin (2)
      • Today I Learned (2)
    • 기술면접 (0)
    • C# (2)
      • ASP.NET (2)

검색 레이어

lucar 님의 블로그

검색 영역

컨텐츠 검색

전체 글

  • 1126 TIL - 최종 프로젝트 시작, 로딩 씬 구현

    2024.11.26 by lucar

  • 1120 TIL - 프로퍼티

    2024.11.20 by lucar

  • 1119 TIL - 플랫포머 플레이어 이동 2

    2024.11.19 by lucar

  • 1118 TIL - 플랫포머 2D 캐릭터 이동하기

    2024.11.18 by lucar

  • 1112 TIL - 개인 프로젝트 진행 중

    2024.11.12 by lucar

  • 1107 TIL - 팀 프로젝트 완료

    2024.11.07 by lucar

  • 1104 TIL - 데이터 저장

    2024.11.04 by lucar

  • 1030 TIL - C# 제네릭 싱글톤

    2024.10.30 by lucar

1126 TIL - 최종 프로젝트 시작, 로딩 씬 구현

스파르타 부트캠프도 이제 마지막 프로젝트가 시작이다. 마지막으로 제작할 팀 프로젝트는방치형 액션 RPG인데컨셉을 좀 기깔나게 잡았다.소울이라는 오브젝트를 두고이를 편성해서 캐릭터의 성격이나 전투방식을 모두 덮어씌우는 빙의라는 메인 시스템으로 진행한다. 자세한 건 나중에 만들어지고 나서 어쨌든 오늘은 로딩화면을 만들어보자. 그 어느 게임을 가도 로딩화면 없는 게임은 찾기 힘들 것이다.로딩화면의 존재 이유는 당연히 다음 씬의 리소스를 미리 불러오기 위해서이고 그렇다면 로딩화면을 불러옴과 동시에 다음 씬의 리소스 작업이 진행되어야 하고완료되자마자 다음 씬이 보여져야한다. 저번에 코루틴이 비동기식으로 작동한다고 작성한 글이 있었던가 잘 기억이 나진 않지만 동기식과 비동기식이라는 관점에서 바라보면 간단하게 말해서..

카테고리 없음 2024. 11. 26. 21:10

1120 TIL - 프로퍼티

진작에 한 번 개념을 잡고 넘어갔어야 했는데그러질 않아서 오늘 호되게 혼났다 프로퍼티란? C#에서 Getter와 Setter라고 생각하면 편한데 예를 들어 private int healthPoint라는 변수가 있다고 생각하자. 한정자를 private으로 만들었기 때문에 코딩을 하다가이 값이 외부에서 필요해도 가져올 수가 없다. 그럴 때 사용하는게 Getter와 Setter인데 private int _healthPoint;public int Gethealth(){ return _healthPoint;}public void Sethealth(int value){ _healthPoint = value;}이렇게 쓰인다. healthPoint는 그대로 프라이빗이지만퍼블릭 함수를 통해 값을 변경하거나 가..

스파르타 코딩캠프/'24 Today I Learned 2024. 11. 20. 22:53

1119 TIL - 플랫포머 플레이어 이동 2

OnCollision을 이용해 구현해보려 하였으나 코루틴이 매 프레임마다 점검하고OnCollisionStay2D도 매 프레임마다 점검하다 보니 대실패! 레이를 추가해서 작성했다. private bool OnGround(){ //Todo : 캐릭터 스프라이트 정해지고 나서 레이 갯수를 늘려서 스프라이트 끝에서 끝까지 RaycastHit2D hit = Physics2D.Raycast(new Vector2(Player.transform.position.x, Player.transform.position.y - 1f), Vector2.down, 0.3f); if (hit.collider?.gameObject != null) { return true; } else re..

스파르타 코딩캠프/'24 Today I Learned 2024. 11. 19. 21:24

1118 TIL - 플랫포머 2D 캐릭터 이동하기

또 새로운 프로젝트의 시작이다. 이번에는 2D플랫포머에서의 점프에 대해서 생각해보자 윗 블럭이 통과가 불가능한 블럭이 아니라면 점프를 통해 아래에서 위로 점프를 통해 통과할 수 있으며밑 점프를 통해 블럭에서 아래로 이동이 가능하게 구현해야한다. 우선은 OnGround라는 함수를 만들어 이 캐릭터가 땅에(선택된 레이어에 포함된 게임오브젝트) 위에 있는지확인해야한다.private bool OnGround(){ //Todo : 캐릭터 스프라이트 정해지고 나서 레이 갯수를 늘려서 스프라이트 끝에서 끝까지 RaycastHit2D hit = Physics2D.Raycast(new Vector2(Player.transform.position.x, Player.transform.position.y - 1f)..

스파르타 코딩캠프/'24 Today I Learned 2024. 11. 18. 21:32

1112 TIL - 개인 프로젝트 진행 중

아직 테스트 해보진 못했는데 인벤토리를 Queue로 관리하면 좀 편리할 것 같아서 코드를 짰다. using System;using System.Collections.Generic;using System.Linq;using Unity.VisualScripting;using Unity.VisualScripting.Antlr3.Runtime.Misc;using UnityEngine;using UnityEngine.UI;public class Inventory : MonoBehaviour{ public Dictionary> SlotByEquipPlace; private void Awake() { SlotByEquipPlace = new Dictionary>(); Slot..

스파르타 코딩캠프/'24 Today I Learned 2024. 11. 12. 20:03

1107 TIL - 팀 프로젝트 완료

오늘은 팀프로젝트 완료 기념으로 트러블 슈팅을 해보자 우선 몇개의 스크립트를 살펴보자 차례대로 인터페이스 IInteractablepublic interface IInteractable{ string GetPrompt(); void Interact();} 를 상속받은 AnimatedObjectpublic class AnimatedObject : MonoBehaviour, IInteractable{ protected Animator Animat; public AnimatedData Data; private void Start() { if(!TryGetComponent(out Animator animator)) { Animat = t..

스파르타 코딩캠프/'24 Today I Learned 2024. 11. 7. 21:39

1104 TIL - 데이터 저장

데이터 저장은 여러가지 방법이 있는데 PlayerPrefs, CSV, XML, JSON, SO 등 의 방법이 있다. 우선 CSV의 경우 엑셀에서 보기 쉽게 정리 할 수 있는 장점이 있지만생성된 파일을 직접 보고 한 눈에 알아보기에는 큰 어려움이 있다. 대충 이런 엑셀파일을 작성 한 후CSV파일로 다운로드 받자.그리고 메모장으로 열어보면 진짜 복잡하게도 나오는데하여튼 이것을 잘 잘라서 불러와보자. 우선 한 열은 \n으로 구분되며각 행은 ,로 구분된다. public class Dialogue : MonoBehaviour{ Dictionary ItemData = new Dictionary(); string[] rowData; string[,] columnData; private void ..

카테고리 없음 2024. 11. 4. 22:47

1030 TIL - C# 제네릭 싱글톤

디자인 패턴 중에 싱글톤 이라는 패턴이 있다. 이전에 설명한 적이 있어서 자세한 설명은 생략할껀데 Unity에서 스크립트를 작성하다보면 정말 많은 양의 매니저들이 생겨난다. GameManager, CharacterManager, QuestManager, ...그리고 보통 매니저들은 DontDestroyOnLoad를 걸어서 씬 간의 이동에도 파괴되지 않도록 하고그렇게 파괴되지 않은 수 많은 매니저들은 씬 간의 정보 교환이나 굵직한 스크립트를 넘겨주는 역할을 한다. 그리고 그 매니저들은 싱글톤 패턴을 주로 사용하게 되는데 수많은 싱글톤들을 일일히 작성하거나 복사 붙여넣기 하는 것도 지겹고제네릭을 사용해서 상속받으면 끝인 형식으로 만들어보자. public class Singleton : MonoBehaviou..

스파르타 코딩캠프/'24 Today I Learned 2024. 10. 30. 20:50

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 5 6 7 8 ··· 11
다음
TISTORY
lucar 님의 블로그 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바