pouët.net

Go to bottom

I have a hard question!!!!

category: general [glöplog]
Hi,everyone.I had watched a program.
http://www.pouet.net/prod.php?which=30244
This is the link.The program is 3D demo,very long about more than 8 minutes,but it is only 170k!I am a basic learner,so I couldn't understood how to do it.who can answer me how to do it?
If you can't give me a perfact answer or you are not exactly sure,then you can also give some advices.Thanks everyone!
added on the 2007-09-21 22:30:22 by adam adam
That could not be 170kb. I think they are joking.
added on the 2007-09-21 22:31:53 by texel texel
I can exactly sure!!!!If you have some doubt,you can watch it!!!
added on the 2007-09-21 22:35:58 by adam adam
So you are another contestant in the fake poster of the week competition. Try harder. ;) (!!!!)
added on the 2007-09-21 22:41:25 by tomaes tomaes
sorry adam, I was joking.

Ok, I explain a bit. They use various methods for compression. For example, texture generation. So, textures are not stored in the demo, but are generated at the start/loading of it. These are mathematically generated in some steps... something like "1) apply perlin noise, 2) blur a bit, 3 change saturation a bit ...". This way textures occupy very little.
By other hand, music is generated in a similar way. It has stored notes played and the way the sounds should be generated. And finally they use general algorithms for executable compression.

Of course this is very complex and require a lot of years of experience to learn and hard work... people who did that demo are maybe between of the few and best in the world doing those things...
added on the 2007-09-21 22:45:54 by texel texel
It is simple, really. Pi, the number in your avatar; as you know it is an infinite sequence of "random" numbers. Or is it ?

Farbrausch people have found the offset in Pi after which the demo executable+resources start (which are in the region of tens of megabytes) and encoded that offset into the 170kb of the executable.
It took quite a while to find (by trial and error) - apparently 2 years.
In the process they also found this:
http://www.pouet.net/prod.php?which=4766

Well worth it if you ask me...
added on the 2007-09-21 22:46:24 by Navis Navis
adam: The basic idea is to generate content in the executable instead of creating it in a 3rd party application and then storing it. You can find some articles on texture and mesh generation on the web, but be warned - doing something like this is an extremely long and tedious job. You need to be extremely dedicated to ever finish a project of such a magnitude.
added on the 2007-09-21 22:48:14 by kusma kusma
the size of this demo is the result of massive procedural content creation ... this means there're no drawn textures and stuff within the demo - just formulas for calculating them. the fact that there're no bitmap graphics within the exe let the packer (here it's kkrunchy I think) do a great job ...

if you're really interested in, here's some code for this FXGen ... pretty much the same (well, not that quality - but the workflow) like the one, fr uses

hope this is no FAKE post ... in case it is, just forget my posting here ^^

Have fun ...
added on the 2007-09-21 22:50:15 by slippy slippy
[moderator]
thanks all, thread closed now, feel free to pouetize though... ;)
[/moderator]
added on the 2007-09-21 23:55:06 by raer raer
Moderation destroys the free spirit and inspiration of poët!
added on the 2007-09-22 01:15:54 by El Topo El Topo
don't forget www.256b.com !!
added on the 2007-09-22 01:23:51 by bdk bdk
i have a hard-on
added on the 2007-09-22 16:17:48 by gr gr
That program is a wrapper for Windows Media Player.
It connects to farbraush.biz and streams a video from there.
added on the 2007-09-22 16:30:28 by scoutski scoutski
This is by far the cheapest attempt at a fakepost ever on pouet :)
added on the 2007-09-22 16:32:01 by okkie okkie
that was just a fr-fake-account attempt to get debris some popularity before lifeforce kicks it off the top spot ;)
added on the 2007-09-22 16:38:52 by raer raer
nice, a wrapper for Windows Media Player :) lol
added on the 2007-09-22 17:15:00 by dirtie dirtie
Trolling troll is a troll.
ADAM: Newfag, don't forget to thumb the demos you watch, not only comment them.
added on the 2007-09-22 23:46:18 by nitro2k01 nitro2k01
The process to do such programs is rather simple.
First, you define the size you wish, say 170kb.
Then (that's the hardest part) you must code a random generator which will fill up the 170 kb with random bytes.
Then you run the obtained file and sometimes, it gives something nice to look at: a demo.
As you can see, it's just a matter of chance.
added on the 2007-09-23 12:07:09 by doh doh
Is it fine harrassing newcomers by suggesting they are trolls without even checking first or them having a clear trolling history?
added on the 2007-09-23 12:24:07 by _-_-__ _-_-__
knos: A truckload of exclamation points per line and postings like this should be indication enough. :)
added on the 2007-09-23 14:15:20 by tomaes tomaes
Code:int main() { int demosize; FILE *f; printf("What demo size do you want? (in bytes)"); scanf("%d",&demosize); srand(time(NULL)); f= fopen("newkickassdemo.exe","wb"); for(i=0;i<demosize;i++) { fputc(rand(),f); } fclose(f); return 0; }

if prog cannot run try again , sooner or later it will give something
Now you can compete with that fabrausch demogroup roxor
added on the 2007-09-23 16:33:50 by Tigrou Tigrou
actually with your troll talks about random generator im starting to have some fucked up ideas for algorhythms to do random search optimizations iterations to do stuff like that.. i mean, most bytes do mean something quantifiable, as in, if you change something slightly you can mostly measure if it's getting better to what you wanted or not. applying AI optimum solution algorythms you could actually converge to a good (and working) solution.. just need to pre-define shitloads of rules. and start with uncompressed formats.. defining a basic kernel/engine, sound generation rules and text gen rules it could actually work (without doing the thing first).. would be quite a challenge but it's an interesting way to generate some experimental abominations.. hmm.. ...
added on the 2007-09-23 16:43:07 by psenough psenough
ps, your post reminds me of this: http://www.damninteresting.com/?p=870

some scientists developed a system where FPGA code would mutate into something usable... the result was a load of circuits that weren't "meant" to work, and did not work outside the electromagnetic conditions in the lab. my jaw dropped!
added on the 2007-09-23 19:00:37 by linde linde
that was a great read indeed.
added on the 2007-09-23 19:18:48 by raer raer
llinde: yeh, that stuff is great! would love to be involved in a similar project. it's the kind of stuff i'll be looking for to get involved with when im done with my masters degree.
added on the 2007-09-23 20:01:01 by psenough psenough

login

Go to top