Video in TIB AV-Portal: Polymorph

Formal Metadata

libre videogame platform
Alternative Title
A libre game engine based on Ogre3D and Puredata
Title of Series
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Production Year

Content Metadata

Subject Area
Polymorph, a libre videogame platform. We produce art installation and video games using a tailor-made libre gameengine based on Ogre3D (visuals) and Puredata (sounds). Polymorph has been started in July 2016. The first projects we are working is Tuning Game, in collaboration withContredanse asbl, and PEEL, a 3d puzzle game. It is open to visual artists, designers, academics, musicians, developers etenthusiasts focused on experimental video games, programming and interactiveapplications. It is a place dedicated to exploration of video game medium, aesthetically,theorically, artistically and technically. We are also careful about the influence of the tools on the work we do.Therefore, we choosed to work with a libre software suite, including blender,gimp and inkscape for content creation and Ogre3D, Puredata, Bullet and otherlibraries for the game engine. Other libre engines are welcomed. We are providing the game engine as a complete package, ready to install withinstallation procedure and examples.
Polymorphism (materials science) Video game Game theory Computing platform
Group action Software developer Interactive television Projective plane Interactive television Video game Bit Videoconferencing Game theory
Avatar (2009 film) Data mining Video game Projective plane Interactive television Bit Real-time operating system
Avatar (2009 film) Video game Projective plane 1 (number) Sound effect Real-time operating system Bit Right angle Quicksort Mereology Physical system
Installation art MIDI Game controller Multiplication sign Digitizing Projective plane Real-time operating system Mereology Tablet computer Hypermedia Universe (mathematics) Videoconferencing Row (database)
Avatar (2009 film) Bit Physical system
Software developer Musical ensemble
Area Angle Different (Kate Ryan album) Projective plane Game theory
Musical ensemble
Sine Process (computing) Integrated development environment Java applet Data storage device Software framework Game theory Open set Code Demoscene
Point (geometry) Pairwise comparison Complex (psychology) View (database) 1 (number) Cuboid Bit Replication (computing) Library (computing) Power (physics)
Multiplication sign Projective plane Electronic program guide Game theory Library (computing) Engineering physics
Axiom of choice Multiplication Group action Touchscreen Open source Projective plane Interactive television Bit Mereology Revision control Graphical user interface Avatar (2009 film) Nonlinear system Calculation Artistic rendering Order (biology) Text editor Engineering physics Physical system
Revision control Polymorphism (materials science) Code State of matter Revision control Bit Musical ensemble Computer programming
Polymorphism (materials science) Game controller Greatest element Scripting language Installation art Parsing Link (knot theory) Open source Code Open set Content (media) Code Different (Kate Ryan album) Cuboid Software testing Descriptive statistics Physical system Engineering physics Scripting language Time zone Graphics processing unit Polymorphism (materials science) Theory of relativity Information File format Projective plane Moment (mathematics) Plastikkarte Physicalism Special unitary group Line (geometry) Cartesian coordinate system Demoscene Data mining Data management Radius Cube Order (biology) Object (grammar) Game theory Window
Revision control Link (knot theory) Demo (music) Code Mixed reality Software developer Projective plane Bit Multilateration Musical ensemble Cartesian coordinate system
NP-hard Execution unit Theory of relativity Transformation (genetics) Multiplication sign Projective plane Maxima and minima Bit Real-time operating system Volume (thermodynamics) Theory Revision control Web 2.0 Integrated development environment Game theory Object (grammar) Position operator Engineering physics
Mathematics INTEGRAL Cube Volume (thermodynamics) Distance Position operator
Rotation Process (computing) Scaling (geometry) Information Envelope (mathematics) Cube Position operator
Translation (relic) Pattern language
Addition Mapping Bit Object (grammar) Asynchronous Transfer Mode
Execution unit Patch (Unix) Maxima and minima Hill differential equation Object (grammar) Gamma function Annulus (mathematics)
Vulnerability (computing) Execution unit Patch (Unix) Musical ensemble Asynchronous Transfer Mode Vacuum Window Annulus (mathematics)
Inclusion map Email Skeleton (computer programming) Natural number Shader <Informatik> Motion blur Real-time operating system Data structure
Scripting language Trail Ferry Corsten Java applet Multiplication sign 1 (number) Maxima and minima Sound effect Evolute Complete metric space Annulus (mathematics) Shader <Informatik> Game theory Object (grammar) Musical ensemble Social class
Core dump
so I'm here today to present you Polly muff Libre platform liebherr video game platform yeah so
just to start quite clear to narrow a bit what we're doing in polymath the idea is to produce video games interactive experiment and live performance so we are a group of people working on this the crew just to mention them because they are important Virginia and I started the the polymer project six months ago Peter Edelman and Balthazar who's there is to developers and which joined us and she's a choreographer and a blender artist so the background of
the project just to explain you a bit what we what I have in mind when I say
interactive experiments and life stay live performance this project is a school tanukis and it's a performance in
which I'm the avatar is a puppet and I play with it real time and a friend of mine Loic is doing the music and so we perform on stage and we so it's mock-up
played in real time and then I activate effects this kind of thing I'm just
going to skip a bit of it so they were sound this is sort of like it's quite important
so when I'm when I'm talking about experiment experimenting with video game technologies it's - this kind of thing that I am thinking so that is in this project I've walk trot on the animation part and I recorded I did a new motion system in unity so all the thing that animate the avatar a custom animation engine on the right you see that it's controlled via so it's
controlled by a MIDI controller and apps so via tablet another part of the project was to work on in an interactive installation involving a dancer so this time real time without any recording and this is a video of residency that has been made in Himmel it's a center for digital art in Brussels and for this it's a research with I started a new media it's a research lab linked to the
university of news and the ideas will
have a mock-up system made of connects so we have four connects merge together
and providing the animation data to the
2d avatar as you see it's not yet
perfect its bleaching a bit but it start works
yeah not just a bit
it's still under development and just to
skip a bit and show you that it's
working also with several people in the
room so the idea of mixing several
connects together us to do this kind of
thing so we have a bigger area covered by the connects and we are also able to
see people from different angles so the
working on this project is two or three years I'm working on it the main thing I didn't do in this project is the game engine itself and I was using unity and
so because I'm had some problem with it
[Music] start to think about it but I first have to present you the tools that I'm using before and that has influenced the way I did the polymer engine so I'm coming
from creative coding I don't know if several of you know processing open framework and this kind of stuff so it's mainly text-based frameworks simplified really easy to get into and so I started with processing it's an IDE with Java I use blender a lot all store I made some experimentation with qt and I worked a lot or so with open framework with C++ framework and it's a sin thin layer above OpenGL so it's very good they do a lots of things but when you come to 3d 2d game or more complex scenes it doesn't do the job correctly it's not powerful
enough so during two years I started a quest and the first thing I tried as you saw
was unity and I'm starting a bit of comparison here looks a bit like the replicator in my point of view it's very nice the design everything is perfect you have nice buttons at the top it's very easy to use and you can print nice stuff for that but you cannot open the box and I need to have access to the to the Codex especially for the animation or to to plug different libraries it was too closed for me so I tried another one
Unreal Engine it's open-source ok it's the license for better to do things but it was a good engine the industry r1 and related to the to the power to the power of the of the engine is the complexity of the engine and I didn't wanted to go to start learning an engine for one year before doing something I want to go a bit faster than that so it forced me to re-evaluate my
needs and what I expected and this is what I was searching for in fact it was different libraries with a guide to put them together and the ability also to make it evolve with the time so change peace constant the physical engine I want to be able to plug another one if I need to change the sound engine put whatever I want and make
they made game engine depending on the project I'm working on so choosing which piece I put together
and so I made a bit of research and I ended up by selecting these tools so the pure data was using it for two years so it was quite directly in the in the pipe it can do graphical interface you can do real-time calculation and it can do sounds obviously or so so it was directly in the pot all the auger has been a bit more difficult to to find because it was in a shortlisted with Alex I don't know if some of you knows this engine so it's an an open-source rendering engine or so but when I looked at the specs and the community behind all those seems a better choice because there was much more thing already prepared in order and when a one-year last in June last year they were releasing the version two of the engine so it was it seems to me a good choice I want to tell physical engine into it so I shot listed bullet also because it's very well-documented and easy to use and several of the tools so on the top of the screen is everything that I didn't do myself in the lower part in in Aus it's everything that comes from the project that I did before like this is the animation engine for the Avatar that coming from tanuki the multi connect system that I talked about or so under mental play with the mental editor is a nonlinear timeline editor did done by yes inceptive is there is working actively on it for several years and it allows you to really manage the timing of of an interaction of whatever you want and to make transition between them
so I showed I said to everybody that I was going to do the project in June so in July I start coding and because I did
open framework before and what kind of programming I was thinking okay odd will not be a huge issue
[Music] yeah it took me about two months to really get into work and to get her which was working all the layers and all the managers inside of it and the idea of the polymorph engine is to avoid you this state of mind and provide you something a bit more easy to use so now nowadays okay we are at veteran 0.1 I'm not taking too much risk yeah it's really the first version it's still and ready in the a pack of code and not
everything is debug not everything is done to synchronize everything but at least when you download the engine you will get this you will get order do that link to auger you will get a walk off of pure data I'll link to SDL to send the sound to the graphical card to the sun card sorry the gamepad thing is etc it was not included into our you get open source I see open zone control so it's a UDP work path that allows you to communicate between me between many applications I don't know if some of you knows about it but it's quite common in creative coding and in live performance this format XML is there not because I can parse XML it's quite straightforward to parse in cement but because I provide with the package a way to describe scenes and project in XML Oh doesn't give you the any kind of external seam description format so I would show you after that how it's done and several assets and but the important
thing about polymorph is that i try to make it simple so here what I'll show you is the way to I want to create a cube and to add physics to it and this is the kind of code you have to write you know in order to get it ranking so you got nodes you get entities you get to link them together you have to load a ABB so it's bounding box you have to set the the material on the cube etcetera etcetera and after that here at the bottom it's everything to prepare the relation with bullet and get back the information from the physical engine to your object etc so this is what is behind and here is what it gives when you use in polymorph engine so you just create a P node so everything is perfect by P so you create a P node you say it's a cube and you can add the scene manager and its name and then you can declare it has the physics of the box so it's I think it's quite straightforward to use and the line below the XML is the same thing but in XML format then you can load it into into your application and directly have the end object pre-configured for you you have questions married so let's inside the package so first of all the simplified API I have an empty project I think it's quite important to have an empty project you can just copy paste and start coding into it and to discover and test things simple examples also showing you different feature of augur of PD and out to make them communicate outer radius sets so I'll go games with wall system of shader management and compositor management this is also available in the examples blender files documentation etc etc about the OS I'm working on Linux so for the moment it's only what you can install quite easily we are one script the wall engine on Linux windows a friend of mine is working on it
oh yeah that's my battery 406 it will come a bit later auger is where it's working on although it's working on a on a knife six version once they will be done I will integrate it but not before about the license it's the the code is released in the bsd and bsd license and all the assets are in Creative Commons so you can go and pick it pick what you want inside of it sorry what I had after that I just have to be built [Music] yeah well something important is also okay something important or so is that the the engine will will evolve with the project we do with it so it's not like we're gonna wait to have a full engine to start building application it will be a mix between development of the engine and project developments so depending on the project we're taking several feature will appear the first feature the link with bullets has been made for project that I will show you so we are starting yeah
okay so I'm gonna go back here and directly show you the demo so this is the first project we are working on with with the engine it's it's called tuning score and
the idea here is to work on the with a American choreographer with called listen Nelson and there is a publication about hard work and this game will demonstrate we'll give a 3d version of the of its of its theory so it's a two-player games you see the position of the other played online so you play with somebody you don't know about you see what the other is doing and knowing you can interact at the same time in the in the same physical environment and we make the object moves proposed transformation and the objects and so on so you can two players can pick the same objects and play with it real time so for those who have made a bit of physical engine it's quite tricky to do because the two engine will dissing Crenn eyes so it will have to be synchronized all the time we are the other web so this is the
first project after that yeah after that I wanted to show you the relation between pure data and and volume up so I prepared two
to show you the integration so what you see here it's deposit of the cube rotating the exposition of the cube make the pan change and the distance made the volume change and this is send
via OSC to pure data to allow real-time editing so what you see here is the data retrieved in pure data position of the cube retrieving pure data but you can
also process information here and send
it back to the engine I'm doing here
just make a novella and envelope detection on the sound scale the the sphere and and the second cube and copy the position of the cube and the rotation of the cube of the big cube on the small one and I can modify this
I don't know this is the yep that's the
other two pattern translation yeah no it's going below what I'm changing here
the ball is moving in the sinners with
with the same what i'm doing here is i'm
i'm putting more when i when you have to screen it's a bit more visual it's a bit more clear what you're doing that you can also change the mapping of the data between what's Olga is sending you and what we're putting back in the engine so this is the addition mode that allows you to really change the behavior of the sound and the behavior of the object
variable data by using custom object made for this you can also just run the engine sorry it's
not this one that's this one you can run the engine with the patch loaded inside
the engine without changing anything to the patch so you can really use pure data to edit and then you just have to integrate it and launch it in release
mode [Music] I have several little yeah just show this one I'm going fast this one is show
you one that you can edit you can edit skeletons you can visualize the the structure of the nature of the skeleton and play with it real time this is quite simple I have another I have
another D move about shaders mainly you
will see that yeah I can move the objects change the background effects and then I control the evolution of the shader I can enable another one exit track cetera so it's 3d game engine many
other things but as the time go by do you have any questions look at Lua is a nice scripting language [Music] maybe well maybe later not for now because there was a lot to do in C++ but yeah definitely it would be it would be cool but I didn't do it yet so if if I do other it's there is abiding for Java and Python for over but it has to be integrated the classes I did have to be in trigger integrated with that or so so it's not ready yet other questions yeah [Music] completion time the thing I did so the first question was about how can be dumb enough to think that building a my own engine will be faster than mastering unity or unreal and the second one is about competition time so the for the first question I don't I don't think I can I will do better than unity unreal not for now maybe


  329 ms - page object


AV-Portal 3.21.3 (19e43a18c8aa08bcbdf3e35b975c18acb737c630)