본문 바로가기

공부106

[GMTK]어떻게 (악랄하지 않게) 유저를 몰입시키는가 | Game Maker's Toolkit 리뷰 이번 영상은 게임의 어떤 요소가 플레이어를 몰입하게 만드는지에 대해서 다룬다 참고로 몰입한다는 것은 중독과는 다르다. 책임감있는 게임 디자이너 라면 중독성은 피해야한다고 이야기한다. 그래서 이러한 중독을 일으키는 심리적 요소인 스키너상자(자극에 대한 반응을 학습시켜 조건형성을 연구한 실험), 일일보상, 자원줄이기, 상실혐오 등에 대해서는 영상에서는 언급하지 않는다. 대신 게임에서 재미요소를 이용해 계속 플레이하고 싶게 만드는 법에 대해서 이야기한다 핵심적인 요소는 페이스 조절, 즉 게임 플레이의 리듬이다. 이것이 게임을 지루하거나 반복적으로 느껴지지 않게 하는 핵심요소이다. 그 예시로 언차티드 4에서의 계속 플레이 장르를 바꾸면서 하나의 게임플레이 방식에 머무르지 않게해서 플레이어의 주의를 환기시킨다. .. 2023. 9. 4.
[GMTK] 플레이어를 플레이어에게서 지켜 주는 게임 디자인 리뷰 https://www.youtube.com/watch?v=7L8vAGGitr8 내용: 플레이어가 안전한 방법으로만 게임을 클리어하는 것을 막는 것이 중요하다. 위험요소를 추가해 플레이어의 이러한 선택을 방해한다 ex) XCOM의 턴제한 요소, 스펠렁키의 2분 30초가 넘어가면 나오는 유령 선택을 제한할때 플레이어가 벌이라고 느끼기 보다 보상으로 느낄 수 있도록, 바람직한 행동을 권장하도록 디자인하는 것이 좋다. 게임의 기본 메커니즘을 조작하므로써 플레이어에게 특정한 플레이를 유도할 수 있다. ex) 블러드본의 데미지를 입은후 빠르게 공격하면 피를 흡수하는 경우, 둠에서의 근접 공격, 데빌메이크라이에서 다양한 전투 시스템을 사용하면 높아지는 점수 시스템 같은 방식으로만 플레이 하는 것을 너무 남용하거나 의.. 2023. 8. 14.
유니티 핵심 개념 정리 - Gizmo, Sprite, 스크립트 생명주기, 코루틴, 쓰레드 등 유니티(Unity) 관련 기초 개념들을 공식문서와 개발 블로그를 읽고 공부하며 게임 개발의 핵심 개념들을 정리했다. 이번 학습은 유니티의 기본 도구와 시스템, 그리고 스크립트 생명주기와 같은 핵심 요소를 이해하는 데 초점을 맞췄다. 1. Gizmo (기즈모)정의: Gizmo는 3D 뷰포트에서 오브젝트를 선택하고 변형(이동, 회전, 스케일링)하는 데 사용되는 도구다. 선택된 오브젝트 주변에 나타나며, 직관적인 조작을 가능하게 한다.구현 경험: 3D 오브젝트를 배치하며 Gizmo를 활용해 위치와 회전을 조정했다. 초기에는 Gizmo의 축 방향을 혼동했으나, Scene 뷰에서 축별 색상을 확인하며 익숙해졌다.배운 점: Gizmo는 빠른 프로토타이핑과 디버깅에 매우 유용하다. 특히 복잡한 3D 환경에서 오브젝트.. 2023. 8. 11.
백준 유튜브 보고 공부한거 https://www.youtube.com/watch?v=YWuIW-Rhf7w https://www.youtube.com/watch?v=0XMqs7qi-xc 2023. 8. 7.
더 좋은 블로그 운영을 위해 참고할 것 https://yozm.wishket.com/magazine/detail/2134/ 개발자가 알아두면 좋은 기술 블로그 운영 팁 5가지 | 요즘IT 개발자로서 활동하다 보면 기술 블로그라는 단어를 자주 듣습니다. 제 주변의 동료들이나 시니어 개발자들도 이미 기술 블로그를 운영하고 있거나, 운영하는 것을 적극 추천하는 편이고요. 그 yozm.wishket.com 2023. 7. 26.
공부한 내용들 정리 (언리얼, C++, 유니티) 언리얼 엔진 정리#pragma once헤더 파일의 중복 포함을 방지하는 전처리 지시자다.컴파일 시 같은 헤더가 여러 번 포함되면 오류가 발생할 수 있는데, #pragma once는 이를 막는다.표준 방식은 아니며, 모든 컴파일러에서 지원되지는 않는다.대체 방식으로는 전통적인 헤더 가드(#ifndef, #define, #endif)가 있다.Virtual 함수다형성을 구현하기 위한 함수다.기본 클래스에서 virtual로 선언하면, 하위 클래스에서 재정의가 가능하다.함수 호출은 실행 시점에 실제 객체 타입에 따라 결정된다(동적 바인딩).유연성과 확장성을 높일 수 있다.Abstract 함수순수 가상 함수(= 0)로, 상위 클래스에서 구현하지 않는다.하위 클래스는 반드시 이 함수를 구현해야 한다.이러한 함수를 포.. 2023. 7. 26.
[GMTK] 소울라이크라는 장르가 필요할까요? 리뷰 영상 내용: 게임 타이틀의 이름이 하나의 장르의 이름이 되어서는 안되는 이유를 여러 사례를 들어서 설명하고 있다. 이러한 상황이 발생할 경우 그 원본 게임을 계속해서 얼마나 잘 모방했느냐에 집중하고 새로운 방식이나 참신한 게임 디자인이 나타나지 않기 때문에 이러한 이름을 가져서는 안된다고 이야기 하고 있다. 게임 장르에서 핵심적인 요소를 추려서 간소화하고 그것에 집중하고 거기에 새로운 요소를 더할때 신박한 게임이 등장할 수 있다고 설명하고 있다 내 생각: 어 그냥 소울 라이크라는 이름 그냥 쓰면 안돼나? 라는 생각을 가지고 있었는데 영상을 보고나서 이유를 보고나자 납득이 되었다. 영상을 보면서 최근에 플레이한 P의 거짓의 사례도 생각이 났다. 2023. 7. 26.
c++ 에서 return 0 을 안하면 main 함수에서 return 0을 생략하면, 프로그램이 정상적으로 실행되지 않을 수 있습니다. C++11 표준부터는 main 함수에서 return문을 생략할 수 있습니다. return문이 생략되면, 컴파일러는 자동으로 return 0을 추가하여 코드를 완성합니다. 따라서 현대의 C++ 표준을 사용하는 경우에는 return 0을 생략하더라도 프로그램은 정상적으로 종료됩니다. 그러나 이전의 C++ 표준을 사용하는 경우에는 main 함수에서 return문을 생략하면 정의되지 않은 동작(Undefined Behavior)이 발생할 수 있습니다. 이 경우, 프로그램이 예기치 않은 방식으로 작동하거나 중단될 수 있으므로 return문을 명시적으로 작성하는 것이 좋습니다. 결론적으로, 현대의 C++ 표준을 사용하는.. 2023. 7. 25.
[GMTK] 체계적인 게임의 등장 리뷰 https://www.youtube.com/watch?v=SnpAAX9CkIc 체계적인 게임(Systemic Game)은 다양한 시스템이 상호연결되어 동작하는 게임입니다. 이런 종류의 게임은 최근 몇 년간 많이 등장하고 있습니다. 예를 들어, 젤다의 전설: 야생의 숨결은 날씨에 따라 전투 시스템, 필드 지형, NPC와의 상호작용 등이 변화하는 좋은 예시입니다. 체계적인 게임은 게임 내의 시스템들이 서로 연결되어 개발되고 설계됩니다. 한 시스템이 다른 시스템에 영향을 미칠 수 있도록 구성됩니다. 이런 게임은 인지와 규칙에 기반합니다. 개체들 간의 입력과 출력이 맞아떨어지고, 개체들이 서로 인식하거나 상호작용할 수 있다면 서로 연결됩니다. 규칙은 호랑이가 적을 공격하는 것처럼 개체들 간의 상호작용에 관련된 .. 2023. 7. 20.