6 minute read

Hello there, I’m vorixo and I will be your main host in Devtricks!

Two days before making this post, I found myself researching input responsivity in Unreal Engine 4. I quickly came to the conclusion that it was a topic that was in dire need of a bit more love documentation-wise

This prompted me to ask myself - Why not take matters into my own hands, and complete the documentation myself.

It was under this premise that Devtricks was born.

Who am I?

My name is Álvaro Jover, I’m a high performance computing master graduate, researcher, and gameplay-network programmer, and you can find me on social media under the name of vorixo. I’ve been working on Unreal Engine 4 since 2015. My first contact with game development was thanks to a little text based game I made inspired on the Fallout series). My curiousity lead me to wonder how modern games were made, so I decided to take a look to the most powerful modern engines.

A lot of people get impressed when I tell them that my first contact with a game engine was with Unreal Engine 4 due to how advanced the engine is for a rookie game developer, and don’t get me wrong, I think the learning curve of Unreal Engine is quiet reasonable for what it offers.

My Unreal Engine projects

My first year using UE4 was mainly based on learning the engine capabilities and getting used to the framework. Blueprints were extremely useful for that, since they give you a notion of what UE4 is able to pull of.

3 Mini-Games in one

Once I got used to the engine workflow I started applying that knowledge with my first unreleased game. This game is composed by several mini-games and counts with an extended interaction system (hold, one-time, drag) as the main shared features aswell as the gamemode, which is a time based score game. The first mini-game occours in a factory, where you control a worker that has to split golden cans and normal cans:

InteractionGame

The next mini-game takes place on a restaurant, where the player will need to ring the bell for the head chef to bring 4 dishes that our character will have to distribute between the tables:

InteractionGame

The last mini-game is inspired on Papers Please, where our protagonist will need to decline or allow the entrace of randomized citizens that will try to lie (or not) in their passport, there are aswell a couple of mechanics that will make the mini-game more interesting like “criminal of the day”, “allowed countries” or “minimum age allowed”.

InteractionGame


How to project

This project contains design patterns and concepts that can make the architecture of your game much better, based mainly on data oriented approaches (click!!, seriously a very good talk by Mike Acton!).

Content of this project:

  • Mutators: A practical approach of what a mutator is and how to apply it on a real scenario
  • Component based weapons: How to split functionalities in a cohesive way. Single-purpose components.
  • Weapon Info Objects: How to populate and manage data un Unreal Engine.
  • Weapon proxies: Dumb actors with minimal overhead that represent a weapon actor in the world.
  • Object Factories: How to make an object that will spawn proxies.
  • More…

InteractionGame


Dotto

The objective of this game was making a product in limited time, the result came out in kind of a nice way. The team was composed by only coders so the artistic style of the game, including animations was up to the free content provided by Mixamo and our own modeling skills (not so great to be honest). Not to mention that we are not environmental artists or level designers.

I designed the whole framework of the game and most of the game code was programmed from the ground up on C++. Level wise I didn’t do much, I only contributed in a couple of levels, concretely the tutorial level and the host level. I provided all the tools to the team to create their levels and make content for the game. This time, there is a lot to cover so you can download the project and try it out by yourself clicking this wonderful url.

This project was great to introduce Unreal Engine 4 to some people I worked with in the University, they all loved the Engine and it was a very grateful experience.


ShooterGame extension (SGE)

ShooterGame is a very great project Epic Games has available as a learning resource for Unreal Engine 4. In 2016 I started SGE, which adds a whole bundle of features to ShooterGame to extend its purpose.

What can we find on SGE:

  • Third person
  • Aim Down Sights FOV and aim time independent by weapon
  • Firing Components: Insta hit and projectile
  • Slots system: Allows to have multiple firing components on a single weapon
  • Single Shot and Round Burst shooting
  • Winding-up, Winding-down: It is explained on this entry
  • Overheat weapons: You won’t need to reload these ones
  • Panini projection fov based: Makes first-person weapons not clip on walls
  • Smooth crouching (tps and fps)
  • More: Subtle implementation details that are not really relevant

Currently SGE is not publicly available due to the work in progress state it is at, however if someone desires to have access to the source code feel free to ask for it.


Plugins and Content at Piperift

I collaborate parcially at Piperift, one of the bests (if not the best) marketplace sellers in the universe.

Piperift

Out of jokes, Muit made an excelent job creating this brand, the quality standards at Piperift are high, every single plugin is created with a lot of dedication and effort by the creators. I am so happy to say that I am part of this family. You can check out all the work we put out at our web, and in our marketplace page.


Unreal ROX at 3D Perception Lab

The 3D Perception Lab at the University of Alicante is a group of researchers interested in the intersection of machine learning and computer vision. Our research mission focuses on various aspects of perception often related with mobile robotics in which we exploit 3D data as the main source of information.

My involvement in 3DPL consisted of participating in this project: UnrealROX: An eXtremely Photorealistic Virtual Reality Environment for Robotics Simulations and Synthetic Data Generation. This paper can be found at arXiv and here for an online view.

UnrealROX


Galaxy in Turmoil at Frontwire Studios

I worked as a network and gameplay programmer at Frontwire Studios.

As my LinkedIn suggests, my role there was as a gameplay programmer aswell as a network programmer, ensuring the balance between modularity and efficiency to create reusable systems all along the game.

You can find here my gameplay rheel:

My non Unreal Engine projects

We are going to dedicate this part of the blog to games that I made that do not use UE4.

77 Attempts

“77 Attempts” (a super meat boy inspired game) achieved the first place of best student game at CPCRetroDev 2018. The game has been programmed for an Amstrad CPC on assembly language, the full game, manual, pictures and the source code and assets are fully available here (click to download the game).

UnrealROX

What to expect in this blog

Devtricks is a blog that will teach you a variety of tricks about game development in general. Although it will focus on Unreal Engine 4, it is open for everyone to read.

We will try to cover every single topic regarding game programming, from the most subtle of things, to the most important. We are very happy to have you as a reader, and please, enjoy.

Thanks to

Jekyll: Mainly because it’s a nice way of having GitHub Pages host it for free but also because it’s a great static-site engine we wanted to try out.

Minimal Mistakes: The theme we will be using with this webpage, which is really easy to use and, it’s responsive!

codingScars: Thanks to Carlos Fraguas (gracias Carlos! :D) in advance, not only because his blog is awesome to read (which I recommend), but for the fact that this webpage was created using the same framework he suggests on his site, and as you can see, works really well!

Categories:

Updated: