Maciek Nowakiewicz
Software developer from Warsaw, Poland now living in Kobe, Japan
C++
Java
Android
CG
JavaScript
DirectX
OpenCV
TypeScript
CUDA
Simulation
Game
Music
VR
WebGL
CAM
IK
AR
Kinect
Python
POSIX
C
Ionic
MIDI
Node.js
UnrealEngine
Unity
C#
8x9Craft (Re:Kayo System)
WebGL
CG
Java
TypeScript

Mod for Minecraft that enables programming in-game character in JavaScript with the included editor. It's used as a tool to teach elementary and middle school-aged kids basic programming concepts.

My work consisted of implementing:

  • the mod itself, written in Java, which included modding rendering system to display items in character's hands, its animation, chat baloons, etc.
  • JavaScript runtime using Rhino, including implementing multithreaded execution with minimum-cost synchronization needed when touching the world,
  • frontend editor using TypeScript and Vue framework, including designing its layout, writing css, embedding Monaco editor and customising it to support the mod's API intellisense, and implementing WebSocket communication with the server,
  • frontend WebGL renderer of Minecraft's world as a Web Worker including efficiently calculating geometry from blocks information using Minecraft's object definitions in real time with the data of the changing world streamed over WebSocket, texturing with regenerating texture atlas requesting only the needed images within the viewing range,
  • frontend block programming module implemented using Blockly.
CUDA Raytracing CSG Spheres
CUDA
CG
C++
I implemented a raytracing algorithm for rendering a constructive solid geometry-defined scene on a GPU using CUDA.
CUDA Flocking Simulation
CUDA
Simulation
C++
CAD Application
CAM
JavaScript
Spline curves and surfaces modelling and intersection.
Project Duck
CG
DirectX
C++
Water simulation using shaders, environment mapping, anisotropic lighting.
Project Tessellation
CG
DirectX
C++
Dynamic tessellation of a Bezier surface using DirectX 11 Domain and Hull shaders with normal and displacement mapping.
Project Puma
CG
IK
DirectX
C++
Shadow volume rendering and inverse kinematics for robot arm.
Optical Character Recognition
OpenCV
C++
Basic optical character recognition using SVT.
Written in C++ using OpenCV library for most of the algorithms.
Process was divided into learning and testing.
Augmented Reality
OpenCV
AR
C++
Kinect 3D Object Scanner
Kinect
C++
Fluid Simulation
Using SPH Method
Simulation
C++
CAD/CAM Workshop. (Smoothed-Particle Hydrodynamics) with marching cubes visualization.
Bird Detector
OpenCV
Android
Java
Image Processing on Android device using its camera and OpenCV to achieve motion tracking.
Simple Renderer
CG
JavaScript
Client and threaded server for distributed solving of hard problems.
Python
Software Engineering
POSIX File Storage Server And Client
POSIX
C
Unix Programming POSIX-compatible client and threaded server for remote file storage written in C.
Murki
Game
Android
Java
AndRunner
Game
Android
Java
Toradic
Ionic
Android
TypeScript
Rin-na Kanji
Android
Java
LisQuiz
Android
Java
JustPlayer (Re:Kayo System)
Music
Android
Java
RemotePlay
Music
MIDI
Node.js
JavaScript
Application that interprets natural interfaces like touch and accelerometer and sends MIDI messages to server that forwards them to Ableton Live software. Enables live musical concerts that the audience takes active part in using their smartphones.
Unreal Engine 360 VR Player
VR
UnrealEngine
Oculus Live 360 Camera
VR
Unity
C#