Welcome to the Interview with Demosceners! This time, we welcome Flopine, a shader coder who actively shares her crafts via various methods and a winner of Revision 2020’s Shader Showdown!
For those of you who don’t know what the Shader Showdown is, this is a knockout tournament of shader programming. Contestants go up on stage where there are DJs and MCs, and perform their live shader coding within the given time in front of big audience. Ever since it was first held at WeCan 2013 (a demoparty held in Poland), more and more of demoparties are adding this compo to their schedule. And by the way, Revision is the largest demoparty held on this planet.
Then what is this “Shader” we are talking about? I guess I’ll leave this explanation to Flopine! In this interview, she explains how it actually feels like to program on the loud stage, how she discovered demoscene and shader coding, and why “live” is important to her… and more! Get some inspiration and winning tips! Enjoy!
Note: If you don’t know what demoscene is, you may want to start from here!
First of all, could you please introduce yourself?
|photo by Gloria Marillier|
I’m Flopine, a shader artist and coder from the Cookie Collective crew. I’m also a PhD student in digital art, writing a thesis about making art with code and the community of the demoscene.
And I know you are also a winner of Revision 2020’s Shader Showdown. Congratulations on finishing in first place! How were the battles? Was it a hard game?
Revision’s Shader Showdowns are always a hard game, people involved are very good at live coding, so the battles are interesting and the pairing is made with care by havoc (the organizer of almost all the showdowns happening at demoparties).
Are you happy with what you generated on the screen?
As often, I’m happy with what I produced during the quarter-finals and semi-finales, but my performance during the final doesn’t make me the proudest. It’s always like that for me, and I was very surprised by the result! It was really close between me and wwrighter, in terms of voting points.
Ok, before going any further, I think I need to ask this basic question. What is this “Shader” you are talking about?
A shader is a program that will be executed on your GPU and which describes how to render an image on screen. You have different types of shader that correspond to steps in the rendering process. Usually during Shader Showdowns we write Fragment Shaders (or Pixel Shaders) which correspond to the last process of the stack, happening after the rasterization of 3d points. You basically have pixel’s position as an input and you have to give a color for each pixel as an output.
And this program has enough appeal to have independent compo? Shader showdown/live coding is a fairly new category I believe…
I’ve never thought about reasons for live coding to be an independent compo… that’s a good question! It is like making your 4k demo on stage with a live DJ set, which sounds like an awesome idea! (and it is) In my opinion making an impressive effect with 5 lines of code in a shader is doable, it has a lot of “show potential” and I guess it’s what demosceners spotted when they organised the first Showdown. Also, it is a very demanding practice. It requires memory, technical abilities, being able to perform under pressure and mostly creativity on the fly! So the fact that the community recognised those skills by putting up a compo for live coding is appreciable.
Revision 2020 Shader Showdown
Oh yes, I have some questions about that coding environment! Revision 2020 took place as an online event due to the global pandemic, but in previous years I’ve seen you coding on the stage with your opponents, DJs, commentators and big audience. I always thought it’s an extreme situation to program something but what does it feel like actually? Do you get nervous?
Those are definitely extreme situations to program! But at revision the stage is really big so you’re a bit apart from the audience, which makes it less stressful. You can hide behind your screen if you feel like doing so.
Can you focus in that loud environment? Do you sometimes want to tell DJs or commentators or audience to shut up when things get frustrated? If I was in that position, I’d probably do..
Personally I love being on stage, vibing to the music and with the public. I like to hear what the commentators have to say and the audience cheering, it’s a very exciting and happy mood. Of course I always have some apprehension before going up on stage but when the match starts, when I climb the stairs to the stage I feel like the hardest part is done, now I just have to enjoy the feeling of being myself on stage and people liking what they see, rather it’s my art or my personality. I’m totally in it. But during the online events of 2020, I felt more stressed than usual because I just sat down at my desk and started coding… which felt less exciting and closer to an everyday experience, while still being in competition with someone else.
INKTtober – Mirror (from Shadertoy)
So you can gain energy from all these live elements, that’s wonderful! Do you plan what to create before going on the stage?
I’m always planning ideas before every big match I have to battle. Then I know how to start, what kind of functions I’ll need. But it’s also very important to me to plan things that can be modified in a lot of ways, like a basic environment with which can be improvised upon during the battle, to create an element of surprise both for me and the audience.
I think you just gave great advice to aspiring shader live coders out there!
Your name has been on the Revision’s prize list since 2018, but when and how did you find out about demoscene?
I found out about the demoscene when my boyfriend at that time brought me to Revision 2016. I didn’t know about that culture at all before that!
And.. what did you think of it?
I was instantly hooked and wanted to fit in, I shipped my first demo ever there. It was a PC demo made on site with the X-Men group, we finished last but I didn’t care, we produced something silly in less than 2 days, I was proud and had fun!
Wow, you made a quick move! And what made you run in its shader showdown?
I saw the shader showdown as soon as I entered the main hall of Revision 2016, I was amazed and said to my partner that, one day, it will be me on stage. And I did, two years later! After that demoparty I spent a weekend at a friend’s place for him to teach me all the basics of raymarching (a technique widely used during shader showdowns to create 3D within the fragment shader, which is supposed to be just in 2D). Then I continued to experiment with this medium by myself because I was passionate about the practice.
|Photos from Flopine’s Twitter|
Impressive story…! You mentioned that you’re majoring in digital arts in school. Have you been always interested in computers and computer graphics? Share us your story as a computer graphics enthusiast please..
I was raised among a mainly male family, and was very close to my two older brothers. One of them is passionate about computers and programming. When he was younger, he usually stayed up really late at night to code C or Basic, disassemble our PC tower to add RAM or other new components. The other one loves art, he paints beautiful watercolours, acts for theaters and has a lot of knowledge when it comes to the history of art and the several artistic movements. Both of them had a passion that was so communicative, it hooked me!
And I remember one time, I think I was fourteen or fifteen, me and my « computer addict » brother were talking about what we like to do in general and I fondly said that I love to draw and I like computers. He replied instantly « Well, just become a graphic designer! » and since then I’m following that path.
I think I did it pretty well! I’m really proud to be able to call myself a digital artist today and I often think about those times when I just innocently talked with them about life, about the future and about what I wanted to become.
And now you stand on the exact intersection of computers and arts…! Amazing assists, Flopine’s brothers! 🙂 Addition to shader showdown, you livestream your shader coding session on Twitch regularly. Why did you start this?
I started streaming shadercoding in January 2019. At first it was a way for me to keep motivation in producing at least one shader per week because 2019 was a year when I had to focus on my thesis and artistic practice was a huge part of it. Also I was inspired by Luna (yx in the demoscene) who was the first person showing her shadercoding skills on Twitch! But then, with time, the fun part of streaming became gathering with the community and talking about coding, style of coding, with them. I learned a lot from people who came to my stream! And I hope they also learn a bit with them.
Screenshot from Flopine’s Twitch session:
HBHS (Have a Beer, Have a Shader) #42 – Plaisir Coupable
Since this is a live coding session, you show your whole coding process. Is it ok for you? Some coders do not want to reveal them.. I heard..
I’m trying to show all the processes behind a shader during my stream and I can’t imagine my practice without that. Sure it can be hard to demonstrate your techniques, the way you think about the code and the image, you expose yourself to criticism that can be harsh, especially for someone like me who does not fully trust herself! But something is more important than all of that and it’s sharing knowledge and passion. I wouldn’t know what I know today, I wouldn’t be here if there weren’t people like Inigo Quilez, the Cookie Collective crew and many others who share their knowledge and make it accessible to others. Open source in a community like realtime digital art is one of the best things to do if you want to see it grow and attract as many people as you can!
Shader showdown is live compo, and this is also a live session. “Live” is a keyword for you?
“Live” was definitely a keyword to me at the beginning of my thesis, as I wanted to talk about performance in digital art with code. But it became less and less important with time because I wanted to improve my aesthetic, which can be done only when you take the time to explore new techniques and play with them on your own. At least that is what works with me! Nonetheless I still enjoy streaming thanks to the community and it’s also less preparation than an uploaded video on YouTube for example, for which you need to do some editing, watching yourself talking on loop… Being good for livecoding is a day by day job rather than a huge stack of work needed in a short amount of time. You just have to make the leap of faith and commit to it 🙂
Could you show us your shader atelier? What program do you use?
|I often drink café au lait with soy milk. For the cards, I learned a bit about card tricks a few years ago. I don’t actually know how to do magic with it, but manipulating the cards relaxes me!|
I’m using several programs to code shaders :
– Shadertoy (online website)
– Bonzomatic (offline open source executable you can find on github, mainly developed by Gargaj)
– Kodelife mostly when I need some controllers for a live event
– ShaderEditor when I’m on the train on my tablet (an Android application)
I find this amount of possibilities quite interesting and exciting 🙂
Do you do anything particular while coding, like coding in the darkness, drinking beers…?
Usually when I code, I listen to a lot of music! It inspires me and gives me motivation. Drinking beers is not the usual thing, it is for when I’m showing off on my stream or on stage haha!
Haha, so it helps to lift up your mood 🙂 Then what about “my rules”. Regardless of what project you’re working on, do you set your own rule or goal? Is there anything you really care about when you code?
I think I set my own rules but unconsciously. There is a theory about rules in art and code from the artist Saskia Freeke that I love. She talks about how coding your image is setting your own rules to then play with them or even break them. For me it’s very close to what I address as constraints you give to yourself. For example this past few weeks I committed myself to code golfing, which is writing a shader within the least amount of characters. My own goal with that is to make the shader’s code fit in a tweet!
But from a wider perspective, I think what’s important to me as a coder is to have my own syntax, my own style of writing code, like an author has his own way of rigging his native language for example.
Oh I’ve seen some tweets with code before, that was some sort of code golfing.. Interesting… OK, then where do you get your inspiration for your work?
I’m getting it from many sources actually. It can come from a natural pattern I saw on a plant in the street, on some tiles from the ceiling of a restaurant etc. Also from social media like Twitter and Instagram, I love following artists from different mediums, with different aesthetics and not only digital artists. Pieces from painters, photographers, sculptors can be really inspiring.
Most of us are still needed to spend longer hours at home due to the pandemic, but was it hard for you to get inspiration or maintain motivation during the hard lockdown?
It was hard at the beginning but with time I found some balance, both in my personal life and for my productivity and creativity. But lockdown definitely drove me apart from the live experience, be it for livecoding battle or VJing. Don’t get me wrong, I appreciate the efforts to switch those events to online setups, I think it is a chance for many people to get involved in the demoscene without the need of being in Europe for example. And it keeps the scene alive! But personally it frustrates me and the more I attend online demoparties, the more I get frustrated… I have more pleasure coding on my own, taking time to experiment and explore new aesthetic, new techniques. Allowing myself to do mistakes from time to time is important. I tend to become a bit of a control freak when I’m “on stage”.
Well, I can’t wait to pull off a mask and see these live coding stage in real life..! Before I forget, let me shoot this classic and important question. Your favorite demo, memorable demo, demo that changed your life… it can be shaders too, of course. Tell us your demo/shader which is special to you.
My favourite demo is “1995” by Kewlers and mfx (video), I can’t get the music out of my head and I like the effects and scenes in that demo.
A memorable one is “What Are You Syncing About?” from Ninjadev (video)! This demo is a true masterclass regarding synchronisation of visuals with music. And I enjoy the aesthetic a lot.
And definitely the “shader” that changed my life is the first Shader Showdown I witnessed at Revision 2016! That is the main event in my personal development haha!
I believe you are relatively young generation of demosceners because you didn’t grow up with Amiga or C64. Nowadays there are so many other ways and options to show your work and communicate, but why did you choose demoscene?
I chose demoscene because I felt really close to demosceners quite quickly. Their passion towards machines radiates on me and I recognized myself in that. Also, I thought I would learn a lot from the community, from those people who are the most passionate artists and technicians I ever met.
I was born in 80s, and in early 90s in the countryside of Japan, I couldn’t join a computer club at my school because I was a girl. Not fair, but it was understandable at the time and place. Computers were considered to be a boy thing. So tell me Flopine, the situation got better..?
I think the situation is way better today than it was in the 80’s. Though there is still room for improvements!
I’ve met only one or two men who weren’t nice and wanted the demoscene to stay a “boys club”, but I’ve heard testimonies from others women who encountered many more of those, unfortunately…
Were there any mean boys who try to drag you down from the stage or chuck you out from this global computer club?
What I’ll share here is based on my personal experience, so not the general case, but overall everyone always showed me support and kindness, even when I kicked boys arses :p Especially the French demosceners with which we gathered to form the Cookie Collective. I wouldn’t be the “Flopine” a lot of demosceners know of without them!
[TWITCH] Sous l’ocean (from Shadertoy)
That’s really nice and honestly relieved to hear…! I think what you’re doing is very inspirational, and I hope you keep showing us your kickass works and setting an example!
To you, What is the appeal of this culture?
I find two distinct appeals within the demoscene:
– working at a lower level of code, to understand it. It gives me more power and more control over my art but also in my day job.
– coding on old hardware, which is all about nostalgia. When I wrote my first assembly lines for GameBoy, it felt like I was reconnecting with an object from my childhood, but with my adult eyes. Demoscene changed my perspective of my own skills and capacities to transform every machine into a sandbox!
But in the end I wouldn’t say I choose demoscene to express myself, my medium is shadercoding. Demoscene is the community where the practice is mostly known and it is where I found out about it. I will always be thankful to my fellow demosceners for that 🙂
– Is there anything you want to do or see in the future? Any dreams or goals you want to achieve in the scene?
In the future I would love to see more persons of colour in the community and definitely more women going on stage, in live coding battles for example! We need to be more inclusive and make the environment feel safe if we want to grow.
Personally I don’t think I have a goal regarding the scene… Because I achieved it in 2020, I won the Revision’s Shader Showdown! So now I’m more focused on my thesis. My goal for 2021 is to write it and finally get my PhD. Though after my thesis I would love to code more demos, maybe in 2022 ! Let’s see 🙂
Cool! And finally, your message for demosceners and demo fans out there please.
For demosceners: Keep living your passion and keep the scene alive! Talk about it to your relatives, bring more people into it. We will keep on doing better, we will work towards more inclusivity, safe spaces and growing, together as a community to keep the demoscene culture alive and to make it evolve.
For demo fans: if you didn’t try to code a demo yet but would want to, now is the best time! You can find a lot of useful tutorials, open source tools to crunch those extra bytes into your 4k intro, an impressive amount of shader code on Shadertoy or even GLSL Sandbox. Some demoparties also have animated or wild compo where you can ship precalculated animation and a lot of other things that do not require coding skills. Bring your sensibility to this culture, the more we will have, the more we will grow and have diversity 🙂
And stay hydrated folks!
Thank you very much for answering my questions, Flopine!
Flopine’s work can be checked on her Shadertoy page and Twitch channel. She usually announces her upcoming livecoding schedule on her Twitter, so be sure to follow her account, too!
Revision’s Shader Showdowns are all archived in their YouTube channel. If you want to see how the actual stage is like, check the video of 2019 and earlier. And by the way, this year’s Revision will be held on April 2-5 (Very soon!). It will be an online event, so go register and join them from your room or tub!
Also, in this compact session in French, Flopine explains about demoscene and shader in a very concise manner.
Thank you very much for reading this till end! 🙂
– In case you’re wondering what “demo” or “demoscene” is, better check out the well-made documentary called Moleman2. (and the director, M. Szilárd Matusik’s interview can be read in here.)
#1: q from nonoil/gorakubu is here.
#2: Gargaj from Conspiracy, Ümlaüt Design is here.
#3: Preacher from Brainstorm, Traction is here.
#4: Zavie from Ctrl-Alt-Test is here.
#5: Smash from Fairlight is here.
#6: Gloom from Excess, Dead Roman is here.
#7: kioku from System K is here.
#8: kb from Farbrausch is here.
#9: iq from RGBA is here.
#10: Navis from Andromeda Software Development is here.
#11: Pixtur from Still, LKCC is here.
#12: Cryptic from Approximate is here.
#13: 0x4015 aka Yosshin is here.
#14: Flopine from Cookie Collective is here.
#15: noby from Epoch, Prismbeings is here.
– Why I’m interested in demoscene is explained in this article. And for some of my other posts related to “demo and “demoscene” culture is here.