Open source demos -- do they exist?
category: general [glöplog]
Hey all,
I'm new to the demo scene, and not having much knowledge of it, I was wondering - are there any open source demos floating around? The scene seems pretty competitive, and I haven't found any so far, so I'm thinking they're rare, but I figured I should ask.
Thanks.
I'm new to the demo scene, and not having much knowledge of it, I was wondering - are there any open source demos floating around? The scene seems pretty competitive, and I haven't found any so far, so I'm thinking they're rare, but I figured I should ask.
Thanks.
some come with source
. almost any production by eL
. vip2 has source available (with no particular license that I think of)
. +1-1 source release is under gpl
There. Those source releases could permit either learning (debatable) or porting/recompilation. Opensource work is obviously not attractive for aesthetical products since design by commitee has never been known for elegant or strongly meaningful results.
. almost any production by eL
. vip2 has source available (with no particular license that I think of)
. +1-1 source release is under gpl
There. Those source releases could permit either learning (debatable) or porting/recompilation. Opensource work is obviously not attractive for aesthetical products since design by commitee has never been known for elegant or strongly meaningful results.
Off the top of my head:
+ 3pixels source packages
+ fr011
+ ms2000 invit
+ several excess demos
+ störfall ost (4k)
+ neandertaler (64k)
+ some mfx intro/demos
+ yellow rose of texas (4k)
...and check the scene.org source code repository.
+ 3pixels source packages
+ fr011
+ ms2000 invit
+ several excess demos
+ störfall ost (4k)
+ neandertaler (64k)
+ some mfx intro/demos
+ yellow rose of texas (4k)
...and check the scene.org source code repository.
These may not fit everyones definition of a demo per se, but these 4K intros are about as open source compliant as they come:
http://4k.frob.nl/2004/results.php
http://4k.frob.nl/2004/results.php
All demos with 256 bytes or less ;)
Tomaes: Actually, we only opensourced one demo; Amoeba.
But in any case, "open sourcing" only gives you the source code. First, writing the sourcecode is a very small part of the whole demo production process - you still need "content" (idea, direction, artwork, music, synch etc. etc.). Second, what would you do with a source code that probably has no documentation, no good structure, has no really important parts included (eg. toolchain, exporters)? That's right - you will do nothing with the source :)
Of course, this doesn't apply to 256b intros and to some extent to 4kb intros. I was talking "big" demos here :)
Of course, this doesn't apply to 256b intros and to some extent to 4kb intros. I was talking "big" demos here :)
nearaz: if you're smart enough you can learn how they did the effect and ways to optimize your own code.
If you're smart enough you don't have to look at the code to figure the effects out.
Only reason to get opensourced prods would be to port them i guess.
ps. No license means you cannot touch the code at all.
Only reason to get opensourced prods would be to port them i guess.
ps. No license means you cannot touch the code at all.
come visit #demoscene on freenode. IRC that is. yes.
stefan: anyone who is into coding cant possibly be smart. =)
Most new demos have almost no non-obvious effects, especially the ones with released source.
And since the open-source demos usually don't contain a vital part of the toolchain (such as synch editor), and are perhaps also not very optimized for performance, i think it is not very interesting to borrow this code. It's probably rather intended more to be ported to other OSes anyway.
Interesting pieces of code (demoscene and otherwise):
- the complete 3pixels/stravaganza studio. i haven't checked it out yet, but at least some organization of it might be interesting. Be aware that 3pixels demos take a while to load, they appear to spend time parsing text files with 3D data. Nothing that one couldn't fix. ;)
- (http://nebuladevice.cubik.org/) Nebula Device. a semi-complete game engine with ZLIB-like license and very high performance with DirectX. It also supports OpenGL, but i'm not sure how well optimized it is - should be no trouble to optimize, the "infrastructure" is already there. The source is huge but good, i'm currently trying to read it. It can avoid state changes and stream VBOs for multiple objects through a few huge buffers etc. Besides, it has a serialization unified with multi-language scripting interface. Wow!
- (http://www.calodox.org/demoniac/) - Open-source timeline editor.
- G3D - you might have stumbled over it from NVidia site or so. It's somewhat slow. Not sure how easy or hard it is to improve, but it apparently lacks the sophistications of Nebula.
- DevLib - looks somewhat interesting, though i haven't really looked at it yet.
And since the open-source demos usually don't contain a vital part of the toolchain (such as synch editor), and are perhaps also not very optimized for performance, i think it is not very interesting to borrow this code. It's probably rather intended more to be ported to other OSes anyway.
Interesting pieces of code (demoscene and otherwise):
- the complete 3pixels/stravaganza studio. i haven't checked it out yet, but at least some organization of it might be interesting. Be aware that 3pixels demos take a while to load, they appear to spend time parsing text files with 3D data. Nothing that one couldn't fix. ;)
- (http://nebuladevice.cubik.org/) Nebula Device. a semi-complete game engine with ZLIB-like license and very high performance with DirectX. It also supports OpenGL, but i'm not sure how well optimized it is - should be no trouble to optimize, the "infrastructure" is already there. The source is huge but good, i'm currently trying to read it. It can avoid state changes and stream VBOs for multiple objects through a few huge buffers etc. Besides, it has a serialization unified with multi-language scripting interface. Wow!
- (http://www.calodox.org/demoniac/) - Open-source timeline editor.
- G3D - you might have stumbled over it from NVidia site or so. It's somewhat slow. Not sure how easy or hard it is to improve, but it apparently lacks the sophistications of Nebula.
- DevLib - looks somewhat interesting, though i haven't really looked at it yet.
Argh. it took me so long to write the last post that much of that has been said in the meanwhile. :)
It's not that these sources are of any help though..
Quote:
First, writing the sourcecode is a very small part of the whole demo production process
I'd say it's the hardest part of getting somewhere with your production (too damn much trivial shit) and has a shitload of influence on what you're gonna get.
<[I love this show!]
My so-far experience is, plek is damn right. :/
I hate coding. In fact, the only good thing about coding, is that if you do it right, you only have to do it once for many prods.
I hate coding. In fact, the only good thing about coding, is that if you do it right, you only have to do it once for many prods.
actually, i think coding is the most interesting part next to design, but i shouldn't be the first one to say since i haven't released anything or did ever contribute anything to the scene.
in opposite to most others i do think that open source releases make sense for other to learn from the structure and design
BUT most opensource (demo)releases i looked yet at had a really messy code design.. well it might be because i only looked at 4k and 64k intro sources
in opposite to most others i do think that open source releases make sense for other to learn from the structure and design
BUT most opensource (demo)releases i looked yet at had a really messy code design.. well it might be because i only looked at 4k and 64k intro sources
IMO, reading other people's source is only good when you're beginner. Later on, you either read papers (for 'effects') or read UML/DesignPatterns/whatever (for 'code design'). It's good to look at the structure of some other things at times; but then you probably should be looking at Nebula2 or something. I doubt that many demos/demoengines have a good structure.
My intros are always "source-included", but they are to shitty probably...
Well some are.. But besides that, as you advance as a programmer you'll learn what really counts. And carefully structuring and extensive review of the maintainability of your demo's sourcecode will not only appear useless, but also counterproductive. There are exceptions, yes, but let's talk about the average thing. I'm not referring to the basic infrastructure here by the way.
Next to all this, peeking at sourcecode can give you a hint or two. Peer review and discussion with more experienced people is much better though.
Next to all this, peeking at sourcecode can give you a hint or two. Peer review and discussion with more experienced people is much better though.
if the code is readable, it's the engine.
it the code is a mess, those are the effects. :)
it the code is a mess, those are the effects. :)