Jesper Lundgren
Engine & Tools
Home
Projects
Variable Exposing Island Generator Tale of Stavros Spite: Into the Bog
LinkedIn
Other projects

Spite: Into the Bog

On a mission to save the people from the malign swamp magic; Pontius is sent into the bog to cleanse the evil, atone for past sins and reconcile with his god.
Engine People Timeframe Genre
Custom
11
5 Programmers
2 Level Designers
4 Graphical Artists
14 weeks (20h/week) Dungeon Crawler
Engine Custom
People
11
5 Programmers
2 Level Designers
4 Graphical Artists
Timeframe 14 weeks (20h/week)
Genre Dungeon Crawler

A Diablo-esque game.

My main focus was on
  • Development of ECS
  • Collision management
  • Level loading pipeline with Unity

This game was made from scratch in our own custom developed engine using DirectX 11.

Table of Content
  1. Flickering torch light
  2. Particles
  3. Particle editor
  4. Non-graphical work
    1. Enity Component System
    2. Collision Management
    3. Level Loading Pipeline

# Flickering torch light

To make the game feel more alive I made the torches' light in the game flicker.

A flickering torch
A flickering torch.

# Particles

The particle pipeline is something I worked on during this project.

White circles used as particles
White circles used as particles.

# Particle Editor

I created a general particle editor to give artists control to create particles in the game. The settings for the torch in the above section is displayed in the image below.

Interface of the particle editor
Interface of the particle editor.

# Non-graphical work

I mostly worked behind the scenes in this project making little to no work that can be represented in images. I hope this page can be found interesting nonetheless.

# Enity Component System

As a learning experience and performance boost I developed an Entity Component System. This lead to fewer cache misses and an increase in performance.

# Collision Management

Every game requires collison of some sort. I decided to use simple sphere collision in this project since it is cheap and it suited our needs. Programmers can easily assign colliders to entities and also register which type of triggers they want to be able to interact with. Using this system it sped up the workflow of creating attacks for enemies as all we had to do was to assign a collider size and register the attacks the entity should be able to collide with.

# Level Loading Pipeline

Our level editor choice was Unity3D. This meant that the levels created in Unity had to be recreated in our engine. I wanted the pipeline to be as easy to use as possible for other people to work with. In order to achieve this I made a serializer script component in Unity that serializes all objects into a single .json-file with the push of a button. This includes basic information such as position, rotation, tags, name, but also specific component information such as values in a light component. Inside our custom engine I worked on deserializing the information with RapidJSON, a JSON parser for C++.


Return to the top of this page
Other projects

Home

    • About
    • Highlights

Projects

    • Variable Exposing
    • Island Generator
    • Tale of Stavros
    • Spite: Into the Bog

External resources

    • LinkedIn

Contact

    • contact@noijig.net