728x90

전체 글 169

이더리움 기반 Dapp 개발 연습 #2 (컴파일)

- 이번에는 솔리디티로 간단한 프로그램을 짜 볼것이다. - 이후 파워쉘(관리자)에서 임시로 디렉토리를 생성한 뒤, truffle init 한다. - intelij에서 해당 디렉토리를 open 해주고 contract 디렉토리에 동일한 이름으로 sol 파일을 만든다. - 컴파일 테스트를 위해 아래 코드를 입력한다. pragma solidity ^0.5.4; // 버전 프라그마 (해당 버전 아래에서는 컴파일링 안된다는 뜻) contract HelloWorld { string public greeting; // 생성자 constructor(string _greeting) public { greeting = _greeting; } function setGreeting(string _greeting) public ..

이더리움 기반 Dapp 개발 연습 #1 (개발환경 셋팅)

- 이더리움을 기반으로 Dapp(Decentralized Application)을 개발해 볼 것이다. - 대부분의 내용은 인프런의 "리액트로 구현하는 블록체인 이더리움 Dapp" 강의를 참조하여 작성하였다. - 프론트엔드는 자바스크립트(javascript)로, 솔리디티(Solidity)로 작성된 스마트 컨트랙(Smart Contract)이 백엔드 서버 로직에 해당한다. - 이더리움 기반 Dapp을 개발하기 위해서 Web3 라이브러리를 이용하여 구현 할 것이다. o 트러플 - 트러플은 자바스크립트 기반의 개발환경임 (npm으로 설치(Node.js 설치)) - 컴파일, 테스트, 배포 자동화 도구 기능을 함 -> 솔리디티 컴파일러 포함 - '가나쉬' 라는 로컬 가상 이더리움 지원 (자바 웹 개발할때 톰캣(To..

Django 테스트 클라이언트 사용법

1. python manage.py shell 로 쉘에 들어감 2. 아래와 같이 작성하여 template renderer 설치 >>> from django.test.utils import setup_test_environment >>> setup_test_environment() 3. 아래와와 같이 작성하여 테스트 클라이언트 클래스 가져오기 >>> from django.test import Client >>> # create an instance of the client for our use >>> client = Client() 4. 아래 명령을 이용하여 test.py 코드를 작성하지 않고도 테스트를 장고 테스트 클라이언트를 통해서 수행해 볼 수 있음 >>> # get a response from '/..

Django 2022.01.19

SDL을 이용한 공 튀기기 [c++]

SDL을 이용하여 공튀기기를 만들어 보았다. 코드를 작성하면서 유니티로 하면 구현하기 훨씬 수월할 텐데 라는 생각을 계속 했던것 같다...ㅠ 그래도 어느정도 규모있는 게임회사에서는 최적화 등을 이유로 c++을 사용한 자체 엔진이나 아예 엔진없이 구현하는 경우도 많다고 하니 계속 연습해볼 계획이다. 툴은 visual studio를 이용하였다. 코드는 아래 깃허브 링크에 올려두었다. https://github.com/parksubo/BounceBall

SDL 추가 설명

o SDL은 OS로부터 받는 이벤트를 내부에 존재하는 큐(queue)로 관리함 (I/O 장치 입력뿐만아니라 윈도우 액션 이벤트 포함) o 프레임마다 게임은 큐에 이벤트가 존재하는지 폴링(pooling)함 - pooling : 프로그램(or 장치)이 충돌회피 또는 동기화 처리를 목적으로 다른 프로그램의 상태를 주기적으로 검사하여 조건을 만족할 때만 자료처리를 하는 방식

SDL flags

o SDL 서브시스템 플래그 - SDL_INIT_AUDIO : 오디오 장치관리, 재생 및 녹음 서브시스템 - SDL_INIT_VIDEO : 윈도우 생성, OpenGL 관련 인터페이스 2D 그래픽스를 위한 비디오 서브시스템 - SDL_INIT_HAPTIC : 포스 피드백 이펙트 서브시스템 - SDL_INIT_GAMECONTROLLER : 컨트롤러 입력장치를 지원하는 서브시스템 o 윈도우 생성 플래그 - SDL_WINDOW_FULLSCREEN : 전체화면 모드 사용 - SDL_WINDOW_FULLSCREEN_DESKTOP : 현제 데스크톱의 해상도로 전체화면 모드 사용, SDL_CreateWindow가 전달 받는 너비/높이 파라미터는 무시 - SDL_WINDOW_OPENGL : OpenGL 그래픽스 라이브러..

Visual Studio SDL2 라이브러리 사용 방법

o SDL에서 SDL2 헤더와 라이브러리를 다운로드 한다(Visual C++을 사용할 것이기 때문에 VC용으로 다운로드) o 이후 Main.cpp 파일을 소스파일에 추가해 준다. o 이후 프로젝트 속성에 들어가서 아래 3가지 작업을 해준다. C/C++ -> 일반 -> 추가 포함 디렉터리 -> $(SolutionDir)\SDL2-2.0.18\include Linker -> 일반 -> 추가 라이브러리 디렉터리 -> $(SolutionDir)\SDL2-2.0.18\lib\x86 (수정) Linker -> 입력 -> 추가 종속성 - > SDL2.lib;SDL2main.lib 추가 o SDL2.2.0.18 을 압축해제한다. o SDL2-2.0.18에 있는 SDL2.dll 파일을 프로젝트 안에 옮겨준다. o 이후 ..

게임 개발 용어 정리 #1

o 크로스 플랫폼 라이브러리(Cross-platform library) - SDL (Simple DirectMedia Layer) : C로 작성된 크로스 플랫폼 게임 개발 라이브러리이다. SDL은 윈도우를 생성하거나 기본 2D그래픽을 생성하며 입력처리, 오디오 출력등의 기능을 지원한다. (Windows, Mac, Linux, iOS, Android) o 게임 루프 (Game loop) - 게임 프로그램의 전반적인 흐름을 제어하는 루프 - 플레이어가 게임을 종료하지 않는 한 계속해서 루프를 반복 - 게임루프의 각각의 반복을 프레임(Frame)이라고 함 : ex) 60FPS(Frames Per Second) 는 게임 루프가 초당 60번의 반복을 완료한다는 것 - 게임루프는 단일 쓰레드(single-threa..