Atanas Laskov 🏳️‍🌈

Contact me on social media:

               



  

Gamedev

by Atanas Laskov

Supporting the British Red Cross (UI Design, Character Animator)

In this game you explore a beautiful town threatened by a dangerous storm. I did the UI design and icon design in Adobe Illustrator, the character animation in Adobe Animate.

The project gave me the opportunity to do visual effects animation for wind, rain and sparkles in Unity Engine. Some of the Unity Engine prefabs for the UI also are my work.



UI Screenshots

In-Game Screenshots

Project Blob (Character Animator)

Project Blob is a side-scrolling point & click adventure.
Credits: Atanas Laskov (Animation), Alessandro Brillo (Title Screen, Prop Art), Oli Alexander (Backgrounds), Jonathan Hamilton (Producer, Programming), Robbie Wyllie (Game Design), Sam Honeyman (Music), Shashwat (Programming).

Play this video

Previously, I wrote 2 games in TypeScript, they both run in the browser:

I also programmed a C++ game engine with full Docs and Source Code.
Short docs are available at the end of this page. The animation, environment design and 3D modeling are my own work.

Play this video Play this video

Informatics

My work experience inclues C++, JavaScript and Java programming. I studied Computer Systems and Technologies at TU-Sofia and after that I went on to study Artificial Intelligence at the University of Edinburgh.

Apart from the engine I also programmed a small OS in C and assembly here.

Documentation

The following section gives an overview of the class hierarchy implemented in the game. It describes briefly the responsibilities of each class.

Helper Classes
[-] contract

class laClassFactory
Register and instantiate objects by class name.

class laNamedClass
This is the base class for all objects created by laClassFactory.

class laFileParser
Parsing XML-like files into objects.

class laLoadableObj
Base class for all objects loaded by laFileParser.

class laPropertyList: public laLoadableObj
Loads and maintains a list of properties.

class laTypedObject: public laLoadableObj
Loads and maintains an object of the specified class type.

class laProgressiveTask
Children of laProgressiveTask have the capability to record the progress of a task and its sub-tasks.

class laError
Error handling class containing a text description.

Level Structure
[+] expand
Geometry
[+] expand
Renderer
[+] expand
Collision Detection
[+] expand
Effects
[+] expand
Architecture
[+] expand
AI
[+] expand
Objects and Creatures
[+] expand

Back to top

Atanas Laskov 🏳️‍🌈