• Title/Summary/Keyword: Game Programming

Search Result 162, Processing Time 0.03 seconds

Design and Implementation of the Survival Game API Using Dependency Injection (의존성 주입을 활용한 서바이벌 게임 API 설계 및 구현)

  • InKyu Park;GyooSeok Choi
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.23 no.4
    • /
    • pp.183-188
    • /
    • 2023
  • Game object inheritance and multiple components allow for visualization of system architecture, good code reuse, and fast prototyping. On the other hand, objects are more likely to rely on high latency between game objects and components, static casts, and lots of references to things like null pointers. Therefore, It is important to design a game in such a way so that the dependency of objects on multiple classes could be reduced and existing codes could be reused. Therefore, we designed the game to make the classes more modular by applying Dependency Injection and the design patterns proposed by the Gang of Four. Since these dependencies are attributes of the game object and the injection occurs only in the initialization pass, there is little performance degradation or performance penalty in the game loop. Therefore, this paper proposed an efficient design method to effectively reuse APIs in the design and implementation of survival games.

The Effect of a Programming Class Using Scratch (스크래치를 이용한 프로그래밍 수업 효과)

  • Cho, Seong-Hwan;Song, Jeong-Beom;Kim, Seong-Sik;Paik, Seoung-Hey
    • Journal of The Korean Association of Information Education
    • /
    • v.12 no.4
    • /
    • pp.375-384
    • /
    • 2008
  • Computer programming has educational effect on improving high-level thinking abilities. However, students initially have to spend too much effort in learning the basic grammar and the usage model of programming languages, which negatively affects their eagerness in learning. To remedy this problem, we propose to apply the Scratch to a Game Developing Programming Class; Scratch is an easy-to-learn and intuitive Educational Programming Language (EPL) that helps improving the Meta-cognition and Self-efficacy of middle school students. Also we used the Demonstration-Practice instruction model with self-questioning method for activating the Meta-cognition. In summary, a game developing programming class using Scratch was shown to significantly improve the Meta-cognition of middle school students. However it was shown to insignificantly improve the Self-efficacy of girl students group.

  • PDF

A Case Study on the Development for P2P Network Connection Module by using Virtools Engine (Virtools 엔진을 이용한 P2P 네트워크 접속 모듈 개발에 관한 사례 고찰)

  • Chae, Heon-Joo;Kyung, Byung-Pyo;Ryu, Seuc-Ho
    • Journal of Korea Game Society
    • /
    • v.6 no.1
    • /
    • pp.11-20
    • /
    • 2006
  • It is necessary that the developer has advanced programming skill for development of network or online game. It takes a lot of time and effort to learn the professional knowledge and program for network communication. We show the case analysis for development for network or online game by developing P2P connection module based on the Virtools engine. It should profitable to reduce the development time and cost.

  • PDF

First-Person Shooter Game Development using Unreal Engine (언리얼 엔진을 통한 FPS 게임 개발)

  • Kim, Soo-Kyun;Kang, Heau-Jo;Sung, Kyung
    • Journal of Advanced Navigation Technology
    • /
    • v.14 no.5
    • /
    • pp.718-724
    • /
    • 2010
  • The Unreal Engine is a free game engine developed by Epic Games. In this paper, we propose a First Person Shooter (FPS) game development using free Unreal Development Kit. The merit of Unreal engine provide a hight degree of portability, and it is a tool used by many game developers today, supporting a multitude of platforms on personal computers and many video game consoles with free toolkit. But it is required high-performance PC to develop game. This toolkit doe s not high-quality computer programming skill, just possible to develop FPS game easily.

Programming Language Curriculum for Computational Thinking : Starting with Lightbot hour and Classic maze (컴퓨팅 사고력을 위한 프로그래밍 언어 교육과정 : 라이트봇 게임과 고전 미로 게임으로 시작하기)

  • Jun, Bungwoo;Shin, Seungki
    • Journal of The Korean Association of Information Education
    • /
    • v.25 no.6
    • /
    • pp.987-994
    • /
    • 2021
  • Computational Thinking is an analytical thinking ability that is necessary for everyone and everywhere. The existing Computational Thinking development education provided in Practical textbooks leads to block-based programming languages from unplugged activities. Many unplugged activities focus on practicing sequential order, which may lack the learning of abstractions or automation concepts. In block-based programming languages, concepts such as coordinate planes, which are not introduced in elementary school curriculum, appear, making students feel burdened by the block-based programming language itself. In this study, a curriculum was designed for elementary student's computational thinking through game-based programming language education. The results and their effectiveness were analyzed through the beaver challenge. As a result of analyzing the pre-test and post-test scores, it was confirmed that students' computational thinking skills improved.

An Action-Generation Method of Virtual Characters using Programming by Demonstration (Programming by Demonstration을 이용한 가상 캐릭터의 행동 생성 기법)

  • Sung, Yun-Sick;Cho, Kyung-Eun;Um, Ky-Hyun
    • Journal of Korea Game Society
    • /
    • v.11 no.2
    • /
    • pp.141-149
    • /
    • 2011
  • The substantial effort is required to make a virtual character smoothly move like a human being in the virtual environment. Since a virtual character acts on the basis of the actions, it is the most critical to define actions for smooth flow of action. It has been actively studied the programming by demonstration which defines series of actions to be performed by a virtual character based on the actions operated by a person. However, such approaches can't easily draw many sequential actions because they create sequential actions in the same length all the time or restrict the actions used to create such actions. For smooth flow of action, it is required to derive sequential actions as much as possible from the actions of a virtual character and to select the representative set of actions. Accordingly, it is necessary to study how to create sequential actions as reducing diverse limits. This study suggests the approach to select sequential actions suitable for a virtual character by collecting the actions of a character manipulated by a person and deriving a set of actions to be performed by a virtual character. The experiment describes the process to create the actions by applying the approach suggested in this study to the driving game. In accordance with the analysis results, it was found that a set of actions performed by a person was generated without being restricted by a length or a part to divide. Finally, we confirmed that the suggested method selects the best sequential actions, appropriate to virtual character, among more generated actions.

The Implementation of a 3D Game Engine based on DirectX 9

  • Kang, Hyun-Myung;Rhee, Woo-Seop
    • International Journal of Contents
    • /
    • v.4 no.3
    • /
    • pp.35-40
    • /
    • 2008
  • Recently, almost games are using the 3D environment. Therefore, it required strongly that well-structured 3D engine or tools for development of some complicate 3D applications efficiently. In this paper, we design and implement a 3D engine (PLay engine) using the DirectX 9 SDK of the Microsoft corporation. The PLay engine has independent module structure, which has object oriented characteristics. and has not only 3D rendering functions but efficient algorithms. Moreover, we implement some tools what has compatibility with our engine for convenience. Therefore, it helps development of a 3D application easily and efficiently. We also describe each module with 2-layer structure, and each tool with compatible module, and make a simple game using PLay engine for testify.

Development of Visual Effects in Airplane Shooting Game using API (API를 이용한 비행기 슈팅 게임에서의 특수 효과 개발 방법)

  • Lee, JaeNoh;Jeon, JinSun;Kim, SooKyun;An, SungOhk
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.11a
    • /
    • pp.1414-1415
    • /
    • 2013
  • 국내 게임 시장은 모바일이라는 플랫폼을 이용하여, 최근 새로운 동력을 맞이하고 있다. 이러한 게임 산업의 중심에 있는 개발자들은 다양한 게임 엔진과 그에 맞는 언어를 빠르게 습득하고, 다양한 변화에 대응하고 있다. 현재 많은 고기능 고성능 게임 개발 툴이 있지만, API(Application Programming Interface)는 윈도우 운영체제를 실행 및 제어하고 프로그램과 프로그램을 연결시켜주는 역할 등의 전통적인 역할을 수행하고 있다. 이러한 API는 고성능의 게임 보다는 윈도우 시스템을 이해하며, 게임을 만드는데 적합 할 수 있다. 본 논문에서는 윈도우 시스템에서 간단하게 게임을 제작할 수 있도록 API를 이용한 시각적 효과 및 사운드 삽입에 대한 내용에 대해 설명한다.

A Study on the Dynamic Programming for Control (제어를 위한 동적 프로그래밍에 관한 연구)

  • Cho, Hyang-Duck;Kim, Woo-Shik
    • Proceedings of the Korean Society for Noise and Vibration Engineering Conference
    • /
    • 2007.11a
    • /
    • pp.556-559
    • /
    • 2007
  • The notion of linearity is fundamental in science and engineering. Much of system and control theory is based on the analysis of linear system, which does not care whether it is nonlinear and complex. The dynamic programming is one of concerned technology when users are interested in choosing best choice from system operation for nonlinear or dynamic system‘s performance and control problem. In this paper, we will introduce the dynamic programming which is based on discrete system. When the discrete system is constructed with discrete state, transfer between states, and the event to induct transfer, the discrete system can describe the system operation as dynamic situation or symbolically at the logical point of view. We will introduce technologies which are related with controllable of Controlled Markov Chain as shown example of simple game. The dynamic programming will be able to apply to optimal control part which has adaptable performance in the discrete system.

  • PDF

Solving Mixed Strategy Equilibria of Multi-Player Games with a Transmission Congestion (다자게임 전력시장에서 송전선 혼잡시의 복합전략 내쉬균형 계산)

  • Lee, Kwang-Ho
    • The Transactions of the Korean Institute of Electrical Engineers A
    • /
    • v.55 no.11
    • /
    • pp.492-497
    • /
    • 2006
  • Nash Equilibrium (NE) is essential to investigate a participant's bidding strategy in a competitive electricity market. The transmission line constraints make it difficult to compute the NE due to causing a mixed strategy NE instead of a pure strategy NE. Computing a mixed strategy is more complicated in a multi-player game. The competition among multi-participants is modeled by a two-level hierarchical optimization problem. A mathematical programming approach is widely used in finding this equilibrium. However, there are difficulties to solving a mixed strategy NE. This paper presents two propositions to add heuristics to the mathematical programming method. The propositions are based on empirical studies on mixed strategies in numerous sample systems. Based on the propositions a new formulation is provided with a set of linear and nonlinear equations, and an algorithm is suggested for using the prepositions and the newly-formulated equations.