farbrausch demo tools open source
category: code [glöplog]
Thanks a lot for the source-drop. I'm sure some FOSS-crazos will port it all to Linux now ;)
mudlord: Yeah, the synth and V2M player are absolutely not fit for multithreading within the same instance. Just wrap a critical section around all calls. Trust me. That way it's also guaranteed that the synth code itself is 100% platform independent. :)
I managed to make v2mconv threadsafe in a class...
Unfortunately this involved butchering it by making the sd* functions private functions.
Now to look more at v2mplayer.cpp (which is what the FB2K input decoder uses).
Fun times...I'll look into setting up my GitHub account again and posting what I done so far.
Unfortunately this involved butchering it by making the sd* functions private functions.
Now to look more at v2mplayer.cpp (which is what the FB2K input decoder uses).
Fun times...I'll look into setting up my GitHub account again and posting what I done so far.
well well it's again the time of the year to share code and learn something, so I present to you:
SPIN by A.S.D.
www.asd.gr/~navis/part_start_lines.cpp *
(*It might actually be Lifeforce or Planet risk)
SPIN by A.S.D.
www.asd.gr/~navis/part_start_lines.cpp *
(*It might actually be Lifeforce or Planet risk)
In reality _only_ thing people can expect from the release of this source is (even) better demos from quite.
navis: that's very professional looking! :)
Navis: out of curiousity, do you happen to have a drinking problem? :)
Quote:
www.asd.gr/~navis/part_start_lines.cpp
Now this is what I'd call classic demo source code: Ugly, unmaintainable, badly structured and a pure miracle that it's going through a compiler. ;)
I sincerely hope that your "professional" code does not look like this.
Quote:
TGL.Load ("Shaders//1//Materials//v_materialkinect.cpp","Shaders//1//Materials//f_materialkinect.cpp",FPParticles);
It definitely is SPIN.
I wanted to ask you Navis, WHAT IS UP WITH THE LACK OF INDENTING? :)
I am clearly doing things way too structured...
I never liked indenting. Never, ever. Maybe it goes back to the days of using small 14 inch crts.
If I'm ever forced to indent then I do it through "edit->indent" automatically after I finish. I code by copy/paste segments (including for loops) from other places.
But, cm'on the code is great. It works! the demo runs fine (or at least it did back then). Hey I don't even have static functions and goto's. It's perfectly linear as a demo should be. No mutexes, no crazy dlls or "I need sdl version xxx to work".
I don't need to maintain it or share it with anyone else. As a matter of fact I have long lost the code for most of our demos and I couldn't care less. It's the tuning of the numbers that is always the issue not the code itself.
Gargaj: I do occasionally drink, but rather small quantities, with food.
If I'm ever forced to indent then I do it through "edit->indent" automatically after I finish. I code by copy/paste segments (including for loops) from other places.
But, cm'on the code is great. It works! the demo runs fine (or at least it did back then). Hey I don't even have static functions and goto's. It's perfectly linear as a demo should be. No mutexes, no crazy dlls or "I need sdl version xxx to work".
I don't need to maintain it or share it with anyone else. As a matter of fact I have long lost the code for most of our demos and I couldn't care less. It's the tuning of the numbers that is always the issue not the code itself.
Gargaj: I do occasionally drink, but rather small quantities, with food.
(btw when I said "learn something" that was clearly a joke. While you can learn *a lot* from the Farbrausch release, you really can't learn anything from my code vomiting. But I thought it was funny to remind you once in a while that "if you think your code looks bad, wait till you see mine!").
navis: sounds reasonable (and sexy).
I will then now enlighten you with an artifact from the future.
http://pastebin.com/HF9ghtfq
I will then now enlighten you with an artifact from the future.
http://pastebin.com/HF9ghtfq
I clearly approve of Navis' way to write demos :D
hardcoding FTW!
hardcoding FTW!
(respect to FR for releasing their sources anyway!)
^^
Very kind!
navis: i know its good to protect your fx etc, but it was still a bit mean of you to run the file through a code obfuscator before uploading it
kb_: https://github.com/mudlord/foobar2000/tree/master/foo_input_v2m
in case you didn't notice, it also contains your favorite SSAO routine! (which I'm going to use for the next 30 years regardless of any advancements in technology! \o/)
plek: Also release your metaball code, at least then you can't complain about them in other releases anymore :)
Navis: cool stuff. Actually it is possible to learn a lot from what you posted, ie. that overengineering is sometimes bad.
Also, I have a question if you care to answer: how is your supporting code laid out? For example you load the bird mesh by SuperBird.Import("neomeshes//superbird.obj") and later just render it with Render(), but the bird is animated and .obj doesn't even contain animation data (in case it's the standard .obj format), so some magic must be elsewhere as well. The same goes for the particles etc, or is it all in the shaders?
Also, I have a question if you care to answer: how is your supporting code laid out? For example you load the bird mesh by SuperBird.Import("neomeshes//superbird.obj") and later just render it with Render(), but the bird is animated and .obj doesn't even contain animation data (in case it's the standard .obj format), so some magic must be elsewhere as well. The same goes for the particles etc, or is it all in the shaders?
I love the "//".