pouët.net

To Unity or Not to Unity

category: general [glöplog]
First of all, I want to start by publically saying that I do regret some of my previous years reactions. For a few years, I was on heavy drugs and drinking a lot. I became an aggressive person, and I lost precious friends because of that. I left a few demo groups before I even made prods with them. Too bad, and my entire fault, that is right.

Here on Poüet I have posted aggressive arguments in a few threads, and I honestly feel sorry for that. I can only hope that some of you will forgive my misbehavior, someday. I love you all, dudes, I was just malfunctioning for a time.

Now that I stopped alcohol and drugs, I see that some of you still believe that I'm just an asshole who knows nothing and just talk garbage.

I am not convinced of that, though, and here are some sober arguments.

Regardless of the amount of published demos, this is obvious that we all are living in an unprecedent age of technological achievements. All the progress we are witnessing was never seen before. There are no previous generations to tell us what is the best for the younger coders that are now just starting.

A decade or two ago, there were no ready engines yet. Everyone involved with real-time had to study hard to know how to rasterize triangles and build their own engines. These days, though, this is more and more common to see people just using Unity and/or Unreal, ignoring precious knowledge that is now becoming increasingly rare and forgotten. Not to mention the bloat which is software in general these days, that is yet another consequence of progress.

I am not against Unity, Unreal or any other ready engines, I must say. They are useful, yes. But they are also shortcuts that might be prejudicial in the long term, for sub-cultures like the demoscene. I am not a judge nor a demomaking God, but in my understanding, the *art* of the demoscene is, in great part, in the code itself.

Code *is* a new art form. Of course I do see beauty in great 3D models and great music. I am not saying that they are not one of the arts. Of course they are. But I am afraid that maybe in the near future, one of the 3 involved arts in demomaking, the *coding*, might be lost, when most people stop learning low-level, innovative and optimized code, etc.

When that happens, imho the demoscene spirit will also be lost (until another new generation brings the spirit back).

And that is not only because code is art, but also because when you learn all the details yourself, you become a better coder, and the more good coders in the world, the better. In the long term, this premature "progress" might cause a shortage of good coders. Take note of that.

Now, honestly, I did not find a way (yet) to spend enough time to actually produce valuable demos. My daily reality does not permit. But be sure of one thing, I do know a bit about this thing. I wrote pure 3D software rendering engines myself in the past. I wrote procedural audio and mesh generators, and a lot of other related things. Nothing really revolutionary nor of such quality as some of the prods produced by geniuses we can find over here, but I *do* know quite a bit as well, be sure of that. And I still have hopes to one day be able to reserve enough time to compete equally in the same place as these geniuses that we love so much. With my own homemade 3D engine, of course. Let's see.

Now, if you are young and willing to be a good coder in the future, you decide if you want to hear me or not. I say DON'T, don't use Unity or Unreal as shortcuts. Maybe for work, but for your personal enlightenment, go for the longer path, and learn how to code your 3D engine yourself, in the future you will certainly not regret doing that. I am not rich nor have time to build demos (yet), but I definitely don't regret learning it all myself. Today, in all places I work, I'm considered a very skilled coder, mostly thanks to that decision.

I could write quite a lot more, but I will stop now. Do you think this text is ridiculous, too emotional and/or biased? Maybe. Maybe not.


Thanks for reading. God bless.
added on the 2020-04-19 21:56:11 by imerso imerso
If you read the history of the scene from diskmags etc, you will find that this same argument has been made multiple times. First it was 16-bit computers (come on, it's too easy to make a huge techtech and a rotating cube), then it was the PC (too many megahertz, Amiga can't compete), then it was streaming music (you don't need to know how to use a tracker, oh no), then Windows (everyone knows that DOS is the true operating systems), then it was 3D acceleration (you don't need to know anything about real 3D stuff when you can just tell the HW to draw stuff) and so on. The argument was bullshit then and it is bullshit now. The scene, along with computing in general, will evolve, and if there's something that demoscene is good at, it's sticking with obsolete ways of doing things for nostalgia reasons. You should be safe.
added on the 2020-04-19 22:37:38 by Preacher Preacher
There's room for everything. Actively boycotting modern engines like Unity or Unreal is just a narrow-minded thing to do. They're here, they serve a purpose, and they can have their place in the PC demo compo unless stated otherwise. People will continue to judge, comment and place their subjective vote on prods made with them, and that's a good thing.

Also, the art of coding won't vanish for categories where those engines are unsuitable, think of 64k intros and lower.

There's all kinds of coders, you can't compare 256b to 64k to full demos and say which one is better or deserves more merit. That's why our art is split into categories in the first place.

That said, whatever your problem with modern engines is about, it's basically irrelevant. We should stay open and embrace all that is new and pushes our hardware to their constantly increasing limits, and keep exploring all available posibilities.

Disclaimer: that's just my opinion there, take it as such :)
added on the 2020-04-19 22:39:17 by xTr1m xTr1m
I would never call the existence of bloated software a consequence of progress, but rather a sign of decadence. :]

I don't know what others might think but, to me, the whole concept of making demos bigger than their HD videocaptures is preposterous!

The old demo art will be alive as long as we continue to code intros and also stuff for old platforms. You can't do a 8K intro in Unity, right? Where is Unreal Engine for C64?
added on the 2020-04-19 22:55:12 by ham ham
Imerso: use what YOU want as long as you have fun doing it.

The challenge of producing something is the one you set for yourself. Doing it from scratch or doing it with "commercial" engines will give you different challenges, but there will be challenges either way.
Just make sure you choose the path that will make you have fun.

I used to be a "NO TOOL!!!" zealot but I guess I have softened up a lot with time ;)
added on the 2020-04-19 23:12:59 by keops keops
Once there was Alambiq. And Flash. Then Werkkzeug and Processing. Today we have Shadertoy, Browser, Unity and so on.

Think of it as a platform:
If you know how to handle it you can create amazing stuff.
If not, your Unity/Werkkzeug/whatever prod will just look like another generic slightly more sophisticated version of "my first 3d object" in (more or less if you regard 3D apis as cheating) native code.

Oh, and the existence of Demopaja did not kill the art of coding either.
added on the 2020-04-19 23:16:43 by T$ T$
@imerso: Great to hear you are back on your feet after those tough times; Resurrection Stories are sweet. And yes, I also don't like the use of U3D/UE in demoscene productions. Nor the resource efficiency of said engines.

With most programmers there seems to be an inverse correlation (sometimes even causation) between the performance of the hardware they use vs. efficiency of the released code that they developed on the hardware. Because programmers are mostly lazy bitches, that's why. Also, fuck Python which seems to turn into a be-all end-all solution for every use case with them lazy kids because of their damn powerful intel and AMD rigs facilitate being lazy pig programmers.

And with this, I picked up the torch from imerso to write aggressive comments on pouet. ;b
added on the 2020-04-19 23:24:13 by Hoild Hoild
Maybe this is a revolutionary concept, but... what if different people are motivated by different things, and need different tools to reach their goals?

Clearly your personal path to happiness has prioritised "gaining a deep understanding of 3D engines" over "actually finishing a demo". And that's totally fine - I can relate to that mindset, which is why I like tinkering with low-level things and have no plans to pick up Unity, Unreal or Notch any time soon. But for the sort of person who's interested in getting visual ideas out of their head and onto the screen as effectively as possible, picking up those tools is absolutely the right thing to do, and trying to impose your personal ideals on them is crappy advice.

I do believe that getting good at the foundational lower-level stuff will make you do better work at the higher levels. But there's too much of it to become an expert in everything. Choose your battles.

Quote:
“I thought that using loops was cheating, so I programmed my own using samples. I then thought that using samples was cheating, so I recorded real drums. I then thought that programming them was cheating, so I learned to play the drums for real. I then thought that using purchased drums was cheating, so I learned to make my own. I then thought that using pre-made skins was cheating, so I killed a goat and skinned it. I then thought that was cheating too, so I grew my own goat from a baby goat. I also think that this is cheating, but I’m not sure where to go from here. I haven’t made any music lately, what with the goat farming and all.”
added on the 2020-04-19 23:31:24 by gasman gasman
Quote:
I see that some of you still believe that I'm just an asshole who knows nothing and just talk garbage.

(...)

When that happens, imho the demoscene spirit will also be lost (until another new generation brings the spirit back).


You post more about how the demoscene is / should be then you actually release demos. Getting your next demo finished speaks way louder then discussing _yet again_ the merits of using tools for demomaking. In fact it just shows that you haven't bothered reading what everyone else said about the topic the last time around this discussion surfaced.

tl;dr: Make demos whatever way you want. Respect others who do demos whatever way they want. Above all, stop telling others how they should make their demos, go make a demo about it if it bothers you so much.
added on the 2020-04-19 23:36:18 by psenough psenough
Quote:
the whole concept of making demos bigger than their HD videocaptures is preposterous!

How about modules that are bigger than the MP3s they render to?
added on the 2020-04-20 00:17:09 by absence absence
@absence: Too many 32bit stereo samples in those XRNS files? :D
added on the 2020-04-20 00:46:07 by ham ham
I must not fear.
Fear is the mind-killer.
Fear is the little death that brings total obliteration.
I will face my fear.
I will permit it to pass over me and through me.
And when it has gone past I will turn the inner eye to see its path.
Where the fear has gone there will be nothing.
Only I will remain.
added on the 2020-04-20 01:21:48 by RufUsul RufUsul
One foot in front of the other fellow drybro.
added on the 2020-04-20 03:07:23 by ringofyre ringofyre
by Keops : "use what YOU want as long as you have fun doing it"
nothing more to add.
added on the 2020-04-20 04:56:47 by Stv Stv
Quote:
How about modules that are bigger than the MP3s they render to?

If it's bigger than its FLAC or WAV equivalent, you are probably doing something wrong, because the whole song could just be a single sample... :D

For the original question, but this applies to anything (music, graphics, etc.): I keep saying that you should give credits to the tools you use, that's all that matters. If you use Unity, say so. Let the haters hate. Similarly, I would like to see more musicians stating which DAWs/plugins/etc. they use in music compos.
I am of the opinion "do what you want" or rather "I don't care", but it seem odd to me the use of those engines (and even other tools, I have seen this Notch also used for example,. but is everything I see (like the streams of particles and fluid motion) an effort of the programming or something already exist and you tweak parameters only?). It doesn't feel like dos vs windows, software rendering vs accelerated, etc. These were the hardware/OS/APIs changing,. but the programming effort was similar. This feels different. If we go from engines to upload prerendered videos as demos instead of wild would it be another step?
added on the 2020-04-20 11:19:49 by Optimus Optimus
Quote:

If it's bigger than its FLAC or WAV equivalent, you are probably doing something wrong, because the whole song could just be a single sample... :D

Certainly, but I assumed ham was talking about compressed HD video captures, otherwise demo sizes are nowhere near! :) I don't see why a demo should be smaller than a compressed video capture. Modules are bigger than their compressed renderings all the time.
added on the 2020-04-20 12:57:43 by absence absence
My objections to the gigantic file size of some recent demos are purely practical. They should not waste more HD espace than a video that provides the same audiovisual experience to the viewer.

But if those were, for instance, interactive demos or something like that... then I would not mind so much about their sizes.
added on the 2020-04-20 13:05:12 by ham ham
*space* (damn typos)
added on the 2020-04-20 13:06:13 by ham ham
Of course, I was talking about compressed video captures.
added on the 2020-04-20 13:07:32 by ham ham
What Stv said Keops said
added on the 2020-04-20 13:40:47 by farfar farfar
Quote:
What Stv said Keops said
added on the 2020-04-20 13:56:24 by ferris ferris
"... rasterize triangles and build their own engines. These days, though, this is more and more common to see people just using Unity and/or Unreal, ignoring precious knowledge that is now becoming increasingly rare and forgotten"

sure, copypasting a 3D engine from learnopengl.com surely is precious knowledge that's rare and forgotten. The coder art in the scene has always been in the creative use of technology, I don't see any of that 'lost' when you choose to be lazy and use a prefab engine for all the resource handling boring stuff and math/GUI-heavy boring animation stuff. you still have to write (or shadergraph) custom shaders to make your demo a demo.
BB Image
added on the 2020-04-20 15:08:07 by waffle waffle
Unity and unreal prods belong to the wild compo. They are not demos. Deal with it lamers.
added on the 2020-04-20 15:15:02 by Nuclear Nuclear

login