Dark Bit Factory & Gravity

PROGRAMMING => Freebasic => Topic started by: ninogenio on December 29, 2013

Title: Old school mania
Post by: ninogenio on December 29, 2013
hey guys, ive had the whole day free today so ive coded like a mad man  ;D

i had loads of individual freebasic stuff coded earlier in the year, with lots of stuff still too try out so thought what the heck.... Mega demo time!!!

i actually thought it would be a nice way too round out the year putting all the stuff i have done through the year in one place, and make a new year tro out of it. soooo here it is guys there is no source atm as its a complete and utter mess it would not be useful too anyone.. over the next few days ill clean and comment everything and post the code up.

some of this stuff i have already posted in bite sizes and some of it not. i have also gotten urges too try some of this stuff from various posts on this board at different times.
ohh and everything is pure framebuffer pixel pushed no gpu's were harmed during this development  :)
Title: Re: Old school mania
Post by: Hotshot on December 30, 2013
Excellent and Well Done  :clap:
Title: Re: Old school mania
Post by: nikin on December 30, 2013
nice one :) pushes my framebuffer wery smoothly :)
Love the bumpmap part. But overall great stuff :)   
:cheers:
Title: Re: Old school mania
Post by: ninogenio on December 30, 2013
thanks guys!

i had forgotten how much i love too just reserve a large area of cpu ram and go wild :)

having the power and freedome too do anything really is a novelty that can easily be forgotten about with modern shaders everywhere. i suppose its a double edge though as i was doing stuff like the 3d text made with 3d light objects, i kept thinking gahh i wish i had gl for this :)
Title: Re: Old school mania
Post by: Pot Noodle on December 30, 2013
Very nice, I liked all of it  ;D
Title: Re: Old school mania
Post by: Raizor on December 30, 2013
That was ace ninogenio :) Loved every bit of it. Personal favourite parts where the multiple lightsource checkboard scene and the roto-zoomer. The Willy Wonka font fitted really well too IMHO, giving it a really cheery vibe (along with the music). Top stuff! K++

And a Happy New Year :D
Title: Re: Old school mania
Post by: ninogenio on December 31, 2013
thank you guys!!

im really glad you all enjoyed this i really wasn't sure whether it was up too snuff and as such was going too just put it in my back ups lol.

speaking purely from a technical point of view my favorite part was the 3d vector text purely because i managed too software render it all at interactive frame rates. it was actualy C3lt1c who did me a little tutorial on the basic effect earlier in the year but i never got round too fully trying it out.

his example used the freebasic gfx lib though and i needed it too happen in tiny ptc so had too use an 8x8 binary font set. scan the text string and store the bool values in an array the same size as my text array.

then scan that array and everytime i found a point rotate scale and project it then send these projected points through as a co-ord system for my hedra spheres with each projected point being a point of origin for my hedra's. then i had too render all my hedra points around these points rotating and projecting the hedras then do a quick bubble sort of the hedra's grab there normals just before rendering and only draw faces with front facing normals this meant only half the number of faces needed too be rendered. then i had too w buffer the the whole scene so that as the text spins the nearer hedra's dont draw behind the further ones.

i had a few z fighting issues that were a nightmare too fix but i got there :) and finally just completely cull all initial points that are out of view.. in the end it all worked much better than i hoped for so i guess thats the part i am most proud of. on the plus side i guess i can convert any flat 2d image too a 3d set of objects in much the same way and make them explode etc..

im about half way cleaning the code guys so its coming soon ;)

and happy new year too you too Raizor!  :cheers:
Title: Re: Old school mania
Post by: Moroboshisan on January 01, 2014
AMAZING Stuff!... It took a lot to start (old 1.6GHz dualcore notebook here, as always) that just seems a long precalc time... but simply lovely stuff!!!

Lovely 3D softrender, totally awesome bumpmapping and rotozoomer!.. everything runnging very smoothly!!!
Title: Re: Old school mania
Post by: ninogenio on January 01, 2014
thanks very much mate  ;)

Quote
It took a lot to start (old 1.6GHz dualcore notebook here, as always) that just seems a long precalc time...

yeah this is actually because the engine the demo is built on was geared more towards level based games games. where each levels resources are loaded between stages with a loading screen. but when i first did this demo that way the small pauses between the various states were not acceptable so i just allocated all resources in one go at the very beginning.

however having said that i managed too get the whole thing much more streamlined today i got the rotozoomer and 3d text going at double the speed up from 50fps too 101 without the clamp in place i also got the loading too happen about twice as quick as well as loads of other fixes.. the whole thing is just a bit tighter and smoother now.

ive attaching the fixed up exe too this post
Title: Re: Old school mania
Post by: ninogenio on January 01, 2014
and i finally fixed all the code up too a point where im happy too share..

the meat off all the effects is in the demo states folder.. all the plugin stuff can be thought of as library's that just make my tiny-ptc life a little less troubled. and the oldschool.bas and oldschool.bi is a little engine that initalizes and allocates each demo state's resources then i can simple change demo effects with a simple enum switch.

if you guys have any questions or anything just give me a shout.

oh one last thing i have included everything too build the exe... music/libs/code etc so you can build the exe without any troubles but anyone that does build up the sources will have too steal the image folder out of the link above too actually run it.

 :cheers: guys
Title: Re: Old school mania
Post by: emook on January 02, 2014
I love you and hate you at the same time.

Love the work, hate how clever you are! ;)

Thanks for the sources - it can be so hard to get moving with some of these effects.

Top stuff!
Title: Re: Old school mania
Post by: ninogenio on January 03, 2014
haha thank you very much  ;D

And i like too be as open as possible with code because i know first hand just how difficult some of this stuff is too figure out. K++
Title: Re: Old school mania
Post by: Rbz on January 05, 2014
Pretty nice work.
It remembers me the good old days of the dbf forum, when people here were making their cool software intros.  8)
Title: Re: Old school mania
Post by: nikin on January 05, 2014
Quote
good old days of the dbf forum, when people here were making their cool software intros.
Why is software better than hardware? Just wondering.
To some degree all the shader stuff brought back a lot of the "code your own stuff" thing, if that's what your missing :)
Anyway megademos are cool, they give me an itch, to do something myself :)
Title: Re: Old school mania
Post by: ninogenio on January 06, 2014
i personally dont think its better or worse. its just a nice thing for me too dable with from time too time..

the power of just grabbing an area of ram and having each element connected too a pixel on screen is sometimes under stated.

what im finding more and more these days is that because im fairly competent with software framebuffers when i do work in glsl i have the added benefit of knowing exactly the sort of effect i want too achieve.. it usually makes the whole shader process a lot more streight forward with less head scratching.

a lot of people walked away from software rendering because it was too slow when compared too hardware but what i have found with modern cpu's like my i7 is that if you code in a granular fashion using multi cores too the max avoiding floating point vars especially in tight inner loops, they can be staggeringly fast!

i quite belive full interactive 3d games could be done that look quite good.

there is also the other uses for knowing how too properly use a framebuffer like my comp entry where all i had was a tiny cpu 32k of ram and the leds hooked up too the cpu pins. without knowing how too soft render i would have been screwed :)
Title: Re: Old school mania
Post by: Optimus on January 31, 2014
Wow, new freebasic demo! Love some of the vector parts and the great water. I want to see how I can make the water drops so thick and smooth.

Software rendering, I want to code more of it. It always feel great when you manipulate pixel by pixel.
Even harder will be in old platforms. I started coding a DOS demo for 486sx/33mhz. Lot's to optimize. Maybe try assembly techniques from 8bits (huge unrolled codes), and see if they work here or if I have cache misses. Next would be a 286. Ultimate challenge for me.
Title: Re: Old school mania
Post by: ninogenio on February 01, 2014
cheers Optimus!

Software rendering, I want to code more of it. It always feel great when you manipulate pixel by pixel.
Even harder will be in old platforms. I started coding a DOS demo for 486sx/33mhz. Lot's to optimize. Maybe try assembly techniques from 8bits (huge unrolled codes), and see if they work here or if I have cache misses. Next would be a 286. Ultimate challenge for me.

that sounds really interesting. i remember the great times back when i had a 486. it was really staggering how much could be done when coding down at the low level. i used too play some of the games and demos of the time and think htf is this happening?! now looking back i respect the stuff that was being done even more.

i am with you, developing on limited platforms gives a kick that just cant be matched.
Title: Re: Old school mania
Post by: DrewPee on April 14, 2014
Not had chance to come on here for a while - sorry guys. However after saying that - absolutely loving this . . . really nicely done. You can't beat pixel bashing. Thanks for sharing the code too Ninogenio. :)

DrewPee
Title: Re: Old school mania
Post by: Shockwave on April 26, 2014
Refreshing :)

Also Im sorry for the late comment but this is really nice and just wanted to say thanks for making me grin :)
Title: Re: Old school mania
Post by: Kirl on April 27, 2014
Wow, that was so awesome nino, you did some cool stuff last year, here's to another happy productive new year!  :cheers:
Nice tune as well!
:updance:

Thanks for bringing this up Shockwave, I never would have known the awesomeness I missed!
Title: Re: Old school mania
Post by: ninogenio on June 08, 2014
thanks guys.. finished a few non coding projects so am ready too hit the keyboard once more :D.. i think this is going too be an android/web coding/electronics year.. really glad everyone enjoyed this  :cheers: