Paul Nasdalack


twitter@littleBugHunter

emailinfo@paul-nasdalack.com

Coder

I've been coding for over 15 years on various systems. During my carreer I've worked with a wide variety of programming languages (most notably C++, C#, HLSL and JavaScript). This enables me to choose the right tools and techniques to get the job done well and in a timely manner.

For business inquiries please contact my Company IndieBurg

IndieBurg Presentation Framework
JavaScript
TypeScript
WebPack
WebGL

A Web based 3D Presentation Framework

Role: Project Lead

During the 2020 pandemic our company decided to create a web based presentation framework to fill the need for interactive product presentations. The technology is based on THREE.js.
The Framework consists of many reusable components making it easy to create customized experiences for our various clients.

Achievements

Custzomized Renderer with Temporal Anti Antialiasing
The THREE.js Renderer was customized to refine an image over time when the camera is still
LOD streaming
Later versions of the Engine include an asynchronous LOD streaming system to reduce loading times
Dynamic Quality Levels
The visual fidelity of the website changes based on the currently measured frames per second, making sure the user is presented with a smooth experience at all times

Die Fantastischen 4: Tunnel Ar
ArKit
Swift
iOS
Unity3D

AR Music video app for the popular German hip-hop band 'Die Fantastischen Vier' on IPhone

Role: Programming Lead

As Programming Lead I was responsible for the development of the both the app and most of the pipeline tools used by the team during production.
The special challenge of targeting photorealism in a realtime updated Tunnel slice, while maintaining 60 FPS on a phone required a good communication between all departments at all times.

Achievements

PBR Uber shader
Similar to Unitys standard shader, optimized for mobile and extended for custom functionalities like realtime slicing and physically based heat glow
Pipeline Tools
To automatically synchronize the file system on the server with the unity project
Augmented Reality UI
Inverse camera projections and non intrusive UI for an immersive experience

Marmoset Toolbag 3
Python
UE4
DirectX
C++

Marmoset Toolbag 3 is a full-featured 3D real-time rendering, animation, and baking suite, providing artists a powerful and efficient workflow for all stages of production

Role: Software Developer

As a software developer at Marmoset I was responsible for many different Tasks ranging from UI implementations to low level graphic features. I specialized on extending Toolbag to interface with external software packages as well as implementing a Plugin System.

Achievements

Python Plugin System
This involved implementing the Python C API, hooking it up to the internal object representations and generating and maintaining a Scripting Reference
Unreal Engine 4 Plugin
To make it easier for artists to import their .tbscene files and materials into Unreal Engine, I've developed an import Plugin that not only generates the required Mesh data, but also converts Toolbags internal materials into UE4 Shader Graphs

Underraid Decal System
CG
Unity

Underraid is a turn based tactics game developed by Dynamic Deadlines

Role: Graphics Programmer

I was responsible for the integration of the Dynamic Decal System, which was integrated into Unitys render pipeline

Achievements

Dynamic Decal System
Underraid includes persistent Area of Effect spells. To visualize these, I integrated a variation of the widely popular Deferred Decals. The Decals can be placed by artists and coders and interact with nearby decals to produce natural transitions.
Surface Shader like Decal Shaders
To enable in house programmers to easily create new effects. Deferred Decals work in Screen Space, which can be a bit off putting to coders. So I created a Shader API similar to Unitys Surface Shaders in order to enable new Effects being integrated during production

Ubisoft Blue Byte
C++
C#
Flash
Java

Role: Programmer

I started my carreer at Ubisoft (and in the Games Industry) with a 3 month Internship and stayed for almost 3 years. My responsibilities involved working as a Gameplay Programmer for the Free To Play Online version of the Anno games.
After that I've shifted my focus towards the more low level and performance oriented world of AA and AAA games. Sadly the Title we were working on is yet to be announced.

Achievements

Monuments Feature
Players have been waiting for the possibility to build monumental structures like cathedrals or the hanging gardens for many previous installments of the Anno series. I was involved in the development of the feature, which included extending the game by features like multiple building stages, resource sockets and more complex questlines.
Combat
I was part of the team responsible for extending the engine by all Combat features. This involved rewriting parts of the graphic engine to enable 3D graphics in the existing 2D engine as well as programming the combat logic.
Programming Courses
I started my career as a Teacher at Ubisoft Blue Byte by giving "Programming for Non Programmers" classes. More about that in the teacher section.

Homebrew
NES
Gameboy
C
Assembly

Writing games for old Hardware

Role: Solo Project

Working with limits tends to enable creativity and there is something I love about fiddling around with old 8-bit machines. To me 8-bit programming is like solving a puzzle game.
It also keeps me rooted an reminds me to look back at the long way computer graphics have come.

Achievements

NESing of Isaac
Almost feature complete NES port of the original Binding of Isaac. It includes random generated Dungeons, Bosses and Stats altering Items as well as a variety of enemies
Gameboy Visual Studio build target
I customized parts of the SDCC compiler, enabling me to write Gameboy Games partly in C (instead of pure assembly) and hooking it up to an asset pipeline, spitting out a runnable .gb file
Nordic Game Jam 48 competition
I've developed the coop NES Game Leak or Die during Nordic Game Jam 2016.

Teacher

I started my professional career as a teacher in 2015 at Ubisoft with a programming course aimed at non-coders. In 2016 I started teaching at the Hochschule Darmstadt, University of Applied Sciences, giving courses about graphics programming and coaching semester projects.

Sharing knowledge is one of the most important factors driving our industry forward. Seeing other people putting things I taught them to good use is one of the most rewarding things I've ever experienced.
In my oppinion teaching always goes both ways, as it requires to approach problems from your students perspective. This has given me many new insights on familiar topics.

My courses focus mainly on graphics programming and introducing new people to coding. My preferred teaching methods involve direct interactions in workshop like environments. But I also enjoy giving talks in front of bigger audiences.

If you are looking for a speaker at your event or need a lecturer for a class at your school or company, feel free to contact me.

Teaching at Hochschule Darmstadt

A collection of semester projects

I am a lecturer at the Hochschule Darmstadt, University of Applied Sciences in the Media faculty since 2016. Some of my courses are also available to students of the Information Science department.
Most of my courses are about graphics or shader programming. Additionally I was part of a coaching team, giving weekly technical and management advice to the students about how to succeed with their semester projects (3 month animation and game Projects).

Teaching at Ubisoft

During my time at Ubisoft I started an internal course called "coding for non coders" with a colleague. The idea was to teach basic coding skills to all departments, enabling everyone to help themselves with small tools or quest scripts and give a better understanding of the technical processes of Game Development.
The course was part of a bigger knowledge sharing program at the company. I am still highly impressed by the efforts to integrate knowledge sharing into the company spirit.
"Coding for non coders" was a quite successful and is to my knowledge still being held by my former colleagues on a regular basis to this day.

Person

My name is Paul Nasdalack, I'm one co-founder of IndieBurg and a teacher, specialized interactive media and games. If you have any questions feel free to contact me.

Curriculum Vitae

Work experience

2020-now IndieBurg Entertainment GmbH
Co-Founder and Developer
2016-now Lecturer at Hochschule Darmstadt
2016-2019 Freelance Work
Software development at MarmosetCo
Creation of custom rendering systems in Unity3D
2014-2016 Ubisoft Blue Byte
Software development for an unannounced AAA Projekt and Anno Online
2009-2013 Freelance Work
Development of a website featuring WebGL 3D architecture visualization Creation of virtual worlds and experiences for fairs and exhibitions

Education

2010-2013 Hochschule Darmstadt - University of Applied Sciences
Digital Media, Animation and Game
Bachelor of Arts(1.2)
Abschlussarbeit
Three Corners – Interactive Story (1,0)
2003 – 2010 Hölty Gymnasium, Celle

Qualifications and Skills

Programming Languages C++, C, C#, Action Script, Java, JavaScript, TypeScript
HLSL, GLSL

Z80 Assembly, 6502 Assembly
Batch, Python, Lua, MEL Script
Engines Unity3D, Unreal Engine 4, WebGl, THREE.js, Pixi.js
Software Visual Studio, XCode
Git, Perforce, SVN

Maya, 3Ds Max, Blender, Marmoset Toolbag 3
Photoshop, After Effects
WWISE, Fmod, Audacity, Pro Tools
Windows, Mac
Languages German
English

Social work

2011-2012 Member of the student parliament at Hochschule Darmstadt
2011 Member of the General Students' Committee (AStA) at Hochschule Darmstadt