
* 이득우의 게임수학 책 내용을 바탕으로 작성된 글입니다. 브레젠험 알고리즘이란? 정수만 사용해 효율적으로 화면에 선분을 그리는 알고리즘이다. 브레젠험 알고리즘 원리 위 그림은 스크린 좌표계를 8등분한 화면이다. 1팔분면은 [0,45]도의 범위를 가지며 해당영역에 포함된 선분은 기울기가 1을 넘어설 수 없다. 비슷한 특징으로 1, 4, 5, 8팔분면에 포함된 선분의 기울기 절대값은 1을 넘어설 수 없다. 주어진 선분이 1팔분면 영역에 존재할 때를 시각화해보면 아래와 같다. 각각의 정사각형을 픽셀로 생각하여 $\overline{P1P2}$가 포함된 픽셀을 채워주면 된다. 각각의 픽셀들의 좌표를 중점으로 설정하고, P1이 포함된 픽셀로부터 진행방향을 분석해보자. 1) P1이 포함된 픽셀$(x_{0},y_{0..

c++을 이용한 사천성 콘솔게임을 만드려보려 합니다. 게임 제목인 "SACHUNSUNG"을 출력하자니 노가다성이 강하고 나중에 비슷한 상황에서 사용하기 위하여 해당 코드를 작성하게 되었습니다. 우선 알파벳 크기를 5x5로 설정하였습니다. 대문자 26개 각각의 출력해야하는 부분을 bool배열(true: 문자출력, false: 공백출력)에 미리 채워주었습니다. 이어서 문자열 각각의 문자를 5x5 bool배열로 분리하는 함수는 아래와 같습니다. void split(string& s, bool output[][BUFFER_SIZE]) { int len = s.length(); for (int y = 0; y < ALPHA_SIZE; ++y) { for (int idx = 0; idx < len; ++idx) {..

* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. 마우스 클릭한 곳에 폭발 효과 #include "Game2D.h" #include "RandomNumberGenerator.h" #include "RigidCircle.h" #include #include namespace shyplants { using namespace std; static const auto gravity = vec2(0.0f, -9.8f); class Particle { public: vec2 pos; vec2 vel; RGB color; float rot; float angular_vel; float age; float life; void update(const float & dt..

* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. 3개 이상의 물체 테스트 해보기. #include "Game2D.h" #include "RandomNumberGenerator.h" #include "RigidCircle.h" #include #include namespace shyplants { class Example : public Game2D { public: RigidCircle rb[3]; Example() : Game2D() { reset(); } void reset() { // Initial position and velocity rb[0].pos = vec2(0.0f, 0.5f); rb[0].vel = vec2(0.0f, 0.0f); rb..

* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. 3개 이상의 물체에 대해서 테스트 해보기. #include "Game2D.h" #include "RandomNumberGenerator.h" #include "RigidCircle.h" #include #include namespace shyplants { class Example : public Game2D { public: RigidCircle rb[3]; Example() : Game2D() { reset(); } void reset() { // Initial position and velocity RandomNumberGenerator rnd; for (int i = 0; i < 3; ++i) { ..

* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. 초기 위치, 초기 속도, 반발률 등을 바꿔서 실행시켜보기. // 초기 위치 : (-0.8, 0.7) 왼쪽 위 // 초기 속도 : (5.0, 0.0) 오른쪽 // 반발률 : 0.6 #include "Game2D.h" #include "RandomNumberGenerator.h" #include #include namespace shyplants { class RigidCircle { public: vec2 pos; vec2 vel; float radius = 0.1f; void draw() { beginTransformation(); { translate(pos); drawFilledCircle(Colors..
* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. moveUp외에 다른 방향 이동과 총 쏘기 등도 구현해보기. #pragma once #include "Game2D.h" #include "SoundEngine_Singleton.h" #include #include #include #include #include "Command.h" namespace shyplants { class MyBullet { public: vec2 center = vec2(0.0f, 0.0f); vec2 velocity = vec2(0.0f, 0.0f); void draw() { beginTransformation(); translate(center); drawFilledRegu..

* 인프런에 있는 "홍정모의 게임 만들기 연습 문제 패키지" 강의를 바탕으로 작성된 글입니다. 1. 콘솔창으로부터 입력을 받아서 화면에 물체를 생성해보기. 더보기 // script.txt 3 Circle 0.1 0.2 0.1 Box 0.3 -0.1 0.1 0.15 Triangle -0.3 0.2 0.2 #include "Game2D.h" #include "RandomNumberGenerator.h" #include "GeometricObject.h" #include #include #include #include #include namespace shyplants { class Example : public Game2D { public: RandomNumberGenerator rnd; RGB random..
- Total
- Today
- Yesterday
- 홍정모의 게임 만들기 연습 문제 패키지
- 초등부
- 테트리스
- BOJ 2365
- 코드포스
- 퀸 움직이기
- 브레젠험 알고리즘
- tetris
- 언리얼 프로젝트 재생성
- opengl
- ICPC 후기
- UE5.3
- 언리얼 자동화
- OpenVDB
- 정보올림피아드
- unreal enigne
- DP
- C++게임
- 숫자판 만들기
- 백준
- 백준 27469
- Unreal Engine
- 백준 2365
- BOJ 27469
- Codeforces
- pygame
- ndisplay
- 언리얼 프로젝트 재생성 자동화
- Python
- C++게임개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |