Cezary Nalborski

Cezary Nalborski

Learn more about Cezary Nalborski

down

At a glance

NICKNAME

Morph

RESIDENCE

Warsaw

BIRTHPLACE

Ciechanów

BORN

1978

EDUCATION

MSc, PhD Student

HOBBIES

3D Graphics, motorsport, karting

About me

In my early years, I was programming a lot on so called "Demoscene". Mostly we were dealing there with quite a complicated low-level 2D/3D graphics algorithms. To achive as best as possible performance in terms of the execution time, everything was coded in pure assembler with small C/C++ insets where it was needed. This experiences gave me a strong knowledge of a fast and low-level programming.
Later, I became a full time software developer for a few huge polish companies, what I do today. I have developed many systems on almost any layer of systems architecture. Starting from creating an architecture, developing low-level business logic to creating an user interfaces. These experiences let me expand my developing skills in C/C++ and Java especially Enterprise Edition. Sometimes, I had to deal with Microsoft T-SQL and Oracle PL/SQL. I think, that some of those experiences (in terms of used architecture,algorithms and technology) are quite unique in scale of our country.

In parallel, I am a PhD student on Systems Research Institute, Polish Academy of Sciences.
My most recent published article title is: 4KB PRESENTATION OF SELECTED 3D GRAPHICSRENDERING ALGORITHMS AS AN EXAMPLE OF OPTIMAL IMPLEMENTATION.
You can download it HERE.

My Skills

x86/Motorola 68k Assembler, C/C++, Java SE/EE, MS SQL T-SQL, Oracle PL/SQL, network programming, distributed programming, real time 3D graphics, real-time transaction processing, graphics algorithms, code optimization, systems architecture, project management

Assembler

Java EE

C/C++

Microsoft T-SQL

Oracle PL/SQL

Network programming

Portfolio

Here you can find my recent projects developed in C/C++ and x86 assembler.

Mostly, they are related to 3D graphics rendering algorithms such as Phong and Gouraud shading but some, does a fast and nice back-end calculations for example: reconstruction of a 3D polygonal mesh from volumetric data or so called "flat extender" - a "workaround" framework for skipping 64kb code segmentation of an x86 architecture (Source code).

Portfolio 1
Marching Cubes

C/C++ implementation of Marching Cubes algorithm. Includes back-end polygonal 3D mesh data reconstruction from volumetruc data and some 3D rendering algorithms. Source code can be downloaded HERE.

Portfolio 2
3D Studio objects viewer

3D Studio objects modeller viewer developed using C++. Thanks to this application you can view 3DS objects rendered in real time using sophisticated shading algorithms such as Phong or Gouraud. User experience is enhanced through sophisticated mouse controlling algorithm. Source code can be downloaded HERE.

Portfolio 3
ARTEMEN x86 DEMO

Demonstration of real time 3D graphics developed in pure x86 assembler. This is a comprehensive 3D rendering engine that implements various shading (Phong, Gouraud, Flat) and texture mapping (perspective corrected, bump) algorithms. Source code can be downloaded HERE.
Videos can be seen here: #1 #2 #3

Portfolio 4
REAL TIME 3D ENGINE WITH MIRROR EFFECT

Demonstration of various real time 3D graphics rendering algorithms with special attention to the real time mirror effect. Developed in pure x86 assembler. Source code can be downloaded HERE. Video can be seen HERE.

Portfolio 5
4Kb MOTOROLA 68k ASSEMBLER DEMO

Implementation of a texture mapping and a gouraud shading in pure Motorola 68k assembler for Commodore Amiga computer. Total size of the executable file does not exceed 4kb. Source code can be downloaded HERE. Video can be seen HERE.

Portfolio 6
VOODKA x86 DEMO

This demonstration is a comprehensive 3D rendering engine that implements various shading (Phong,Gouraud,Flat) and texture mapping (perspective corrected, bump) algorithms. Developed in pure x86 assembler. Source code can be downloaded HERE. Video can be seen HERE.

Portfolio 7
3D CUBE MATRIX

Real-time implementation of Ray marching algorithm with lambertian reflectance model. It works in real-time on ShaderToy platform which is GLSL pixel shader. Source code and real-time presentation can be seen HERE.

Portfolio 8
OpenCV rectangle recognition

This program recognizes rectangles placed in front of a built-in videa camera. Works in real-time. It was coded in C++ using OpenCV library. Source code can be downloaded HERE.

Portfolio 9
3D CUBE AND BALL WITH SHADOWS

Real-time implementation of Ray marching algorithm with lambertian reflectance model and hard shadows. It works in real-time on ShaderToy platform which is GLSL pixel shader. Source code and real-time presentation can be seen HERE.