Author Topic: Old school mania  (Read 15433 times)

0 Members and 3 Guests are viewing this topic.

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Old school mania
« 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  :)
« Last Edit: December 30, 2013 by ninogenio »
Challenge Trophies Won:

Offline Hotshot

  • DBF Aficionado
  • ******
  • Posts: 2114
  • Karma: 91
    • View Profile
Re: Old school mania
« Reply #1 on: December 30, 2013 »
Excellent and Well Done  :clap:

Offline nikin

  • C= 64
  • **
  • Posts: 57
  • Karma: 15
    • View Profile
Re: Old school mania
« Reply #2 on: December 30, 2013 »
nice one :) pushes my framebuffer wery smoothly :)
Love the bumpmap part. But overall great stuff :)   
:cheers:

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #3 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 :)
Challenge Trophies Won:

Offline Pot Noodle

  • Sponsor
  • Amiga 1200
  • *******
  • Posts: 271
  • Karma: 15
  • Computers have lots of memory but no imagination
    • View Profile
Re: Old school mania
« Reply #4 on: December 30, 2013 »
Very nice, I liked all of it  ;D

Offline Raizor

  • Founder Member
  • Pentium
  • ********
  • Posts: 1154
  • Karma: 175
    • View Profile
Re: Old school mania
« Reply #5 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
raizor

Challenge Trophies Won:

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #6 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:
« Last Edit: December 31, 2013 by ninogenio »
Challenge Trophies Won:

Offline Moroboshisan

  • Senior Member
  • Amiga 1200
  • ********
  • Posts: 454
  • Karma: 18
  • C=64
    • View Profile
Re: Old school mania
« Reply #7 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!!!

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #8 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
Challenge Trophies Won:

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #9 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
« Last Edit: January 01, 2014 by ninogenio »
Challenge Trophies Won:

Offline emook

  • C= 64
  • **
  • Posts: 94
  • Karma: 12
    • View Profile
Re: Old school mania
« Reply #10 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!
----

R Tape loading error, 0:1

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #11 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++
Challenge Trophies Won:

Offline Rbz

  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 2757
  • Karma: 493
    • View Profile
    • https://www.rbraz.com/
Re: Old school mania
« Reply #12 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)
Challenge Trophies Won:

Offline nikin

  • C= 64
  • **
  • Posts: 57
  • Karma: 15
    • View Profile
Re: Old school mania
« Reply #13 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 :)

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #14 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 :)
Challenge Trophies Won:

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: Old school mania
« Reply #15 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.
Challenge Trophies Won:

Offline ninogenio

  • Pentium
  • *****
  • Posts: 1668
  • Karma: 133
    • View Profile
Re: Old school mania
« Reply #16 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.
Challenge Trophies Won:

Offline DrewPee

  • I Toast Therefore I am
  • Pentium
  • *****
  • Posts: 563
  • Karma: 25
  • Eat Cheese - It's good for you!
    • View Profile
    • Retro Computer Museum
Re: Old school mania
« Reply #17 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
DrewPee
aka Falcon of The Lost Boyz (Amiga)
Ex-Amiga Coder and Graphic Designer
Administrator of > www.retrocomputermuseum.co.uk

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17412
  • Karma: 498
  • evil/good
    • View Profile
    • My Homepage
Re: Old school mania
« Reply #18 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 :)
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Kirl

  • Senior Member
  • Pentium
  • ********
  • Posts: 1217
  • Karma: 230
    • View Profile
    • Homepage
Re: Old school mania
« Reply #19 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!
« Last Edit: April 27, 2014 by Kirl »
www.kirl.nl
Challenge Trophies Won: