Dark Bit Factory & Gravity
PROGRAMMING => Freebasic => Topic started by: Xalthorn on July 04, 2008
-
I'm curious (I'm usually curious about something or other),
When you code things for a fixed, or known, platform (most consoles, and specifically ps2yabasic), you can have fun hitting the limit of what can be done, and try really hard to optimise and squeeze things in to achieve more than was previously thought possible.
My quandry is how the heck do you measure that on a PC? For example, I'm writing this on a little laptop and the limit of what it can do is probably much less than a modern day standard desktop. As such, although I might hit the limit of my laptop and push harder to achieve stuff, if you folks test it and it doesn't even break a sweat, it's not going to be impressive...
The asm demos where you cram as much into as small an executable as possible is a good example of pushing the limits, but I can't help feeling there is (or should be) some way of measuring the larger, more expansive demos.
-
Easy answer include a fps counter to monitor the speed your prod is running at. There are also stress test applications that will calculate memory usage / clock cycle consumption of any process running in memory look to an overclocking site to get a specific app. The fps counter is enough for anybodys needs (at least non overclockers)
For example, I'm writing this on a little laptop and the limit of what it can do is probably much less than a modern day standard desktop. As such, although I might hit the limit of my laptop and push harder to achieve stuff, if you folks test it and it doesn't even break a sweat, it's not going to be impressive...
On the flip side to that coin if you write something that IS impressive even on your laptop then you are garaunteed that it will run well on most PC.
-
But that's my point, my only measure for fps and stress is my laptop. For all I know, I could write something that squeezed every ounce of power from the laptop only to find out that a modern desktop runs it without breaking sweat and my code would likely look less impressive than things designed to run on those machines.
Unless I'm worrying about nothing that is... ;)
-
I wouldnt quite say that its nothing to worry about we all would love to be among the elites that are pushing the limits but those people are few and far between (Im certainly not pushing any limits except my own personal state of progress)
To make things worse not all hardware vendors fully conform to specifications this forces some PCs to drop down to software, my desktop says that it supports Pixel Shaders 3.0 but in reality I have never seen a PS 3.0 demo running at an acceptable frame rate. So what can I do to push the limits of my machine when i cant even get a good reference of what can be done? The demos Iv seen are from really talented coders well versed in shader language and their code wont run properly for me until the next time I upgrade my PC. That is a shame.
For now I will just develop for my PC and hope that 99% of the population enjoy the demo rather than annoying 95% for waiting 2 seconds per frame whilst only 5% of people enjoy the experience.
-
That's a fair comment and a sensible view. I just can't help feeling that although I'm progressing my personal knowledge, I'll always be walking in the shadow of others with no chance of ever seeing the boundary, let alone trying to push it.
Ho hum, it's just one of those things I guess :)
-
While you can strive to make something as compatible as you can, really performance in the traditional sense goes out of the window.
It's not like the days of yesteryear where there were groups competing to have the most faces on a glenze object or the most bobs on screen.
Now to impress I guess it's about either making something that's beautifully designed or something that's technically very challenging, or just by pushing your own personal limits.
< /$0.02 >
-
just enjoy your self dude ;) what does it matter really. if you like what you do?!?
-
@shocky: True, technical demos nowadays have either already been done countless times, or are simply tests of the latest greatest graphics hardware. Pretty much everything I did in that last demo was pushing my personal knowledge. I'm seriously rusty in asm and was pleased that I actually managed to adapt to it relatively easily. The plasma was an interesting series of searches on the 'net to find a basic example to learn the concept behind it (I've seen way more complicated versions), the blue mirror taught me how to do such a thing in a quick and dirty way (simply place an increasing byte value in the lowest byte of the colour value, and that would simply replace the blue value) and then how to do it in a better way (actually add to the blue part and top out at 255). The masked bitmaps brought back some fun memories of the Acorn computers, the proportional font was screaming to be done, and the semi object oriented scroller (very loose relationship there...) was fun, and seriously needs expanding upon.
@ninogenio:
You know what, you're absolutely right :D
-
@xalthorn:
Interesting topic. I asked/thought about this myself several times.
But IMHO pushing the limit by using more and more advanced coding
techniques is insignificant nowadays in the PC scene. Seeing that
most normal user (non-developers) are buying smaller and smaller
hardware (like EEE-PC) I think PC-wise there are two possible extremes.
Code something which requires very low cpu power and which runs
smooth on every little notebook and looks good.
Or
Buy latest hardware with PixelShader5.0 ;) and show some state-of-the-art
fx. But then - most ppl watch your creation as a video stream because
they cannot run it by themselves.
-
Nice topic. This is on my mind a lot.
I come from the C64 scene, where every piece of code was about pushing the boundaries. In fact the elite of 133t coders back in the day (1990's) was Crossbow/Crest (INMO). Last night I discovered he was still breaking boundaries 15 years later! If you know the C64 check out Krestolagy 3.
This is was my understanding of the scene until recently.
Beauty can beat technology in a demo, but beauty bought in technical skill is a winner every time.
So do your best technically, but do so in an inventive way.
/$0.02