Matching Items (7)
Filtering by

Clear all filters

137149-Thumbnail Image.png
Description
The project, "The Emblems: OpenGL" is a 2D strategy game that incorporates Speech Recognition for control and OpenGL for computer graphics. Players control their own army by voice commands and try to eliminate the opponent's army. This report focuses on the 2D art and visual aspects of the project. There

The project, "The Emblems: OpenGL" is a 2D strategy game that incorporates Speech Recognition for control and OpenGL for computer graphics. Players control their own army by voice commands and try to eliminate the opponent's army. This report focuses on the 2D art and visual aspects of the project. There are different sprites for the player's army units and icons within the game. The game also has a grid for easy unit placement.
ContributorsHsia, Allen (Author) / Kobayashi, Yoshihiro (Thesis director) / Maciejewski, Ross (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2014-05
131525-Thumbnail Image.png
Description
The original version of Helix, the one I pitched when first deciding to make a video game
for my thesis, is an action-platformer, with the intent of metroidvania-style progression
and an interconnected world map.

The current version of Helix is a turn based role-playing game, with the intent of roguelike
gameplay and a dark

The original version of Helix, the one I pitched when first deciding to make a video game
for my thesis, is an action-platformer, with the intent of metroidvania-style progression
and an interconnected world map.

The current version of Helix is a turn based role-playing game, with the intent of roguelike
gameplay and a dark fantasy theme. We will first be exploring the challenges that came
with programming my own game - not quite from scratch, but also without a prebuilt
engine - then transition into game design and how Helix has evolved from its original form
to what we see today.
ContributorsDiscipulo, Isaiah K (Author) / Meuth, Ryan (Thesis director) / Kobayashi, Yoshihiro (Committee member) / School of Mathematical and Statistical Sciences (Contributor) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2020-05
135016-Thumbnail Image.png
Description
Programming is quickly becoming as ubiquitous a tool as general mathematics. The technology field is progressing at an exponential rate and driving this constantly evolving field forward requires competent software developers. Elementary and high school educational facilities do not currently express the importance of the computer science field. Computer science

Programming is quickly becoming as ubiquitous a tool as general mathematics. The technology field is progressing at an exponential rate and driving this constantly evolving field forward requires competent software developers. Elementary and high school educational facilities do not currently express the importance of the computer science field. Computer science is not a required course in high school and nearly impossible to find at a middle school level. This lack of exposure to the field at a young age handicaps aspiring developers by not providing them with a foundation to build on when seeking a degree. This paper revolves around the development of a virtual world that encompasses principles of programming in a video game structure. The use of a virtual world-based game was chosen under the hypothesis that embedding programming instruction into a game through problem-based learning is more likely to engage young students than more traditional forms of instruction. Unlike the traditional method of instruction, a virtual world allows us to "deceive" the player into learning concepts by implicitly educating them through fun gameplay mechanics. In order to make our video game robust and self-sufficient, we have developed a predictive recursive descent parser that will validate any user-generated solutions to pre-defined logical platforming puzzles. Programming topics taught with these problems range from binary numbers to while and for loops.
ContributorsWest, Grant (Co-author) / Kury, Nizar (Co-author) / Nelson, Brian (Thesis director) / Kobayashi, Yoshihiro (Committee member) / Computer Science and Engineering Program (Contributor) / Computing and Informatics Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
135081-Thumbnail Image.png
Description
Last Hymn was created by the team of Tyler Pinho, Jefferson Le, and Curtis Spence with the desire to create an eccentric Role Playing Game focused on the exploration of a strange, dying world. Battles in the game are based off of rhythm games like Dance Dance Revolution using a

Last Hymn was created by the team of Tyler Pinho, Jefferson Le, and Curtis Spence with the desire to create an eccentric Role Playing Game focused on the exploration of a strange, dying world. Battles in the game are based off of rhythm games like Dance Dance Revolution using a procedural generation algorithm that makes every encounter unique. This is then complemented with the path system where each enemy has unique rhythm patterns to give them different types of combat opportunities. In Last Hymn, the player arrives on a train at the World's End Train Station where they are greeted by a mysterious figure and guided to the Forest where they witness the end of the world and find themselves back at the train station before they left for the Forest. With only a limited amount of time per cycle of the world, the player must constantly weigh the opportunity cost of each decision, and only with careful thought, conviction, and tenacity will the player find a conclusion from the never ending cycle of rebirth. Blending both Shinto architecture and modern elements, Last Hymn used a "fantasy-chic" aesthetic in order to provide memorable locations and dissonant imagery. As the player explores they will struggle against puzzles and dynamic, rhythm based combat while trying to unravel the mystery of the world's looping time. Last Hymn was designed to develop innovative and dynamic new solutions for combat, exploration, and mapping. From this project all three team members were able to grow their software development and game design skills, achieving goals like improved level design, improved asset pipelines while simultaneously aiming to craft an experience that will be unforgettable for players everywhere.
ContributorsPinho, Tyler (Co-author) / Le, Jefferson (Co-author) / Spence, Curtis (Co-author) / Nelson, Brian (Thesis director) / Walker, Erin (Committee member) / Kobayashi, Yoshihiro (Committee member) / Computer Science and Engineering Program (Contributor) / Computing and Informatics Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
Description
This paper compares two approaches to implementing the Marching Cubes algorithm, a method of extracting a polygonal mesh from a 3D scalar field. One possible application of this algorithm is as a procedural terrain generation technique for use in video game development. The Marching Cubes algorithm is an easily parallelizable

This paper compares two approaches to implementing the Marching Cubes algorithm, a method of extracting a polygonal mesh from a 3D scalar field. One possible application of this algorithm is as a procedural terrain generation technique for use in video game development. The Marching Cubes algorithm is an easily parallelizable task, and as such benefits greatly from being executed on the GPU. The reason that the algorithm is so well suited for parallelization is that it breaks the problem of mesh generation into a large group of similar sub-problems that can be solved completely independently.
ContributorsLord, William (Author) / Kobayashi, Yoshihiro (Thesis director) / Hansford, Dianne (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor) / Computing and Informatics Program (Contributor)
Created2022-12
Description

This paper explores the inner workings of algorithms that computers may use to play Chess. First, we discuss the classical Alpha-Beta algorithm and several improvements, including Quiescence Search, Transposition Tables, and more. Next, we examine the state-of-the-art Monte Carlo Tree Search algorithm and relevant optimizations. After that, we consider a

This paper explores the inner workings of algorithms that computers may use to play Chess. First, we discuss the classical Alpha-Beta algorithm and several improvements, including Quiescence Search, Transposition Tables, and more. Next, we examine the state-of-the-art Monte Carlo Tree Search algorithm and relevant optimizations. After that, we consider a recent algorithm that transforms Alpha-Beta into a “Rollout” search, blending it with Monte Carlo Tree Search under the rollout paradigm. We then discuss our C++ Chess Engine, Homura, and explain its implementation of a hybrid algorithm combining Alpha-Beta with MCTS. Finally, we show that Homura can play master-level Chess at a strength currently exceeding that of our backtracking Alpha-Beta.

ContributorsMoore, Evan (Author) / Kobayashi, Yoshihiro (Thesis director) / Kambhampati, Subbarao (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2023-05
Description
Vulkan is a modern, low-level, and low-overhead graphics library that allows for the distribution of work across CPU cores using multithreading. This multithreading is possible due to the near full control of the GPU that Vulkan allows. The additional control makes it possible to send multiple instructions to the GPU

Vulkan is a modern, low-level, and low-overhead graphics library that allows for the distribution of work across CPU cores using multithreading. This multithreading is possible due to the near full control of the GPU that Vulkan allows. The additional control makes it possible to send multiple instructions to the GPU at the same time. There are a variety of techniques that can be used with Vulkan to effectively improve performance while multithreading instructions to the GPU. One of the challenges of multithreading is the lack of modern-day GPU hardware to support it, which leads to the purpose of this paper, to explore the practicality of multithreading techniques with Vulkan in today’s current computing environment.
ContributorsWahl, Ryan (Author) / Hansford, Dianne (Thesis director) / Kobayashi, Yoshihiro (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2023-12