Curriculum Vitae
Personal Information
- Name Mgr. Juraj Onderik
- Date of Birth 16.11.1981
- Address Haburska 7, Bratislava 821 01
- Email wonderik[at]gmail[dot]com
- Mobil +421 911 328 369
Education
- 2006 - present Comenius University, Mlynská Dolina, Bratislava
Faculty of Mathematics, Physics and Informatics
Phd degree – Computer Graphics - 2000 - 2006 Comenius University, Mlynská Dolina, Bratislava
Faculty of Mathematics, Physics and Informatics
Msc degree – Computer Graphics and Parallel Computing - 1996 - 2000 Gymnázium Jura Hronca, Novohradská 1, Bratislava
Specialization - Mathematics, Informatics - 1999 exchange – Eschenbach, Germany
Work Experience
- 2007 Slovak Atlantic Commission
Flash Banner Developer - 2006 - present Abyss Studios s.r.o. Bratislava
Software architect, developer - 2005 - 2006 Kvant s.r.o. Bratislava
Software developer (image processing, web development) - 2001 - present COMAL s.r.o., IPEX s.r.o., MDPT SR, Metodické centrum BA
Tutor of MS Office, Flash etc.
Professional Skills
- Software Development C++, Java, SmallTalk, Pascal, OpenGl,
C# .NET, PHP, XHTML/CSS/JavaScript, ActionScript, etc. - Computer Graphics Photoshop, Flash, 3dsmax, Maya, AutoCAD, LaTeX, etc.
- Driving License B
Languages
- English Advanced
- German Intermediate
Contests and Awards
- 2005 Winner of the scholarship “Hlavička 2004/2005”
- 2000 Competition "Programming with Cofax" – 1th and 21th place, Bratislava, SR
- 2000 Slovak Olympiad in Math (P) – National round (19th place)
- 1997 - 2000 Slovak Olympiad in Math (B) – Regional round (5, 6, 7th place)
Publications
- 2008Onderik J., Ďurikovič R.: Efficient Neighbor Search for Particle-based Fluids. Journal of the Applied Mathematics, Statistics and Informatics, Faculty of Natural Sciences, UCM Press, Trnava, Slovakia, 2008. To Appear
- 2007Ágošton T., Csuprai C., Onderik J., Ďurikovič R.: User-editable modular rendering pipeline. Proceedings of the IEEE 7th International Conference on Computer and Information Technology 2007 (CIT2007), Aizu wakamatsu, Japan, IEEE-CS Press, 2007.
- 2007Onderik J., Ďurikovič R.: Towards Collision Detection and Constraints in Rigid based Animation. Tutorial proposal. Eurographics, 2007 (not published)
- 2006Onderik J.: Physically Based Animation of Rigid Bodies. Master's Thesis, Faculty of Mathematics, Physics and Informatics, Comenius University, Bratislava, July 2006
Publications
Onderik J., Ďurikovič R.
Efficient Neighbor Search for Particle-based Fluids
Lagrangian particle-based animation is a popular strategy for simulating complex phenomena as fluids. Due to its inherent mesh-less nature the set of neighbor particles within a specified range must be efficiently found. In this paper we propose {\em Cell Indexing} a novel approach for searching approximate neighbor particles necessary for efficient fluid simulation using SPH. Instead of storing particles into a fixed 3D grid or hash map, we encode their coordinates and index into a {\em key}. The list of keys is then sorted using linear time radix sort. A simple traversal using $H$-mask can quickly accumulate approximate neighbors without problematic cache misses of Spatial Hashing, large memory requirements of full 3D grids or $O(n\log n)$ time complexity of kd-trees. Furthermore we can achieve sub-cell precision\footnote{Searching for neighbors on grid with smaller cell size} by using larger $H$-masks, while having only constant factor slowdown. Using $H$-mask can substantially increase the precision of Spatial Hashing or 3D grids, however more cache misses or larger memory requirements arise. We have demonstrated our approach within a standard SPH based fluid simulation.
Journal of the Applied Mathematics, Statistics and Informatics, Faculty of Natural Sciences, UCM Press, Trnava, Slovakia, 2008. To Appear
Paper (750KB, pdf) Slides (735KB, ppt)Ágošton T., Csuprai C., Onderik J., Ďurikovič R.
User-editable modular rendering pipeline
From the user’s point-of-view, current graphics systems have a limited modularity of rendering pipelines. Users cannot assemble a custom rendering algorithm. In this paper, we propose a modular component based rendering pipeline with concepts of visual programming. We briefly define a general module-based architecture for visual programming in graphics systems focusing on rendering pipelines. We suggest improvements by a definition of new connection link types, which reduce the complexity of the modular scheme representing a particular rendering algorithm. Furthermore, we extend the existing logic of the scene by defining the rendering process as a scene element. We discuss the advantages and disadvantages of our approach, and state particular fields worthy of application. Presented ideas are the results of our analysis. The respective prototype application is still in development.
Proceedings of the IEEE 7th International Conference on Computer and Information Technology 2007 (CIT2007), Aizu wakamatsu, Japan, IEEE-CS Press, 2007.
Paper (609KB, pdf) Slides (1,14MB, ppt)Onderik J., Ďurikovič R.
Towards Collision Detection and Constraints in Rigid based Animation
Realistic animation of rigid multi-body systems represents an integral part of the animation pipeline used in the majority of todays virtual reality systems. To achieve real-time behavior, interactive environments often require fast, robust and scalable techniques for collision, constraint detection, resolution during the dynamic simulation. In this tutorial we cover several major approaches, issues and problems emerged when developing solid, physically based, rigid body animation kernel. We explain advanced modular design of the animation pipeline, which breaks the simulation process into several independent modules and thus simplifies the overall complexity of this process.
Tutorial proposal. Eurographics, 2007 (not published)
Paper (309KB, pdf)Onderik J.
Physically Based Animation of Rigid Bodies
The Animation of complex natural phenomena is still one of the most challenging problems in the recent computer graphics. With the grow of the computational power over past decades, engineers of several research areas have developed a number of complicated algorithms to animate particle systems, rigid and deformable bodies, complex fluid and gas models, etc. The boom of the specialized high-performances graphical hardware (GPU) introduced a huge increase of realism among interactive applications. Some of the less-complex models are thus becoming integral parts of the animation systems within these applications. In this text we provide a state-of-the-art report (STAR) of several techniques suitable for the physically based animation of rigid bodies within interactive environments. We propose an efficient modular design of the animation system, which consists of several almost independent components and modules. After the introductory chapter, which gives an overview of the whole animation pipeline, we further split our analysis according to the modular design into six different chapters, each belonging to one animation module. In chapters (2-4) we mainly discuss several efficient strategies for detecting collisions between highly dynamic objects within large-scaled environments. We again split this process into 3 successive stages, each responsible for a more accurate collision detection. Beside the description of various methods, our main contribution consists of several modifications or simplifications of the original algorithms and a new model of generic bounding volume hierarchy. Conversely the main concern within chapters (5-7) lies in the simulation of the rigid body dynamics. We address here physically based motion of constrained multi-body systems undergoing several collisions and being connected by a number of joints. We contribute within this topic by first presenting a solid understandable background in the rigid body dynamics and further proposing a new unified 6-DOF join model. We also suggest several simple methods to keep the system matrix symmetric, while modeling frictional effects. This allows use to exploit efficient iterative LCP solvers.
Master's Thesis, Faculty of Mathematics, Physics and Informatics, Comenius University, Bratislava, July 2006
Thesis (3,72MB, pdf) Slides (284KB, ppt)Music
Synthetic Shorts
Once, long time ago, there was nice (and famous) DOS program called FastTracker. At that time I tried to write some simple xm (mod) player so I was playing with it and this happend: (usually it's just one-two patterns - so play it in repeat mode - like a loop) ((you can freely use it anywhere - use MadTracker to edit))- (as)wing mp3| xm
- acid mp3| xm
- announce mp3| xm
- basobela mp3| xm
- birthsday mp3| xm
- bottle mp3| xm
- breath mp3| xm
- clasic mp3| xm
- clumsy mp3| xm
- d&b mp3| xm
- dumi_du mp3| xm
- dance_piano mp3| xm
- easy mp3| xm
- eleksam mp3| xm
- fuckkika mp3| xm
- happy mp3| xm
- justhouse mp3| xm
- leaping mp3| xm
- melody_drive mp3| xm
- mindclass mp3| xm
- pop mp3| xm
- psycho mp3| xm
- relax mp3| xm
- scratches mp3| xm
- seapiano mp3| xm
- shakazul mp3| xm
- slowbeat mp3| xm
- somehow mp3| xm
- t_jungle mp3| xm
- tambeat mp3| xm
- total_disorder mp3| xm
Acoustic Demos
text "about"...Aphorisms
in English
Here are some weird ideas my grey matter had produced. More of them you can find bellow, but only in slovak, because in english it sounds "wrong".- Don't give a clap to the famous-one, but to the blind-one. Thus you show the blind-one the way, but the famous-one you deliver to the pride.
- When you say to someone "Get out of here!" usually he packs his stuff and get away. When you say this to the rubbish it will neither packed up nor get away. Conclusion: People are not rubbish - let us never wish to get them away from our life.
- The cliche of the classic-one: If I have my head only to comb, I wouldn't know even how to comb.
- I never have time, to have time, so once I will have time for having time, time will loose it's purpose... quick I am late...
- The biggest dream of scales is to find out it's own weight. But it can't do it alone - It needs some other scales. Aren't we people like scales.?
- The mirror of the body is a silver-plated glass
The mirror of the body and the soul is a human
The mirror of the body, soul and the spirit is God.
what is the reflection of God? - The little prince was not that small, he was just a little smaller than his planet.
- Small gasp means a big rest, big gasp means small rest.
- Little of air in yours breath, means a lot of groan in my spirit. (in english it's nothing special, but in slovak it has a "word-trick").
in Slovak
Tak tu je zopar haluzi, ktore produkovala moja sedo-hmotovina. Niektore z nich maju zmysel iba v slovencine, takze - sorry buddy.- Tlieskaj slepemu - nie slavnemu. Ved slepemu cestu ukazes - no slavneho k pyche privedies.
- Ked povies niekomu "Vypadni!" vacsinou sa zbali a zmizne. Ked to povoes smetiam ani sa nezbalia ani nezmiznu. Zaver: "Ludia nie su odpad - nechcime aby mizli z nasho zivota!"
- Po-ucenie by malo prist hned po uceni - po-na-ucenie az potom ako sa nieco naucis.
- Zivot "on-the-fly" znamena "rychlo menit smer (orientaciu), zbesilo kruzit, vrazat do stien, ci len tak sediet a lizat podlahu". Jednoducho : Zivot "na muche"
- Cliche classica: Keby som mal hlavu iba na cesanie, nevedel by som ani to ako sa mam ucesat.
- Verili by ste, ze Guliver a Alica su surodenci? Povedal mi to raz pri ranajkach Biely Kralik a velmi sa smial, ze vraj ako to dokazal ten obor s tou liliputankou. Neviem co mu bolo take smiesne. Potom som si vsak predstavil ako to robia kraliky a prislo mi to tiez smiesne, Neskor som si pomyslel, zo som C-love-K : potomok lasky obra Cugrua a liliputanky Klaiky. A kto ste VY??
- Nikdy nemam cas, aby som mal cas, teda ked raz budem mat cas na to aby som mal cas, cas strasi vyznam...rychlo nestiham...
- Najvacsim snom kazdej vahy je zistit svoju vahu. Nedokaze to vsak sama - potrebuje inu vahu. Nie su ludia vahy ?
- zrkadlom tela je postriebrene sklo,
zrkadlom tela a duse je clovek,
zrkadlom tela,duse a ducha je boh.
co je obrazom Boha? - Maly pric nebol az taky maly, bol len o cosi mensi ako jeho planeta.
- Maly vzdych je velky oddych, velky vzdych je maly oddych.
- Malo vzduchu v tvojom dychu, byva vela vzdychu v mojom duchu.
MSc
Under reconstruction...C++
I took very simple lessons of C++. Besides the exams we had to write some simple C++ project:Formal Languages
Formal languages, that's what you need to be a real computer scientist. Maybe that's also why I took this lessons. (or because it was mandatory?). Anyway we had to do some HWs and one I did in TeX (in slovak):Mumerical Math
This in a key in Computer Graphics and especialy in Physically Based Modeling. But this course was just introduction. Numerical Recepies are definitely better resource. Here is simple interpolation demoEfective Algorithms Enginering
FloydWarshal, Dijskra, Cruscal, ... Matrix multiplication, some NP-complete problems. Another theoretic course. So a less theoretic HW.Programming (Delphi, BCB)
They started to teach us Pascal, well Delphi. So we had to use it. I personally, DO NOT like this language, but it's well-know the Pascal is for learning purposes. Later they allowed us to use C++ also. So here are some mini projects I wrote. Well, they might not work properly, cause some are not finished :( It's rebuild in Borland C Builder 6.0 and Delphi 6.0. If you don't have them, you'l probably need some dlls to run it.- If you know REAKTOR from Native Instruments, this should resemble it at least a little bit. If you dont, I tried to write a tool for visual assembling small widget (functions) to produce sound.|cubies.zip|
- Ok it's funny, but I wrote MineSweeper. Yet don't get why|MineSweeper.zip|
- When I was young, I used to play the Master Mind's Logic game. At that time I was wondering that the master can do it in 4-6 rounds. Later I found out, it's not a big magic, just combinations, so CPU can do it. |logic.zip|
- Like stereograms? Try some better soft like this mine. But it works.|StereoGrams.zip|
- Anoter table game.|Piskorky.zip| with simple heuristic |AI-piskorky.zip|
SmallTalk
Do you know this "funky" language. It's old, but still interesting. If you are Object-Oriented you will like it, despite of it's syntax, which is after a while really natural. With 2 firends (Stefan Varga, Marian Uhercik)we tried to write a "translator" from Java to Smalltalk. |jtalk.zip|Procedural Modeling
Stochastic fractals, Particle systems, Chaos games, Cellular Automata, Reactive diffusion, Fluids... All the addons to make the virtual world more realistic. Or procedural? I tried to do some simple fluids and paricle systems:- Simple stable fluids - thanks to Jos Stam for Ideas on realtime fluids.|fluids-bcb6.zip|
- Emitors, attractors, particles, springs... .|zopar-ticle-bcb6.zip|
Animation
Computer Animation. Do some animation in 3DMax or code up some procedural animation. Ok- Emitors, attractors, particles, springs... .|ZoparTicle-bcb6.zip|
- TODO: model michalska veza....
Computer Graphics
This was in introduction to everything... and we had HWs, but I was lazy so some are not finished yet :(- Start up OpenGl and show us something...|hw1-RatAndSnake.zip|
- Show us nice Beziers with textures...|hw3-Bezier.zip|
- We need some VRML viewer and simple raytracer...|hw4-VRMLView.zip|
Curves and Surfaces
Lagrange or Newton interpolation, Rational Bezrier, B-Spline curves and surfaces, cardinal and Beta-spline patches, Coonse patch, Catmull Clark subdivision surface... This was all about Curves and Surfaces. The whole collection of HWs is here.- HWs:|curves-surfaces-hw.zip|
- Some notes about n-th derivation of Bezier Curve: |bezier.pdf|
Computer Vision
Image semgmentation, RL-code, Gausian Laplacian filters, Hough transformation, etc. If you are familiar with this terms you don't have to take this course :) We had to fill some HWs:Introduction to Artifical Inteligence
Another intro-course. But this one was quite good. Before exams we had crossword competition. We've got an empty crossword, some dictionary a had to find appropriate words to match. Simple, it's a (constraint) NP-hard problem. So we did lot of heuristics, alpha,beta pruning or AC3...- so try it if you understand that switches, I did at that time, but today... |cross-bcb6.zip|
Cognitive Science
Cognitive Sciences - nice mixture of various scientific areas, but is all about human reasoning ... I did a report about Mental models.Neural Networks
Do you know how your brain works. I don't, but they think they know... We had HWs.Master's Thesis
Thesis (3,72MB, pdf)
Slides (284KB, ppt)
Overview
Problem description...- TitlePhysically Based Animation of Rigid Bodies
- UniversityFaculty of Mathematics, Physics and Informatics of Comenius University
- AutorJuraj Onderik
- SupervisorRNDr. Marek Zimanyi
- Committee chairRNDr. Roman Ďurikovič Professor, Ph.D.
- Defence Date31th August 2008
Abstract
The Animation of complex natural phenomena is still one of the most challenging problems in the recent computer graphics. With the grow of the computational power over past decades, engineers of several research areas have developed a number of complicated algorithms to animate particle systems, rigid and deformable bodies, complex fluid and gas models, etc. The boom of the specialized high-performances graphical hardware (GPU) introduced a huge increase of realism among interactive applications. Some of the less-complex models are thus becoming integral parts of the animation systems within these applications.
In this text we provide a state-of-the-art report (STAR) of several techniques suitable for the physically based animation of rigid bodies within interactive environments. We propose an efficient modular design of the animation system, which consists of several almost independent components and modules. After the introductory chapter, which gives an overview of the whole animation pipeline, we further split our analysis according to the modular design into six different chapters, each belonging to one animation module.
In chapters (2-4) we mainly discuss several efficient strategies for detecting collisions between highly dynamic objects within large-scaled environments. We again split this process into 3 successive stages, each responsible for a more accurate collision detection. Beside the description of various methods, our main contribution consists of several modifications or simplifications of the original algorithms and a new model of generic bounding volume hierarchy.
Conversely the main concern within chapters (5-7) lies in the simulation of the rigid body dynamics. We address here physically based motion of constrained multi-body systems undergoing several collisions and being connected by a number of joints. We contribute within this topic by first presenting a solid understandable background in the rigid body dynamics and further proposing a new unified 6-DOF join model. We also suggest several simple methods to keep the system matrix symmetric, while modeling frictional effects. This allows use to exploit efficient iterative LCP solvers.
Contents
1 Introduction
1.1 Modular Design of the Rigid Body Animation Pipeline
1.1.1 The Collision Detection Component
1.1.2 The Simulation Component
1.2 Thesis Outline
2 Broad Phase Module
2.1 Hierarchical Grids and Octrees
2.1.1 Hierarchical Spatial Hash Table
2.1.2 Loose Octrees
2.2 BSP Trees and kd-Trees
2.2.1 Semi-Adjusting BSP Tree
2.3 Sweep and Prune (SAP)
2.3.1 1D Approach (x, y, z)
2.3.2 2D Approach (xy, yz, zx)
3 Mid Phase Module
3.1 Generic Bounding Volume Hierarchy
3.1.1 Choice of BV Type
3.1.2 Hierarchy Construction Design
3.1.3 Collision Queries
3.1.4 Transformation Update
3.2 k-Discrete Orientation Polytopes (kDOPs)
3.2.1 Hierarchy Construction
3.2.2 Overlap Test
3.2.3 Transformation Update
3.3 Oriented Bounding Boxes (OBB)
3.3.1 Hierarchy Construction
3.3.2 Overlap Test
3.3.3 Transformation Update
3.4 Quantized Orientation Slabs with Primary Orientations (QuOSPO)
3.4.1 Hierarchy Construction
3.4.2 Overlap Test
3.4.3 Transformation Update
3.5 Bounding Spheres (BS)
3.5.1 Hierarchy Construction
3.5.2 Overlap Test And Transformation Update
3.6 Swept-Sphere Volumes (SSV)
3.6.1 Hierarchy Construction
3.6.2 Overlap Test and Transformation Update
4 Narrow Phase Module
4.1 Proximity Queries for Convex Objects
4.1.1 Minkowski Space
4.1.2 Touching Vectors and CSO
4.1.3 Contact Region
4.2 GJK based Algorithms
4.2.1 The Support Function
4.2.2 The Gilbert, Johnson and Keerthi Algorithm (GJK)
4.2.3 The Expanding Polytope Algorithm (EPA)
4.2.4 GJK Overlap Test (ISA-GJK)
4.3 The V-Clip Algorithm
4.3.1 External Voronoi Regions
4.3.2 Main Algorithm
4.3.3 Voronoi Clipping
4.3.4 Extending V-Clip with Dobkin-Krikpatrick Hierarchies
4.4 Signed Distance Maps (SDM)
4.4.1 Construction of SDM
4.4.2 Proximity Queries with SDM
4.5 Contact Analysis
4.5.1 Contact Generation
4.5.2 Contact Reduction
4.5.3 Contact Persistence
5 Motion Solver Module
5.1 Rigid Body Concepts
5.1.1 Position and Orientation
5.1.2 Linear and Angular Velocity
5.1.3 Center of Mass
5.1.4 Linear and Angular Momentum
5.1.5 Mass and Inertia Tensor
5.1.6 Linear and Angular acceleration
5.1.7 Force and Torque
5.2 The Rigid Body Equation of Unconstrained Motion
5.2.1 Ordinary Differential Equation (ODE) Solver
5.2.2 User and Time Control
5.3 Mass Properties of Polyhedral Objects
6 Collision Solver Module
6.1 Simplified Collision Model
6.2 Collision Equation
6.3 Collision Resolution Strategies
6.3.1 Impact Model
6.3.2 Coulomb Friction Model
6.3.3 Work of Repulsive Forces
6.3.4 Impulse Space
6.4 Algebraic Collision Resolution
6.4.1 Collision Laws
6.4.2 Friction-less Case
6.4.3 Friction Case
6.5 Incremental Collision Resolution
6.5.1 Collision Laws
6.5.2 Friction-less Case
6.5.3 Sliding Friction Case
6.5.4 Sticking Friction Case
6.5.5 Stable Sticking Case
6.5.6 Instable Sticking Case
6.6 Full Deformation Collision Resolution
7 Constraint Solver Module
7.1 Multi-body Equation of Motion
7.1.1 Spatial Notation
7.2 Description of Constraints
7.2.1 Bilateral Constraints
7.2.2 Unilateral Constraints
7.2.3 Unified Constraints
7.2.4 Constraint Error
7.2.5 System Jacobian
7.3 Velocity-based LCP Formulation of Motion Equation
7.3.1 Iterative MLCP Solver
7.4 Contact Constraint
7.4.1 Friction Pyramid
7.4.2 Kinematic Constraint and Contact Jacobians
7.4.3 Symmetrization of System Matrix
7.5 6-DOF Joint Constraint
7.5.1 Linear Constraints
7.5.2 Angular Constraints
7.5.3 Combined Joint Models
8 Conclusion
8.1 Future Work
8.2 Brief Summary of Algorithms
Bibliography
Demo
About demo...
Demo (696KB, zip)
PhD
Research
Under construction ...Teaching
Under construction ...PhD Thesis
Overview
Problem description...- TitleNature Simulation of Flood Dynamics
- UniversityFaculty of Mathematics, Physics and Informatics of Comenius University
- AutorJuraj Onderik
- SupervisorRNDr. Roman Ďurikovič Professor, Ph.D.
- Committee chair???
- Defence Date???



